diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml
index 8d6bea208..d1bb5bef5 100644
--- a/.github/workflows/ci.yml
+++ b/.github/workflows/ci.yml
@@ -239,7 +239,7 @@ jobs:
if-no-files-found: error
package-e2e:
- name: Package/install integration (${{ matrix.os }})
+ name: Native package baseline (${{ matrix.platform }} ${{ matrix.architecture }})
needs: [changes, windows-native-build]
if: github.event_name == 'push' || needs.changes.outputs.package == 'true'
strategy:
@@ -253,7 +253,7 @@ jobs:
- os: ubuntu-24.04-arm
platform: linux
architecture: arm64
- - os: macos-14
+ - os: macos-15
platform: darwin
architecture: arm64
- os: macos-15-intel
@@ -286,12 +286,15 @@ jobs:
path: native/windows/build/
- run: npm run verify:windows-native:artifact
- run: npm run verify:package
+ - name: Verify real Node Inspector discovery and observation
+ if: matrix.platform == 'darwin'
+ run: npm run verify:inspector
apple-artifacts:
name: Real Apple artifact CLI/MCP E2E
needs: changes
if: github.event_name == 'push' || needs.changes.outputs.code == 'true'
- runs-on: macos-14
+ runs-on: macos-15
timeout-minutes: 15
steps:
- uses: actions/checkout@v4
@@ -302,12 +305,13 @@ jobs:
- run: npm ci
- run: npm run verify:keyed-archive
- run: npm run verify:asset-catalog
+ - run: npm run verify:macos-bundle
- name: Native compiled NIB hierarchy regressions
run: npm run test:focused -- tests/boundary/filesystem/nibNativeHierarchy.test.ts tests/boundary/filesystem/interfaceBuilderBundle.test.ts
- name: Real binary metadata and Interface Builder integration
run: npm run verify:apple-dispatch && npm run verify:interface-builder
- name: Native plist CLI selection regressions
- run: npm run test:focused -- tests/boundary/cli/nativePlistCli.test.ts
+ run: npm run test:focused -- tests/boundary/cli/nativePlistCli.test.ts tests/boundary/cli/nativePlistPrototypeKeyCli.test.ts tests/boundary/cli/nativePlistSelectionFailureCli.test.ts
reconstruction-readiness:
name: Reconstruction readiness
@@ -353,12 +357,6 @@ jobs:
- os: ubuntu-24.04-arm
platform: linux
architecture: arm64
- - os: macos-14
- platform: darwin
- architecture: arm64
- - os: macos-15-intel
- platform: darwin
- architecture: x64
- os: windows-latest
platform: win32
architecture: x64
diff --git a/.github/workflows/website-check.yml b/.github/workflows/website-check.yml
index 42257f867..4f410ef62 100644
--- a/.github/workflows/website-check.yml
+++ b/.github/workflows/website-check.yml
@@ -6,6 +6,7 @@ on:
paths:
- "website/**"
- "scripts/verify-website.py"
+ - "scripts/prepare-website.py"
- ".github/workflows/**"
workflow_dispatch:
@@ -24,5 +25,7 @@ jobs:
steps:
- name: Check out the repository
uses: actions/checkout@v4
+ - name: Prepare the example download
+ run: python3 scripts/prepare-website.py
- name: Check website links and publishing configuration
run: python3 scripts/verify-website.py
diff --git a/.github/workflows/website-pages.yml b/.github/workflows/website-pages.yml
index a6118bb6a..52908cd8b 100644
--- a/.github/workflows/website-pages.yml
+++ b/.github/workflows/website-pages.yml
@@ -21,6 +21,8 @@ jobs:
steps:
- name: Check out the repository
uses: actions/checkout@v4
+ - name: Prepare the example download
+ run: python3 scripts/prepare-website.py
- name: Check website links and publishing configuration
run: python3 scripts/verify-website.py
- name: Configure Pages
diff --git a/.gitignore b/.gitignore
index e699d15fd..330e03a16 100644
--- a/.gitignore
+++ b/.gitignore
@@ -45,3 +45,6 @@ Thumbs.db
# Local reference sources and analysis artifacts
/_reference/
+
+# Generated website download
+/website/public/examples/notes-example.zip
diff --git a/README.md b/README.md
index 2bf765f54..31e0e43b3 100644
--- a/README.md
+++ b/README.md
@@ -17,7 +17,9 @@
-[Documentation](https://morluto.github.io/rea/) · [Quick start](#quick-start) · [Current status](#current-status) · [Investigation model](#the-investigation-model) · [Tool catalog](#tool-catalog-for-investigation) · [Roadmap](#roadmap) · [How it works](#how-it-works)
+**[Website](https://morluto.github.io/rea/) · [Guides](https://morluto.github.io/rea/guides/) · [DX-Ball showcase](https://morluto.github.io/rea/showcase/dx-ball/)**
+
+[Quick start](#quick-start) · [Current status](#current-status) · [Investigation model](#the-investigation-model) · [Tool catalog](#tool-catalog-for-investigation) · [Roadmap](#roadmap) · [How it works](#how-it-works)
npx rea-agents setup
@@ -163,7 +165,7 @@ Deep native binary analysis requires [Hopper](https://www.hopperapp.com/), [Ghid
Firmware region inspection and explicit extraction use caller-supplied Binwalk and Unblob on Linux. See [Firmware analysis](docs/firmware-analysis.md) for setup, provenance, resource limits and native handoff.
-Static APK analysis uses a separately supplied headless JADX JAR and a full JDK, with no emulator or APK execution. See [Android analysis](docs/android-analysis.md) for setup, CLI/MCP operations, coverage and public test fixtures. Authenticated IPA inventory Evidence can be projected with [Apple application analysis](docs/apple-application-analysis.md).
+Static APK analysis uses a separately supplied headless JADX JAR and a full JDK, with no emulator or APK execution. See [Android analysis](docs/android-analysis.md) for setup, CLI/MCP operations, coverage and public test fixtures. Authenticated IPA and macOS `.app`, ZIP, or DMG inventory Evidence can be projected into bundle anatomy, such as XPC services, app extensions, login items, privileged helpers, and launchd plists, with [Apple application analysis](docs/apple-application-analysis.md).
Repository main and npm 4.1.0 include experimental Windows x64 Ghidra support for native x86-64 PE applications on local NTFS, with bundled Job Object, private-DACL, and path-admission controls. Check the [release boundary](docs/installation.md#released-package-and-main) before expecting this from an older npm package. See [Windows Ghidra P0](docs/windows-ghidra-p0.md) for prerequisites and verified scope.
diff --git a/README_ar.md b/README_ar.md
index 364f80b06..647a9a417 100644
--- a/README_ar.md
+++ b/README_ar.md
@@ -17,6 +17,8 @@
+**[الموقع (بالإنجليزية)](https://morluto.github.io/rea/) · [أدلة الاستخدام](https://morluto.github.io/rea/guides/) · [دراسة حالة DX-Ball](https://morluto.github.io/rea/showcase/dx-ball/)**
+
[البدء السريع](#البدء-السريع) · [حالة الدعم](#حالة-الدعم) · [من الملف التنفيذي إلى السلوك](#من-الملف-التنفيذي-إلى-السلوك) · [منصة أدوات التحقيق](#منصة-أدوات-التحقيق) · [خطة العمل](#خطة-العمل) · [كيف يعمل؟](#كيف-يعمل)
diff --git a/README_ja.md b/README_ja.md
index 1dd94db2c..f86969a71 100644
--- a/README_ja.md
+++ b/README_ja.md
@@ -17,6 +17,8 @@
+**[ウェブサイト(英語)](https://morluto.github.io/rea/) · [ガイド](https://morluto.github.io/rea/guides/) · [DX-Ball の事例](https://morluto.github.io/rea/showcase/dx-ball/)**
+
[クイックスタート](#クイックスタート) · [現在の対応状況](#現在の対応状況) · [バイナリから動作へ](#バイナリから動作へ) · [調査ツールカタログ](#調査ツールカタログ) · [ロードマップ](#ロードマップ) · [仕組み](#仕組み)
diff --git a/README_ko.md b/README_ko.md
index 916540d14..b0a7d8c02 100644
--- a/README_ko.md
+++ b/README_ko.md
@@ -17,6 +17,8 @@
+**[웹사이트(영문)](https://morluto.github.io/rea/) · [가이드](https://morluto.github.io/rea/guides/) · [DX-Ball 사례](https://morluto.github.io/rea/showcase/dx-ball/)**
+
[빠른 시작](#빠른-시작) · [현재 지원 범위](#현재-지원-범위) · [바이너리에서 동작까지](#바이너리에서-동작까지) · [조사 도구 카탈로그](#조사-도구-카탈로그) · [로드맵](#로드맵) · [작동 방식](#작동-방식)
diff --git a/README_zh.md b/README_zh.md
index 905276846..159fbd56f 100644
--- a/README_zh.md
+++ b/README_zh.md
@@ -17,6 +17,8 @@
+**[网站(英文)](https://morluto.github.io/rea/) · [使用指南](https://morluto.github.io/rea/guides/) · [DX-Ball 案例](https://morluto.github.io/rea/showcase/dx-ball/)**
+
[快速开始](#快速开始) · [当前状态](#当前状态) · [从二进制到行为](#从二进制到行为) · [调查工具目录](#调查工具目录) · [路线图](#路线图) · [工作原理](#工作原理)
diff --git a/bridge/native/NativeUIChildren.swift b/bridge/native/NativeUIChildren.swift
new file mode 100644
index 000000000..8e2afcf9a
--- /dev/null
+++ b/bridge/native/NativeUIChildren.swift
@@ -0,0 +1,11 @@
+struct ChildBatch {
+ let values: [Element]
+ let complete: Bool
+}
+
+func captureChildValues(requestedCount: Int, copy: () -> [Element]?) -> ChildBatch {
+ guard requestedCount > 0 else { return ChildBatch(values: [], complete: true) }
+ let returned = copy() ?? []
+ let values = Array(returned.prefix(requestedCount))
+ return ChildBatch(values: values, complete: values.count == requestedCount)
+}
diff --git a/bridge/native/ReaNativeUI.swift b/bridge/native/ReaNativeUI.swift
index d274a5f56..05a24ccf5 100644
--- a/bridge/native/ReaNativeUI.swift
+++ b/bridge/native/ReaNativeUI.swift
@@ -26,11 +26,12 @@ func childCount(_ element: AXUIElement) -> Int {
var count = 0
return AXUIElementGetAttributeValueCount(element, kAXChildrenAttribute as CFString, &count) == .success ? count : 0
}
-func children(_ element: AXUIElement, limit: Int) -> [AXUIElement] {
- var value: CFArray?
- let count = min(limit, childCount(element))
- if count == 0 { return [] }
- return AXUIElementCopyAttributeValues(element, kAXChildrenAttribute as CFString, 0, count, &value) == .success ? value as? [AXUIElement] ?? [] : []
+func children(_ element: AXUIElement, count: Int) -> ChildBatch {
+ captureChildValues(requestedCount: count) {
+ var value: CFArray?
+ guard AXUIElementCopyAttributeValues(element, kAXChildrenAttribute as CFString, 0, count, &value) == .success else { return nil }
+ return value as? [AXUIElement]
+ }
}
func text(_ element: AXUIElement, _ key: String) -> Any { (attribute(element, key) as? String) ?? NSNull() as Any }
func windowBounds(_ element: AXUIElement) -> CGRect? {
@@ -115,9 +116,12 @@ func observe(_ request: Request) async throws -> [String: Any] {
if path.count >= 32 { if totalChildren > 0 { truncated = true }; continue }
let available = max(0, request.max_nodes - nodes.count - pending.count)
let count = min(available, totalChildren)
- let items = children(element, limit: count)
+ let batch = children(element, count: count)
+ if !batch.complete { truncated = true }
if totalChildren > count { truncated = true }
- for index in (0..]}'
@@ -29,3 +30,83 @@ Coverage is `complete-within-inventory` when the supplied pages reconstruct the
complete authenticated inventory, and `partial` otherwise. A partial result
states that absence is unknown. Component and bridge-candidate arrays are still
the complete projection of the inventory that was supplied.
+
+## Application roots
+
+| Inventory root | Application root |
+| -------------------------------------- | --------------------------------------------------- |
+| IPA | Each `Payload/.app` |
+| `.app` directory | `.`, the inventoried bundle itself |
+| Directory, ZIP, or DMG containing apps | Each outermost `.app` followed by `Contents/` |
+
+ZIP archives made with `ditto -c -k --keepParent` report `.app`. A DMG
+reports `.dmg//.app`; DMG child inventory needs the native
+macOS mounting adapter. When a DMG has only its root identity, the projection is
+`partial` and says that bundle absence is unknown. Other inventory formats, such
+as APK or ASAR, are rejected as input errors.
+
+An inventoried directory whose name ends in `.app` is its own root even when its
+inventory is partial or lacks `Contents/`. For directory, ZIP, and DMG
+inventories, components outside every application root are not attributed to
+the application. This covers installers, disk-image extras, and AppleDouble
+sidecars, which therefore stay out of runtime families and bridge candidates. A
+limitation reports how many inventoried entries were left out. IPA projection
+still lists every archive component, including `SwiftSupport/`.
+
+`platforms` lists `macos` for application roots with `Contents/`. It lists `ios`
+for shallow application roots that have an `Info.plist`. An application root
+with neither, such as an empty inventory, has no platform.
+
+## macOS bundle anatomy
+
+`bundles` lists each application root and every nested bundle under it. Each
+bundle reports its `parent_path`, `layout`, `info_plist_path`,
+`executable_candidates`, and `signing_paths`.
+
+| Layout | Meaning | Content directory |
+| --------------------- | --------------- | --------------------------------------------- |
+| `macos-deep` | Has `Contents/` | `Contents/`, executables in `Contents/MacOS/` |
+| `versioned-framework` | Has `Versions/` | Each real `Versions//` |
+| `shallow` | Neither | The bundle directory itself |
+
+Roles are path conventions (`role_basis: "path-convention"`):
+
+| Role | Path |
+| -------------------- | --------------------------------------------------------------- |
+| `app-extension` | `*.appex` |
+| `xpc-service` | `*.xpc`, including XPC services inside frameworks |
+| `framework` | `*.framework` |
+| `system-extension` | `*.systemextension` |
+| `driver-extension` | `*.dext` |
+| `plug-in` | `PlugIns/*.bundle`, `*.plugin`, `*.qlgenerator`, `*.mdimporter` |
+| `resource-bundle` | `Resources/*.bundle`, such as SwiftPM resource bundles |
+| `bundle` | Any other `*.bundle` |
+| `login-item` | `Contents/Library/LoginItems/*.app` |
+| `helper-application` | `Contents/Helpers/*.app` |
+| `nested-application` | Any other nested `*.app` |
+
+The components also list:
+
+- `privileged_helpers`: files directly in `Contents/Library/LaunchServices/`,
+ where SMJobBless helpers live;
+- `launchd_plists`: `.plist` files directly in `Contents/Library/LaunchAgents/`
+ (`domain: "agent"`) or `Contents/Library/LaunchDaemons/` (`domain: "daemon"`),
+ as used by SMAppService;
+- `helpers`: files directly in `Contents/Helpers/`.
+
+Symlinks are reported by path in `symlinks`. Their targets are not inventoried,
+so a versioned framework is described through its real `Versions//`
+directories rather than `Versions/Current`. A framework's `info_plist_path` is
+`null`, with a limitation explaining why, when it has more than one real
+`Versions//` directory (even if only one of them holds a plist,
+because `Versions/Current` decides which one applies) or when its single
+version directory has no `Resources/Info.plist`.
+
+AppleDouble sidecar files (`._*` and `__MACOSX/`) are inventory facts, but they
+describe neighbouring files. They are excluded from roots, bundle roles, and the
+anatomy components.
+
+The projection does not read plists. Use `inspect_plist` on a bundle's
+`info_plist_path` or a launchd plist to read `CFBundleExecutable`, identifiers,
+`SMPrivilegedExecutables`, `BundleProgram`, URL schemes, and usage descriptions.
+Use `inspect_signature` on an executable candidate for code-signing claims.
diff --git a/docs/capability-migration.md b/docs/capability-migration.md
index 568cf4411..3789591d6 100644
--- a/docs/capability-migration.md
+++ b/docs/capability-migration.md
@@ -295,6 +295,30 @@ lifecycles. Runtime ports retain their distinct Inspector, passive Electron and
active Electron effects; shipped Electron hooks remain at their existing
provider boundary.
+## Managed capability ownership
+
+`src/domain/managed/` owns managed artifact and member semantics, reconstruction
+import, native-boundary verification and application graph projection.
+`src/application/managed/` owns their shared Evidence workflows, and
+`src/contracts/managed/` owns their named contracts and examples. Producer
+metadata/IL parsing stays in `src/dotnet/`; target resolution, Evidence, ordering
+and investigation records retain their shared owners. Path-based member
+comparison preserves its actual target/byte-digest admission and existing parser
+helper.
+
+`scripts/verify/managed/` groups the portable conformance entrypoint and its
+support, manifest, oracle and completion-report helpers. Its PE byte fixture
+builder and declaration live in `scripts/fixtures/managed/`, shared with the
+installed-package lane and existing managed conformance tests. `verify:managed`
+keeps its command name and optional caller-cwd manifest resolution. Compiled
+catalog and generator imports follow the owners; document-check cache inputs
+include the relocated runtime verifier and fixture files.
+
+Portable byte fixtures, optional operator-local manifests, actual ILSpy oracles
+and real Ghidra NativeAOT checks retain their distinct proof levels and
+prerequisites. The existing NativeAOT fixture/engine lane keeps its owner. This
+move preserves implementations, Evidence identities and generated commitments.
+
## Binary application ownership
`src/application/binary/` owns the active session, deep-provider registry and
@@ -332,3 +356,32 @@ repository-root default. Both point to `_reference/firmware-integration/generate
when invoked through the documented npm commands. Optional ext4/Ghidra lanes keep
their own prerequisites. Source-fixture generation and synthetic producer tests
do not establish real Binwalk/Unblob analysis or another host's execution support.
+
+## Apple artifact capability ownership
+
+`src/domain/apple/` owns Apple application anatomy/projection, asset catalog
+facts, Interface Builder graphs, keyed archive semantics and plist values.
+`src/application/apple/AppleApplicationService.ts` retains the shared workflow
+that projects authenticated IPA/macOS inventory Evidence.
+
+`src/artifacts/apple/` owns the actual producer boundary: directory acquisition,
+assetutil invocation, plist/NIB decoding, encoded view-parent interpretation and
+keyed archive inspection. These helpers are used by ArtifactProvider, retain
+its existing typed analysis boundary, injected assetutil seam and original reader
+cleanup, and do not require a new port for each helper. Producer code no longer
+lives in the application layer. Guards reject application/composition/caller
+imports from this owner while admitting pure facts and shared artifact readers.
+Adapter-source tests retain their assertions in the existing forked adapter lane.
+
+`scripts/verify/apple/` groups archive, asset catalog, Interface Builder,
+Objective-C/Swift dispatch and macOS bundle verification. The macOS bundle fixture
+builder lives in `scripts/fixtures/apple/`; NIB byte fixtures stay beside their
+artifact decoder. Existing format-specific conformance sources and goldens keep
+their locations, and relocated verifiers resolve them against their own file
+URLs. Public npm entrypoints and CLI/MCP contracts stay stable; generated-document
+cache inputs include the relocated runtime scripts and fixture builder.
+
+Portable decoder and injected producer tests establish their format/boundary
+claims. Actual Swift/Xcode, assetutil, native NIB, bundle signing and DMG lifecycle
+claims require the real Apple lane. Native binary API/value-flow semantics and
+shared cross-domain contract aggregates keep their separate owners.
diff --git a/docs/native-investigation.md b/docs/native-investigation.md
index 01aaa83c5..48bd8e55b 100644
--- a/docs/native-investigation.md
+++ b/docs/native-investigation.md
@@ -39,9 +39,20 @@ explicit limitation; architecture inventory locations remain available.
vtable descriptors. Records include exact virtual addresses/file offsets and
artifact evidence. Vtable indexes are metadata word offsets; witness indexes
start after the conformance header. Names unavailable in metadata remain null.
- Chained fixups, external bindings, authenticated pointers, categories,
- properties, generic/resilient/async/coroutine tables and inherited overrides
- have explicit unsupported or partial coverage. Other providers retain the
+ Pointers are decoded through the image's fixups:
+ - `LC_DYLD_CHAINED_FIXUPS` rebases and binds, including the authenticated
+ arm64e formats;
+ - legacy `LC_DYLD_INFO` bind opcodes.
+
+ So an external superclass resolves from its `_OBJC_CLASS_$_` bind (for
+ example `NSObject`). The `pointer_fixups` coverage facet names the mechanism.
+ Class properties, with parsed attributes, and `__objc_catlist` categories are
+ also decoded. Categories record the extended class, local or external, plus
+ their methods, protocols and properties; category methods appear as
+ implementations with a `category`. Swift field-offset globals that are only
+ initialized at runtime stay unresolved. Generic, resilient, async and
+ coroutine tables, and inherited overrides, have explicit unsupported or
+ partial coverage. Other providers retain the
existing symbol-based inventory with its narrower coverage.
## Native instruction, call and type primitives
@@ -165,8 +176,10 @@ GUI authority, and REA never falls back automatically to Hopper.
instruction/call facts, value dependencies and process/project cleanup.
- `npm run verify:ghidra:aarch64-jump-table`: optimized ELF and byte/halfword
relative tables, plus ARM64 Mach-O on an ARM64 macOS host.
-- `npm run verify:apple-dispatch`: source-built Objective-C protocols/classes and
- Swift conformances/vtables, repeated after stripping local symbols.
+- `npm run verify:apple-dispatch`: source-built Objective-C protocols, classes,
+ properties and categories, and Swift conformances and vtables. Each is linked
+ with legacy `LC_DYLD_INFO` and with chained fixups (and as arm64e on Apple
+ silicon), then repeated after stripping local symbols.
- `npm run verify:native-ui`: one source-owned fixture window, successful
selected-window capture and actions, changed-target rejection, and cleanup.
Missing OS permissions fail this lane.
diff --git a/docs/product-catalog.json b/docs/product-catalog.json
index e926a7eb5..c2c80d387 100644
--- a/docs/product-catalog.json
+++ b/docs/product-catalog.json
@@ -669,9 +669,9 @@
"mcp_prompts": 6
},
"digests": {
- "tools_sha256": "967c3d60f973aeb86a90a5772a217bef90cc5e48d2eea9621d3a2cc2a68834eb",
+ "tools_sha256": "68769748b624a288a5f4c57374de2d6fa5c2b5f5586fbbdef109795c907b7b7b",
"prompts_sha256": "ef2de8814390b340623c32001610aa2709d90bed51537b6e562ab3abf144ab4d",
- "combined_sha256": "e893b9df15ed6eec249c8f9adb583dc4870c240f9126f8e42680a014cd6fba90",
+ "combined_sha256": "44b30e8892c84cf27766d5739228268b8a85f885c63002157bc134ed8d636bb8",
"providers_sha256": "a7d885531ee25d42c51385444faec544d34cd7eba6250a7dc75c4faedd4454a3"
}
}
diff --git a/docs/testing.md b/docs/testing.md
index f1a9d1f04..e7f406c9f 100644
--- a/docs/testing.md
+++ b/docs/testing.md
@@ -61,6 +61,16 @@ needed, exercise the actual target through browser, Electron, or process
capture. Real model trials are manual; Vitest covers deterministic evaluator
logic.
+`verify:managed` runs the portable PE byte-fixture conformance entrypoint under
+`scripts/verify/managed/`, with its byte builder under
+`scripts/fixtures/managed/`. It checks static classification, members,
+reconstruction, native-boundary relationships and application graphs without
+executing fixture PE files. Operator-local manifests and actual ILSpy oracles
+remain optional, separately reported checks; the real Ghidra NativeAOT lane has
+its own toolchain prerequisites. See [the managed guide](managed-code-analysis.md)
+for those configurations. Generated completion-ledger checks use the same owning
+entrypoint and include its verifier/fixture files in their cache inputs.
+
## End-to-end, integration and golden evidence
Full E2E tests invoke the production command dispatcher and real providers,
@@ -71,6 +81,19 @@ an XML graph golden. `verify:asset-catalog` compiles source-owned colors with
`actool`, invokes real `assetutil`, then checks CLI/MCP results, exact catalog
digest, every raw metadata field, pagination and malformed input rejection.
Neither artifact workflow requires Hopper or launches it. Both run in macOS CI.
+`verify:macos-bundle` needs only macOS with Command Line Tools. It compiles a
+source-owned app with `clang`: a versioned framework, XPC services, an app
+extension, a login item, a privileged helper, launchd plists, and a helper tool,
+signed ad hoc. It packs the app as a directory, a `ditto` ZIP, and an APFS DMG,
+then checks that `inspect-artifact` plus `project-apple-application-graph`
+report the same bundle anatomy for all three through the CLI, with stdio MCP
+parity. It also checks that the DMG is detached afterwards. It runs in macOS CI.
+
+Apple artifact verifiers live in `scripts/verify/apple/`, with the macOS bundle
+builder under `scripts/fixtures/apple/` and NIB byte fixtures beside the decoder
+in `src/artifacts/apple/`. The npm entrypoints are unchanged. Format-specific
+Swift/XIB/asset sources and goldens retain their locations; real Apple workflows
+resolve them from the verifier file URL and run in the macOS CI lane.
MCP SDK transport tests with recording providers remain integration tests.
They are useful for schema drift and failure projection but do not prove that
@@ -204,7 +227,7 @@ kept under ignored `_reference/`. No Gradle build, Android SDK, emulator or
application execution is required. The lane compares real CLI/MCP package,
class search, class inventory, method decompilation and incoming references.
See [Android analysis](android-analysis.md) for boundaries and resource budgets.
-Authenticated IPA inventory projection is documented in
+Authenticated IPA and macOS application inventory projection is documented in
[Apple application analysis](apple-application-analysis.md).
The lane and owned-process cancellation helper live in `scripts/verify/android/`.
@@ -320,8 +343,8 @@ CI exercises the pinned Node.js runtime on native hosted runners:
| --------------------- | ------------------ | ---------------------------------------------------------------------------------------- |
| Linux x64 | `ubuntu-latest` | Installed package and real Node Inspector CLI/MCP |
| Linux arm64 (aarch64) | `ubuntu-24.04-arm` | Installed package and real Node Inspector CLI/MCP |
-| macOS arm64 | `macos-14` | Installed package and real Node Inspector CLI/MCP |
-| macOS x64 | `macos-15-intel` | Installed package and real Node Inspector CLI/MCP |
+| macOS 15 arm64 | `macos-15` | Installed package and real Node Inspector CLI/MCP |
+| macOS 15 x64 | `macos-15-intel` | Installed package and real Node Inspector CLI/MCP |
| Windows x64 | `windows-latest` | Curated capabilities, native controls, installed package and real Node Inspector CLI/MCP |
Package and Inspector matrices assert the actual Node platform/architecture
@@ -331,6 +354,11 @@ limits. Package checks cover installation, CLI/MCP discovery, target-free
analysis, configuration backups/recovery, Evidence and owned lifecycle; Inspector
checks execute source-owned loopback targets and special filename cases.
+macOS uses one OS version with one native baseline job per architecture. Each job
+runs package and Inspector checks after a single dependency installation. The
+separate Inspector matrix covers Linux and Windows; Apple artifact checks retain
+their own macOS 15 arm64 job for Xcode-dependent workflows.
+
These native baseline checks complement the Linux source-test shards and the
separate Apple-artifact and real-provider lanes. Actual Hopper, Ghidra, IDA,
browser and managed-tool claims require their corresponding verification lanes.
@@ -441,17 +469,24 @@ that explicit lane, not the routine iteration requirement.
## Apple native metadata and UI
-`npm run verify:apple-dispatch` compiles Objective-C class/protocol and Swift
-conformance/vtable fixtures, inspects their bytes and repeats after stripping
-local symbols. It requires macOS and the host Xcode toolchain; targets are not
-executed. `npm run verify:native-ui` launches exactly one source-owned fixture
-window and requires successful selected-window capture and selected actions.
-An OS permission denial fails the positive lane. `npm run verify:native-ui:permissions`
-allows a host-permission-boundary-only result and explicitly reports
-`positive_e2e: false`; it must not be reported as capture/action proof.
-Both commands reject a changed executable digest and clean up the fixture
-process and helper. These lanes require an interactive macOS desktop. See [native investigation](native-investigation.md)
-for the exact ABI, authority, graph and observation boundaries.
+`npm run verify:apple-dispatch` compiles the Objective-C fixture (classes,
+protocols, a property and an `NSString` category) and the Swift
+conformance/vtable fixture.
+
+- Each fixture is linked with legacy `LC_DYLD_INFO` binds and with chained
+ fixups; on Apple silicon the ObjC fixture is also built as arm64e, which uses
+ authenticated pointers.
+- The lane inspects the bytes and repeats after stripping local symbols.
+- It requires the bound `NSObject` superclass, the external category, and the
+ matching `pointer_fixups` coverage. It requires macOS and the host Xcode toolchain; targets are not
+ executed. `npm run verify:native-ui` launches exactly one source-owned fixture
+ window and requires successful selected-window capture and selected actions.
+ An OS permission denial fails the positive lane. `npm run verify:native-ui:permissions`
+ allows a host-permission-boundary-only result and explicitly reports
+ `positive_e2e: false`; it must not be reported as capture/action proof.
+ Both commands reject a changed executable digest and clean up the fixture
+ process and helper. These lanes require an interactive macOS desktop. See [native investigation](native-investigation.md)
+ for the exact ABI, authority, graph and observation boundaries.
### Firmware adapters
diff --git a/docs/verification/managed-conformance-manifest.json b/docs/verification/managed-conformance-manifest.json
index 303695bd9..7fca4219e 100644
--- a/docs/verification/managed-conformance-manifest.json
+++ b/docs/verification/managed-conformance-manifest.json
@@ -1,5 +1,5 @@
{
- "manifest_id": "ecm_1cd8dcd8881d15dcd8ff0829cb45f1cb14501e5de6c36f6c968a986b7c022daf",
+ "manifest_id": "ecm_b3da2d10df0f03a654528fe4101f68084d4b9476bba072508c30564c5468e349",
"verifier": {
"id": "rea-managed-conformance",
"version": "1"
@@ -13,7 +13,7 @@
"skill_digests": [
{
"skill_id": "reverse-engineer-anything",
- "sha256": "d337de130efddaaee02ecef46a3e4ecb5ee2520ad9594a48ae4e471253c5f781"
+ "sha256": "10c7b7d80d72e8ec4faa3f17a57e4563907ecac5533d22645c43ba932f9dcc13"
}
],
"claims": [
diff --git a/knip.json b/knip.json
index 9ce07cf8e..5ac657f65 100644
--- a/knip.json
+++ b/knip.json
@@ -5,6 +5,7 @@
"vitepress": {
"entry": ["docs/.vitepress/config.ts"]
},
+ "ignoreBinaries": ["mkfifo"],
"ignoreDependencies": ["electron", "esbuild", "webpack"],
"ignoreExportsUsedInFile": true,
"rules": {
diff --git a/package.json b/package.json
index 706820230..bfdb50a05 100644
--- a/package.json
+++ b/package.json
@@ -42,6 +42,7 @@
"dist",
"install.sh",
"bridge/hopper_bridge.py",
+ "bridge/native/NativeUIChildren.swift",
"bridge/native/ReaNativeUI.swift",
"bridge/ghidra/ReaGhidraBridge.java",
"bridge/ghidra/ReaGhidraExtensions.java",
@@ -120,16 +121,17 @@
"typecheck": "tsc --noEmit",
"verify:test-temp-hygiene": "npm run build:cached && node scripts/verify-test-temp-hygiene.mjs",
"verify:hopper": "npm run verify:fixtures && npm run build:cached && node scripts/verify-real-hopper.mjs",
- "verify:apple-dispatch": "npm run build:cached && node scripts/verify-apple-dispatch.mjs",
+ "verify:apple-dispatch": "npm run build:cached && node scripts/verify/apple/dispatch.mjs",
"verify:native-ui": "npm run build:cached && node scripts/verify-native-ui.mjs",
- "verify:keyed-archive": "npm run build:cached && node scripts/verify-keyed-archive.mjs",
+ "verify:keyed-archive": "npm run build:cached && node scripts/verify/apple/keyed-archive.mjs",
+ "verify:macos-bundle": "npm run build:cached && node scripts/verify/apple/macos-bundle.mjs",
"verify:ghidra": "npm run build:cached && node scripts/verify-real-ghidra.mjs",
"verify:ida": "npm run build:cached && node scripts/verify-real-ida.mjs",
"verify:ghidra:switch": "npm run build:cached && node scripts/verify-real-ghidra-switch.mjs",
"verify:ghidra:dos": "npm run build:cached && node scripts/verify-real-ghidra-dos.mjs",
"verify:ghidra:com": "npm run build:cached && node scripts/verify-real-ghidra-com.mjs",
"verify:ghidra:aarch64-jump-table": "npm run build:cached && node scripts/verify-real-ghidra.mjs --aarch64-jump-table",
- "verify:interface-builder": "npm run build:cached && node scripts/verify-interface-builder.mjs",
+ "verify:interface-builder": "npm run build:cached && node scripts/verify/apple/interface-builder.mjs",
"verify:ghidra:cross-format": "npm run build:cached && node scripts/verify-real-ghidra.mjs --cross-format",
"verify:ghidra:windows": "npm run build:cached && npm run build:ghidra-windows-fixture && node scripts/verify-real-ghidra-windows.mjs",
"verify:browser": "npm run build:cached && node scripts/verify-real-browser.mjs",
@@ -140,7 +142,7 @@
"verify:javascript-runtime": "npm run build:cached && node scripts/verify/javascript/runtime-observation.mjs",
"verify:javascript:digests": "npm run build:cached && node scripts/verify/javascript/digests.mjs",
"verify:application-workflows": "npm run build:cached && node scripts/verify/javascript/application-workflows.mjs",
- "verify:managed": "npm run build:cached && node scripts/verify-managed-conformance.mjs",
+ "verify:managed": "npm run build:cached && node scripts/verify/managed/conformance.mjs",
"verify:firmware": "npm run build:cached && node scripts/verify/firmware/analysis.mjs",
"fixtures:firmware": "node scripts/fixtures/firmware/generate.mjs",
"verify:android": "npm run build:cached && node scripts/verify/android/analysis.mjs",
@@ -169,7 +171,7 @@
"docs:error-schema": "npm run build:cached && node scripts/generate-error-schema.mjs",
"prepack": "node scripts/prepack.mjs",
"prepare": "node scripts/prepare.mjs",
- "verify:asset-catalog": "npm run build:cached && node scripts/verify-asset-catalog.mjs",
+ "verify:asset-catalog": "npm run build:cached && node scripts/verify/apple/asset-catalog.mjs",
"verify:native-ui:permissions": "npm run build:cached && node scripts/verify-native-ui.mjs --allow-permission-denial",
"test:focused": "node scripts/run-development-tests.mjs focused",
"build:windows-native": "node scripts/build-windows-native.mjs",
diff --git a/scripts/fixtures/apple/macos-bundle.mjs b/scripts/fixtures/apple/macos-bundle.mjs
new file mode 100644
index 000000000..de2dcae81
--- /dev/null
+++ b/scripts/fixtures/apple/macos-bundle.mjs
@@ -0,0 +1,269 @@
+import { execFile } from "node:child_process";
+import { mkdir, rm, symlink, writeFile } from "node:fs/promises";
+import { dirname, join } from "node:path";
+import { promisify } from "node:util";
+
+const exec = promisify(execFile);
+
+/** Commands the macOS bundle fixture needs from Command Line Tools. */
+export const MACOS_BUNDLE_FIXTURE_COMMANDS = [
+ ["/usr/bin/xcrun", ["--find", "clang"]],
+ ["/usr/bin/xcrun", ["--find", "codesign"]],
+ ["/usr/bin/ditto", ["-h"]],
+ ["/usr/bin/hdiutil", ["help"]],
+];
+
+/** Fail with the missing command name before building any fixture. */
+export async function preflightMacosBundleFixture() {
+ if (process.platform !== "darwin")
+ throw new Error(
+ "macOS bundle verification requires a macOS host with Command Line Tools",
+ );
+ for (const [command, arguments_] of MACOS_BUNDLE_FIXTURE_COMMANDS)
+ try {
+ await exec(command, arguments_);
+ } catch (cause) {
+ // `ditto -h` and `hdiutil help` exit non-zero while printing usage.
+ if (cause?.code === "ENOENT")
+ throw new Error(
+ `macOS bundle verification requires ${command} ${arguments_.join(" ")}`,
+ { cause },
+ );
+ if (command === "/usr/bin/xcrun")
+ throw new Error(
+ `macOS bundle verification requires Command Line Tools (${arguments_.join(" ")} failed)`,
+ { cause },
+ );
+ }
+}
+
+const plist = (entries) =>
+ `
+
+
+
+${Object.entries(entries)
+ .map(([key, value]) => ` ${key}\n ${value}`)
+ .join("\n")}
+
+
+`;
+
+const bundlePlist = (identifier, executable, packageType = "APPL") =>
+ plist({
+ CFBundleIdentifier: identifier,
+ CFBundleExecutable: executable,
+ CFBundlePackageType: packageType,
+ });
+
+const write = async (path, text) => {
+ await mkdir(dirname(path), { recursive: true });
+ await writeFile(path, text);
+};
+
+/** Compile one C source beneath `root/sources` into `output`. */
+const clang = async (root, { name, source, output, flags = [] }) => {
+ const sourcePath = join(root, "sources", `${name}.c`);
+ await write(sourcePath, source);
+ await mkdir(dirname(output), { recursive: true });
+ await exec("/usr/bin/xcrun", [
+ "clang",
+ "-O0",
+ sourcePath,
+ "-o",
+ output,
+ ...flags,
+ ]);
+};
+
+const PROGRAM = `int main(void) { return 0; }\n`;
+
+/** A versioned framework whose own rpath supplies a second `libchain.dylib`. */
+const buildCoreFramework = async (root, frameworks) => {
+ const core = join(frameworks, "Core.framework");
+ const version = join(core, "Versions", "A");
+ const chainFlags = ["-dynamiclib", "-install_name", "@rpath/libchain.dylib"];
+ await clang(root, {
+ name: "chain-app",
+ source: `const char *chain_variant(void) { return "app"; }\n`,
+ output: join(frameworks, "libchain.dylib"),
+ flags: chainFlags,
+ });
+ await clang(root, {
+ name: "chain-framework",
+ source: `const char *chain_variant(void) { return "framework"; }\n`,
+ output: join(version, "Libraries", "libchain.dylib"),
+ flags: chainFlags,
+ });
+ await clang(root, {
+ name: "sibling",
+ source: `int sibling_value(void) { return 7; }\n`,
+ output: join(version, "libsibling.dylib"),
+ flags: ["-dynamiclib", "-install_name", "@loader_path/libsibling.dylib"],
+ });
+ await clang(root, {
+ name: "core",
+ source: `const char *chain_variant(void);
+int sibling_value(void);
+const char *core_chain(void) { return sibling_value() == 7 ? chain_variant() : "broken"; }
+`,
+ output: join(version, "Core"),
+ flags: [
+ "-dynamiclib",
+ "-install_name",
+ "@rpath/Core.framework/Versions/A/Core",
+ "-Wl,-rpath,@loader_path/Libraries",
+ join(version, "libsibling.dylib"),
+ join(version, "Libraries", "libchain.dylib"),
+ ],
+ });
+ await write(
+ join(version, "Resources", "Info.plist"),
+ bundlePlist("com.example.rea.core", "Core", "FMWK"),
+ );
+ const service = join(version, "XPCServices", "FwSvc.xpc", "Contents");
+ await clang(root, {
+ name: "framework-service",
+ source: PROGRAM,
+ output: join(service, "MacOS", "FwSvc"),
+ });
+ await write(
+ join(service, "Info.plist"),
+ bundlePlist("com.example.rea.core.service", "FwSvc", "XPC!"),
+ );
+ await symlink("A", join(core, "Versions", "Current"));
+ await symlink("Versions/Current/Core", join(core, "Core"));
+ await symlink("Versions/Current/Resources", join(core, "Resources"));
+ await symlink("Versions/Current/XPCServices", join(core, "XPCServices"));
+ return join(version, "Core");
+};
+
+/** The main executable, with a weak dependency deleted after linking. */
+const buildMainExecutable = async (root, contents, coreBinary) => {
+ const gone = join(contents, "Frameworks", "libgone.dylib");
+ await clang(root, {
+ name: "gone",
+ source: `int gone_value(void) { return 1; }\n`,
+ output: gone,
+ flags: ["-dynamiclib", "-install_name", "@rpath/libgone.dylib"],
+ });
+ const executable = join(contents, "MacOS", "MacFixture");
+ await clang(root, {
+ name: "main",
+ source: `#include
+const char *core_chain(void);
+extern int gone_value(void) __attribute__((weak_import));
+int main(void) {
+ printf("chain=%s weak=%s\\n", core_chain(), gone_value ? "present" : "absent");
+ return 0;
+}
+`,
+ output: executable,
+ flags: [
+ "-Wl,-rpath,@executable_path/../Frameworks",
+ coreBinary,
+ `-Wl,-weak_library,${gone}`,
+ ],
+ });
+ await rm(gone);
+ await write(
+ join(contents, "Info.plist"),
+ bundlePlist("com.example.rea.fixture", "MacFixture"),
+ );
+ return executable;
+};
+
+/** One `Contents/`-layout bundle with a trivial executable. */
+const buildNestedBundle = async (root, { bundle, executable, plist }) => {
+ await clang(root, {
+ name: executable,
+ source: PROGRAM,
+ output: join(bundle, "Contents", "MacOS", executable),
+ });
+ await write(join(bundle, "Contents", "Info.plist"), plist);
+};
+
+const buildNestedBundles = async (root, contents, coreBinary) => {
+ const service = join(contents, "XPCServices", "Svc.xpc", "Contents");
+ await clang(root, {
+ name: "service",
+ source: `const char *core_chain(void);
+int main(void) { return core_chain()[0] == 'b'; }
+`,
+ output: join(service, "MacOS", "Svc"),
+ flags: ["-Wl,-rpath,@executable_path/../../../../Frameworks", coreBinary],
+ });
+ await write(
+ join(service, "Info.plist"),
+ bundlePlist("com.example.rea.fixture.service", "Svc", "XPC!"),
+ );
+ await buildNestedBundle(root, {
+ bundle: join(contents, "PlugIns", "Ext.appex"),
+ executable: "Ext",
+ plist: bundlePlist("com.example.rea.fixture.extension", "Ext", "XPC!"),
+ });
+ await buildNestedBundle(root, {
+ bundle: join(contents, "Library", "LoginItems", "Login.app"),
+ executable: "Login",
+ plist: bundlePlist("com.example.rea.fixture.login", "Login"),
+ });
+};
+
+/** A privileged helper, its launchd plists, and a non-bundle helper tool. */
+const buildLaunchItems = async (root, contents) => {
+ await clang(root, {
+ name: "privileged-helper",
+ source: PROGRAM,
+ output: join(
+ contents,
+ "Library",
+ "LaunchServices",
+ "com.example.rea.helper",
+ ),
+ });
+ await write(
+ join(contents, "Library", "LaunchDaemons", "com.example.rea.helper.plist"),
+ plist({
+ Label: "com.example.rea.helper",
+ BundleProgram: "Contents/Library/LaunchServices/com.example.rea.helper",
+ }),
+ );
+ await write(
+ join(contents, "Library", "LaunchAgents", "com.example.rea.agent.plist"),
+ plist({
+ Label: "com.example.rea.agent",
+ BundleProgram: "Contents/Helpers/rea-tool",
+ }),
+ );
+ await clang(root, {
+ name: "tool",
+ source: PROGRAM,
+ output: join(contents, "Helpers", "rea-tool"),
+ });
+};
+
+/**
+ * Build `MacFixture.app` with every bundle role and dylib-loading shape REA
+ * projects. The main executable prints which `libchain.dylib` copy dyld
+ * selected, so callers can compare static resolution with a real load.
+ */
+export async function buildMacosBundleFixture(root) {
+ const app = join(root, "MacFixture.app");
+ const contents = join(app, "Contents");
+ const coreBinary = await buildCoreFramework(
+ root,
+ join(contents, "Frameworks"),
+ );
+ const executable = await buildMainExecutable(root, contents, coreBinary);
+ await buildNestedBundles(root, contents, coreBinary);
+ await buildLaunchItems(root, contents);
+ await exec("/usr/bin/xcrun", [
+ "codesign",
+ "--force",
+ "--deep",
+ "--sign",
+ "-",
+ app,
+ ]);
+ return { app, executable };
+}
diff --git a/scripts/lib/managed-pe-fixture.d.mts b/scripts/fixtures/managed/pe.d.mts
similarity index 100%
rename from scripts/lib/managed-pe-fixture.d.mts
rename to scripts/fixtures/managed/pe.d.mts
diff --git a/scripts/lib/managed-pe-fixture.mjs b/scripts/fixtures/managed/pe.mjs
similarity index 100%
rename from scripts/lib/managed-pe-fixture.mjs
rename to scripts/fixtures/managed/pe.mjs
diff --git a/scripts/generate-completion-ledger.mjs b/scripts/generate-completion-ledger.mjs
index 6242313cc..fa3bf6b4a 100644
--- a/scripts/generate-completion-ledger.mjs
+++ b/scripts/generate-completion-ledger.mjs
@@ -22,7 +22,7 @@ delete verifierEnvironment.REA_ILSPY_CMD_PATH;
const { stdout } = await exec(
process.execPath,
- [join(root, "scripts/verify-managed-conformance.mjs")],
+ [join(root, "scripts/verify/managed/conformance.mjs")],
{
cwd: root,
env: verifierEnvironment,
diff --git a/scripts/generate-mcp-tool-catalog.mjs b/scripts/generate-mcp-tool-catalog.mjs
index d66d9b4ce..7d44af653 100644
--- a/scripts/generate-mcp-tool-catalog.mjs
+++ b/scripts/generate-mcp-tool-catalog.mjs
@@ -6,7 +6,7 @@ import { Ajv2020 } from "ajv/dist/2020.js";
import { McpServer } from "@modelcontextprotocol/server";
import { TOOL_CONTRACTS } from "../dist/contracts/toolContracts.js";
-import { MANAGED_WORKFLOW_TOOL_CONTRACTS } from "../dist/contracts/managedWorkflowToolContracts.js";
+import { MANAGED_WORKFLOW_TOOL_CONTRACTS } from "../dist/contracts/managed/managedWorkflowToolContracts.js";
import { auxiliaryAnalysisProviderDeclarations } from "../dist/composition/auxiliaryAnalysisProviders.js";
import { toolRegistrationOptions } from "../dist/server/toolRegistrationOptions.js";
import { ensureGeneratedFile } from "./lib/generated-file.mjs";
diff --git a/scripts/hopper-demo-x11.py b/scripts/hopper-demo-x11.py
index f71f434a9..936f8e9e7 100644
--- a/scripts/hopper-demo-x11.py
+++ b/scripts/hopper-demo-x11.py
@@ -20,7 +20,8 @@ import time
# Keep this digest aligned with LinuxHopper.ts and rerun real-Hopper verification
# before accepting another vendor build.
SUPPORTED_HOPPER_SHA256 = {
- "0294ced141cc373468ee22d8343e7dac41980cb05a937994ca81c9f09afe7ded"
+ "0294ced141cc373468ee22d8343e7dac41980cb05a937994ca81c9f09afe7ded",
+ "1339f9e58377442b0c6fcb0dfc3cec20d593cc557408521fad9a00dbc6b8da13",
}
EXPECTED_SCREEN = (1280, 1024)
EXPECTED_DIALOG = (189, 370, 901, 284)
diff --git a/scripts/lib/artifact-e2e.mjs b/scripts/lib/artifact-e2e.mjs
index 4e74b7726..f51327fff 100644
--- a/scripts/lib/artifact-e2e.mjs
+++ b/scripts/lib/artifact-e2e.mjs
@@ -15,6 +15,12 @@ const environment = () => ({
/** Execute the compiled CLI with production providers and no test adapters. */
export async function artifactCli(command, target, arguments_ = []) {
+ return (await artifactCliEvidence(command, target, arguments_))
+ .normalized_result;
+}
+
+/** Execute the compiled CLI and return its complete Evidence record. */
+export async function artifactCliEvidence(command, target, arguments_ = []) {
const { stdout } = await promisify(execFile)(
process.execPath,
[
@@ -29,7 +35,7 @@ export async function artifactCli(command, target, arguments_ = []) {
const evidence = JSON.parse(stdout);
assert.equal(evidence.error, undefined, stdout);
assert.ok(evidence.normalized_result, "CLI omitted normalized result");
- return evidence.normalized_result;
+ return evidence;
}
/** Run a real stdio MCP subprocess, owning and closing its transport. */
diff --git a/scripts/lib/catalog-core.mjs b/scripts/lib/catalog-core.mjs
index a1559d4c8..5c1ae369c 100644
--- a/scripts/lib/catalog-core.mjs
+++ b/scripts/lib/catalog-core.mjs
@@ -42,12 +42,13 @@ const SOURCE_PATHS = {
sessionContracts: "dist/contracts/sessionToolContracts.js",
nativeContracts: "dist/contracts/nativeToolContracts.js",
artifactContracts: "dist/contracts/artifactToolContracts.js",
- managedContracts: "dist/contracts/managedToolContracts.js",
+ managedContracts: "dist/contracts/managed/managedToolContracts.js",
firmwareContracts: "dist/contracts/firmware/firmwareToolContracts.js",
firmwareProvider: "dist/firmware/FirmwareRelease.js",
androidContracts: "dist/contracts/android/androidToolContracts.js",
androidProvider: "dist/android/JadxRelease.js",
- managedWorkflowContracts: "dist/contracts/managedWorkflowToolContracts.js",
+ managedWorkflowContracts:
+ "dist/contracts/managed/managedWorkflowToolContracts.js",
browserContracts: "dist/contracts/browserToolContracts.js",
browserScenarioContracts: "dist/contracts/browserScenarioToolContracts.js",
electronContracts: "dist/contracts/javascript/electronToolContracts.js",
@@ -88,9 +89,9 @@ const SOURCE_PATHS = {
"dist/domain/javascript/javascriptRuntimeObservation.js",
webBundleAnalysis: "dist/domain/webBundleAnalysis.js",
webCaptureDiff: "dist/domain/webCaptureDiff.js",
- managedArtifact: "dist/domain/managedArtifact.js",
- managedComparison: "dist/domain/managedMemberComparison.js",
- managedNativeVerification: "dist/domain/managedNativeVerification.js",
+ managedArtifact: "dist/domain/managed/managedArtifact.js",
+ managedComparison: "dist/domain/managed/managedMemberComparison.js",
+ managedNativeVerification: "dist/domain/managed/managedNativeVerification.js",
webMcpDiscovery: "dist/domain/webMcpDiscovery.js",
webScreenshot: "dist/domain/webScreenshot.js",
javascriptApplicationGraph:
diff --git a/scripts/lib/module-boundaries.mjs b/scripts/lib/module-boundaries.mjs
index e43ccd44c..ca1e4d933 100644
--- a/scripts/lib/module-boundaries.mjs
+++ b/scripts/lib/module-boundaries.mjs
@@ -69,6 +69,7 @@ const failedBoundary = (file, target) => {
return "provider-construction";
if (
(file.startsWith("src/artifacts/javascript/") ||
+ file.startsWith("src/artifacts/apple/") ||
/^src\/artifacts\/ArtifactHash\.(?:js|ts)$/u.test(file)) &&
(["application", "composition", "server", "cli", "main"].includes(
targetLayer,
diff --git a/scripts/prepare-website.py b/scripts/prepare-website.py
new file mode 100644
index 000000000..1abc9c39d
--- /dev/null
+++ b/scripts/prepare-website.py
@@ -0,0 +1,40 @@
+"""Package the public Notes example for the static website."""
+
+from io import BytesIO
+from pathlib import Path
+from zipfile import ZIP_DEFLATED, ZipFile, ZipInfo
+
+
+EXAMPLE_FILES = (
+ "package.json",
+ "main.js",
+ "preload.js",
+ "renderer.js",
+ "csv.js",
+ "index.html",
+)
+
+
+def prepare_notes_example(site):
+ """Create a ZIP with public source only and reproducible metadata."""
+ source = site / "examples/notes-electron"
+ contents = BytesIO()
+ with ZipFile(contents, "w") as archive:
+ for name in EXAMPLE_FILES:
+ entry = ZipInfo(f"notes-example/{name}", (1980, 1, 1, 0, 0, 0))
+ entry.create_system = 3
+ entry.external_attr = 0o100644 << 16
+ archive.writestr(
+ entry,
+ (source / name).read_bytes(),
+ compress_type=ZIP_DEFLATED,
+ compresslevel=9,
+ )
+ destination = site / "examples/notes-example.zip"
+ destination.write_bytes(contents.getvalue())
+ print(f"Prepared examples/notes-example.zip ({len(EXAMPLE_FILES)} files).")
+
+
+if __name__ == "__main__":
+ root = Path(__file__).resolve().parent.parent
+ prepare_notes_example(root / "website/public")
diff --git a/scripts/verify-apple-dispatch.mjs b/scripts/verify-apple-dispatch.mjs
deleted file mode 100644
index 2b6a576f2..000000000
--- a/scripts/verify-apple-dispatch.mjs
+++ /dev/null
@@ -1,133 +0,0 @@
-import { execFile } from "node:child_process";
-import { mkdtemp, rm } from "node:fs/promises";
-import { tmpdir } from "node:os";
-import { join } from "node:path";
-import { fileURLToPath } from "node:url";
-import { promisify } from "node:util";
-import { parseBinaryTarget } from "../dist/application/BinaryTargetResolver.js";
-import { inspectAppleDispatchMetadata } from "../dist/native/AppleDispatchMetadata.js";
-
-if (process.platform !== "darwin")
- throw new Error(
- "Apple dispatch verification requires macOS with a host Objective-C compiler and Foundation SDK",
- );
-const exec = promisify(execFile);
-const root = await mkdtemp(join(tmpdir(), "rea-dispatch-"));
-try {
- const targetPath = join(root, "fixture");
- await exec("/usr/bin/xcrun", [
- "clang",
- "-O2",
- "-framework",
- "Foundation",
- "-Wl,-no_fixup_chains",
- fileURLToPath(
- new URL("../tests/conformance/native/dispatch.m", import.meta.url),
- ),
- "-o",
- targetPath,
- ]);
- const results = [];
- for (const variant of ["symbols", "stripped"]) {
- if (variant === "stripped")
- await exec("/usr/bin/strip", ["-x", targetPath]);
- const target = await parseBinaryTarget(targetPath);
- if (!target.ok) throw target.error;
- const observation = await inspectAppleDispatchMetadata(target.value, 5000);
- const metadata = observation.result;
- if (
- !metadata.objc_dispatch_implementations.some(
- (item) =>
- item.class_name === "ReaDispatchFixture" &&
- item.selector === "performAction:" &&
- item.implementation_address !== null,
- ) ||
- !metadata.objc_dispatch_implementations.some(
- (item) =>
- item.selector === "fixtureVersion" && item.method_type === "class",
- ) ||
- !metadata.objc_ivars.some(
- (item) => item.name === "state" && item.offset !== null,
- ) ||
- !metadata.objc_protocol_records.some(
- (protocol) =>
- protocol.name === "ReaDispatchProtocol" &&
- protocol.methods.some(
- (method) => method.selector === "performAction:",
- ) &&
- protocol.optional_methods.some(
- (method) => method.selector === "optionalFixtureValue",
- ),
- )
- )
- throw new Error(
- `Apple metadata fixture drifted: ${JSON.stringify(observation)}`,
- );
- results.push({
- variant,
- target_sha256: target.value.sha256,
- implementations: metadata.objc_dispatch_implementations.length,
- ivars: metadata.objc_ivars.length,
- coverage: metadata.coverage,
- });
- }
- const swiftPath = join(root, "libReaWitnessFixture.dylib");
- await exec("/usr/bin/xcrun", [
- "swiftc",
- "-emit-library",
- "-O",
- "-Xlinker",
- "-no_fixup_chains",
- fileURLToPath(
- new URL("../tests/conformance/native/dispatch.swift", import.meta.url),
- ),
- "-o",
- swiftPath,
- ]);
- for (const variant of ["swift-symbols", "swift-stripped"]) {
- if (variant === "swift-stripped")
- await exec("/usr/bin/strip", ["-x", swiftPath]);
- const target = await parseBinaryTarget(swiftPath);
- if (!target.ok) throw target.error;
- const observation = await inspectAppleDispatchMetadata(target.value, 5000);
- const metadata = observation.result;
- if (
- !metadata.swift_dispatch_slots.some(
- (slot) =>
- slot.table_kind === "class_vtable" &&
- slot.owner === "ReaVtableFixture" &&
- slot.decode.status === "decoded",
- )
- )
- throw new Error(
- `Swift class vtable fixture unavailable: ${JSON.stringify(metadata.coverage)}`,
- );
- if (
- !metadata.swift_conformances.some(
- (item) =>
- item.type_name === "ReaWitnessFixture" &&
- item.protocol_name === "ReaWitnessFixtureProtocol",
- ) ||
- !metadata.swift_dispatch_slots.some(
- (item) =>
- item.owner === "ReaWitnessFixture: ReaWitnessFixtureProtocol" &&
- item.implementation_address !== null,
- )
- )
- throw new Error(
- `Swift metadata fixture drifted: ${JSON.stringify(observation)}`,
- );
- results.push({
- variant,
- target_sha256: target.value.sha256,
- conformances: metadata.swift_conformances.length,
- slots: metadata.swift_dispatch_slots.length,
- coverage: metadata.coverage,
- });
- }
- process.stdout.write(
- `${JSON.stringify({ ok: true, target_executed: false, fixtures: results })}\n`,
- );
-} finally {
- await rm(root, { recursive: true, force: true });
-}
diff --git a/scripts/verify-native-ui.mjs b/scripts/verify-native-ui.mjs
index 9040f384a..f76af57d1 100644
--- a/scripts/verify-native-ui.mjs
+++ b/scripts/verify-native-ui.mjs
@@ -15,6 +15,23 @@ const root = await mkdtemp(join(tmpdir(), "rea-ui-fixture-"));
let child;
let fixturePid;
try {
+ const childRetrievalTest = join(root, "child-retrieval-test");
+ await promisify(execFile)("/usr/bin/xcrun", [
+ "swiftc",
+ fileURLToPath(
+ new URL("../bridge/native/NativeUIChildren.swift", import.meta.url),
+ ),
+ fileURLToPath(
+ new URL(
+ "../tests/conformance/native/native-ui-children/main.swift",
+ import.meta.url,
+ ),
+ ),
+ "-o",
+ childRetrievalTest,
+ ]);
+ await promisify(execFile)(childRetrievalTest, []);
+
const contents = join(root, "Fixture.app", "Contents");
await mkdir(join(contents, "MacOS"), { recursive: true });
await writeFile(
@@ -82,7 +99,6 @@ try {
"capture_native_ui_scenario",
{
...scope,
- restore: "leave-as-is",
screenshot: false,
steps: [
{ kind: "click", path: button.path },
@@ -111,8 +127,6 @@ try {
String(scope.pid),
"--window-id",
String(scope.window_id),
- "--restore",
- "leave-as-is",
"--steps",
JSON.stringify([
{ kind: "click", path: button.path },
diff --git a/scripts/verify-package-managed.mjs b/scripts/verify-package-managed.mjs
index 3f1d1c5c5..16ef56993 100644
--- a/scripts/verify-package-managed.mjs
+++ b/scripts/verify-package-managed.mjs
@@ -2,7 +2,7 @@ import { writeFile } from "node:fs/promises";
import { join } from "node:path";
import { createEvidence } from "../dist/domain/evidence.js";
-import { buildManagedPeFixture } from "./lib/managed-pe-fixture.mjs";
+import { buildManagedPeFixture } from "./fixtures/managed/pe.mjs";
import { functionDossier, json, run } from "./lib/verify-package-core.mjs";
const buildManagedFixtures = async (workspace) => {
diff --git a/scripts/verify-website.py b/scripts/verify-website.py
index 60e8e0b0f..d6f4a6be0 100644
--- a/scripts/verify-website.py
+++ b/scripts/verify-website.py
@@ -6,6 +6,7 @@ import re
import sys
from urllib.parse import unquote, urlsplit
import xml.etree.ElementTree as ET
+from zipfile import BadZipFile, ZipFile
class HtmlReferences(HTMLParser):
@@ -89,15 +90,39 @@ def check_publisher(root):
return []
+def check_example_archive(site):
+ """Verify the downloadable ZIP contains the current six source files."""
+ source = site / "examples/notes-electron"
+ expected = {
+ f"notes-example/{name}": source / name
+ for name in ("package.json", "main.js", "preload.js", "renderer.js", "csv.js", "index.html")
+ }
+ path = site / "examples/notes-example.zip"
+ if not path.is_file():
+ return ["Notes example ZIP is missing; run python3 scripts/prepare-website.py."]
+ try:
+ with ZipFile(path) as archive:
+ if sorted(archive.namelist()) != sorted(expected):
+ return ["Notes example ZIP must contain exactly the six files in notes-example/."]
+ return [
+ f"Notes example ZIP has stale source: {name}"
+ for name, original in expected.items()
+ if archive.read(name) != original.read_bytes()
+ ]
+ except (BadZipFile, RuntimeError) as error:
+ return [f"Notes example ZIP cannot be read: {error}"]
+
+
def main():
"""Run the same checks locally, on website PRs and before publishing."""
root = Path(__file__).resolve().parent.parent
pages, references, errors = check_site(root / "website/public")
+ errors.extend(check_example_archive(root / "website/public"))
errors.extend(check_publisher(root))
if errors:
print("Website checks failed:\n" + "\n".join(errors), file=sys.stderr)
return 1
- print(f"Verified {pages} HTML pages, {references} local references and SVG XML.")
+ print(f"Verified {pages} HTML pages, {references} local references, SVG XML and the example ZIP.")
print("website-pages.yml is the sole GitHub Pages publisher.")
return 0
diff --git a/scripts/verify-asset-catalog.mjs b/scripts/verify/apple/asset-catalog.mjs
similarity index 93%
rename from scripts/verify-asset-catalog.mjs
rename to scripts/verify/apple/asset-catalog.mjs
index 84087f371..8a62396f1 100644
--- a/scripts/verify-asset-catalog.mjs
+++ b/scripts/verify/apple/asset-catalog.mjs
@@ -10,7 +10,7 @@ import {
artifactCli,
artifactMcpResult,
withArtifactMcp,
-} from "./lib/artifact-e2e.mjs";
+} from "../../lib/artifact-e2e.mjs";
if (process.platform !== "darwin")
throw new Error(
@@ -30,7 +30,7 @@ try {
"clang",
fileURLToPath(
new URL(
- "../tests/conformance/interface-builder/fixture.c",
+ "../../../tests/conformance/interface-builder/fixture.c",
import.meta.url,
),
),
@@ -44,7 +44,10 @@ try {
await exec("/usr/bin/xcrun", [
"actool",
fileURLToPath(
- new URL("../tests/conformance/native/Assets.xcassets", import.meta.url),
+ new URL(
+ "../../../tests/conformance/native/Assets.xcassets",
+ import.meta.url,
+ ),
),
"--compile",
resources,
diff --git a/scripts/verify/apple/dispatch.mjs b/scripts/verify/apple/dispatch.mjs
new file mode 100644
index 000000000..3e108c10e
--- /dev/null
+++ b/scripts/verify/apple/dispatch.mjs
@@ -0,0 +1,205 @@
+import { execFile } from "node:child_process";
+import { mkdtemp, rm } from "node:fs/promises";
+import { tmpdir } from "node:os";
+import { join } from "node:path";
+import { fileURLToPath } from "node:url";
+import { promisify } from "node:util";
+import { parseBinaryTarget } from "../../../dist/application/BinaryTargetResolver.js";
+import { inspectAppleDispatchMetadata } from "../../../dist/native/AppleDispatchMetadata.js";
+
+if (process.platform !== "darwin")
+ throw new Error(
+ "Apple dispatch verification requires macOS with a host Objective-C compiler and Foundation SDK",
+ );
+const exec = promisify(execFile);
+const source = (name) =>
+ fileURLToPath(
+ new URL(`../../../tests/conformance/native/${name}`, import.meta.url),
+ );
+
+/** Both link modes: legacy LC_DYLD_INFO binds and the default chained fixups. */
+const LINK_MODES = [
+ {
+ mode: "dyld-info",
+ flags: ["-Wl,-no_fixup_chains"],
+ fixups: "LC_DYLD_INFO bind opcodes",
+ swift: true,
+ },
+ { mode: "chained", flags: [], fixups: "chained fixups:", swift: true },
+ // arm64e uses authenticated chained pointers (DYLD_CHAINED_PTR_ARM64E_*).
+ ...(process.arch === "arm64"
+ ? [
+ {
+ mode: "chained-arm64e",
+ flags: ["-arch", "arm64e"],
+ fixups: "chained fixups: DYLD_CHAINED_PTR_ARM64E",
+ swift: false,
+ },
+ ]
+ : []),
+];
+
+const fixupCoverage = (metadata) =>
+ metadata.coverage.find(({ facet }) => facet === "pointer_fixups");
+
+const inspect = async (path) => {
+ const target = await parseBinaryTarget(path);
+ if (!target.ok) throw target.error;
+ return {
+ target: target.value,
+ metadata: (await inspectAppleDispatchMetadata(target.value, 5000)).result,
+ };
+};
+
+const checkObjc = (metadata, mode) => {
+ const fixture = metadata.objc_classes.find(
+ ({ name, is_meta_class: meta }) => name === "ReaDispatchFixture" && !meta,
+ );
+ const category = metadata.objc_categories.find(
+ ({ name }) => name === "ReaDispatchAdditions",
+ );
+ const objcCoverage = metadata.coverage.find(
+ ({ facet }) => facet === "objc_class_method_ivar_metadata",
+ );
+ if (
+ !metadata.objc_dispatch_implementations.some(
+ (item) =>
+ item.class_name === "ReaDispatchFixture" &&
+ item.selector === "performAction:" &&
+ item.implementation_address !== null,
+ ) ||
+ !metadata.objc_dispatch_implementations.some(
+ (item) =>
+ item.selector === "fixtureVersion" && item.method_type === "class",
+ ) ||
+ !metadata.objc_ivars.some(
+ (item) => item.name === "state" && item.offset !== null,
+ ) ||
+ !metadata.objc_protocol_records.some(
+ (protocol) =>
+ protocol.name === "ReaDispatchProtocol" &&
+ protocol.methods.some(
+ (method) => method.selector === "performAction:",
+ ) &&
+ protocol.optional_methods.some(
+ (method) => method.selector === "optionalFixtureValue",
+ ),
+ ) ||
+ // The superclass lives in libobjc, so it comes from a bind fixup.
+ fixture?.super_class !== "NSObject" ||
+ fixture.decode.status !== "decoded" ||
+ !fixture.properties.some(
+ (property) =>
+ property.name === "fixtureName" &&
+ property.type_encoding === '@"NSString"' &&
+ property.attributes.some(({ name }) => name === "C"),
+ ) ||
+ category?.class_name !== "NSString" ||
+ category.class_source !== "external" ||
+ !category.instance_methods.includes("reaFixtureLength") ||
+ !metadata.objc_dispatch_implementations.some(
+ (item) =>
+ item.class_name === "NSString" &&
+ item.category === "ReaDispatchAdditions" &&
+ item.selector === "reaFixtureLength",
+ ) ||
+ objcCoverage?.status !== "complete" ||
+ fixupCoverage(metadata)?.reason?.startsWith(mode.fixups) !== true
+ )
+ throw new Error(
+ `Apple metadata fixture drifted (${mode.mode}): ${JSON.stringify(metadata)}`,
+ );
+};
+
+const checkSwift = (metadata, mode) => {
+ if (
+ !metadata.swift_dispatch_slots.some(
+ (slot) =>
+ slot.table_kind === "class_vtable" &&
+ slot.owner === "ReaVtableFixture" &&
+ slot.decode.status === "decoded",
+ )
+ )
+ throw new Error(
+ `Swift class vtable fixture unavailable (${mode.mode}): ${JSON.stringify(metadata.coverage)}`,
+ );
+ if (
+ !metadata.swift_conformances.some(
+ (item) =>
+ item.type_name === "ReaWitnessFixture" &&
+ item.protocol_name === "ReaWitnessFixtureProtocol",
+ ) ||
+ !metadata.swift_dispatch_slots.some(
+ (item) =>
+ item.owner === "ReaWitnessFixture: ReaWitnessFixtureProtocol" &&
+ item.implementation_address !== null,
+ ) ||
+ fixupCoverage(metadata)?.reason?.startsWith(mode.fixups) !== true
+ )
+ throw new Error(
+ `Swift metadata fixture drifted (${mode.mode}): ${JSON.stringify(metadata)}`,
+ );
+};
+
+const root = await mkdtemp(join(tmpdir(), "rea-dispatch-"));
+try {
+ const results = [];
+ for (const mode of LINK_MODES) {
+ const objcPath = join(root, `fixture-${mode.mode}`);
+ await exec("/usr/bin/xcrun", [
+ "clang",
+ "-O2",
+ "-framework",
+ "Foundation",
+ ...mode.flags,
+ source("dispatch.m"),
+ "-o",
+ objcPath,
+ ]);
+ for (const variant of ["symbols", "stripped"]) {
+ if (variant === "stripped")
+ await exec("/usr/bin/strip", ["-x", objcPath]);
+ const { target, metadata } = await inspect(objcPath);
+ checkObjc(metadata, mode);
+ results.push({
+ variant: `objc-${mode.mode}-${variant}`,
+ target_sha256: target.sha256,
+ classes: metadata.objc_classes.length,
+ categories: metadata.objc_categories.length,
+ implementations: metadata.objc_dispatch_implementations.length,
+ fixups: fixupCoverage(metadata)?.reason,
+ });
+ }
+ if (!mode.swift) continue;
+ const swiftPath = join(root, `libReaWitnessFixture-${mode.mode}.dylib`);
+ await exec("/usr/bin/xcrun", [
+ "swiftc",
+ "-emit-library",
+ "-O",
+ ...mode.flags
+ .map((flag) => flag.replace(/^-Wl,/u, "-Xlinker\0"))
+ .flatMap((flag) => flag.split("\0")),
+ source("dispatch.swift"),
+ "-o",
+ swiftPath,
+ ]);
+ for (const variant of ["symbols", "stripped"]) {
+ if (variant === "stripped")
+ await exec("/usr/bin/strip", ["-x", swiftPath]);
+ const { target, metadata } = await inspect(swiftPath);
+ checkSwift(metadata, mode);
+ results.push({
+ variant: `swift-${mode.mode}-${variant}`,
+ target_sha256: target.sha256,
+ conformances: metadata.swift_conformances.length,
+ slots: metadata.swift_dispatch_slots.length,
+ fixups: fixupCoverage(metadata)?.reason,
+ });
+ }
+ }
+ process.stdout.write(
+ `${JSON.stringify({ ok: true, target_executed: false, fixtures: results })}\n`,
+ );
+} finally {
+ await rm(root, { recursive: true, force: true });
+}
diff --git a/scripts/verify-interface-builder.mjs b/scripts/verify/apple/interface-builder.mjs
similarity index 93%
rename from scripts/verify-interface-builder.mjs
rename to scripts/verify/apple/interface-builder.mjs
index 350411dd0..1f8ec323e 100644
--- a/scripts/verify-interface-builder.mjs
+++ b/scripts/verify/apple/interface-builder.mjs
@@ -8,8 +8,8 @@ import { join } from "node:path";
import { fileURLToPath } from "node:url";
import { promisify } from "node:util";
-import { parseBinaryTarget } from "../dist/application/BinaryTargetResolver.js";
-import { ArtifactProvider } from "../dist/artifacts/ArtifactProvider.js";
+import { parseBinaryTarget } from "../../../dist/application/BinaryTargetResolver.js";
+import { ArtifactProvider } from "../../../dist/artifacts/ArtifactProvider.js";
const exec = promisify(execFile);
const fixtureRoot = await mkdtemp(join(tmpdir(), "rea-interface-builder-"));
@@ -18,7 +18,7 @@ const resourcesPath = join(appPath, "Contents", "Resources");
const executablePath = join(appPath, "Contents", "MacOS", "Fixture");
const nibPath = join(resourcesPath, "Main.nib");
const sourceRoot = fileURLToPath(
- new URL("../tests/conformance/interface-builder/", import.meta.url),
+ new URL("../../../tests/conformance/interface-builder/", import.meta.url),
);
try {
diff --git a/scripts/verify-keyed-archive.mjs b/scripts/verify/apple/keyed-archive.mjs
similarity index 94%
rename from scripts/verify-keyed-archive.mjs
rename to scripts/verify/apple/keyed-archive.mjs
index b9f9aa480..924c3bb0e 100644
--- a/scripts/verify-keyed-archive.mjs
+++ b/scripts/verify/apple/keyed-archive.mjs
@@ -10,7 +10,7 @@ import {
artifactCli,
artifactMcpResult,
withArtifactMcp,
-} from "./lib/artifact-e2e.mjs";
+} from "../../lib/artifact-e2e.mjs";
if (process.platform !== "darwin")
throw new Error(
@@ -25,7 +25,7 @@ try {
join(root, "modules"),
fileURLToPath(
new URL(
- "../tests/conformance/native/keyed-archive.swift",
+ "../../../tests/conformance/native/keyed-archive.swift",
import.meta.url,
),
),
@@ -66,7 +66,7 @@ try {
const expected = JSON.parse(
await readFile(
new URL(
- "../tests/fixtures/golden/keyed-archive/graph.json",
+ "../../../tests/fixtures/golden/keyed-archive/graph.json",
import.meta.url,
),
"utf8",
@@ -124,7 +124,7 @@ try {
join(root, "modules"),
fileURLToPath(
new URL(
- "../tests/conformance/native/keyed-archive-uid-root.swift",
+ "../../../tests/conformance/native/keyed-archive-uid-root.swift",
import.meta.url,
),
),
diff --git a/scripts/verify/apple/macos-bundle.mjs b/scripts/verify/apple/macos-bundle.mjs
new file mode 100644
index 000000000..bc4522b73
--- /dev/null
+++ b/scripts/verify/apple/macos-bundle.mjs
@@ -0,0 +1,167 @@
+import assert from "node:assert/strict";
+import { execFile } from "node:child_process";
+import { mkdir, mkdtemp, rm, symlink, writeFile } from "node:fs/promises";
+import { tmpdir } from "node:os";
+import { join } from "node:path";
+import { promisify } from "node:util";
+
+import {
+ artifactCliEvidence,
+ artifactMcpResult,
+ withArtifactMcp,
+} from "../../lib/artifact-e2e.mjs";
+import {
+ buildMacosBundleFixture,
+ preflightMacosBundleFixture,
+} from "../../fixtures/apple/macos-bundle.mjs";
+
+const exec = promisify(execFile);
+
+await preflightMacosBundleFixture();
+const root = await mkdtemp(join(tmpdir(), "rea-macos-bundle-"));
+
+/** Bundle roles relative to the application root, independent of the container. */
+const anatomy = (projection, applicationRoot) => {
+ const relative = (path) =>
+ applicationRoot === "."
+ ? path
+ : path === applicationRoot
+ ? "."
+ : path.slice(applicationRoot.length + 1);
+ const paths = (components) =>
+ components.map(({ path }) => relative(path)).sort();
+ return {
+ bundles: projection.bundles.map((bundle) => ({
+ path: relative(bundle.path),
+ role: bundle.role,
+ layout: bundle.layout,
+ parent: bundle.parent_path === null ? null : relative(bundle.parent_path),
+ info_plist: bundle.info_plist_path && relative(bundle.info_plist_path),
+ executables: bundle.executable_candidates.map(relative),
+ signing: bundle.signing_paths.map(relative),
+ })),
+ privileged_helpers: paths(projection.components.privileged_helpers),
+ launchd_plists: projection.components.launchd_plists
+ .map(({ path, domain }) => `${domain}:${relative(path)}`)
+ .sort(),
+ helpers: paths(projection.components.helpers),
+ };
+};
+
+const FRAMEWORK = "Contents/Frameworks/Core.framework";
+const EXPECTED_BUNDLES = [
+ [".", "application", "macos-deep", null],
+ [FRAMEWORK, "framework", "versioned-framework", "."],
+ [
+ `${FRAMEWORK}/Versions/A/XPCServices/FwSvc.xpc`,
+ "xpc-service",
+ "macos-deep",
+ FRAMEWORK,
+ ],
+ ["Contents/Library/LoginItems/Login.app", "login-item", "macos-deep", "."],
+ ["Contents/PlugIns/Ext.appex", "app-extension", "macos-deep", "."],
+ ["Contents/XPCServices/Svc.xpc", "xpc-service", "macos-deep", "."],
+];
+
+try {
+ const { app } = await buildMacosBundleFixture(root);
+ const zip = join(root, "MacFixture.zip");
+ await exec("/usr/bin/ditto", ["-c", "-k", "--keepParent", app, zip]);
+ const staging = join(root, "dmg-source");
+ await mkdir(staging);
+ await exec("/usr/bin/ditto", [app, join(staging, "MacFixture.app")]);
+ await symlink("/Applications", join(staging, "Applications"));
+ const dmg = join(root, "MacFixture.dmg");
+ // The default APFS image attaches as an image disk plus a synthesized
+ // container, which exercises detach of devices sharing one image.
+ await exec("/usr/bin/hdiutil", [
+ "create",
+ "-quiet",
+ "-srcfolder",
+ staging,
+ "-volname",
+ "ReaFixture",
+ "-format",
+ "UDZO",
+ dmg,
+ ]);
+
+ const containers = [
+ { target: app, format: "directory", applicationRoot: "." },
+ { target: zip, format: "zip", applicationRoot: "MacFixture.app" },
+ {
+ target: dmg,
+ format: "dmg",
+ applicationRoot: "MacFixture.dmg/ReaFixture/MacFixture.app",
+ },
+ ];
+ const anatomies = [];
+ for (const { target, format, applicationRoot } of containers) {
+ const inventory = await artifactCliEvidence("inspect-artifact", target);
+ const input = join(root, `${format}-projection.json`);
+ await writeFile(input, JSON.stringify({ inventory_evidence: [inventory] }));
+ const evidence = await artifactCliEvidence(
+ "project-apple-application-graph",
+ input,
+ );
+ const projection = evidence.normalized_result;
+ assert.equal(evidence.subject?.format, format);
+ assert.equal(projection.root_format, format);
+ assert.deepEqual(projection.platforms, ["macos"]);
+ assert.deepEqual(projection.application_roots, [applicationRoot]);
+ assert.equal(projection.coverage.status, "complete-within-inventory");
+ const observed = anatomy(projection, applicationRoot);
+ assert.deepEqual(
+ observed.bundles.map(({ path, role, layout, parent }) => [
+ path,
+ role,
+ layout,
+ parent,
+ ]),
+ EXPECTED_BUNDLES,
+ `${format} bundle roles drifted`,
+ );
+ assert.deepEqual(observed.privileged_helpers, [
+ "Contents/Library/LaunchServices/com.example.rea.helper",
+ ]);
+ assert.deepEqual(observed.launchd_plists, [
+ "agent:Contents/Library/LaunchAgents/com.example.rea.agent.plist",
+ "daemon:Contents/Library/LaunchDaemons/com.example.rea.helper.plist",
+ ]);
+ assert.deepEqual(observed.helpers, ["Contents/Helpers/rea-tool"]);
+ assert.ok(
+ projection.symlinks.some((path) =>
+ path.endsWith(`${FRAMEWORK}/Versions/Current`),
+ ),
+ "Versions/Current symlink was not reported",
+ );
+ anatomies.push(observed);
+ if (format === "directory")
+ await withArtifactMcp(app, async (client) => {
+ assert.deepEqual(
+ await artifactMcpResult(client, "project_apple_application_graph", {
+ inventory_evidence: [inventory],
+ }),
+ projection,
+ );
+ });
+ }
+ assert.deepEqual(anatomies[1], anatomies[0], "ZIP anatomy differs");
+ assert.deepEqual(anatomies[2], anatomies[0], "DMG anatomy differs");
+ const { stdout: attached } = await exec("/usr/bin/hdiutil", ["info"]);
+ assert.ok(!attached.includes(dmg), "DMG remained attached after inventory");
+
+ process.stdout.write(
+ `${JSON.stringify({
+ ok: true,
+ mocked: false,
+ cli: true,
+ stdio_mcp: true,
+ containers: containers.map(({ format }) => format),
+ bundles: EXPECTED_BUNDLES.length,
+ dmg_detached: true,
+ })}\n`,
+ );
+} finally {
+ await rm(root, { recursive: true, force: true });
+}
diff --git a/scripts/lib/managed-completion-report.mjs b/scripts/verify/managed/completion-report.mjs
similarity index 98%
rename from scripts/lib/managed-completion-report.mjs
rename to scripts/verify/managed/completion-report.mjs
index 01124d604..9cd900f58 100644
--- a/scripts/lib/managed-completion-report.mjs
+++ b/scripts/verify/managed/completion-report.mjs
@@ -1,4 +1,4 @@
-import { createEvidence } from "../../dist/domain/evidence.js";
+import { createEvidence } from "../../../dist/domain/evidence.js";
const COMPLETION_PROVIDER = {
id: "rea-managed-conformance",
diff --git a/scripts/lib/managed-conformance-config.mjs b/scripts/verify/managed/config.mjs
similarity index 100%
rename from scripts/lib/managed-conformance-config.mjs
rename to scripts/verify/managed/config.mjs
diff --git a/scripts/verify-managed-conformance.mjs b/scripts/verify/managed/conformance.mjs
similarity index 90%
rename from scripts/verify-managed-conformance.mjs
rename to scripts/verify/managed/conformance.mjs
index e499c6d24..c274fff40 100644
--- a/scripts/verify-managed-conformance.mjs
+++ b/scripts/verify/managed/conformance.mjs
@@ -3,21 +3,21 @@ import { tmpdir } from "node:os";
import { join } from "node:path";
import assert from "node:assert/strict";
-import { inspectManagedArtifactBytes } from "../dist/dotnet/ManagedArtifactInspector.js";
-import { inspectManagedMembersBytes } from "../dist/dotnet/ManagedMemberInspector.js";
-import { inspectManagedNativeBoundariesBytes } from "../dist/dotnet/ManagedNativeBoundaryInspector.js";
-import { compareManagedMemberPaths } from "../dist/application/ManagedMemberComparisonService.js";
-import { verifyManagedNativeBoundariesEvidence } from "../dist/application/ManagedNativeVerificationService.js";
-import { importManagedReconstructionEvidence } from "../dist/application/ManagedReconstructionService.js";
-import { projectManagedApplicationGraphEvidence } from "../dist/application/ManagedApplicationGraphService.js";
-import { traceApplicationFeatureEvidence } from "../dist/application/javascript/JavaScriptApplicationWorkflowService.js";
-import { MANAGED_STATIC_PROVIDER } from "../dist/application/InvestigationProviders.js";
-import { createEvidence } from "../dist/domain/evidence.js";
+import { inspectManagedArtifactBytes } from "../../../dist/dotnet/ManagedArtifactInspector.js";
+import { inspectManagedMembersBytes } from "../../../dist/dotnet/ManagedMemberInspector.js";
+import { inspectManagedNativeBoundariesBytes } from "../../../dist/dotnet/ManagedNativeBoundaryInspector.js";
+import { compareManagedMemberPaths } from "../../../dist/application/managed/ManagedMemberComparisonService.js";
+import { verifyManagedNativeBoundariesEvidence } from "../../../dist/application/managed/ManagedNativeVerificationService.js";
+import { importManagedReconstructionEvidence } from "../../../dist/application/managed/ManagedReconstructionService.js";
+import { projectManagedApplicationGraphEvidence } from "../../../dist/application/managed/ManagedApplicationGraphService.js";
+import { traceApplicationFeatureEvidence } from "../../../dist/application/javascript/JavaScriptApplicationWorkflowService.js";
+import { MANAGED_STATIC_PROVIDER } from "../../../dist/application/InvestigationProviders.js";
+import { createEvidence } from "../../../dist/domain/evidence.js";
import {
alternateMvid,
buildNativePeFixture,
-} from "./lib/managed-pe-fixture.mjs";
-import { createManagedConformanceSupport } from "./lib/managed-conformance-support.mjs";
+} from "../../fixtures/managed/pe.mjs";
+import { createManagedConformanceSupport } from "./support.mjs";
import {
comparisonLimits,
defaultIlBody,
@@ -25,9 +25,12 @@ import {
inspectionLimits,
memberLimits,
nativeBoundaryLimits,
-} from "./lib/managed-conformance-config.mjs";
-import { createManagedCompletionReport } from "./lib/managed-completion-report.mjs";
-import { completeVerifierRun, createVerifierRun } from "./lib/verifier-run.mjs";
+} from "./config.mjs";
+import { createManagedCompletionReport } from "./completion-report.mjs";
+import {
+ completeVerifierRun,
+ createVerifierRun,
+} from "../../lib/verifier-run.mjs";
const verifierRun = createVerifierRun();
const workspace = await mkdtemp(join(tmpdir(), "rea-managed-conformance-"));
diff --git a/scripts/lib/managed-conformance-manifest-parser.mjs b/scripts/verify/managed/manifest-parser.mjs
similarity index 100%
rename from scripts/lib/managed-conformance-manifest-parser.mjs
rename to scripts/verify/managed/manifest-parser.mjs
diff --git a/scripts/lib/managed-conformance-manifest.mjs b/scripts/verify/managed/manifest.mjs
similarity index 93%
rename from scripts/lib/managed-conformance-manifest.mjs
rename to scripts/verify/managed/manifest.mjs
index ff24863ab..ecf3f7e34 100644
--- a/scripts/lib/managed-conformance-manifest.mjs
+++ b/scripts/verify/managed/manifest.mjs
@@ -1,18 +1,18 @@
import { basename, dirname, isAbsolute, resolve } from "node:path";
import { readFile } from "node:fs/promises";
-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";
-import { traceApplicationFeatureEvidence } from "../../dist/application/javascript/JavaScriptApplicationWorkflowService.js";
-import { createEvidence } from "../../dist/domain/evidence.js";
-import { MANAGED_STATIC_PROVIDER } from "../../dist/application/InvestigationProviders.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/managed/ManagedApplicationGraphService.js";
+import { traceApplicationFeatureEvidence } from "../../../dist/application/javascript/JavaScriptApplicationWorkflowService.js";
+import { createEvidence } from "../../../dist/domain/evidence.js";
+import { MANAGED_STATIC_PROVIDER } from "../../../dist/application/InvestigationProviders.js";
import {
ensure,
methodTokenRow,
parseManagedAppManifest,
-} from "./managed-conformance-manifest-parser.mjs";
+} from "./manifest-parser.mjs";
export const createManagedManifestVerifier = (context) => ({
verifyManagedAppManifest: (rawManifest, manifestPath) =>
diff --git a/scripts/lib/managed-conformance-oracles.mjs b/scripts/verify/managed/oracles.mjs
similarity index 94%
rename from scripts/lib/managed-conformance-oracles.mjs
rename to scripts/verify/managed/oracles.mjs
index 7181ccbe1..e2b83b78f 100644
--- a/scripts/lib/managed-conformance-oracles.mjs
+++ b/scripts/verify/managed/oracles.mjs
@@ -5,12 +5,12 @@ import { basename, isAbsolute, join, resolve } from "node:path";
import assert from "node:assert/strict";
import { promisify } from "node:util";
-import { inspectManagedArtifactBytes } from "../../dist/dotnet/ManagedArtifactInspector.js";
-import { inspectManagedMembersBytes } from "../../dist/dotnet/ManagedMemberInspector.js";
-import { importManagedReconstructionEvidence } from "../../dist/application/ManagedReconstructionService.js";
-import { createEvidence } from "../../dist/domain/evidence.js";
-import { MANAGED_STATIC_PROVIDER } from "../../dist/application/InvestigationProviders.js";
-import { createManagedManifestVerifier } from "./managed-conformance-manifest.mjs";
+import { inspectManagedArtifactBytes } from "../../../dist/dotnet/ManagedArtifactInspector.js";
+import { inspectManagedMembersBytes } from "../../../dist/dotnet/ManagedMemberInspector.js";
+import { importManagedReconstructionEvidence } from "../../../dist/application/managed/ManagedReconstructionService.js";
+import { createEvidence } from "../../../dist/domain/evidence.js";
+import { MANAGED_STATIC_PROVIDER } from "../../../dist/application/InvestigationProviders.js";
+import { createManagedManifestVerifier } from "./manifest.mjs";
const execFileAsync = promisify(execFile);
diff --git a/scripts/lib/managed-conformance-support.mjs b/scripts/verify/managed/support.mjs
similarity index 85%
rename from scripts/lib/managed-conformance-support.mjs
rename to scripts/verify/managed/support.mjs
index be0d5ea9d..18a200e33 100644
--- a/scripts/lib/managed-conformance-support.mjs
+++ b/scripts/verify/managed/support.mjs
@@ -2,9 +2,9 @@ import { createHash } from "node:crypto";
import { writeFile } from "node:fs/promises";
import { join } from "node:path";
-import { parseBinaryTarget } from "../../dist/application/BinaryTargetResolver.js";
-import { buildManagedPeFixture } from "./managed-pe-fixture.mjs";
-import { createManagedConformanceOracleSupport } from "./managed-conformance-oracles.mjs";
+import { parseBinaryTarget } from "../../../dist/application/BinaryTargetResolver.js";
+import { buildManagedPeFixture } from "../../fixtures/managed/pe.mjs";
+import { createManagedConformanceOracleSupport } from "./oracles.mjs";
export const createManagedConformanceSupport = (context) => {
const fixtureBytes = async (name, bytes) => {
diff --git a/skills/reverse-engineer-anything/SKILL.md b/skills/reverse-engineer-anything/SKILL.md
index b9e8220b7..683b8421c 100644
--- a/skills/reverse-engineer-anything/SKILL.md
+++ b/skills/reverse-engineer-anything/SKILL.md
@@ -4,7 +4,7 @@ description: Reverse engineer native, managed, Electron/JavaScript, packaged, fi
metadata:
version: "26"
tool_count: 131
- catalog_digest: "e893b9df15ed6eec249c8f9adb583dc4870c240f9126f8e42680a014cd6fba90"
+ catalog_digest: "44b30e8892c84cf27766d5739228268b8a85f885c63002157bc134ed8d636bb8"
---
# REA
diff --git a/skills/reverse-engineer-anything/references/native-and-artifacts.md b/skills/reverse-engineer-anything/references/native-and-artifacts.md
index d53671454..46a5c7af2 100644
--- a/skills/reverse-engineer-anything/references/native-and-artifacts.md
+++ b/skills/reverse-engineer-anything/references/native-and-artifacts.md
@@ -69,6 +69,14 @@ ASAR, or DMG inputs when the artifact graph and findings help answer the
question. It returns the complete artifact graph inline. Cite graph manifest
IDs when using them.
+For an IPA or a macOS `.app`, ZIP, or DMG, pass the inventory Evidence to
+`project_apple_application_graph`. It reports application roots and nested
+bundles by path convention: app extensions, XPC services, frameworks, login
+items, system and driver extensions, and plug-ins. It also lists privileged
+helpers, launchd plists, symlinks, and each bundle's `info_plist_path` and
+executable candidates. Roles are path conventions, not parsed plists; read the
+listed plists with `inspect_plist`.
+
Use `extract_artifact` when materialized files are needed. It takes no arguments
and materializes all regular files into a fresh temporary directory chosen by
REA. Symlinks and encrypted entries are inventory facts, not extractable files.
diff --git a/src/android/JadxMcpTransport.ts b/src/android/JadxMcpTransport.ts
index 38cec998b..a2dc084b8 100644
--- a/src/android/JadxMcpTransport.ts
+++ b/src/android/JadxMcpTransport.ts
@@ -32,7 +32,8 @@ export class JadxMcpTransport implements Transport {
readonly runId = randomUUID();
#spawned: SpawnedOwnedProviderProcess | undefined;
#supervisor: ProviderProcessSupervisor | undefined;
- #buffer = Buffer.alloc(0);
+ #frameBuffer = Buffer.alloc(0);
+ #frameLength = 0;
#bytes = 0;
#started = false;
#closed = false;
@@ -61,12 +62,16 @@ export class JadxMcpTransport implements Transport {
stdin: "pipe",
});
this.#spawned = spawned;
- this.#supervisor = new ProviderProcessSupervisor({
- ...spawned,
- ownsProcessLifetime: true,
- cleanup:
- spawned.cleanup ?? (() => cleanupOwnedProcessGroup(spawned.ownership)),
- });
+ this.#supervisor = new ProviderProcessSupervisor(
+ {
+ ...spawned,
+ ownsProcessLifetime: true,
+ cleanup:
+ spawned.cleanup ??
+ (() => cleanupOwnedProcessGroup(spawned.ownership)),
+ },
+ { captureStdout: false },
+ );
if (
spawned.process.stdin === undefined ||
spawned.process.stdin === null ||
@@ -117,6 +122,8 @@ export class JadxMcpTransport implements Transport {
async #stop(): Promise {
this.#closed = true;
+ this.#frameBuffer = Buffer.alloc(0);
+ this.#frameLength = 0;
// A cancellation may race acquisition. Join it before inspecting ownership.
await this.#starting?.catch(() => undefined);
const process = this.#spawned?.process;
@@ -161,22 +168,42 @@ export class JadxMcpTransport implements Transport {
);
return;
}
- this.#buffer = Buffer.concat([this.#buffer, bytes]);
try {
- let newline: number;
- while ((newline = this.#buffer.indexOf(10)) !== -1) {
- if (newline > MAX_FRAME_BYTES)
+ let offset = 0;
+ while (offset < bytes.length) {
+ const newline = bytes.indexOf(10, offset);
+ const end = newline === -1 ? bytes.length : newline;
+ const fragment = bytes.subarray(offset, end);
+ const frameBytes = this.#frameLength + fragment.length;
+ if (frameBytes > MAX_FRAME_BYTES)
throw new Error(`JADX MCP frame exceeds ${MAX_FRAME_BYTES} bytes`);
- const line = this.#buffer.subarray(0, newline).toString("utf8");
- this.#buffer = this.#buffer.subarray(newline + 1);
+ this.#appendFrame(fragment, frameBytes);
+ if (newline === -1) return;
+ const line = this.#frameBuffer
+ .subarray(0, this.#frameLength)
+ .toString("utf8");
+ this.#frameBuffer = Buffer.alloc(0);
+ this.#frameLength = 0;
this.onmessage?.(deserializeMessage(line));
+ offset = newline + 1;
}
- if (this.#buffer.length > MAX_FRAME_BYTES)
- throw new Error(`JADX MCP frame exceeds ${MAX_FRAME_BYTES} bytes`);
} catch (cause) {
this.#fail(cause instanceof Error ? cause : new Error(String(cause)));
}
};
+ #appendFrame(fragment: Buffer, frameBytes: number): void {
+ if (frameBytes > this.#frameBuffer.length) {
+ const capacity = Math.min(
+ MAX_FRAME_BYTES,
+ Math.max(frameBytes, this.#frameBuffer.length * 2, 1),
+ );
+ const grown = Buffer.allocUnsafe(capacity);
+ this.#frameBuffer.copy(grown, 0, 0, this.#frameLength);
+ this.#frameBuffer = grown;
+ }
+ fragment.copy(this.#frameBuffer, this.#frameLength);
+ this.#frameLength = frameBytes;
+ }
#fail(error: Error): void {
this.#failure ??= error.message;
this.onerror?.(error);
diff --git a/src/application/AnalysisProvider.ts b/src/application/AnalysisProvider.ts
index d1ba09e0c..0983a3a30 100644
--- a/src/application/AnalysisProvider.ts
+++ b/src/application/AnalysisProvider.ts
@@ -3,7 +3,7 @@ import type { OfficialToolName } from "../contracts/officialToolContracts.js";
import type { EnhancedToolName } from "../contracts/enhancedInputs.js";
import type { NativeToolName } from "../contracts/nativeToolContracts.js";
import type { ArtifactAnalysisOperation } from "../contracts/artifactToolContracts.js";
-import type { ManagedToolName } from "../contracts/managedToolContracts.js";
+import type { ManagedToolName } from "../contracts/managed/managedToolContracts.js";
import type { AnalysisError } from "../domain/analysisErrorBase.js";
import type { AnalysisProfileCommitment } from "../domain/analysisProfile.js";
import type { JsonValue } from "../domain/jsonValue.js";
diff --git a/src/application/AppBundleExecutable.ts b/src/application/AppBundleExecutable.ts
new file mode 100644
index 000000000..f3e8b30c3
--- /dev/null
+++ b/src/application/AppBundleExecutable.ts
@@ -0,0 +1,186 @@
+import { execFile } from "node:child_process";
+import { lstat, readdir, readFile, realpath, stat } from "node:fs/promises";
+import { join } from "node:path";
+import { promisify } from "node:util";
+
+import { z } from "zod";
+
+import { BinaryTargetError } from "../domain/configurationErrors.js";
+import { isPathWithinRoot } from "../domain/localPath.js";
+import { parseXmlPropertyList } from "../domain/propertyListKeys.js";
+import { err, ok, type Result } from "../domain/result.js";
+
+const execFileAsync = promisify(execFile);
+
+/** Where one app bundle layout keeps its Info.plist and program file. */
+interface BundleLayout {
+ readonly plist: readonly string[];
+ readonly programs: readonly string[];
+ readonly programsLabel: string;
+}
+
+const BUNDLE_LAYOUTS: readonly BundleLayout[] = [
+ // macOS bundles keep both under Contents.
+ {
+ plist: ["Contents", "Info.plist"],
+ programs: ["Contents", "MacOS"],
+ programsLabel: "Contents/MacOS",
+ },
+ // iOS-style bundles, as extracted from an IPA, keep both at the root.
+ { plist: ["Info.plist"], programs: [], programsLabel: "the bundle root" },
+];
+
+/** A resolved bundle program file and the Info.plist that declared it. */
+export interface ResolvedAppBundle {
+ readonly executable: string;
+ readonly infoPlist?: string;
+}
+
+/**
+ * Resolve an app bundle directory to its declared program file. macOS and
+ * flat iOS-style layouts are read directly. An iOS app installed on a Mac is
+ * a wrapper whose `Wrapper` directory holds the iOS bundle; that bundle is
+ * found by listing `Wrapper`, never by following the `WrappedBundle` link.
+ */
+export const resolveAppBundleExecutable = async (
+ path: string,
+): Promise> => {
+ const layout = await presentLayout(path);
+ if (layout !== undefined) return resolveLayoutExecutable(path, layout);
+ const wrapped = await wrappedBundle(path);
+ if (wrapped !== undefined) {
+ const wrappedLayout = await presentLayout(wrapped);
+ if (wrappedLayout !== undefined)
+ return resolveLayoutExecutable(wrapped, wrappedLayout);
+ }
+ return err(
+ new BinaryTargetError(path, "app has no readable CFBundleExecutable", {
+ cause: new Error(
+ "No Contents/Info.plist, root Info.plist, or single Wrapper/*.app bundle was found",
+ ),
+ }),
+ );
+};
+
+const presentLayout = async (
+ bundle: string,
+): Promise => {
+ for (const layout of BUNDLE_LAYOUTS)
+ if (await layoutPlistPresent(join(bundle, ...layout.plist))) return layout;
+ return undefined;
+};
+
+/**
+ * Whether a layout's Info.plist exists. Readable symlinks count, as they did
+ * when the plist was read directly; any failure other than absence, such as
+ * a permission denial, is left for the caller to report.
+ */
+const layoutPlistPresent = async (path: string): Promise => {
+ try {
+ return (await stat(path)).isFile();
+ } catch (cause: unknown) {
+ if (isAbsence(cause)) return false;
+ throw cause;
+ }
+};
+
+const isAbsence = (cause: unknown): boolean => {
+ const code: unknown =
+ cause instanceof Error ? Reflect.get(cause, "code") : undefined;
+ return code === "ENOENT" || code === "ENOTDIR";
+};
+
+/** The single real `.app` directory inside an iOS-on-Mac `Wrapper`. */
+const wrappedBundle = async (bundle: string): Promise => {
+ const wrapper = join(bundle, "Wrapper");
+ try {
+ if (!(await lstat(wrapper)).isDirectory()) return undefined;
+ } catch (cause: unknown) {
+ if (isAbsence(cause)) return undefined;
+ throw cause;
+ }
+ const apps = (await readdir(wrapper, { withFileTypes: true })).filter(
+ (entry) => entry.isDirectory() && entry.name.toLowerCase().endsWith(".app"),
+ );
+ const [app] = apps;
+ return apps.length === 1 && app !== undefined
+ ? join(wrapper, app.name)
+ : undefined;
+};
+
+const resolveLayoutExecutable = async (
+ bundle: string,
+ layout: BundleLayout,
+): Promise> => {
+ const plistPath = join(bundle, ...layout.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(bundle, "app has no readable CFBundleExecutable", {
+ cause,
+ }),
+ );
+ }
+ if (!isSafeExecutableName(name))
+ return err(
+ new BinaryTargetError(bundle, "app has an unsafe CFBundleExecutable"),
+ );
+ const programs = join(bundle, ...layout.programs);
+ const executable = join(programs, name);
+ try {
+ const [canonicalPrograms, canonicalExecutable] = await Promise.all([
+ realpath(programs),
+ realpath(executable),
+ ]);
+ if (!isPathWithinRoot(canonicalPrograms, canonicalExecutable))
+ return err(
+ new BinaryTargetError(
+ bundle,
+ `app program file leaves ${layout.programsLabel}`,
+ ),
+ );
+ return ok({ executable: canonicalExecutable, infoPlist: plistPath });
+ } catch (cause: unknown) {
+ return err(
+ new BinaryTargetError(bundle, "app program file is missing", { cause }),
+ );
+ }
+};
+
+/** Decode the top-level executable name with an XML parser, not a pattern. */
+const parseXmlPlistExecutable = (plist: string): string => {
+ // An unrelated `__proto__` entry must not make the bundle unreadable.
+ const { value } = parseXmlPropertyList(plist);
+ const executable = executableEntrySchema.safeParse(value);
+ if (!executable.success) throw new Error("CFBundleExecutable is missing");
+ return executable.data.CFBundleExecutable;
+};
+
+const executableEntrySchema = z.looseObject({ CFBundleExecutable: z.string() });
+
+const readBinaryPlistExecutable = async (plistPath: string): Promise =>
+ // `-n` strips only the newline plutil appends; it requires macOS 12+.
+ (
+ await execFileAsync("/usr/bin/plutil", [
+ "-extract",
+ "CFBundleExecutable",
+ "raw",
+ "-n",
+ "-o",
+ "-",
+ plistPath,
+ ])
+ ).stdout;
+
+const isSafeExecutableName = (name: string): boolean =>
+ name.length > 0 &&
+ name !== "." &&
+ name !== ".." &&
+ !name.includes("\0") &&
+ !/[/\\]/u.test(name);
diff --git a/src/application/BinaryTargetResolver.ts b/src/application/BinaryTargetResolver.ts
index 1b2fb8fdc..938633e9b 100644
--- a/src/application/BinaryTargetResolver.ts
+++ b/src/application/BinaryTargetResolver.ts
@@ -3,22 +3,19 @@ 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 { extname, isAbsolute, resolve } from "node:path";
-import { z } from "zod";
-
-import { isPathWithinRoot } from "../domain/localPath.js";
-import { parseXmlPropertyList } from "../domain/propertyListKeys.js";
import { BinaryTargetError } from "../domain/configurationErrors.js";
import type { BinaryTarget } from "../domain/binaryTargetTypes.js";
import { err, ok, type Result } from "../domain/result.js";
+import {
+ resolveAppBundleExecutable,
+ type ResolvedAppBundle,
+} from "./AppBundleExecutable.js";
import {
validateDosComLength,
type ExecutableFormatHint,
@@ -35,8 +32,6 @@ import {
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
@@ -55,7 +50,9 @@ export const parseBinaryTarget = async (
const canonical = await realpath(candidate);
const resolved = await resolveAppBundle(canonical);
if (!resolved.ok) return err(resolved.error);
- const path = resolved.value;
+ const { executable: path, infoPlist } = resolved.value;
+ const bundle =
+ infoPlist === undefined ? {} : { bundleInfoPlist: infoPlist };
const handle = await open(path, "r");
try {
if (!(await handle.stat()).isFile())
@@ -107,6 +104,7 @@ export const parseBinaryTarget = async (
return ok({
path,
sourcePath: process.platform === "win32" ? candidate : canonical,
+ ...bundle,
sha256: await sha256Handle(handle),
kind: "executable",
...detected.value,
@@ -216,89 +214,22 @@ const sha256Handle = async (handle: FileHandle): Promise => {
const resolveAppBundle = async (
path: string,
-): Promise> => {
+): Promise> => {
const metadata = await stat(path);
- if (!metadata.isDirectory()) return ok(path);
+ if (!metadata.isDirectory()) return ok({ executable: path });
if (extname(path).toLowerCase() !== ".app")
return err(
new BinaryTargetError(
path,
- "this opening route requires a file or macOS app bundle",
+ "this opening route requires a file or app bundle",
{
constraint: "directory_requires_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 }),
- );
- }
+ return resolveAppBundleExecutable(path);
};
-/** Decode the top-level executable name with an XML parser, not a pattern. */
-const parseXmlPlistExecutable = (plist: string): string => {
- // An unrelated `__proto__` entry must not make the bundle unreadable.
- const { value } = parseXmlPropertyList(plist);
- const executable = executableEntrySchema.safeParse(value);
- if (!executable.success) throw new Error("CFBundleExecutable is missing");
- return executable.data.CFBundleExecutable;
-};
-
-const executableEntrySchema = z.looseObject({ CFBundleExecutable: z.string() });
-
-const readBinaryPlistExecutable = async (plistPath: string): Promise =>
- // `-n` strips only the newline plutil appends; it requires macOS 12+.
- (
- await execFileAsync("/usr/bin/plutil", [
- "-extract",
- "CFBundleExecutable",
- "raw",
- "-n",
- "-o",
- "-",
- plistPath,
- ])
- ).stdout;
-
-const isSafeExecutableName = (name: string): boolean =>
- name.length > 0 &&
- name !== "." &&
- name !== ".." &&
- !name.includes("\0") &&
- !/[/\\]/u.test(name);
-
const readExecutableMetadata = async (
handle: FileHandle,
hostArchitecture: NodeJS.Architecture,
diff --git a/src/application/DirectAnalysis.ts b/src/application/DirectAnalysis.ts
index 412f43ff1..5875047bb 100644
--- a/src/application/DirectAnalysis.ts
+++ b/src/application/DirectAnalysis.ts
@@ -12,7 +12,7 @@ import type { ArtifactAnalysisOperation } from "../contracts/artifactToolContrac
import {
isManagedToolName,
type ManagedToolName,
-} from "../contracts/managedToolContracts.js";
+} from "../contracts/managed/managedToolContracts.js";
import { EvidenceIntegrityError } from "../domain/evidenceErrors.js";
import { projectAnalysisError } from "../domain/analysisErrorProjection.js";
import { type AnalysisError } from "../domain/analysisErrorBase.js";
diff --git a/src/application/LinuxHopper.test.ts b/src/application/LinuxHopper.test.ts
index f3dbb1e50..af2e05088 100644
--- a/src/application/LinuxHopper.test.ts
+++ b/src/application/LinuxHopper.test.ts
@@ -3,6 +3,7 @@ import { describe, expect, it } from "vitest";
import {
installLinuxHopper,
+ linuxHopperLauncherDigestSupported,
linuxHopperInstallDisclosure,
linuxPackageManagerCommands,
linuxSharedLibrariesAvailable,
@@ -93,6 +94,20 @@ describe("Linux Hopper host classification", () => {
});
describe("Linux Hopper installation", () => {
+ it.each([
+ [
+ "Debian and Arch",
+ "0294ced141cc373468ee22d8343e7dac41980cb05a937994ca81c9f09afe7ded",
+ ],
+ ["RPM", "1339f9e58377442b0c6fcb0dfc3cec20d593cc557408521fad9a00dbc6b8da13"],
+ ])("accepts the pinned %s launcher build", (_, digest) => {
+ expect(linuxHopperLauncherDigestSupported(digest)).toBe(true);
+ });
+
+ it("rejects an unverified launcher build", () => {
+ expect(linuxHopperLauncherDigestSupported("0".repeat(64))).toBe(false);
+ });
+
it("discloses the exact download, integrity evidence, and privileged command", () => {
expect(linuxHopperInstallDisclosure("deb", false)).toEqual({
downloadUrl:
diff --git a/src/application/LinuxHopper.ts b/src/application/LinuxHopper.ts
index cc9a83d12..4840ac4d5 100644
--- a/src/application/LinuxHopper.ts
+++ b/src/application/LinuxHopper.ts
@@ -11,8 +11,10 @@ import { execFileOutput } from "../process/ExecFileOutput.js";
const execFileAsync = promisify(execFile);
const DOWNLOAD_PREFIX = "https://www.hopperapp.com:443/downloader/public/";
const MAX_PACKAGE_BYTES = 100_000_000;
-const SUPPORTED_HOPPER_SHA256 =
- "0294ced141cc373468ee22d8343e7dac41980cb05a937994ca81c9f09afe7ded";
+const SUPPORTED_HOPPER_SHA256 = new Set([
+ "0294ced141cc373468ee22d8343e7dac41980cb05a937994ca81c9f09afe7ded",
+ "1339f9e58377442b0c6fcb0dfc3cec20d593cc557408521fad9a00dbc6b8da13",
+]);
interface LinuxHopperRelease {
readonly filename: string;
readonly file_length: string;
@@ -262,7 +264,7 @@ export const linuxHopperBinarySupported = async (
try {
const hash = createHash("sha256");
for await (const chunk of createReadStream(path)) hash.update(chunk);
- return hash.digest("hex") === SUPPORTED_HOPPER_SHA256;
+ return linuxHopperLauncherDigestSupported(hash.digest("hex"));
} catch (cause: unknown) {
// best-effort cleanup: optional build probing; unreadable means unsupported.
void cause;
@@ -270,6 +272,10 @@ export const linuxHopperBinarySupported = async (
}
};
+/** Match a launcher extracted from one of the pinned official Linux packages. */
+export const linuxHopperLauncherDigestSupported = (digest: string): boolean =>
+ SUPPORTED_HOPPER_SHA256.has(digest);
+
/** Interpret ldd output conservatively so a present but broken launcher is unhealthy. */
export const linuxSharedLibrariesAvailable = (output: string): boolean =>
!/(?:=>\s+not found|error while loading shared libraries)/iu.test(output);
diff --git a/src/application/NativeUiActionTrace.ts b/src/application/NativeUiActionTrace.ts
index f94051a12..25e9b9dc3 100644
--- a/src/application/NativeUiActionTrace.ts
+++ b/src/application/NativeUiActionTrace.ts
@@ -3,7 +3,7 @@ import { z } from "zod";
import type { AnalysisOperationPort } from "./AnalysisProvider.js";
import type { EnhancedResult } from "./EnhancedToolTypes.js";
import type { enhancedInputSchemas } from "../contracts/enhancedInputs.js";
-import { interfaceBuilderAnalysisSchema } from "../domain/interfaceBuilderGraph.js";
+import { interfaceBuilderAnalysisSchema } from "../domain/apple/interfaceBuilderGraph.js";
import {
nativeInvestigationGraphSchema,
nativeInvestigationTraceSchema,
diff --git a/src/application/Setup.fixture.ts b/src/application/Setup.fixture.ts
index 61b8f1dc5..95f8c54a0 100644
--- a/src/application/Setup.fixture.ts
+++ b/src/application/Setup.fixture.ts
@@ -52,6 +52,11 @@ export class FakeSetupHost implements SetupHost {
linuxDistribution = (): Promise =>
Promise.resolve(this.distribution);
hopperPath = (): Promise => Promise.resolve(this.hopper);
+ initialSetupState = async (scope?: DoctorScope) => ({
+ ...(this.hopper === undefined ? {} : { hopperPath: this.hopper }),
+ providerEnvironment: await this.providerEnvironment(),
+ doctor: await this.doctor(scope),
+ });
providerEnvironment = (): Promise =>
Promise.resolve({
...(this.hopper === undefined
diff --git a/src/application/Setup.initialSnapshot.test.ts b/src/application/Setup.initialSnapshot.test.ts
new file mode 100644
index 000000000..20fba2b71
--- /dev/null
+++ b/src/application/Setup.initialSnapshot.test.ts
@@ -0,0 +1,51 @@
+import { expect, it } from "vitest";
+
+import { runSetup } from "./Setup.js";
+import { FakeSetupHost, options } from "./Setup.fixture.js";
+
+it("uses the shared initial host snapshot for setup planning", async () => {
+ const host = new FakeSetupHost();
+ host.hopperPath = () => {
+ throw new Error("setup snapshot should provide the Hopper path");
+ };
+ host.providerEnvironment = () => {
+ throw new Error("setup snapshot should provide provider settings");
+ };
+ host.initialSetupState = async (scope) => ({
+ hopperPath: "/snapshot/Hopper",
+ providerEnvironment: { HOPPER_LAUNCHER_PATH: "/snapshot/Hopper" },
+ doctor: await host.doctor(scope),
+ });
+ host.clients = [{ name: "codex", configPath: "/codex.json" }];
+
+ const result = await runSetup(
+ { ...options(false), dryRun: true, clientIds: ["codex"] },
+ host,
+ );
+
+ expect(result.status).toBe("planned");
+ expect(result.plannedActions.map(({ id }) => id)).toContain(
+ "configure_client:codex",
+ );
+ expect(host.doctorCalls).toBe(1);
+});
+
+it("refreshes doctor after approved setup changes", async () => {
+ const host = new FakeSetupHost();
+ host.doctorHealthy = false;
+ host.skill = "unchanged";
+ host.clients = [{ name: "codex", configPath: "/codex.json" }];
+ const configureClient = host.configureClient;
+ host.configureClient = (client, providerEnvironment, command) => {
+ host.doctorHealthy = true;
+ return configureClient(client, providerEnvironment, command);
+ };
+
+ const result = await runSetup(
+ { ...options(true), clientIds: ["codex"], installSkill: false },
+ host,
+ );
+
+ expect(result.doctor.healthy).toBe(true);
+ expect(host.doctorCalls).toBe(2);
+});
diff --git a/src/application/Setup.ts b/src/application/Setup.ts
index c99a25ea7..9032d79e8 100644
--- a/src/application/Setup.ts
+++ b/src/application/Setup.ts
@@ -42,8 +42,15 @@ export const runSetup = async (
);
const unsupported = await hostRemediation(host, false);
if (unsupported !== undefined) return fail(unsupported);
- let hopperPath = await host.hopperPath();
- let providerEnvironment = await initialProviderEnvironment(host, hopperPath);
+ const initialState = await host.initialSetupState?.(options.readinessScope);
+ let hopperPath =
+ initialState === undefined
+ ? await host.hopperPath()
+ : initialState.hopperPath;
+ let providerEnvironment =
+ initialState === undefined
+ ? await initialProviderEnvironment(host, hopperPath)
+ : initialState.providerEnvironment;
const discovery = await discoverSetupState({
host,
providerEnvironment,
@@ -51,6 +58,9 @@ export const runSetup = async (
proposeHopper:
options.proposeHopper ?? (confirm !== undefined && !options.structured),
doctorScope: options.readinessScope,
+ ...(initialState === undefined
+ ? {}
+ : { initialDoctor: initialState.doctor }),
});
clientStates = discovery.clientStates;
const clientSelectionAllowed =
diff --git a/src/application/SetupHost.ts b/src/application/SetupHost.ts
index d574c5bd0..6bda5b494 100644
--- a/src/application/SetupHost.ts
+++ b/src/application/SetupHost.ts
@@ -22,7 +22,12 @@ import {
} from "./SetupClientConfiguration.js";
import { setupInstallFailure } from "./SetupInstallFailure.js";
import { providerRegistrationEnvironment } from "./SetupRegistrationEnvironment.js";
-import type { SetupHost, SetupProviderEnvironment } from "./SetupTypes.js";
+import type {
+ SetupHost,
+ SetupInitialState,
+ SetupProviderEnvironment,
+} from "./SetupTypes.js";
+import type { DoctorScope } from "./Doctor.js";
/** Resolve the executable and arguments used in a managed MCP registration. */
export const setupRegistrationCommand = (
@@ -91,6 +96,25 @@ export const systemSetupHost = (
macosVersion: () => doctorHost.macosVersion(),
linuxDistribution: readLinuxDistribution,
hopperPath: async () => (await runDoctor(undefined, doctorHost)).hopperPath,
+ initialSetupState: async (
+ scope?: DoctorScope,
+ ): Promise => {
+ const diagnosis = await runDoctor(undefined, doctorHost, scope);
+ return {
+ ...(diagnosis.hopperPath === undefined
+ ? {}
+ : { hopperPath: diagnosis.hopperPath }),
+ providerEnvironment: {
+ ...providerRegistrationEnvironment(
+ diagnosis.providerInspections ?? [],
+ ),
+ ...(diagnosis.hopperPath === undefined
+ ? {}
+ : { HOPPER_LAUNCHER_PATH: diagnosis.hopperPath }),
+ },
+ doctor: diagnosis,
+ };
+ },
providerEnvironment: async () => {
const diagnosis = await runDoctor(undefined, doctorHost);
return {
diff --git a/src/application/SetupPlan.ts b/src/application/SetupPlan.ts
index e89e07229..fcea6271d 100644
--- a/src/application/SetupPlan.ts
+++ b/src/application/SetupPlan.ts
@@ -16,6 +16,7 @@ import type {
} from "./SetupTypes.js";
import type { SetupClient } from "./SupportedClients.js";
import type { DoctorScope } from "./Doctor.js";
+import type { DoctorReport } from "./Doctor.js";
/** Read-only setup facts shared by client selection and preflight. */
export interface SetupDiscovery {
@@ -36,8 +37,10 @@ export const discoverSetupState = async (input: {
readonly forceHopperInstall: boolean;
readonly proposeHopper: boolean;
readonly doctorScope: DoctorScope | undefined;
+ readonly initialDoctor?: DoctorReport;
}): Promise => {
- const initialDoctor = await input.host.doctor(input.doctorScope);
+ const initialDoctor =
+ input.initialDoctor ?? (await input.host.doctor(input.doctorScope));
const linuxHopperRepairNeeded = initialDoctor.checks.some(
({ name, ok, detail }) =>
!ok &&
diff --git a/src/application/SetupTypes.ts b/src/application/SetupTypes.ts
index ac4da9d7b..f3051bdbd 100644
--- a/src/application/SetupTypes.ts
+++ b/src/application/SetupTypes.ts
@@ -9,6 +9,13 @@ import type {
/** Exact non-secret provider variables propagated into managed registrations. */
export type SetupProviderEnvironment = Readonly>;
+/** Read-only host facts shared by the initial setup plan. */
+export interface SetupInitialState {
+ readonly hopperPath?: string;
+ readonly providerEnvironment: SetupProviderEnvironment;
+ readonly doctor: DoctorReport;
+}
+
/** Result of one backup/write/readback transaction. */
export type ClientConfigurationResult =
| {
@@ -38,6 +45,7 @@ export interface SetupHost {
macosVersion(): Promise;
linuxDistribution(): Promise;
hopperPath(): Promise;
+ initialSetupState?(scope?: DoctorScope): Promise;
installHopper(replaceExisting: boolean): Promise;
providerEnvironment?(): Promise;
detectedClients(): Promise;
diff --git a/src/application/AppleApplicationService.ts b/src/application/apple/AppleApplicationService.ts
similarity index 51%
rename from src/application/AppleApplicationService.ts
rename to src/application/apple/AppleApplicationService.ts
index 593daa709..a30cb654c 100644
--- a/src/application/AppleApplicationService.ts
+++ b/src/application/apple/AppleApplicationService.ts
@@ -1,16 +1,16 @@
-import type { AnalysisError } from "../domain/analysisErrorBase.js";
-import type { Evidence } from "../domain/evidence.js";
+import type { AnalysisError } from "../../domain/analysisErrorBase.js";
+import type { Evidence } from "../../domain/evidence.js";
import {
appleApplicationProjectionInputSchema,
projectAppleApplication,
-} from "../domain/appleApplication.js";
-import type { Result } from "../domain/result.js";
-import { APPLE_APPLICATION_PROVIDER } from "./InvestigationProviders.js";
-import { projectInventoryEvidence } from "./InventoryProjectionEvidence.js";
+} from "../../domain/apple/appleApplication.js";
+import type { Result } from "../../domain/result.js";
+import { APPLE_APPLICATION_PROVIDER } from "../InvestigationProviders.js";
+import { projectInventoryEvidence } from "../InventoryProjectionEvidence.js";
const OPERATION = "project_apple_application_graph" as const;
-/** Project authenticated IPA inventory Evidence into Apple application evidence. */
+/** Project authenticated IPA or macOS app inventory Evidence into Apple application evidence. */
export const projectAppleApplicationEvidence = (
rawInput: unknown,
): Result => {
@@ -21,7 +21,7 @@ export const projectAppleApplicationEvidence = (
operation: OPERATION,
predicateType: "rea.apple-application-graph",
provider: APPLE_APPLICATION_PROVIDER,
- subjectFormat: () => "ipa",
+ subjectFormat: (first) => first.subject?.format ?? "unknown",
protocolError: "Apple application projection produced an invalid result",
});
};
diff --git a/src/application/binary/BinarySessionExecution.ts b/src/application/binary/BinarySessionExecution.ts
index ccca9eb05..4cf4e3a8a 100644
--- a/src/application/binary/BinarySessionExecution.ts
+++ b/src/application/binary/BinarySessionExecution.ts
@@ -132,7 +132,7 @@ export const bindExecutionTarget = (
if (
result.value.subject !== null &&
result.value.subject.sha256 !== target.sha256 &&
- !isArtifactInventorySubject(operation, result.value.subject, target)
+ !isArtifactBundleSubject(operation, result.value.subject, target)
)
return err(
new ProviderAdapterError(
@@ -143,10 +143,12 @@ export const bindExecutionTarget = (
return ok({ ...result.value, subject: result.value.subject ?? subject });
};
-const isArtifactInventorySubject = (
+const isArtifactBundleSubject = (
operation: AnalysisOperation,
subject: EvidenceSubjectTarget,
target: BinaryTarget,
): boolean =>
- (operation === "inventory_artifact" || operation === "inspect_artifact") &&
+ (operation === "inventory_artifact" ||
+ operation === "inspect_artifact" ||
+ operation === "extract_artifact") &&
subject.path === (target.sourcePath ?? target.path);
diff --git a/src/application/javascript/JavaScriptApplicationEvidenceGraph.ts b/src/application/javascript/JavaScriptApplicationEvidenceGraph.ts
index 622e5f028..8d9106359 100644
--- a/src/application/javascript/JavaScriptApplicationEvidenceGraph.ts
+++ b/src/application/javascript/JavaScriptApplicationEvidenceGraph.ts
@@ -12,7 +12,7 @@ import {
import type { JavaScriptApplicationGraph } from "../../domain/javascript/javascriptApplicationGraph.js";
import type { JavaScriptSemanticGraph } from "../../domain/javascript/javascriptSemanticGraph.js";
import { javascriptRuntimeReconciliationResultSchema } from "../../domain/javascript/javascriptRuntimeReconciliationSchemas.js";
-import { managedApplicationGraphResultSchema } from "../../domain/managedApplicationGraph.js";
+import { managedApplicationGraphResultSchema } from "../../domain/managed/managedApplicationGraph.js";
/** Supported immutable source for an application-level graph workflow. */
export interface ApplicationGraphEvidenceSource {
diff --git a/src/application/javascript/JavaScriptArtifactGraphFindings.ts b/src/application/javascript/JavaScriptArtifactGraphFindings.ts
index e3bf4c6e8..9158ff906 100644
--- a/src/application/javascript/JavaScriptArtifactGraphFindings.ts
+++ b/src/application/javascript/JavaScriptArtifactGraphFindings.ts
@@ -268,11 +268,12 @@ const addSourceMapEdge = (
context: JavaScriptArtifactGraphContext,
input: FindingInput,
): void => {
- const resolvedPath = resolveArtifactPath(
- input.value.declared_url,
- input.file.path,
- context.filesByPath,
- );
+ const resolvedPath = resolveArtifactPathByContext({
+ declaredPath: input.value.declared_url,
+ sourcePath: input.file.path,
+ context: "url-reference",
+ files: context.filesByPath,
+ }).resolved_path;
const resolvedFile =
resolvedPath === null ? undefined : context.filesByPath.get(resolvedPath);
const resolvedNode =
@@ -341,17 +342,26 @@ const resolveReference = (
? null
: { path: `${sourcePath}#module:${specifier}`, file, node: module };
}
- const path = resolveArtifactPath(
- specifier,
- sourcePath,
- context.filesByPath,
- reference.kind === "require"
- ? "require"
- : reference.kind === "static-import" ||
- reference.kind === "dynamic-import"
- ? "import"
- : undefined,
- );
+ // Worker scripts are URLs relative to the script, not module specifiers.
+ const path =
+ reference.kind === "worker" || reference.kind === "service-worker"
+ ? resolveArtifactPathByContext({
+ declaredPath: specifier,
+ sourcePath,
+ context: "url-reference",
+ files: context.filesByPath,
+ }).resolved_path
+ : resolveArtifactPath(
+ specifier,
+ sourcePath,
+ context.filesByPath,
+ reference.kind === "require"
+ ? "require"
+ : reference.kind === "static-import" ||
+ reference.kind === "dynamic-import"
+ ? "import"
+ : undefined,
+ );
if (path === null) return null;
const file = context.filesByPath.get(path);
const node = context.fileNodes.get(path);
diff --git a/src/application/javascript/JavaScriptArtifactPathResolution.test.ts b/src/application/javascript/JavaScriptArtifactPathResolution.test.ts
index 3f6232def..5223926e8 100644
--- a/src/application/javascript/JavaScriptArtifactPathResolution.test.ts
+++ b/src/application/javascript/JavaScriptArtifactPathResolution.test.ts
@@ -562,6 +562,61 @@ describe("contextual JavaScript module identity", () => {
});
});
+describe("url-reference JavaScript artifact path resolution", () => {
+ it("resolves sibling paths and rejects external URL forms", () => {
+ const files = fileMap([
+ file("dist/app.js", "root"),
+ file("dist/app.js.map", "root"),
+ file("dist/worker.js", "root"),
+ ]);
+
+ expect(
+ resolve({
+ declaredPath: "app.js.map",
+ sourcePath: "dist/app.js",
+ context: "url-reference",
+ files,
+ }),
+ ).toMatchObject({
+ resolution_status: "resolved",
+ resolved_path: "dist/app.js.map",
+ });
+ expect(
+ resolve({
+ declaredPath: "app.js.map?v=1#section",
+ sourcePath: "dist/app.js",
+ context: "url-reference",
+ files,
+ }),
+ ).toMatchObject({
+ resolution_status: "resolved",
+ resolved_path: "dist/app.js.map",
+ });
+ expect(
+ resolve({
+ declaredPath: "//cdn.example.com/app.js.map",
+ sourcePath: "dist/app.js",
+ context: "url-reference",
+ files,
+ }),
+ ).toMatchObject({
+ resolution_status: "external",
+ resolved_path: null,
+ });
+ expect(
+ resolve({
+ declaredPath: "https://cdn.example.com/app.js.map",
+ sourcePath: "dist/app.js",
+ context: "url-reference",
+ files,
+ }),
+ ).toMatchObject({
+ resolution_status: "external",
+ resolved_path: null,
+ });
+ });
+});
+
const resolve = (input: ResolveArtifactPathInput) =>
resolveArtifactPathByContext(input);
diff --git a/src/application/javascript/JavaScriptArtifactPathResolution.ts b/src/application/javascript/JavaScriptArtifactPathResolution.ts
index 57a5012b0..3450ffd20 100644
--- a/src/application/javascript/JavaScriptArtifactPathResolution.ts
+++ b/src/application/javascript/JavaScriptArtifactPathResolution.ts
@@ -13,7 +13,8 @@ type ArtifactPathResolutionContext =
| "package-entrypoint"
| "filesystem-expression"
| "module-specifier"
- | "html-reference";
+ | "html-reference"
+ | "url-reference";
type UnresolvedArtifactPathStatus =
| "not-found"
@@ -127,6 +128,7 @@ const contextualCandidate = (
const { context } = input;
const declared =
context === "html-reference" ||
+ context === "url-reference" ||
(context === "module-specifier" && input.moduleKind !== "require")
? stripQueryAndFragment(input.declaredPath)
: input.declaredPath;
@@ -140,9 +142,9 @@ const contextualCandidate = (
]);
if (!declared.startsWith(".") && !declared.startsWith("/"))
return bareModuleCandidate(input, declared);
- } else if (hasScheme(declared))
+ } else if (looksExternal(declared))
return unresolvedOutcome(input, "external", [
- "URL schemes are outside this local artifact path context.",
+ "URL schemes and protocol-relative URLs are outside this local artifact path context.",
]);
const relative = declared.startsWith("/") ? declared.slice(1) : declared;
return declared.startsWith("/")
diff --git a/src/application/ManagedApplicationGraphService.ts b/src/application/managed/ManagedApplicationGraphService.ts
similarity index 86%
rename from src/application/ManagedApplicationGraphService.ts
rename to src/application/managed/ManagedApplicationGraphService.ts
index 9bd42fe6a..5c27f648f 100644
--- a/src/application/ManagedApplicationGraphService.ts
+++ b/src/application/managed/ManagedApplicationGraphService.ts
@@ -3,19 +3,19 @@ import { z } from "zod";
import {
AnalysisInputError,
AnalysisProtocolError,
-} from "../domain/analysisErrorCore.js";
-import { type AnalysisError } from "../domain/analysisErrorBase.js";
-import { createEvidence, type Evidence } from "../domain/evidence.js";
-import { jsonValueSchema } from "../domain/jsonValue.js";
+} from "../../domain/analysisErrorCore.js";
+import { type AnalysisError } from "../../domain/analysisErrorBase.js";
+import { createEvidence, type Evidence } from "../../domain/evidence.js";
+import { jsonValueSchema } from "../../domain/jsonValue.js";
import {
managedApplicationGraphResultSchema,
projectManagedApplicationGraph,
projectManagedApplicationGraphInputSchema,
type ManagedApplicationGraphResult,
type ProjectManagedApplicationGraphInput,
-} from "../domain/managedApplicationGraph.js";
-import { err, ok, type Result } from "../domain/result.js";
-import { MANAGED_WORKFLOW_PROVIDER } from "./InvestigationProviders.js";
+} from "../../domain/managed/managedApplicationGraph.js";
+import { err, ok, type Result } from "../../domain/result.js";
+import { MANAGED_WORKFLOW_PROVIDER } from "../InvestigationProviders.js";
const OPERATION = "project_managed_application_graph" as const;
diff --git a/src/application/ManagedMemberComparisonService.ts b/src/application/managed/ManagedMemberComparisonService.ts
similarity index 89%
rename from src/application/ManagedMemberComparisonService.ts
rename to src/application/managed/ManagedMemberComparisonService.ts
index 47426a909..e27846f14 100644
--- a/src/application/ManagedMemberComparisonService.ts
+++ b/src/application/managed/ManagedMemberComparisonService.ts
@@ -8,22 +8,22 @@ import {
managedMemberComparisonResultSchema,
parseManagedMemberEvidence,
type CompareManagedMembersInput,
-} from "../domain/managedMemberComparison.js";
+} from "../../domain/managed/managedMemberComparison.js";
import {
AnalysisInputError,
AnalysisProtocolError,
-} from "../domain/analysisErrorCore.js";
-import { EvidenceIntegrityError } from "../domain/evidenceErrors.js";
-import { type AnalysisError } from "../domain/analysisErrorBase.js";
-import { createEvidence, type Evidence } from "../domain/evidence.js";
-import { jsonValueSchema } from "../domain/jsonValue.js";
-import { parseBinaryTarget } from "./BinaryTargetResolver.js";
-import { err, ok, type Result } from "../domain/result.js";
-import { inspectManagedMembersBytes } from "../dotnet/ManagedMemberInspector.js";
+} from "../../domain/analysisErrorCore.js";
+import { EvidenceIntegrityError } from "../../domain/evidenceErrors.js";
+import { type AnalysisError } from "../../domain/analysisErrorBase.js";
+import { createEvidence, type Evidence } from "../../domain/evidence.js";
+import { jsonValueSchema } from "../../domain/jsonValue.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,
MANAGED_WORKFLOW_PROVIDER,
-} from "./InvestigationProviders.js";
+} from "../InvestigationProviders.js";
/** Compare managed members from input parsed by a trusted adapter. */
export const compareManagedMembersEvidenceValidated = (
diff --git a/src/application/ManagedNativeVerificationService.ts b/src/application/managed/ManagedNativeVerificationService.ts
similarity index 80%
rename from src/application/ManagedNativeVerificationService.ts
rename to src/application/managed/ManagedNativeVerificationService.ts
index 63ddc799c..6835701ae 100644
--- a/src/application/ManagedNativeVerificationService.ts
+++ b/src/application/managed/ManagedNativeVerificationService.ts
@@ -3,18 +3,18 @@ import { z } from "zod";
import {
AnalysisInputError,
AnalysisProtocolError,
-} from "../domain/analysisErrorCore.js";
-import { type AnalysisError } from "../domain/analysisErrorBase.js";
-import { createEvidence, type Evidence } from "../domain/evidence.js";
-import { jsonValueSchema } from "../domain/jsonValue.js";
+} from "../../domain/analysisErrorCore.js";
+import { type AnalysisError } from "../../domain/analysisErrorBase.js";
+import { createEvidence, type Evidence } from "../../domain/evidence.js";
+import { jsonValueSchema } from "../../domain/jsonValue.js";
import {
managedNativeVerificationInputSchema,
verifyManagedNativeBoundaries,
type ManagedNativeVerificationInput,
type ManagedNativeVerificationResult,
-} from "../domain/managedNativeVerification.js";
-import { err, ok, type Result } from "../domain/result.js";
-import { MANAGED_WORKFLOW_PROVIDER } from "./InvestigationProviders.js";
+} from "../../domain/managed/managedNativeVerification.js";
+import { err, ok, type Result } from "../../domain/result.js";
+import { MANAGED_WORKFLOW_PROVIDER } from "../InvestigationProviders.js";
const OPERATION = "verify_managed_native_boundaries" as const;
diff --git a/src/application/ManagedReconstructionService.test.ts b/src/application/managed/ManagedReconstructionService.test.ts
similarity index 93%
rename from src/application/ManagedReconstructionService.test.ts
rename to src/application/managed/ManagedReconstructionService.test.ts
index d4afa734d..c980e1c6f 100644
--- a/src/application/ManagedReconstructionService.test.ts
+++ b/src/application/managed/ManagedReconstructionService.test.ts
@@ -2,13 +2,13 @@ import { createHash } from "node:crypto";
import { describe, expect, it } from "vitest";
-import { MANAGED_RECONSTRUCTION_IMPORT_EXAMPLE } from "../contracts/managedWorkflowExamples.js";
+import { MANAGED_RECONSTRUCTION_IMPORT_EXAMPLE } from "../../contracts/managed/managedWorkflowExamples.js";
import {
importManagedReconstruction,
managedReconstructionImportInputSchema,
-} from "../domain/managedReconstruction.js";
-import { managedMemberInspectionSchema } from "../domain/managedArtifact.js";
-import { createEvidence } from "../domain/evidence.js";
+} from "../../domain/managed/managedReconstruction.js";
+import { managedMemberInspectionSchema } from "../../domain/managed/managedArtifact.js";
+import { createEvidence } from "../../domain/evidence.js";
import { importManagedReconstructionEvidence } from "./ManagedReconstructionService.js";
const exampleInput = () =>
diff --git a/src/application/ManagedReconstructionService.ts b/src/application/managed/ManagedReconstructionService.ts
similarity index 86%
rename from src/application/ManagedReconstructionService.ts
rename to src/application/managed/ManagedReconstructionService.ts
index e28527197..86c38f7f7 100644
--- a/src/application/ManagedReconstructionService.ts
+++ b/src/application/managed/ManagedReconstructionService.ts
@@ -3,18 +3,18 @@ import { z } from "zod";
import {
AnalysisInputError,
AnalysisProtocolError,
-} from "../domain/analysisErrorCore.js";
-import { type AnalysisError } from "../domain/analysisErrorBase.js";
-import { createEvidence, type Evidence } from "../domain/evidence.js";
-import { jsonValueSchema } from "../domain/jsonValue.js";
+} from "../../domain/analysisErrorCore.js";
+import { type AnalysisError } from "../../domain/analysisErrorBase.js";
+import { createEvidence, type Evidence } from "../../domain/evidence.js";
+import { jsonValueSchema } from "../../domain/jsonValue.js";
import {
importManagedReconstruction,
managedReconstructionImportInputSchema,
type ManagedReconstructionImportInput,
type ManagedReconstructionImportResult,
-} from "../domain/managedReconstruction.js";
-import { err, ok, type Result } from "../domain/result.js";
-import { MANAGED_WORKFLOW_PROVIDER } from "./InvestigationProviders.js";
+} from "../../domain/managed/managedReconstruction.js";
+import { err, ok, type Result } from "../../domain/result.js";
+import { MANAGED_WORKFLOW_PROVIDER } from "../InvestigationProviders.js";
const OPERATION = "import_managed_reconstruction" as const;
diff --git a/src/artifacts/ArtifactProvider.ts b/src/artifacts/ArtifactProvider.ts
index 19a107983..a73cab602 100644
--- a/src/artifacts/ArtifactProvider.ts
+++ b/src/artifacts/ArtifactProvider.ts
@@ -7,12 +7,12 @@ import {
type ProviderIdentity,
type ExecutionOptions,
} from "../application/AnalysisProvider.js";
-import { inspectBundleKeyedArchive } from "./KeyedArchiveReader.js";
+import { inspectBundleKeyedArchive } from "./apple/KeyedArchiveReader.js";
import { basename, dirname } from "node:path";
import { inventoryArtifact } from "../application/ArtifactInventory.js";
import { extractArtifact } from "../application/ArtifactExtraction.js";
-import { analyzeInterfaceBuilderBundle } from "../application/InterfaceBuilderAnalysis.js";
-import { analyzeAppleAssetCatalogs } from "../application/AppleAssetCatalogAnalysis.js";
+import { analyzeInterfaceBuilderBundle } from "./apple/InterfaceBuilderAnalysis.js";
+import { analyzeAppleAssetCatalogs } from "./apple/AppleAssetCatalogAnalysis.js";
import {
ARTIFACT_ANALYSIS_OPERATIONS,
artifactInventoryInputSchema,
@@ -24,7 +24,7 @@ import { AnalysisCapabilityUnavailableError } from "../domain/analysisErrorCore.
import { ArtifactOperationError } from "../domain/artifactOperationError.js";
import { type AnalysisError } from "../domain/analysisErrorBase.js";
import type { JsonValue } from "../domain/jsonValue.js";
-import { interfaceBuilderLimitsSchema } from "../domain/interfaceBuilderGraph.js";
+import { interfaceBuilderLimitsSchema } from "../domain/apple/interfaceBuilderGraph.js";
import { err, ok } from "../domain/result.js";
import { ArtifactReaderFailure } from "./ArtifactReader.js";
import {
diff --git a/src/artifacts/AsarArtifactReader.ts b/src/artifacts/AsarArtifactReader.ts
index 674595a04..e231dae96 100644
--- a/src/artifacts/AsarArtifactReader.ts
+++ b/src/artifacts/AsarArtifactReader.ts
@@ -143,14 +143,29 @@ const asarFailure = (
path: string,
operation: string,
cause: unknown,
-): ArtifactReaderFailure =>
- cause instanceof ArtifactReaderFailure
- ? cause
- : new ArtifactReaderFailure(
- "format",
- `Malformed or unreadable ASAR during ${operation}: ${path}`,
- { cause },
- );
+): ArtifactReaderFailure => {
+ if (cause instanceof ArtifactReaderFailure) return cause;
+ if (isFilesystemFailure(cause))
+ return new ArtifactReaderFailure(
+ "io",
+ `Could not ${operation} ASAR at ${path}: ${cause.message}`,
+ { cause },
+ );
+ return new ArtifactReaderFailure(
+ "format",
+ `Malformed ASAR during ${operation}: ${path}`,
+ { cause },
+ );
+};
+
+const isFilesystemFailure = (
+ cause: unknown,
+): cause is NodeJS.ErrnoException & Error =>
+ cause instanceof Error &&
+ "errno" in cause &&
+ typeof cause.errno === "number" &&
+ "syscall" in cause &&
+ typeof cause.syscall === "string";
const isMissingFile = (cause: unknown): boolean =>
typeof cause === "object" &&
diff --git a/src/artifacts/DirectoryArtifactReader.ts b/src/artifacts/DirectoryArtifactReader.ts
index db4a37fad..cf4205c9e 100644
--- a/src/artifacts/DirectoryArtifactReader.ts
+++ b/src/artifacts/DirectoryArtifactReader.ts
@@ -85,7 +85,7 @@ export class DirectoryArtifactReader implements ArtifactReader {
);
const handle = await open(
entry.adapterKey,
- constants.O_RDONLY | constants.O_NOFOLLOW,
+ constants.O_RDONLY | constants.O_NOFOLLOW | constants.O_NONBLOCK,
);
try {
const observed = await handle.stat();
diff --git a/src/artifacts/NativeDmgArtifactReader.ts b/src/artifacts/NativeDmgArtifactReader.ts
index c29ba9d0e..b5c6ee73a 100644
--- a/src/artifacts/NativeDmgArtifactReader.ts
+++ b/src/artifacts/NativeDmgArtifactReader.ts
@@ -23,6 +23,13 @@ const attachOutputSchema = z.object({
}),
),
});
+const infoOutputSchema = z.object({
+ images: z.array(
+ z.object({
+ "system-entities": z.array(z.object({ "dev-entry": z.string() })),
+ }),
+ ),
+});
/** Narrow host seam for tested, shell-free hdiutil lifecycle operations. */
export interface NativeDmgHost {
@@ -113,7 +120,10 @@ export class NativeDmgArtifactReader implements ArtifactReader {
});
this.#provenance.push(command(["detach", device], ["mount"]));
} catch (cause: unknown) {
- detachFailure ??= cause;
+ // Detaching a synthesized APFS container also ejects the image that
+ // backs it, so a later whole disk of the same image may already be
+ // gone. Only a device that is still attached is a cleanup failure.
+ if (await this.#isAttached(device)) detachFailure ??= cause;
}
}
this.#devices = [];
@@ -131,6 +141,27 @@ export class NativeDmgArtifactReader implements ArtifactReader {
);
}
+ /**
+ * Report whether hdiutil still lists a device; unknown state counts as
+ * attached. Like detach, this cleanup query runs after the inventory
+ * snapshot has captured provenance, so it is not recorded there.
+ */
+ async #isAttached(device: string): Promise {
+ try {
+ const info = await runChecked(this.host, ["info", "-plist"], undefined, {
+ timeoutMs: DETACH_TIMEOUT_MS,
+ });
+ const parsed = infoOutputSchema.parse(parse(info.stdout));
+ return parsed.images.some((image) =>
+ image["system-entities"].some(
+ (entity) => entity["dev-entry"] === device,
+ ),
+ );
+ } catch {
+ return true;
+ }
+ }
+
async attach(signal?: AbortSignal): Promise {
await runChecked(this.host, ["verify", this.path], signal);
this.#provenance.push(command(["verify", this.path], ["read"]));
diff --git a/src/application/AppleAssetCatalogAnalysis.test.ts b/src/artifacts/apple/AppleAssetCatalogAnalysis.test.ts
similarity index 100%
rename from src/application/AppleAssetCatalogAnalysis.test.ts
rename to src/artifacts/apple/AppleAssetCatalogAnalysis.test.ts
diff --git a/src/application/AppleAssetCatalogAnalysis.ts b/src/artifacts/apple/AppleAssetCatalogAnalysis.ts
similarity index 95%
rename from src/application/AppleAssetCatalogAnalysis.ts
rename to src/artifacts/apple/AppleAssetCatalogAnalysis.ts
index 8ba8b04c6..36b88eb13 100644
--- a/src/application/AppleAssetCatalogAnalysis.ts
+++ b/src/artifacts/apple/AppleAssetCatalogAnalysis.ts
@@ -1,14 +1,14 @@
import { createHash } from "node:crypto";
import { lstat } from "node:fs/promises";
-import { DirectoryArtifactReader } from "../artifacts/DirectoryArtifactReader.js";
-import { ArtifactReaderFailure } from "../artifacts/ArtifactReader.js";
+import { DirectoryArtifactReader } from "../DirectoryArtifactReader.js";
+import { ArtifactReaderFailure } from "../ArtifactReader.js";
import { analyzeInterfaceBuilderBundle } from "./InterfaceBuilderAnalysis.js";
import {
appleAssetCatalogInputSchema,
parseAppleAssetCatalogRecords,
projectAppleAssetCatalogPage,
-} from "../domain/appleAssetCatalog.js";
-import { execFileOutput } from "../process/ExecFileOutput.js";
+} from "../../domain/apple/appleAssetCatalog.js";
+import { execFileOutput } from "../../process/ExecFileOutput.js";
const ASSETUTIL = "/usr/bin/assetutil";
const MAX_CATALOG_BYTES = 64 * 1024 * 1024;
@@ -105,7 +105,7 @@ export const analyzeAppleAssetCatalogs = async (input: {
const inspectAssetCatalogEntry = async (input: {
readonly reader: DirectoryArtifactReader;
- readonly entry: import("../artifacts/ArtifactReader.js").ArtifactEntry;
+ readonly entry: import("../ArtifactReader.js").ArtifactEntry;
readonly runAssetUtil: (
path: string,
signal?: AbortSignal,
@@ -237,7 +237,7 @@ const runAssetUtil = async (
const digestBounded = async (
reader: DirectoryArtifactReader,
- entry: import("../artifacts/ArtifactReader.js").ArtifactEntry,
+ entry: import("../ArtifactReader.js").ArtifactEntry,
signal?: AbortSignal,
): Promise => {
if (entry.declaredSize === null || entry.declaredSize > MAX_CATALOG_BYTES)
diff --git a/src/application/InterfaceBuilderAnalysis.ts b/src/artifacts/apple/InterfaceBuilderAnalysis.ts
similarity index 85%
rename from src/application/InterfaceBuilderAnalysis.ts
rename to src/artifacts/apple/InterfaceBuilderAnalysis.ts
index 247a2f02c..6966bbe9c 100644
--- a/src/application/InterfaceBuilderAnalysis.ts
+++ b/src/artifacts/apple/InterfaceBuilderAnalysis.ts
@@ -1,27 +1,25 @@
import { createHash } from "node:crypto";
import { parseBinary } from "plist";
-import { DirectoryArtifactReader } from "../artifacts/DirectoryArtifactReader.js";
+import { DirectoryArtifactReader } from "../DirectoryArtifactReader.js";
+import { projectPlistValue } from "../../domain/apple/plistValue.js";
import {
omittedPrototypeKeysLimitation,
parseXmlPropertyList,
-} from "../domain/propertyListKeys.js";
-import {
- decodeNibArchive,
- type NibArchiveDocument,
-} from "../artifacts/NibArchive.js";
-import type { ArtifactEntry } from "../artifacts/ArtifactReader.js";
+} from "../../domain/propertyListKeys.js";
+import { decodeNibArchive, type NibArchiveDocument } from "./NibArchive.js";
+import type { ArtifactEntry } from "../ArtifactReader.js";
import {
buildInterfaceBuilderAnalysis,
interfaceBuilderLimitsSchema,
type InterfaceBuilderDocumentInput,
-} from "../domain/interfaceBuilderGraph.js";
+} from "../../domain/apple/interfaceBuilderGraph.js";
import {
mergeNibHierarchies,
projectNibViewHierarchy,
type NibHierarchyNode,
} from "./NibViewHierarchy.js";
-import { jsonValueSchema, type JsonValue } from "../domain/jsonValue.js";
+import { jsonValueSchema, type JsonValue } from "../../domain/jsonValue.js";
const MAX_DOCUMENT_BYTES = 64 * 1024 * 1024;
@@ -214,15 +212,17 @@ const projectNibArchive = (archive: NibArchiveDocument) => {
const object = byId.get(objectId);
if (object === undefined) return null;
const storedClass = object.class_name.replace(/\0+$/u, "");
- return storedClass === "NSClassSwapper"
- ? (referencedString(object.values.NSClassName) ?? storedClass)
+ if (storedClass === "NSClassSwapper")
+ return referencedString(object.values.NSClassName) ?? storedClass;
+ return storedClass === "UIClassSwapper"
+ ? (referencedString(object.values.UIClassName) ?? storedClass)
: storedClass;
};
const objects = Object.fromEntries(
archive.objects
.filter((object) => {
const name = runtimeClass(object.id) ?? "";
- return !/^(?:NSObject|NSIBObjectData|NSString|NSMutableString|NSNumber|NSArray|NSMutableArray|NSSet|NSMutableSet|NSDictionary|NSMutableDictionary|NSApplication|NSNib.*Connector)$/u.test(
+ return !/^(?:NSObject|NSIBObjectData|NSString|NSMutableString|NSNumber|NSArray|NSMutableArray|NSSet|NSMutableSet|NSDictionary|NSMutableDictionary|NSApplication|NSNib.*Connector|UIRuntime\w*Connection)$/u.test(
name,
);
})
@@ -268,26 +268,34 @@ const projectNibArchive = (archive: NibArchiveDocument) => {
};
for (const object of archive.objects) {
const className = object.class_name.replace(/\0+$/u, "");
- const source = reference(object.values.NSSource);
- const destination = reference(object.values.NSDestination);
- if (className.includes("Connector") && source !== null) {
- const label = referencedString(object.values.NSLabel);
- const type = className.includes("Outlet")
- ? "outlet"
- : className.includes("Control")
- ? "action"
- : className;
- // NSSource is the outlet owner or the sending control; NSDestination is
- // the outlet value or the action target, and a nil target is the first
- // responder.
- (connections[String(source)] ??= []).push({
- type,
- "destination-id": destination === null ? null : String(destination),
- label,
- source_id: String(source),
- archive_object_id: String(object.id),
- });
- }
+ // AppKit connectors use NS-prefixed keys; UIKit's runtime outlet and
+ // event connections use UI-prefixed keys with the same roles.
+ const uiKit = /^UIRuntime\w*Connection$/u.test(className);
+ if (!uiKit && !className.includes("Connector")) continue;
+ const values = object.values;
+ const source = reference(uiKit ? values.UISource : values.NSSource);
+ if (source === null) continue;
+ const destination = reference(
+ uiKit ? values.UIDestination : values.NSDestination,
+ );
+ const label = referencedString(uiKit ? values.UILabel : values.NSLabel);
+ const type = className.includes("Outlet")
+ ? "outlet"
+ : className.includes("Control") || className.includes("Event")
+ ? "action"
+ : className;
+ const eventMask = values.UIEventMask;
+ // The source is the outlet owner or the sending control; the destination
+ // is the outlet value or the action target, and a nil target is the
+ // first responder.
+ (connections[String(source)] ??= []).push({
+ type,
+ "destination-id": destination === null ? null : String(destination),
+ label,
+ source_id: String(source),
+ archive_object_id: String(object.id),
+ ...(typeof eventMask === "number" ? { ui_event_mask: eventMask } : {}),
+ });
}
let hierarchyOmitted = 0;
const hierarchyFor = (
@@ -390,6 +398,7 @@ const readEntry = async (
return Buffer.concat(chunks, length);
};
+/** Project decoded plist data and dates while retaining omitted-key coverage. */
const decodePlist = (
bytes: Buffer,
): { readonly value: JsonValue; readonly omittedPrototypeKeys: number } => {
@@ -397,5 +406,5 @@ const decodePlist = (
bytes.subarray(0, 8).toString("ascii") === "bplist00"
? { value: parseBinary(bytes), omittedPrototypeKeys: 0 }
: parseXmlPropertyList(bytes.toString("utf8"));
- return { value: jsonValueSchema.parse(value), omittedPrototypeKeys };
+ return { value: projectPlistValue(value).value, omittedPrototypeKeys };
};
diff --git a/src/artifacts/KeyedArchiveReader.test.ts b/src/artifacts/apple/KeyedArchiveReader.test.ts
similarity index 100%
rename from src/artifacts/KeyedArchiveReader.test.ts
rename to src/artifacts/apple/KeyedArchiveReader.test.ts
diff --git a/src/artifacts/KeyedArchiveReader.ts b/src/artifacts/apple/KeyedArchiveReader.ts
similarity index 92%
rename from src/artifacts/KeyedArchiveReader.ts
rename to src/artifacts/apple/KeyedArchiveReader.ts
index b96253d5d..e94861997 100644
--- a/src/artifacts/KeyedArchiveReader.ts
+++ b/src/artifacts/apple/KeyedArchiveReader.ts
@@ -2,19 +2,19 @@ import { createHash } from "node:crypto";
import { TextDecoder } from "node:util";
import { parseBinary } from "plist";
import { z } from "zod";
-import type { JsonValue } from "../domain/jsonValue.js";
-import { projectPlistValue } from "../domain/plistValue.js";
+import type { JsonValue } from "../../domain/jsonValue.js";
+import { projectPlistValue } from "../../domain/apple/plistValue.js";
import {
omittedPrototypeKeysLimitation,
parseXmlPropertyList,
-} from "../domain/propertyListKeys.js";
+} from "../../domain/propertyListKeys.js";
import {
keyedArchiveInputSchema,
keyedArchiveResultSchema,
projectKeyedArchive,
-} from "../domain/keyedArchive.js";
-import { DirectoryArtifactReader } from "./DirectoryArtifactReader.js";
-import { ArtifactReaderFailure } from "./ArtifactReader.js";
+} from "../../domain/apple/keyedArchive.js";
+import { DirectoryArtifactReader } from "../DirectoryArtifactReader.js";
+import { ArtifactReaderFailure } from "../ArtifactReader.js";
const MAX_BYTES = 64 * 1024 * 1024;
diff --git a/src/artifacts/NibArchive.fixture.ts b/src/artifacts/apple/NibArchive.fixture.ts
similarity index 100%
rename from src/artifacts/NibArchive.fixture.ts
rename to src/artifacts/apple/NibArchive.fixture.ts
diff --git a/src/artifacts/NibArchive.test.ts b/src/artifacts/apple/NibArchive.test.ts
similarity index 100%
rename from src/artifacts/NibArchive.test.ts
rename to src/artifacts/apple/NibArchive.test.ts
diff --git a/src/artifacts/NibArchive.ts b/src/artifacts/apple/NibArchive.ts
similarity index 99%
rename from src/artifacts/NibArchive.ts
rename to src/artifacts/apple/NibArchive.ts
index 23d991bed..c383922d1 100644
--- a/src/artifacts/NibArchive.ts
+++ b/src/artifacts/apple/NibArchive.ts
@@ -1,4 +1,4 @@
-import type { JsonValue } from "../domain/jsonValue.js";
+import type { JsonValue } from "../../domain/jsonValue.js";
import { TextDecoder } from "node:util";
const MAGIC = Buffer.from("NIBArchive", "ascii");
diff --git a/src/application/NibViewHierarchy.test.ts b/src/artifacts/apple/NibViewHierarchy.test.ts
similarity index 100%
rename from src/application/NibViewHierarchy.test.ts
rename to src/artifacts/apple/NibViewHierarchy.test.ts
diff --git a/src/application/NibViewHierarchy.ts b/src/artifacts/apple/NibViewHierarchy.ts
similarity index 97%
rename from src/application/NibViewHierarchy.ts
rename to src/artifacts/apple/NibViewHierarchy.ts
index 231f456b6..61c669e53 100644
--- a/src/application/NibViewHierarchy.ts
+++ b/src/artifacts/apple/NibViewHierarchy.ts
@@ -1,5 +1,5 @@
-import type { NibArchiveDocument } from "../artifacts/NibArchive.js";
-import type { JsonValue } from "../domain/jsonValue.js";
+import type { NibArchiveDocument } from "./NibArchive.js";
+import type { JsonValue } from "../../domain/jsonValue.js";
export type NibHierarchyNode = {
objectID: string;
diff --git a/src/cli/applicationCommands.ts b/src/cli/applicationCommands.ts
index 15e8ebcd2..f4a6fb33b 100644
--- a/src/cli/applicationCommands.ts
+++ b/src/cli/applicationCommands.ts
@@ -2,7 +2,7 @@ import { reconstructionCoverageEvaluationInputSchema } from "../domain/reconstru
import { Cli, z } from "incur";
import { projectAndroidApplicationEvidence } from "../application/android/AndroidApplicationService.js";
-import { projectAppleApplicationEvidence } from "../application/AppleApplicationService.js";
+import { projectAppleApplicationEvidence } from "../application/apple/AppleApplicationService.js";
import {
compareApplicationVersionsEvidenceValidated,
compareJavaScriptExportShapesEvidenceValidated,
@@ -19,7 +19,7 @@ import { AnalysisInputError } from "../domain/analysisErrorCore.js";
import { projectAnalysisError } from "../domain/analysisErrorProjection.js";
import { type AnalysisError } from "../domain/analysisErrorBase.js";
import { androidApplicationProjectionInputSchema } from "../domain/android/androidApplication.js";
-import { appleApplicationProjectionInputSchema } from "../domain/appleApplication.js";
+import { appleApplicationProjectionInputSchema } from "../domain/apple/appleApplication.js";
import { jsonValueSchema, type JsonValue } from "../domain/jsonValue.js";
import type { Logger } from "../logger.js";
import { traceApplicationFeatureInputSchema } from "../domain/javascript/javascriptFeatureTraceSchemas.js";
@@ -103,7 +103,7 @@ export const registerApplicationCommands = (
logger,
name: CLI_COMMANDS.projectAppleApplicationGraph,
description:
- "Project authenticated IPA inventory Evidence into an Apple application graph",
+ "Project authenticated IPA or macOS app inventory Evidence into an Apple application graph",
inputSchema: appleApplicationProjectionInputSchema,
workflow: (input) => {
const result = projectAppleApplicationEvidence(input);
diff --git a/src/cli/managedCommands.ts b/src/cli/managedCommands.ts
index f1c65b107..b3c167efd 100644
--- a/src/cli/managedCommands.ts
+++ b/src/cli/managedCommands.ts
@@ -1,8 +1,8 @@
import { z } from "incur";
-import { compareManagedMemberPaths } from "../application/ManagedMemberComparisonService.js";
-import { verifyManagedNativeBoundariesEvidence } from "../application/ManagedNativeVerificationService.js";
-import { importManagedReconstructionEvidence } from "../application/ManagedReconstructionService.js";
+import { compareManagedMemberPaths } from "../application/managed/ManagedMemberComparisonService.js";
+import { verifyManagedNativeBoundariesEvidence } from "../application/managed/ManagedNativeVerificationService.js";
+import { importManagedReconstructionEvidence } from "../application/managed/ManagedReconstructionService.js";
import { runProviderAnalysis } from "../application/DirectAnalysis.js";
import { parseCliJsonInput } from "../cliJsonInput.js";
import { projectAnalysisError } from "../domain/analysisErrorProjection.js";
diff --git a/src/cli/managedProjectGraphCommand.ts b/src/cli/managedProjectGraphCommand.ts
index d41d99d99..b1104de7a 100644
--- a/src/cli/managedProjectGraphCommand.ts
+++ b/src/cli/managedProjectGraphCommand.ts
@@ -1,6 +1,6 @@
import { z } from "incur";
-import { projectManagedApplicationGraphEvidence } from "../application/ManagedApplicationGraphService.js";
+import { projectManagedApplicationGraphEvidence } from "../application/managed/ManagedApplicationGraphService.js";
import { CLI_COMMANDS } from "../cliCommandNames.js";
import { parseCliJsonInput } from "../cliJsonInput.js";
import { logCliCommand } from "../cliLogging.js";
diff --git a/src/contracts/applicationToolContracts.ts b/src/contracts/applicationToolContracts.ts
index e95bf7b03..6ef806c36 100644
--- a/src/contracts/applicationToolContracts.ts
+++ b/src/contracts/applicationToolContracts.ts
@@ -23,7 +23,7 @@ import {
import {
appleApplicationProjectionInputSchema,
appleApplicationProjectionResultSchema,
-} from "../domain/appleApplication.js";
+} from "../domain/apple/appleApplication.js";
import type { ToolContract } from "./toolContracts.js";
import { toolContractMetadata } from "./toolEffects.js";
import { evidenceResultOf } from "./toolOutputSchemas.js";
@@ -36,6 +36,7 @@ import {
import {
ANDROID_APPLICATION_GRAPH_EXAMPLE,
APPLE_APPLICATION_GRAPH_EXAMPLE,
+ MACOS_APPLICATION_GRAPH_EXAMPLE,
} from "./mobileApplicationGraphExamples.js";
const traceOutputSchema = evidenceResultOf(applicationFeatureTraceResultSchema);
@@ -278,7 +279,7 @@ export const APPLICATION_TOOL_CONTRACTS = [
name: "project_apple_application_graph",
...toolContractMetadata("project_apple_application_graph"),
description:
- "Project authenticated IPA inventory_artifact Evidence into an execution-free Apple application inventory. Reports exact component paths and hashes, runtime-family hints, and path-based bridge hypotheses without parsing plist/CMS semantics or claiming observed runtime calls.",
+ "Project authenticated IPA, macOS .app directory, ZIP, or DMG inventory Evidence into an execution-free Apple application inventory. Reports application roots, nested bundles with path-convention roles (app extensions, XPC services, login items, privileged helpers, system extensions, frameworks), launchd plists, exact component paths and hashes, runtime-family hints, and path-based bridge hypotheses without parsing plist/CMS semantics or claiming observed runtime calls.",
kind: "application",
inputSchema: appleApplicationProjectionInputSchema,
outputSchema: evidenceResultOf(appleApplicationProjectionResultSchema),
@@ -287,6 +288,11 @@ export const APPLICATION_TOOL_CONTRACTS = [
title: "Project IPA inventory Evidence into an Apple application graph",
input: APPLE_APPLICATION_GRAPH_EXAMPLE,
},
+ {
+ title:
+ "Project a macOS .app directory inventory into its bundle anatomy",
+ input: MACOS_APPLICATION_GRAPH_EXAMPLE,
+ },
],
},
] as const satisfies readonly ToolContract[];
diff --git a/src/contracts/artifactToolContracts.ts b/src/contracts/artifactToolContracts.ts
index a810ec901..3816020eb 100644
--- a/src/contracts/artifactToolContracts.ts
+++ b/src/contracts/artifactToolContracts.ts
@@ -5,8 +5,8 @@ import { artifactOutputSchemas } from "./toolOutputSchemas.js";
import { jsonValueSchema } from "../domain/jsonValue.js";
import { toolContractMetadata } from "./toolEffects.js";
import { requireOutputSchema } from "./toolOutputSchemaPrimitives.js";
-import { appleAssetCatalogInputSchema } from "../domain/appleAssetCatalog.js";
-import { keyedArchiveInputSchema } from "../domain/keyedArchive.js";
+import { appleAssetCatalogInputSchema } from "../domain/apple/appleAssetCatalog.js";
+import { keyedArchiveInputSchema } from "../domain/apple/keyedArchive.js";
import { artifactIntegrityPolicySchema } from "../domain/artifactGraph.js";
/** Exact caller boundary for deterministic artifact inventory. */
export const artifactInventoryInputSchema = z.strictObject({
diff --git a/src/contracts/contractSnapshot.test.ts b/src/contracts/contractSnapshot.test.ts
index f0bbe69a6..3a606a052 100644
--- a/src/contracts/contractSnapshot.test.ts
+++ b/src/contracts/contractSnapshot.test.ts
@@ -8,8 +8,8 @@ import { NATIVE_TOOL_CONTRACTS } from "./nativeToolContracts.js";
import { ARTIFACT_TOOL_CONTRACTS } from "./artifactToolContracts.js";
import { FIRMWARE_TOOL_CONTRACTS } from "./firmware/firmwareToolContracts.js";
import { ANDROID_TOOL_CONTRACTS } from "./android/androidToolContracts.js";
-import { MANAGED_TOOL_CONTRACTS } from "./managedToolContracts.js";
-import { MANAGED_WORKFLOW_TOOL_CONTRACTS } from "./managedWorkflowToolContracts.js";
+import { MANAGED_TOOL_CONTRACTS } from "./managed/managedToolContracts.js";
+import { MANAGED_WORKFLOW_TOOL_CONTRACTS } from "./managed/managedWorkflowToolContracts.js";
import { BROWSER_TOOL_CONTRACTS } from "./browserToolContracts.js";
import { BROWSER_SCENARIO_TOOL_CONTRACTS } from "./browserScenarioToolContracts.js";
import { ELECTRON_TOOL_CONTRACTS } from "./javascript/electronToolContracts.js";
diff --git a/src/contracts/managedToolContracts.ts b/src/contracts/managed/managedToolContracts.ts
similarity index 93%
rename from src/contracts/managedToolContracts.ts
rename to src/contracts/managed/managedToolContracts.ts
index 5f2c4ab96..dc5702322 100644
--- a/src/contracts/managedToolContracts.ts
+++ b/src/contracts/managed/managedToolContracts.ts
@@ -1,9 +1,9 @@
import { z } from "zod";
-import type { ToolContract } from "./toolContracts.js";
-import { managedOutputSchemas } from "./toolOutputSchemas.js";
-import { toolContractMetadata } from "./toolEffects.js";
-import { requireOutputSchema } from "./toolOutputSchemaPrimitives.js";
+import type { ToolContract } from "../toolContracts.js";
+import { managedOutputSchemas } from "../toolOutputSchemas.js";
+import { toolContractMetadata } from "../toolEffects.js";
+import { requireOutputSchema } from "../toolOutputSchemaPrimitives.js";
/** Exact caller boundary for execution-free PE/CLI triage and identity. */
const managedTargetInputSchema = z.object({
diff --git a/src/contracts/managedWorkflowExamples.ts b/src/contracts/managed/managedWorkflowExamples.ts
similarity index 97%
rename from src/contracts/managedWorkflowExamples.ts
rename to src/contracts/managed/managedWorkflowExamples.ts
index e6acdc5eb..6340b2c2c 100644
--- a/src/contracts/managedWorkflowExamples.ts
+++ b/src/contracts/managed/managedWorkflowExamples.ts
@@ -1,9 +1,9 @@
-import { createEvidence } from "../domain/evidence.js";
+import { createEvidence } from "../../domain/evidence.js";
import type {
ManagedMemberInspection,
ManagedNativeBoundaryInspection,
-} from "../domain/managedArtifact.js";
-import type { InspectMacho } from "../domain/nativeInspection.js";
+} from "../../domain/managed/managedArtifact.js";
+import type { InspectMacho } from "../../domain/nativeInspection.js";
const MANAGED_STATIC_EXAMPLE_PROVIDER = {
id: "rea-dotnet-static",
diff --git a/src/contracts/managedWorkflowToolContracts.ts b/src/contracts/managed/managedWorkflowToolContracts.ts
similarity index 94%
rename from src/contracts/managedWorkflowToolContracts.ts
rename to src/contracts/managed/managedWorkflowToolContracts.ts
index 26e1886fd..f1f8d4092 100644
--- a/src/contracts/managedWorkflowToolContracts.ts
+++ b/src/contracts/managed/managedWorkflowToolContracts.ts
@@ -1,17 +1,17 @@
import { z } from "zod";
-import { evidenceSchema } from "../domain/evidence.js";
+import { evidenceSchema } from "../../domain/evidence.js";
-import { managedReconstructionImportInputSchema } from "../domain/managedReconstruction.js";
-import type { ToolContract } from "./toolContracts.js";
-import { managedWorkflowOutputSchemas } from "./toolOutputSchemas.js";
+import { managedReconstructionImportInputSchema } from "../../domain/managed/managedReconstruction.js";
+import type { ToolContract } from "../toolContracts.js";
+import { managedWorkflowOutputSchemas } from "../toolOutputSchemas.js";
import {
MANAGED_MEMBER_COMPARISON_EXAMPLE,
MANAGED_NATIVE_VERIFICATION_EXAMPLE,
MANAGED_APPLICATION_GRAPH_EXAMPLE,
MANAGED_RECONSTRUCTION_IMPORT_EXAMPLE,
} from "./managedWorkflowExamples.js";
-import { toolContractMetadata } from "./toolEffects.js";
-import { requireOutputSchema } from "./toolOutputSchemaPrimitives.js";
+import { toolContractMetadata } from "../toolEffects.js";
+import { requireOutputSchema } from "../toolOutputSchemaPrimitives.js";
/** Inputs for comparing two managed observations carried inline. */
export const compareManagedMembersReferenceInputSchema = z
diff --git a/src/contracts/mobileApplicationGraphExamples.ts b/src/contracts/mobileApplicationGraphExamples.ts
index 968b54c08..45eae76cc 100644
--- a/src/contracts/mobileApplicationGraphExamples.ts
+++ b/src/contracts/mobileApplicationGraphExamples.ts
@@ -2,7 +2,7 @@ import { canonicalDigest } from "../domain/comparisonSemantics.js";
import { createEvidence } from "../domain/evidence.js";
import { jsonValueSchema } from "../domain/jsonValue.js";
-const inventory = (format: "apk" | "ipa", digit: string) => {
+const inventory = (format: "apk" | "ipa" | "directory", digit: string) => {
const sha = digit.repeat(64);
const artifactId = `art_${canonicalDigest({ sha256: sha }, "Artifact inventory")}`;
const occurrenceId = `occ_${canonicalDigest(
@@ -112,3 +112,20 @@ export const APPLE_APPLICATION_GRAPH_EXAMPLE = {
),
],
};
+
+/** Catalog example for a macOS application bundle inventoried as a directory. */
+export const MACOS_APPLICATION_GRAPH_EXAMPLE = {
+ inventory_evidence: [
+ createEvidence(
+ { path: "Fixture.app", sha256: "c".repeat(64), format: "directory" },
+ provider,
+ {
+ operation: "inventory_artifact",
+ parameters: {},
+ result: inventory("directory", "c"),
+ confidence: "observed",
+ authority: "shipped-artifact",
+ },
+ ),
+ ],
+};
diff --git a/src/contracts/sessionToolContracts.ts b/src/contracts/sessionToolContracts.ts
index c3de2210d..81ce1836c 100644
--- a/src/contracts/sessionToolContracts.ts
+++ b/src/contracts/sessionToolContracts.ts
@@ -80,7 +80,7 @@ export const SESSION_TOOL_CONTRACTS = [
),
session(
"capture_process_scenario",
- "Run one caller-selected command under a PTY and return process capture Evidence with residual unknowns. A command name resolves through the inherited PATH; the working directory defaults to the caller's current directory; host environment variables are inherited with scenario overrides. Filesystem snapshots are opt-in through filesystem_observation_paths. The target runs with the current user's permissions; this is not a security sandbox.",
+ "Run one caller-selected command under a PTY and return process capture Evidence with residual unknowns. A command name resolves through the inherited PATH; the working directory defaults to the caller's current directory; host environment variables are inherited with scenario overrides. Environment keys cannot contain '=' or NUL, and REA_PROCESS_RUN_ID is reserved for process ownership. Filesystem snapshots are opt-in through filesystem_observation_paths. The target runs with the current user's permissions; this is not a security sandbox.",
processScenarioSchema,
),
session(
diff --git a/src/contracts/toolContracts.test.ts b/src/contracts/toolContracts.test.ts
index b73588cb0..1649b96ec 100644
--- a/src/contracts/toolContracts.test.ts
+++ b/src/contracts/toolContracts.test.ts
@@ -5,10 +5,10 @@ import { OFFICIAL_TOOL_CONTRACTS } from "./officialToolContracts.js";
import { SESSION_TOOL_CONTRACTS } from "./sessionToolContracts.js";
import { TOOL_CONTRACTS } from "./toolContracts.js";
import { ARTIFACT_TOOL_CONTRACTS } from "./artifactToolContracts.js";
-import { MANAGED_TOOL_CONTRACTS } from "./managedToolContracts.js";
+import { MANAGED_TOOL_CONTRACTS } from "./managed/managedToolContracts.js";
import { FIRMWARE_TOOL_CONTRACTS } from "./firmware/firmwareToolContracts.js";
import { ANDROID_TOOL_CONTRACTS } from "./android/androidToolContracts.js";
-import { MANAGED_WORKFLOW_TOOL_CONTRACTS } from "./managedWorkflowToolContracts.js";
+import { MANAGED_WORKFLOW_TOOL_CONTRACTS } from "./managed/managedWorkflowToolContracts.js";
import { NATIVE_TOOL_CONTRACTS } from "./nativeToolContracts.js";
import { BROWSER_PROVIDER_TOOL_CONTRACTS } from "./browserProviderToolContracts.js";
import { ELECTRON_TOOL_CONTRACTS } from "./javascript/electronToolContracts.js";
diff --git a/src/contracts/toolContracts.ts b/src/contracts/toolContracts.ts
index 3966c2f56..6fa54b72f 100644
--- a/src/contracts/toolContracts.ts
+++ b/src/contracts/toolContracts.ts
@@ -1,9 +1,9 @@
import { NATIVE_TOOL_CONTRACTS } from "./nativeToolContracts.js";
import { ARTIFACT_TOOL_CONTRACTS } from "./artifactToolContracts.js";
-import { MANAGED_TOOL_CONTRACTS } from "./managedToolContracts.js";
+import { MANAGED_TOOL_CONTRACTS } from "./managed/managedToolContracts.js";
import { FIRMWARE_TOOL_CONTRACTS } from "./firmware/firmwareToolContracts.js";
import { ANDROID_TOOL_CONTRACTS } from "./android/androidToolContracts.js";
-import { MANAGED_WORKFLOW_TOOL_CONTRACTS } from "./managedWorkflowToolContracts.js";
+import { MANAGED_WORKFLOW_TOOL_CONTRACTS } from "./managed/managedWorkflowToolContracts.js";
import { BROWSER_PROVIDER_TOOL_CONTRACTS } from "./browserProviderToolContracts.js";
import { ELECTRON_TOOL_CONTRACTS } from "./javascript/electronToolContracts.js";
import { JAVASCRIPT_RUNTIME_OBSERVATION_TOOL_CONTRACTS } from "./javascript/javascriptRuntimeObservationToolContracts.js";
diff --git a/src/contracts/toolOutputSchemaGroups.ts b/src/contracts/toolOutputSchemaGroups.ts
index 2a8665591..eb0fb000e 100644
--- a/src/contracts/toolOutputSchemaGroups.ts
+++ b/src/contracts/toolOutputSchemaGroups.ts
@@ -30,18 +30,18 @@ import {
} from "../domain/nativeInspection.js";
import { artifactExtractionResultSchema } from "../domain/artifactGraph.js";
import { artifactInspectionResultSchema } from "../domain/artifactInspection.js";
-import { interfaceBuilderAnalysisSchema } from "../domain/interfaceBuilderGraph.js";
-import { keyedArchiveResultSchema } from "../domain/keyedArchive.js";
-import { appleAssetCatalogResultSchema } from "../domain/appleAssetCatalog.js";
+import { interfaceBuilderAnalysisSchema } from "../domain/apple/interfaceBuilderGraph.js";
+import { keyedArchiveResultSchema } from "../domain/apple/keyedArchive.js";
+import { appleAssetCatalogResultSchema } from "../domain/apple/appleAssetCatalog.js";
import {
managedArtifactInspectionSchema,
managedMemberInspectionSchema,
managedNativeBoundaryInspectionSchema,
-} from "../domain/managedArtifact.js";
-import { managedMemberComparisonResultSchema } from "../domain/managedMemberComparison.js";
-import { managedNativeVerificationResultSchema } from "../domain/managedNativeVerification.js";
-import { managedReconstructionImportResultSchema } from "../domain/managedReconstruction.js";
-import { managedApplicationGraphResultSchema } from "../domain/managedApplicationGraph.js";
+} from "../domain/managed/managedArtifact.js";
+import { managedMemberComparisonResultSchema } from "../domain/managed/managedMemberComparison.js";
+import { managedNativeVerificationResultSchema } from "../domain/managed/managedNativeVerification.js";
+import { managedReconstructionImportResultSchema } from "../domain/managed/managedReconstruction.js";
+import { managedApplicationGraphResultSchema } from "../domain/managed/managedApplicationGraph.js";
import { artifactComparisonResultSchema } from "../domain/artifactComparison.js";
import { functionComparisonResultSchema } from "../domain/functionComparison.js";
import { bundleComparisonResultSchema } from "../domain/bundleComparison.js";
diff --git a/src/contracts/workflowInputContracts.test.ts b/src/contracts/workflowInputContracts.test.ts
index 291d3dded..a82481e5d 100644
--- a/src/contracts/workflowInputContracts.test.ts
+++ b/src/contracts/workflowInputContracts.test.ts
@@ -7,12 +7,12 @@ import {
MANAGED_APPLICATION_GRAPH_EXAMPLE,
MANAGED_MEMBER_COMPARISON_EXAMPLE,
MANAGED_NATIVE_VERIFICATION_EXAMPLE,
-} from "./managedWorkflowExamples.js";
+} from "./managed/managedWorkflowExamples.js";
import {
compareManagedMembersReferenceInputSchema,
managedApplicationGraphReferenceInputSchema,
managedNativeVerificationReferenceInputSchema,
-} from "./managedWorkflowToolContracts.js";
+} from "./managed/managedWorkflowToolContracts.js";
describe("workflow input contracts", () => {
it("rejects application Evidence ID references and duplicate inline records", () => {
diff --git a/src/domain/apple/appleApplication.test.ts b/src/domain/apple/appleApplication.test.ts
new file mode 100644
index 000000000..ea5419dc9
--- /dev/null
+++ b/src/domain/apple/appleApplication.test.ts
@@ -0,0 +1,497 @@
+import { createHash } from "node:crypto";
+
+import { describe, expect, it } from "vitest";
+
+import { projectAppleApplication } from "./appleApplication.js";
+import { canonicalDigest } from "../comparisonSemantics.js";
+import { createEvidence, type Evidence } from "../evidence.js";
+import { jsonValueSchema } from "../jsonValue.js";
+
+type EntryKind = "file" | "directory" | "symlink";
+type RootFormat = "ipa" | "zip" | "dmg" | "directory" | "asar";
+
+interface FixtureEntry {
+ readonly path: string;
+ readonly kind?: EntryKind;
+ readonly format?: string;
+}
+
+const sha = (text: string): string =>
+ createHash("sha256").update(text).digest("hex");
+const artifactId = (sha256: string): string =>
+ `art_${canonicalDigest({ sha256 }, "Artifact inventory")}`;
+
+/** Build one complete, content-addressed inventory page for pure projection tests. */
+const inventoryEvidence = (
+ rootFormat: RootFormat,
+ subjectName: string,
+ entries: readonly FixtureEntry[],
+): Evidence => {
+ const rootSha = sha(`${rootFormat}:${subjectName}`);
+ const rootId = artifactId(rootSha);
+ const node = (sha256: string, format: string) => ({
+ artifact_id: artifactId(sha256),
+ kind: "resource",
+ format,
+ sha256,
+ size: 1,
+ media_type: null,
+ architecture: null,
+ executable: false,
+ content_state: "materialized",
+ limitations: [],
+ });
+ const occurrence = (path: string, kind: EntryKind, id: string | null) => ({
+ occurrence_id:
+ path === "."
+ ? `occ_${canonicalDigest({ root: rootId }, "Artifact inventory")}`
+ : `occ_${canonicalDigest(
+ { root_artifact_id: rootId, logical_path: path, entry_kind: kind },
+ "Artifact inventory",
+ )}`,
+ artifact_id: id,
+ parent_occurrence_id: null,
+ logical_path: path,
+ entry_kind: kind,
+ declared_size: null,
+ compressed_size: null,
+ executable: false,
+ encrypted: false,
+ hash_status: "verified",
+ source_location: null,
+ limitations: [],
+ });
+ const nodes = new Map([[rootId, node(rootSha, rootFormat)]]);
+ const occurrences = [occurrence(".", "file", rootId)];
+ for (const { path, kind = "file", format = "file" } of entries) {
+ if (kind === "symlink") {
+ occurrences.push(occurrence(path, kind, null));
+ continue;
+ }
+ const contentSha = sha(`${kind}:${path}`);
+ const id = artifactId(contentSha);
+ nodes.set(
+ id,
+ node(contentSha, kind === "directory" ? "directory" : format),
+ );
+ occurrences.push(occurrence(path, kind, id));
+ }
+ const sortedNodes = [...nodes.values()].sort((left, right) =>
+ left.artifact_id.localeCompare(right.artifact_id),
+ );
+ const sortedOccurrences = occurrences.sort((left, right) =>
+ left.logical_path.localeCompare(right.logical_path, "en"),
+ );
+ const graphSha256 = canonicalDigest(
+ {
+ nodes: sortedNodes,
+ occurrences: sortedOccurrences,
+ edges: [],
+ integrity_contradictions: [],
+ },
+ "Artifact inventory",
+ );
+ return createEvidence(
+ {
+ path: `/fixtures/${subjectName}`,
+ sha256: rootSha,
+ format: rootFormat,
+ },
+ { id: "rea-artifact-graph", name: "fixture", version: "1" },
+ {
+ operation: "inventory_artifact",
+ parameters: {},
+ confidence: "observed",
+ authority: "shipped-artifact",
+ result: jsonValueSchema.parse({
+ manifest: {
+ manifest_id: `agm_${canonicalDigest(
+ { root_artifact_id: rootId, graph_sha256: graphSha256 },
+ "Artifact inventory",
+ )}`,
+ root_artifact_id: rootId,
+ root_sha256: rootSha,
+ root_format: rootFormat,
+ graph_sha256: graphSha256,
+ node_count: sortedNodes.length,
+ occurrence_count: sortedOccurrences.length,
+ edge_count: 0,
+ },
+ nodes: sortedNodes,
+ occurrences: sortedOccurrences,
+ edges: [],
+ provenance: [],
+ limitations: [],
+ }),
+ },
+ );
+};
+
+const project = (evidence: Evidence) =>
+ projectAppleApplication({ inventory_evidence: [evidence] });
+
+const macho = (path: string): FixtureEntry => ({ path, format: "mach-o" });
+
+describe("macOS application roots and bundle roles", () => {
+ it("treats an inventoried .app directory as its own application root", () => {
+ const result = project(
+ inventoryEvidence("directory", "Fixture.app", [
+ { path: "Contents/Info.plist" },
+ macho("Contents/MacOS/Fixture"),
+ { path: "Contents/_CodeSignature/CodeResources" },
+ { path: "Contents/embedded.provisionprofile" },
+ macho("Contents/Library/LaunchServices/com.example.helper"),
+ { path: "Contents/Library/LaunchDaemons/com.example.helper.plist" },
+ { path: "Contents/Library/LaunchAgents/com.example.agent.plist" },
+ macho("Contents/Helpers/tool"),
+ macho("Contents/Helpers/Assistant.app/Contents/MacOS/Assistant"),
+ macho(
+ "Contents/Library/SystemExtensions/com.example.filter.systemextension/Contents/MacOS/com.example.filter",
+ ),
+ macho(
+ "Contents/Library/SystemExtensions/com.example.driver.dext/driver",
+ ),
+ { path: "Contents/PlugIns/Preview.qlgenerator", kind: "directory" },
+ macho("Contents/PlugIns/Bridge.bundle/Contents/MacOS/Bridge"),
+ { path: "Contents/Resources/Strings.bundle/Info.plist" },
+ { path: "Contents/SharedSupport/Data.bundle", kind: "directory" },
+ macho("Contents/Resources/Embedded.app/Contents/MacOS/Embedded"),
+ ]),
+ );
+ expect(result).toMatchObject({
+ root_format: "directory",
+ platforms: ["macos"],
+ application_roots: ["."],
+ });
+ expect(
+ result.bundles.map(({ path, role, layout, parent_path: parent }) => ({
+ path,
+ role,
+ layout,
+ parent,
+ })),
+ ).toEqual([
+ { path: ".", role: "application", layout: "macos-deep", parent: null },
+ {
+ path: "Contents/Helpers/Assistant.app",
+ role: "helper-application",
+ layout: "macos-deep",
+ parent: ".",
+ },
+ {
+ path: "Contents/Library/SystemExtensions/com.example.driver.dext",
+ role: "driver-extension",
+ layout: "shallow",
+ parent: ".",
+ },
+ {
+ path: "Contents/Library/SystemExtensions/com.example.filter.systemextension",
+ role: "system-extension",
+ layout: "macos-deep",
+ parent: ".",
+ },
+ {
+ path: "Contents/PlugIns/Bridge.bundle",
+ role: "plug-in",
+ layout: "macos-deep",
+ parent: ".",
+ },
+ {
+ path: "Contents/PlugIns/Preview.qlgenerator",
+ role: "plug-in",
+ layout: "shallow",
+ parent: ".",
+ },
+ {
+ path: "Contents/Resources/Embedded.app",
+ role: "nested-application",
+ layout: "macos-deep",
+ parent: ".",
+ },
+ {
+ path: "Contents/Resources/Strings.bundle",
+ role: "resource-bundle",
+ layout: "shallow",
+ parent: ".",
+ },
+ {
+ path: "Contents/SharedSupport/Data.bundle",
+ role: "bundle",
+ layout: "shallow",
+ parent: ".",
+ },
+ ]);
+ expect(result.bundles[0]).toMatchObject({
+ info_plist_path: "Contents/Info.plist",
+ executable_candidates: ["Contents/MacOS/Fixture"],
+ signing_paths: [
+ "Contents/_CodeSignature/CodeResources",
+ "Contents/embedded.provisionprofile",
+ ],
+ });
+ expect(
+ result.components.privileged_helpers.map(({ path }) => path),
+ ).toEqual(["Contents/Library/LaunchServices/com.example.helper"]);
+ expect(
+ result.components.launchd_plists.map(({ path, domain }) => [
+ path,
+ domain,
+ ]),
+ ).toEqual([
+ ["Contents/Library/LaunchAgents/com.example.agent.plist", "agent"],
+ ["Contents/Library/LaunchDaemons/com.example.helper.plist", "daemon"],
+ ]);
+ expect(result.components.helpers.map(({ path }) => path)).toEqual([
+ "Contents/Helpers/tool",
+ ]);
+ });
+
+ it("does not make a non-application bundle directory an application root", () => {
+ const result = project(
+ inventoryEvidence("directory", "Service.xpc", [
+ { path: "Contents/Info.plist" },
+ macho("Contents/MacOS/Service"),
+ ]),
+ );
+ expect(result.application_roots).toEqual([]);
+ expect(result.bundles).toEqual([]);
+ expect(result.limitations).toContain(
+ "No application bundle (Payload/*.app or *.app/Contents) was present in the supplied inventory pages.",
+ );
+ });
+});
+
+describe("Apple bundle layouts and containers", () => {
+ it("follows versioned frameworks without resolving Versions/Current", () => {
+ const framework = "Fixture.app/Contents/Frameworks/Core.framework";
+ const result = project(
+ inventoryEvidence("zip", "Fixture.zip", [
+ macho("Fixture.app/Contents/MacOS/Fixture"),
+ { path: `${framework}/Core`, kind: "symlink" },
+ { path: `${framework}/Versions/Current`, kind: "symlink" },
+ macho(`${framework}/Versions/A/Core`),
+ { path: `${framework}/Versions/A/Resources/Info.plist` },
+ { path: `${framework}/Versions/A/_CodeSignature/CodeResources` },
+ macho(
+ `${framework}/Versions/A/XPCServices/Fetch.xpc/Contents/MacOS/Fetch`,
+ ),
+ ]),
+ );
+ const core = result.bundles.find(({ path }) => path === framework);
+ expect(core).toEqual({
+ path: framework,
+ parent_path: "Fixture.app",
+ layout: "versioned-framework",
+ role: "framework",
+ role_basis: "path-convention",
+ info_plist_path: `${framework}/Versions/A/Resources/Info.plist`,
+ executable_candidates: [`${framework}/Versions/A/Core`],
+ signing_paths: [`${framework}/Versions/A/_CodeSignature/CodeResources`],
+ });
+ expect(
+ result.bundles.find(({ role }) => role === "xpc-service")?.parent_path,
+ ).toBe(framework);
+ expect(result.symlinks).toEqual([
+ `${framework}/Core`,
+ `${framework}/Versions/Current`,
+ ]);
+ });
+
+ it("reports an unknown Info.plist when several framework versions exist", () => {
+ const framework = "Fixture.app/Contents/Frameworks/Core.framework";
+ const result = project(
+ inventoryEvidence("zip", "Fixture.zip", [
+ macho("Fixture.app/Contents/MacOS/Fixture"),
+ { path: `${framework}/Versions/A/Resources/Info.plist` },
+ { path: `${framework}/Versions/B/Resources/Info.plist` },
+ ]),
+ );
+ expect(
+ result.bundles.find(({ path }) => path === framework)?.info_plist_path,
+ ).toBeNull();
+ // Files beside the only real version are not versions.
+ const withFiles = project(
+ inventoryEvidence("zip", "Fixture.zip", [
+ macho("Fixture.app/Contents/MacOS/Fixture"),
+ { path: `${framework}/Versions/A/Resources/Info.plist` },
+ { path: `${framework}/Versions/.DS_Store` },
+ { path: `${framework}/Versions/Current`, kind: "symlink" },
+ ]),
+ );
+ expect(
+ withFiles.bundles.find(({ path }) => path === framework)?.info_plist_path,
+ ).toBe(`${framework}/Versions/A/Resources/Info.plist`);
+ // Only A has a plist, but Versions/Current may select B.
+ const onlyA = project(
+ inventoryEvidence("zip", "Fixture.zip", [
+ macho("Fixture.app/Contents/MacOS/Fixture"),
+ { path: `${framework}/Versions/A/Resources/Info.plist` },
+ macho(`${framework}/Versions/B/Core`),
+ ]),
+ );
+ expect(
+ onlyA.bundles.find(({ path }) => path === framework)?.info_plist_path,
+ ).toBeNull();
+ expect(result.limitations).toContainEqual(
+ expect.stringContaining("Versions/Current selects is unknown"),
+ );
+ });
+
+ it("excludes AppleDouble sidecars from roots and roles", () => {
+ const result = project(
+ inventoryEvidence("zip", "Fixture.zip", [
+ macho("Fixture.app/Contents/MacOS/Fixture"),
+ { path: "Fixture.app/Contents/Library/LaunchDaemons/._helper.plist" },
+ { path: "Fixture.app/Contents/Library/LaunchDaemons/helper.plist" },
+ { path: "__MACOSX/Other.app/Contents/._Info.plist" },
+ ]),
+ );
+ expect(result.application_roots).toEqual(["Fixture.app"]);
+ expect(result.components.launchd_plists.map(({ path }) => path)).toEqual([
+ "Fixture.app/Contents/Library/LaunchDaemons/helper.plist",
+ ]);
+ expect(result.limitations).toContainEqual(
+ expect.stringContaining("AppleDouble sidecar entries"),
+ );
+ });
+
+ it("reports a DMG without inventoried contents as partial", () => {
+ const result = project(inventoryEvidence("dmg", "Fixture.dmg", []));
+ expect(result.coverage).toEqual({
+ status: "partial",
+ inventory_complete: true,
+ });
+ expect(result.limitations).toContain(
+ "The DMG's contents were not inventoried on this host; bundle absence is unknown.",
+ );
+ });
+
+ it("keeps IPA applications shallow and iOS", () => {
+ const result = project(
+ inventoryEvidence("ipa", "Fixture.ipa", [
+ { path: "Payload/Fixture.app/Info.plist" },
+ macho("Payload/Fixture.app/Fixture"),
+ { path: "Payload/Fixture.app/embedded.mobileprovision" },
+ macho("Payload/Fixture.app/PlugIns/Share.appex/Share"),
+ macho("SwiftSupport/iphoneos/libswiftCore.dylib"),
+ ]),
+ );
+ expect(result.platforms).toEqual(["ios"]);
+ // IPA projection still lists archive components outside Payload/.
+ expect(result.components.native_libraries.map(({ path }) => path)).toEqual([
+ "SwiftSupport/iphoneos/libswiftCore.dylib",
+ ]);
+ expect(
+ result.bundles.map(({ path, role, layout }) => [path, role, layout]),
+ ).toEqual([
+ ["Payload/Fixture.app", "application", "shallow"],
+ ["Payload/Fixture.app/PlugIns/Share.appex", "app-extension", "shallow"],
+ ]);
+ expect(result.bundles[0]?.executable_candidates).toEqual([
+ "Payload/Fixture.app/Fixture",
+ ]);
+ });
+
+ it("rejects inventories that cannot contain an Apple application", () => {
+ expect(() => project(inventoryEvidence("asar", "app.asar", []))).toThrow(
+ "Apple application projection requires IPA, directory, ZIP, or DMG inventory Evidence (got asar)",
+ );
+ });
+});
+
+describe("macOS application scope", () => {
+ it("attributes only components inside the application roots", () => {
+ const result = project(
+ inventoryEvidence("zip", "Distribution.zip", [
+ macho("Fixture.app/Contents/MacOS/Fixture"),
+ macho("Fixture.app/Contents/Frameworks/Core.framework/Versions/A/Core"),
+ {
+ path: "Fixture.app/Contents/Resources/app.js",
+ format: "javascript-bundle",
+ },
+ macho("Extras/Plugin.framework/Versions/A/Plugin"),
+ macho("Extras/libextra.dylib"),
+ { path: "Extras/installer.js", format: "javascript-bundle" },
+ { path: "Extras/Info.plist" },
+ ]),
+ );
+ const paths = (components: readonly { readonly path: string }[]) =>
+ components.map(({ path }) => path);
+ expect(paths(result.components.frameworks)).toEqual([
+ "Fixture.app/Contents/Frameworks/Core.framework/Versions/A/Core",
+ ]);
+ expect(paths(result.components.native_libraries)).toEqual([]);
+ expect(paths(result.components.javascript)).toEqual([
+ "Fixture.app/Contents/Resources/app.js",
+ ]);
+ expect(paths(result.components.bundle_metadata)).toEqual([]);
+ expect(
+ result.bridge_candidates.every(
+ ({ source_path: source, native_path: target }) =>
+ [source, target].every((path) => path.startsWith("Fixture.app/")),
+ ),
+ ).toBe(true);
+ expect(result.limitations).toContain(
+ "4 inventoried entries outside every application root are not attributed to the application.",
+ );
+ });
+
+ it("keeps a selected .app directory as the root when its contents are missing", () => {
+ const empty = project(inventoryEvidence("directory", "Fixture.app", []));
+ expect(empty).toMatchObject({
+ application_roots: ["."],
+ platforms: [],
+ bundles: [
+ {
+ path: ".",
+ role: "application",
+ layout: "shallow",
+ info_plist_path: null,
+ },
+ ],
+ });
+ const partial = project(
+ inventoryEvidence("directory", "Fixture.app", [
+ { path: "Contents/Resources/Localizable.strings" },
+ ]),
+ );
+ expect(partial).toMatchObject({
+ application_roots: ["."],
+ platforms: ["macos"],
+ });
+ });
+});
+
+describe("Apple application bridge candidates", () => {
+ it("pairs scripts and native code only within one application root", () => {
+ const result = project(
+ inventoryEvidence("zip", "Suite.zip", [
+ macho("First.app/Contents/MacOS/First"),
+ {
+ path: "First.app/Contents/Resources/first.js",
+ format: "javascript-bundle",
+ },
+ macho("Second.app/Contents/MacOS/Second"),
+ {
+ path: "Second.app/Contents/Resources/second.js",
+ format: "javascript-bundle",
+ },
+ ]),
+ );
+ expect(result.application_roots).toEqual(["First.app", "Second.app"]);
+ expect(
+ result.bridge_candidates.map(
+ ({ source_path: source, native_path: target }) => [source, target],
+ ),
+ ).toEqual([
+ [
+ "First.app/Contents/Resources/first.js",
+ "First.app/Contents/MacOS/First",
+ ],
+ [
+ "Second.app/Contents/Resources/second.js",
+ "Second.app/Contents/MacOS/Second",
+ ],
+ ]);
+ });
+});
diff --git a/src/domain/apple/appleApplication.ts b/src/domain/apple/appleApplication.ts
new file mode 100644
index 000000000..bb88a8c31
--- /dev/null
+++ b/src/domain/apple/appleApplication.ts
@@ -0,0 +1,403 @@
+import { createHash } from "node:crypto";
+
+import canonicalize from "canonicalize";
+import { z } from "zod";
+
+import {
+ appleBundleSchema,
+ appleComponentSchema,
+ applicationRoots,
+ detectBundles,
+ isMachOFormat,
+ isSidecar,
+ isWithin,
+ platformsOf,
+ type AppleInventoryEntry,
+} from "./appleBundleAnatomy.js";
+import { parseArtifactInventoryEvidence } from "../artifactInventoryEvidence.js";
+import { evidenceSchema } from "../evidence.js";
+import { digestSchema } from "../digests.js";
+import { prefixedDigestSchema } from "../digests.js";
+
+const evidenceIdSchema = prefixedDigestSchema("ev");
+const pathSchema = z.string().min(1);
+
+const APPLE_ROOT_FORMATS = ["ipa", "directory", "zip", "dmg"] as const;
+
+/** Authenticated artifact inventory pages projected as one Apple application. */
+export const appleApplicationProjectionInputSchema = z.strictObject({
+ inventory_evidence: z.array(evidenceSchema).min(1),
+});
+
+/** Deterministic, execution-free Apple application inventory projection. */
+export const appleApplicationProjectionResultSchema = z.strictObject({
+ projection_id: prefixedDigestSchema("aap"),
+ root_sha256: digestSchema,
+ root_format: z.enum(APPLE_ROOT_FORMATS),
+ platforms: z.array(z.enum(["ios", "macos"])),
+ source_evidence_ids: z.array(evidenceIdSchema).min(1),
+ application_roots: z.array(pathSchema),
+ bundles: z.array(appleBundleSchema),
+ components: z.strictObject({
+ bundle_metadata: z.array(appleComponentSchema),
+ executables: z.array(appleComponentSchema),
+ frameworks: z.array(appleComponentSchema),
+ native_libraries: z.array(appleComponentSchema),
+ javascript: z.array(appleComponentSchema),
+ signing: z.array(appleComponentSchema),
+ privileged_helpers: z.array(appleComponentSchema),
+ launchd_plists: z.array(
+ appleComponentSchema.extend({ domain: z.enum(["agent", "daemon"]) }),
+ ),
+ helpers: z.array(appleComponentSchema),
+ }),
+ symlinks: z.array(pathSchema),
+ runtime_families: z.array(
+ z.enum([
+ "native",
+ "swift-objective-c",
+ "javascript",
+ "react-native",
+ "flutter",
+ "unity",
+ ]),
+ ),
+ bridge_candidates: z.array(
+ z.strictObject({
+ source_path: pathSchema,
+ native_path: pathSchema,
+ basis: z.enum([
+ "javascript-and-native-content",
+ "react-native-convention",
+ "flutter-convention",
+ "unity-convention",
+ ]),
+ }),
+ ),
+ coverage: z.strictObject({
+ status: z.enum(["complete-within-inventory", "partial"]),
+ inventory_complete: z.boolean(),
+ }),
+ limitations: z.array(z.string().min(1)),
+});
+
+export type AppleApplicationProjectionInput = z.infer<
+ typeof appleApplicationProjectionInputSchema
+>;
+export type AppleApplicationProjectionResult = z.infer<
+ typeof appleApplicationProjectionResultSchema
+>;
+
+type Component = z.infer;
+type RootFormat = (typeof APPLE_ROOT_FORMATS)[number];
+
+/** Project exact Apple application paths and hashes without parsing or executing target code. */
+export const projectAppleApplication = (
+ input: AppleApplicationProjectionInput,
+): AppleApplicationProjectionResult => {
+ const parsed = appleApplicationProjectionInputSchema.parse(input);
+ const { evidence, inventory } = parseArtifactInventoryEvidence(
+ parsed.inventory_evidence,
+ );
+ const rootFormat = appleRootFormat(inventory.manifest.root_format);
+ const nodes = new Map(
+ inventory.nodes.map((node) => [node.artifact_id, node]),
+ );
+ const entries: AppleInventoryEntry[] = inventory.occurrences
+ .filter(({ logical_path: path }) => path !== ".")
+ .map((occurrence) => {
+ if (occurrence.artifact_id === null)
+ return {
+ path: occurrence.logical_path,
+ kind: occurrence.entry_kind,
+ component: undefined,
+ };
+ const node = nodes.get(occurrence.artifact_id);
+ if (node === undefined)
+ throw new TypeError(
+ "Apple application occurrence has no artifact node",
+ );
+ return {
+ path: occurrence.logical_path,
+ kind: occurrence.entry_kind,
+ component: {
+ path: occurrence.logical_path,
+ artifact_id: node.artifact_id,
+ sha256: node.sha256,
+ format: node.format,
+ },
+ };
+ });
+ const inventoried = entries.flatMap(({ component }) =>
+ component === undefined ? [] : [component],
+ );
+ const roots = applicationRoots(entries, {
+ name: evidence[0]?.subject?.name ?? "",
+ format: rootFormat,
+ });
+ const { all, unattributed } = attributeComponents(
+ inventoried,
+ roots,
+ rootFormat,
+ );
+ const bundles = detectBundles(entries, roots);
+ const classified = classifyComponents(entries, all, roots);
+ const runtimeFamilies = identifyRuntimeFamilies(all);
+ const bridgeProjection = identifyBridgeCandidates(
+ classified.javascript,
+ deduplicateComponents([
+ ...classified.executables,
+ ...classified.native_libraries,
+ ]),
+ roots,
+ );
+ const uninventoriedImage =
+ rootFormat === "dmg" && inventory.occurrences.length === 1;
+ const complete = inventory.complete && !uninventoriedImage;
+ const limitations = projectionLimitations({
+ complete: inventory.complete,
+ uninventoriedImage,
+ roots,
+ bundles,
+ sidecars: entries.some(({ path }) => isSidecar(path)),
+ symlinks: entries.some(({ kind }) => kind === "symlink"),
+ unattributed,
+ });
+ const withoutId = {
+ root_sha256: inventory.manifest.root_sha256,
+ root_format: rootFormat,
+ platforms: platformsOf(bundles),
+ source_evidence_ids: evidence
+ .map(({ evidence_id: id }) => id)
+ .sort(compare),
+ application_roots: roots,
+ bundles,
+ components: classified,
+ symlinks: entries
+ .filter(({ kind }) => kind === "symlink")
+ .map(({ path }) => path)
+ .sort(compare),
+ runtime_families: runtimeFamilies,
+ bridge_candidates: bridgeProjection.candidates,
+ coverage: {
+ status: complete
+ ? ("complete-within-inventory" as const)
+ : ("partial" as const),
+ inventory_complete: inventory.complete,
+ },
+ limitations,
+ };
+ return appleApplicationProjectionResultSchema.parse({
+ ...withoutId,
+ projection_id: `aap_${digest(withoutId)}`,
+ });
+};
+
+/**
+ * IPA projection keeps every archive component, as before. Directory, ZIP,
+ * and DMG inventories can hold installers and other siblings, so only
+ * components inside an application root are attributed to it.
+ */
+const attributeComponents = (
+ inventoried: readonly Component[],
+ roots: readonly string[],
+ rootFormat: RootFormat,
+): { readonly all: Component[]; readonly unattributed: number } => {
+ if (rootFormat === "ipa") return { all: [...inventoried], unattributed: 0 };
+ const visible = inventoried.filter(({ path }) => !isSidecar(path));
+ const all = visible.filter(({ path }) =>
+ roots.some((root) => isWithin(path, root)),
+ );
+ return { all, unattributed: visible.length - all.length };
+};
+
+const appleRootFormat = (format: string): RootFormat => {
+ const root = APPLE_ROOT_FORMATS.find((candidate) => candidate === format);
+ if (root === undefined)
+ throw new TypeError(
+ `Apple application projection requires IPA, directory, ZIP, or DMG inventory Evidence (got ${format})`,
+ );
+ return root;
+};
+
+const classifyComponents = (
+ entries: readonly AppleInventoryEntry[],
+ all: readonly Component[],
+ roots: readonly string[],
+) => {
+ const withinApp = (path: string): boolean =>
+ roots.some((root) => isWithin(path, root));
+ const anatomy = (pattern: RegExp): Component[] =>
+ entries.flatMap(({ path, kind, component }) =>
+ kind === "file" &&
+ component !== undefined &&
+ !isSidecar(path) &&
+ withinApp(path) &&
+ pattern.test(path)
+ ? [component]
+ : [],
+ );
+ return {
+ bundle_metadata: all.filter(({ path }) =>
+ /(?:^|\/)Info\.plist$/u.test(path),
+ ),
+ executables: all.filter(
+ ({ path, format }) => withinApp(path) && isMachOFormat(format),
+ ),
+ frameworks: all.filter(({ path }) => /\.framework\//u.test(path)),
+ native_libraries: all.filter(({ path }) => /\.(?:dylib|so)$/iu.test(path)),
+ javascript: all.filter(({ format }) => format === "javascript-bundle"),
+ signing: all.filter(({ path }) =>
+ /(?:^|\/)(?:embedded\.(?:mobileprovision|provisionprofile)|_CodeSignature\/CodeResources)$/u.test(
+ path,
+ ),
+ ),
+ privileged_helpers: anatomy(
+ /(?:^|\/)Contents\/Library\/LaunchServices\/[^/]+$/u,
+ ),
+ launchd_plists: anatomy(
+ /(?:^|\/)Contents\/Library\/Launch(?:Agents|Daemons)\/[^/]+\.plist$/u,
+ ).map((component) => ({
+ ...component,
+ domain: component.path.includes("/LaunchDaemons/")
+ ? ("daemon" as const)
+ : ("agent" as const),
+ })),
+ helpers: anatomy(/(?:^|\/)Contents\/Helpers\/[^/]+$/u),
+ };
+};
+
+const deduplicateComponents = (values: readonly Component[]): Component[] =>
+ [...new Map(values.map((value) => [value.path, value])).values()].sort(
+ (left, right) => compare(left.path, right.path),
+ );
+
+const identifyRuntimeFamilies = (all: readonly Component[]) => {
+ const paths = all.map(({ path }) => path.toLowerCase());
+ const families = new Set<
+ z.infer<
+ typeof appleApplicationProjectionResultSchema
+ >["runtime_families"][number]
+ >();
+ if (all.some(({ format }) => ["mach-o", "mach-o-universal"].includes(format)))
+ families.add("native");
+ if (paths.some((path) => /\.(?:dylib|framework\/[^/]+)$/u.test(path)))
+ families.add("swift-objective-c");
+ if (all.some(({ format }) => format === "javascript-bundle"))
+ families.add("javascript");
+ if (
+ paths.some(
+ (path) =>
+ path.includes("reactnative") ||
+ path.includes("react.framework") ||
+ path.includes("hermes"),
+ )
+ )
+ families.add("react-native");
+ if (
+ paths.some(
+ (path) =>
+ path.includes("flutter.framework") || path.includes("app.framework"),
+ )
+ )
+ families.add("flutter");
+ if (paths.some((path) => path.includes("unityframework.framework")))
+ families.add("unity");
+ return [...families].sort(compare);
+};
+
+/** Pair scripts and native code only within the same application root. */
+const identifyBridgeCandidates = (
+ scripts: readonly Component[],
+ native: readonly Component[],
+ roots: readonly string[],
+) => {
+ const owner = (path: string): string | null =>
+ roots.find((root) => isWithin(path, root)) ?? null;
+ return {
+ candidates: scripts.flatMap((script) => {
+ const root = owner(script.path);
+ return native
+ .filter(({ path }) => owner(path) === root)
+ .map((item) => ({
+ source_path: script.path,
+ native_path: item.path,
+ basis: bridgeBasis(item.path),
+ }));
+ }),
+ };
+};
+
+const bridgeBasis = (
+ path: string,
+):
+ | "javascript-and-native-content"
+ | "react-native-convention"
+ | "flutter-convention"
+ | "unity-convention" => {
+ const lower = path.toLowerCase();
+ if (lower.includes("react")) return "react-native-convention";
+ if (lower.includes("flutter") || lower.includes("app.framework"))
+ return "flutter-convention";
+ if (lower.includes("unity")) return "unity-convention";
+ return "javascript-and-native-content";
+};
+
+const projectionLimitations = (facts: {
+ readonly complete: boolean;
+ readonly uninventoriedImage: boolean;
+ readonly roots: readonly string[];
+ readonly bundles: readonly z.infer[];
+ readonly sidecars: boolean;
+ readonly symlinks: boolean;
+ readonly unattributed: number;
+}): string[] => [
+ ...(!facts.complete
+ ? ["Source inventory pages are incomplete; absence is unknown."]
+ : []),
+ ...(facts.uninventoriedImage
+ ? [
+ "The DMG's contents were not inventoried on this host; bundle absence is unknown.",
+ ]
+ : []),
+ ...(facts.roots.length === 0
+ ? [
+ "No application bundle (Payload/*.app or *.app/Contents) was present in the supplied inventory pages.",
+ ]
+ : []),
+ ...(facts.bundles.some(
+ ({ layout, info_plist_path: plist }) =>
+ layout === "versioned-framework" && plist === null,
+ )
+ ? [
+ "A versioned framework has several version directories or no Versions/*/Resources/Info.plist; the Info.plist that Versions/Current selects is unknown because symlink targets are not inventoried.",
+ ]
+ : []),
+ ...(facts.symlinks
+ ? [
+ "Symlinks are reported by path only; their targets are not inventoried, so bundles are reported at their real paths.",
+ ]
+ : []),
+ ...(facts.unattributed > 0
+ ? [
+ `${facts.unattributed} inventoried entries outside every application root are not attributed to the application.`,
+ ]
+ : []),
+ ...(facts.sidecars
+ ? [
+ "AppleDouble sidecar entries (._* files and __MACOSX/) describe neighbouring files and are excluded from bundle roles.",
+ ]
+ : []),
+ "Bundle roles follow path conventions. Read each info_plist_path with inspect_plist for CFBundleExecutable, identifiers, and declared services.",
+ "Bundle identifiers and signing claims require dedicated plist and CMS parsing; this projection reports only exact paths and hashes.",
+ "Bridge candidates are path-based hypotheses, not observed runtime calls.",
+];
+
+const compare = (left: string, right: string): number =>
+ left < right ? -1 : left > right ? 1 : 0;
+const digest = (value: unknown): string => {
+ const encoded = canonicalize(value);
+ if (encoded === undefined)
+ throw new TypeError("Apple application projection is not canonical JSON");
+ return createHash("sha256").update(encoded).digest("hex");
+};
diff --git a/src/domain/appleAssetCatalog.test.ts b/src/domain/apple/appleAssetCatalog.test.ts
similarity index 100%
rename from src/domain/appleAssetCatalog.test.ts
rename to src/domain/apple/appleAssetCatalog.test.ts
diff --git a/src/domain/appleAssetCatalog.ts b/src/domain/apple/appleAssetCatalog.ts
similarity index 98%
rename from src/domain/appleAssetCatalog.ts
rename to src/domain/apple/appleAssetCatalog.ts
index 12439fce0..2954ebda8 100644
--- a/src/domain/appleAssetCatalog.ts
+++ b/src/domain/apple/appleAssetCatalog.ts
@@ -1,7 +1,7 @@
import { z } from "zod";
-import { jsonValueSchema } from "./jsonValue.js";
-import { AnalysisOutputError } from "./analysisErrorCore.js";
+import { jsonValueSchema } from "../jsonValue.js";
+import { AnalysisOutputError } from "../analysisErrorCore.js";
/** Caller-controlled page bounds for compiled Apple asset metadata. */
export const appleAssetCatalogInputSchema = z.strictObject({
diff --git a/src/domain/apple/appleBundleAnatomy.ts b/src/domain/apple/appleBundleAnatomy.ts
new file mode 100644
index 000000000..224c5ff49
--- /dev/null
+++ b/src/domain/apple/appleBundleAnatomy.ts
@@ -0,0 +1,307 @@
+import { z } from "zod";
+
+import { digestSchema, prefixedDigestSchema } from "../digests.js";
+
+const pathSchema = z.string().min(1);
+
+const BUNDLE_EXTENSION =
+ /\.(?:app|appex|xpc|framework|systemextension|dext|bundle|plugin|qlgenerator|mdimporter)$/iu;
+const MACH_O_FORMATS: readonly string[] = ["mach-o", "mach-o-universal"];
+
+/** One inventoried file or directory with its content identity. */
+export const appleComponentSchema = z.strictObject({
+ path: pathSchema,
+ artifact_id: prefixedDigestSchema("art"),
+ sha256: digestSchema,
+ format: z.string().min(1),
+});
+
+/** One application root or nested bundle classified by path convention. */
+export const appleBundleSchema = z.strictObject({
+ path: pathSchema,
+ parent_path: pathSchema.nullable(),
+ layout: z.enum(["shallow", "macos-deep", "versioned-framework"]),
+ role: z.enum([
+ "application",
+ "app-extension",
+ "xpc-service",
+ "framework",
+ "login-item",
+ "system-extension",
+ "driver-extension",
+ "plug-in",
+ "resource-bundle",
+ "bundle",
+ "helper-application",
+ "nested-application",
+ ]),
+ role_basis: z.literal("path-convention"),
+ info_plist_path: pathSchema.nullable(),
+ executable_candidates: z.array(pathSchema),
+ signing_paths: z.array(pathSchema),
+});
+
+type Component = z.infer;
+type Bundle = z.infer;
+
+/** One inventory occurrence; symlinks and directories may lack content identity. */
+export interface AppleInventoryEntry {
+ readonly path: string;
+ readonly kind: "file" | "directory" | "symlink" | "slice";
+ readonly component: Component | undefined;
+}
+type Entry = AppleInventoryEntry;
+
+/** Report whether an inventory format is a thin or universal Mach-O. */
+export const isMachOFormat = (format: string): boolean =>
+ MACH_O_FORMATS.includes(format);
+
+/** AppleDouble metadata written beside archived files (`._name`, `__MACOSX/`). */
+export const isSidecar = (path: string): boolean => {
+ const segments = path.split("/");
+ return (
+ segments.includes("__MACOSX") || (segments.at(-1) ?? "").startsWith("._")
+ );
+};
+
+export const isWithin = (path: string, root: string): boolean =>
+ root === "." || path === root || path.startsWith(`${root}/`);
+
+/**
+ * Outermost iOS (`Payload/X.app`) and macOS (`X.app/Contents/…`) applications.
+ * An inventoried `.app` directory is its own root, `.`.
+ */
+export const applicationRoots = (
+ entries: readonly Entry[],
+ subject: { readonly name: string; readonly format: string },
+): string[] => {
+ // A selected `.app` directory is the application, even when its inventory
+ // is partial or lacks Contents/; coverage and limitations describe that.
+ if (subject.format === "directory" && /\.app$/iu.test(subject.name))
+ return ["."];
+ const found = new Set();
+ for (const { path } of entries) {
+ if (isSidecar(path)) continue;
+ const ios = /^(Payload\/[^/]+\.app)(?:\/|$)/u.exec(path);
+ if (ios?.[1] !== undefined) {
+ found.add(ios[1]);
+ continue;
+ }
+ const segments = path.split("/");
+ const index = segments.findIndex(
+ (segment, position) =>
+ /\.app$/iu.test(segment) && segments[position + 1] === "Contents",
+ );
+ if (index >= 0) found.add(segments.slice(0, index + 1).join("/"));
+ }
+ const roots = [...found];
+ return roots
+ .filter(
+ (root) => !roots.some((other) => other !== root && isWithin(root, other)),
+ )
+ .sort(compare);
+};
+
+export const detectBundles = (
+ entries: readonly Entry[],
+ roots: readonly string[],
+): Bundle[] => {
+ const paths = new Set(roots);
+ for (const { path, kind } of entries) {
+ if (isSidecar(path)) continue;
+ const root = roots.find((candidate) => isWithin(path, candidate));
+ if (root === undefined) continue;
+ const segments = path.split("/");
+ const start = root === "." ? 0 : root.split("/").length;
+ for (let index = start; index < segments.length; index++) {
+ const segment = segments[index] ?? "";
+ const leaf = index === segments.length - 1;
+ // A symlink or file named like a bundle has no observed contents.
+ if (BUNDLE_EXTENSION.test(segment) && (!leaf || kind === "directory"))
+ paths.add(segments.slice(0, index + 1).join("/"));
+ }
+ }
+ const tree = indexTree(entries);
+ return [...paths].sort(compare).map((path) => {
+ const layout = bundleLayout(path, tree);
+ return {
+ path,
+ parent_path: enclosingBundle(path, paths),
+ layout,
+ role: roots.includes(path) ? "application" : bundleRole(path),
+ role_basis: "path-convention",
+ info_plist_path: infoPlistPath(path, layout, tree),
+ executable_candidates: executableCandidates(path, layout, tree),
+ signing_paths: signingPaths(path, layout, tree),
+ } satisfies Bundle;
+ });
+};
+
+/** Directory children (including implied ancestors) and files, indexed once. */
+interface Tree {
+ readonly children: ReadonlyMap>;
+ readonly files: ReadonlyMap;
+ /** Paths observed as directories, or implied by a deeper path. */
+ readonly directories: ReadonlySet;
+}
+
+const indexTree = (entries: readonly Entry[]): Tree => {
+ const children = new Map>();
+ const files = new Map();
+ const directories = new Set();
+ for (const { path, kind, component } of entries) {
+ if (isSidecar(path)) continue;
+ if (kind === "file" && component !== undefined) files.set(path, component);
+ if (kind === "directory") directories.add(path);
+ const segments = path.split("/");
+ let parent = "";
+ for (const segment of segments) {
+ const names = children.get(parent) ?? new Set();
+ names.add(segment);
+ children.set(parent, names);
+ parent = joinPath(parent, segment);
+ if (parent !== path) directories.add(parent);
+ }
+ }
+ return { children, files, directories };
+};
+
+const joinPath = (directory: string, name: string): string =>
+ directory === "" ? name : `${directory}/${name}`;
+
+const directoryOf = (bundle: string): string => (bundle === "." ? "" : bundle);
+
+const enclosingBundle = (
+ path: string,
+ bundles: ReadonlySet,
+): string | null => {
+ if (path === ".") return null;
+ const segments = path.split("/");
+ for (let length = segments.length - 1; length > 0; length--) {
+ const candidate = segments.slice(0, length).join("/");
+ if (bundles.has(candidate)) return candidate;
+ }
+ return bundles.has(".") ? "." : null;
+};
+
+const bundleLayout = (bundle: string, tree: Tree): Bundle["layout"] => {
+ const names = tree.children.get(directoryOf(bundle));
+ if (names?.has("Contents") === true) return "macos-deep";
+ if (names?.has("Versions") === true) return "versioned-framework";
+ return "shallow";
+};
+
+const bundleRole = (bundle: string): Bundle["role"] => {
+ const segments = bundle.split("/");
+ const name = (segments.at(-1) ?? "").toLowerCase();
+ const container = segments.at(-2);
+ if (name.endsWith(".appex")) return "app-extension";
+ if (name.endsWith(".xpc")) return "xpc-service";
+ if (name.endsWith(".framework")) return "framework";
+ if (name.endsWith(".systemextension")) return "system-extension";
+ if (name.endsWith(".dext")) return "driver-extension";
+ if (name.endsWith(".bundle")) {
+ if (container === "PlugIns") return "plug-in";
+ return container === "Resources" ? "resource-bundle" : "bundle";
+ }
+ if (!name.endsWith(".app")) return "plug-in";
+ if (container === "LoginItems" && segments.at(-3) === "Library")
+ return "login-item";
+ if (container === "Helpers") return "helper-application";
+ return "nested-application";
+};
+
+/** Files directly inside one directory; nested bundles are deeper paths. */
+const directFiles = (directory: string, tree: Tree): string[] =>
+ [...(tree.children.get(directory) ?? [])]
+ .map((name) => joinPath(directory, name))
+ .filter((path) => tree.files.has(path))
+ .sort(compare);
+
+/** Content directories; `Versions/Current` is a symlink outside the inventory. */
+const contentDirectories = (
+ bundle: string,
+ layout: Bundle["layout"],
+ tree: Tree,
+): string[] => {
+ const directory = directoryOf(bundle);
+ if (layout === "macos-deep") return [joinPath(directory, "Contents")];
+ if (layout === "shallow") return [directory];
+ const versions = joinPath(directory, "Versions");
+ // Only real version directories count: Current is a symlink, and files
+ // such as .DS_Store are not versions.
+ return [...(tree.children.get(versions) ?? [])]
+ .filter((version) => version !== "Current")
+ .map((version) => joinPath(versions, version))
+ .filter((version) => tree.directories.has(version))
+ .sort(compare);
+};
+
+const infoPlistPath = (
+ bundle: string,
+ layout: Bundle["layout"],
+ tree: Tree,
+): string | null => {
+ const directories = contentDirectories(bundle, layout, tree);
+ // With several real versions, Versions/Current (a symlink outside the
+ // inventory) decides which plist applies, so the plist stays unknown.
+ if (directories.length !== 1) return null;
+ const candidates = directories
+ .map((directory) =>
+ joinPath(
+ directory,
+ layout === "versioned-framework"
+ ? "Resources/Info.plist"
+ : "Info.plist",
+ ),
+ )
+ .filter((path) => tree.files.has(path));
+ return candidates.length === 1 ? (candidates[0] ?? null) : null;
+};
+
+const executableCandidates = (
+ bundle: string,
+ layout: Bundle["layout"],
+ tree: Tree,
+): string[] =>
+ contentDirectories(bundle, layout, tree)
+ .flatMap((directory) =>
+ directFiles(
+ layout === "macos-deep" ? joinPath(directory, "MacOS") : directory,
+ tree,
+ ),
+ )
+ .filter((path) =>
+ MACH_O_FORMATS.includes(tree.files.get(path)?.format ?? ""),
+ );
+
+const signingPaths = (
+ bundle: string,
+ layout: Bundle["layout"],
+ tree: Tree,
+): string[] =>
+ contentDirectories(bundle, layout, tree)
+ .flatMap((directory) => [
+ joinPath(directory, "_CodeSignature/CodeResources"),
+ joinPath(directory, "embedded.provisionprofile"),
+ joinPath(directory, "embedded.mobileprovision"),
+ ])
+ .filter((path) => tree.files.has(path))
+ .sort(compare);
+
+/** Platforms of application roots whose layout was observed, not assumed. */
+export const platformsOf = (bundles: readonly Bundle[]): ("ios" | "macos")[] =>
+ [
+ ...new Set(
+ bundles.flatMap(({ role, layout, info_plist_path: plist }) => {
+ if (role !== "application") return [];
+ if (layout === "macos-deep") return ["macos" as const];
+ // An empty or partial root has no Contents/ either; require Info.plist.
+ if (layout === "shallow" && plist !== null) return ["ios" as const];
+ return [];
+ }),
+ ),
+ ].sort(compare);
+
+const compare = (left: string, right: string): number =>
+ left < right ? -1 : left > right ? 1 : 0;
diff --git a/src/domain/interfaceBuilderGraph.test.ts b/src/domain/apple/interfaceBuilderGraph.test.ts
similarity index 81%
rename from src/domain/interfaceBuilderGraph.test.ts
rename to src/domain/apple/interfaceBuilderGraph.test.ts
index d88547bb6..1fce2ab19 100644
--- a/src/domain/interfaceBuilderGraph.test.ts
+++ b/src/domain/apple/interfaceBuilderGraph.test.ts
@@ -318,6 +318,91 @@ describe("keyed archive decoding and graph limits", () => {
});
});
+describe("keyed archive object references", () => {
+ it("keeps referenced objects as stubs so shared and cyclic references stay finite", () => {
+ // Each view references its window, superview, and next key view, so
+ // inlining references would expand the table into an exponential tree.
+ const viewCount = 40;
+ const views = Array.from({ length: viewCount }, (_, index) => ({
+ $class: { UID: 1 },
+ NSWindow: { UID: 2 },
+ NSSuperview: { UID: index === 0 ? 2 : 3 + index - 1 },
+ NSNextKeyView: { UID: 3 + ((index + 1) % viewCount) },
+ NSSubviews: index + 1 < viewCount ? [{ UID: 3 + index + 1 }] : [],
+ NSTitle: { UID: 3 + viewCount },
+ }));
+ const parsed = parseInterfaceBuilderRecords({
+ $archiver: "NSKeyedArchiver",
+ $objects: [
+ "$null",
+ { $classname: "NSView", $classes: ["NSView", "NSObject"] },
+ { $class: { UID: 3 + viewCount + 1 }, NSContentView: { UID: 3 } },
+ ...views,
+ "Title",
+ { $classname: "NSWindow", $classes: ["NSWindow", "NSObject"] },
+ ],
+ $top: { root: { UID: 2 } },
+ });
+
+ expect(parsed.objects).toHaveLength(viewCount + 1);
+ const view = parsed.objects.find(({ id }) => id === "3");
+ expect(view?.name).toBe("NSView");
+ expect(view?.attributes).toEqual({
+ NSWindow: { archiveUID: 2, className: "NSWindow" },
+ NSSuperview: { archiveUID: 2, className: "NSWindow" },
+ NSNextKeyView: { archiveUID: 4, className: "NSView" },
+ NSSubviews: [{ archiveUID: 4, className: "NSView" }],
+ NSTitle: "Title",
+ });
+ expect(parsed.hierarchy).toMatchObject([
+ {
+ objectID: "2",
+ children: [{ objectID: "3", children: [{ objectID: "4" }] }],
+ },
+ ]);
+ });
+
+ it("resolves XML CF$UID references and the archived nil", () => {
+ const parsed = parseInterfaceBuilderRecords({
+ $archiver: "NSKeyedArchiver",
+ $objects: [
+ "$null",
+ {
+ $class: { CF$UID: 3 },
+ NSSource: { CF$UID: 2 },
+ source: { CF$UID: 2 },
+ destination: { CF$UID: 0 },
+ label: { CF$UID: 4 },
+ },
+ { $class: { CF$UID: 5 } },
+ {
+ $classname: "NSNibOutletConnector",
+ $classes: ["NSNibOutletConnector", "NSObject"],
+ },
+ { $class: { CF$UID: 6 }, "NS.string": "delegate" },
+ { $classname: "NSButton", $classes: ["NSButton", "NSObject"] },
+ {
+ $classname: "NSMutableString",
+ $classes: ["NSMutableString", "NSString", "NSObject"],
+ },
+ ],
+ $top: {},
+ });
+
+ expect(parsed.connections).toEqual([
+ expect.objectContaining({
+ kind: "outlet",
+ source_id: "2",
+ destination_id: null,
+ label: "delegate",
+ }),
+ ]);
+ expect(parsed.objects.find(({ id }) => id === "2")).toMatchObject({
+ class_name: "NSButton",
+ });
+ });
+});
+
describe("AppKit keyed archive connectors", () => {
it("reads outlet and control connectors from NS-prefixed keys", () => {
const parsed = parseInterfaceBuilderRecords({
diff --git a/src/domain/interfaceBuilderGraph.ts b/src/domain/apple/interfaceBuilderGraph.ts
similarity index 99%
rename from src/domain/interfaceBuilderGraph.ts
rename to src/domain/apple/interfaceBuilderGraph.ts
index 2e882ab26..22d8a544b 100644
--- a/src/domain/interfaceBuilderGraph.ts
+++ b/src/domain/apple/interfaceBuilderGraph.ts
@@ -10,7 +10,7 @@ import {
nativeInvestigationGraphSchema,
nativeInvestigationNodeSchema,
nativeInvestigationTraceLimitsSchema,
-} from "./nativeInvestigationGraph.js";
+} from "../nativeInvestigationGraph.js";
export { parseInterfaceBuilderRecords } from "./interfaceBuilderKeyedArchive.js";
diff --git a/src/domain/interfaceBuilderKeyedArchive.ts b/src/domain/apple/interfaceBuilderKeyedArchive.ts
similarity index 69%
rename from src/domain/interfaceBuilderKeyedArchive.ts
rename to src/domain/apple/interfaceBuilderKeyedArchive.ts
index e0ca876ae..d1ee5c3ea 100644
--- a/src/domain/interfaceBuilderKeyedArchive.ts
+++ b/src/domain/apple/interfaceBuilderKeyedArchive.ts
@@ -1,6 +1,6 @@
import { z } from "zod";
-import { jsonValueSchema } from "./jsonValue.js";
+import { jsonValueSchema } from "../jsonValue.js";
const recordSchema = z.record(z.string(), z.unknown());
@@ -117,62 +117,130 @@ export const parseInterfaceBuilderRecords = (
};
};
+/**
+ * A UID decodes as a one-key `UID` (binary) or `CF$UID` (XML) dictionary with
+ * an integer value. Any other dictionary is ordinary archive data.
+ */
+const archiveUid = (value: unknown): number | undefined => {
+ if (typeof value !== "object" || value === null || Array.isArray(value))
+ return undefined;
+ if (Object.keys(value).length !== 1) return undefined;
+ const item = record(value);
+ const marker = Object.hasOwn(item, "UID") ? item.UID : item["CF$UID"];
+ return typeof marker === "number" && Number.isInteger(marker)
+ ? marker
+ : undefined;
+};
+
+const HIERARCHY_KEY =
+ /(?:subviews|contentview|childviewcontrollers|children|views)$/iu;
+
+/**
+ * Read an NSKeyedArchiver object table without expanding it into a tree.
+ * Archived objects reference each other freely, including cycles such as a
+ * view and its superview, so inlining every reference grows exponentially.
+ * A reference instead resolves to the referenced string, or to a stub that
+ * names the referenced object; the hierarchy walk visits each object once.
+ */
+const keyedArchiveTable = (objectTable: readonly unknown[]) => {
+ const classNameOf = (value: unknown): string | null => {
+ const classReference = record(value).$class;
+ const uid = archiveUid(classReference);
+ return firstString(
+ record(uid === undefined ? classReference : objectTable[uid]).$classname,
+ );
+ };
+ /** The string an archived string object holds, if it is one. */
+ const archivedString = (target: unknown): string | undefined => {
+ if (typeof target === "string") return target;
+ const text = record(target)["NS.string"];
+ return typeof text === "string" &&
+ /^NS(?:Mutable)?String$/u.test(classNameOf(target) ?? "")
+ ? text
+ : undefined;
+ };
+ const text = (value: unknown): string | null => {
+ const uid = archiveUid(value);
+ return firstString(
+ uid === undefined ? value : archivedString(objectTable[uid]),
+ );
+ };
+ const authoredId = (item: Record): string | null =>
+ firstString(text(item.objectID), text(item["object-id"]));
+ const reference = (uid: number): unknown => {
+ // UID 0 is the archived nil.
+ const target = uid === 0 ? null : objectTable[uid];
+ if (target === undefined || target === null) return null;
+ if (typeof target !== "object") return target;
+ const string = archivedString(target);
+ if (string !== undefined) return string;
+ const objectId = authoredId(record(target));
+ return {
+ archiveUID: uid,
+ ...(objectId === null ? {} : { objectID: objectId }),
+ className: classNameOf(target),
+ };
+ };
+ /** Resolve one object's own fields, leaving references to other objects as stubs. */
+ const resolve = (value: unknown): unknown => {
+ const uid = archiveUid(value);
+ if (uid !== undefined) return reference(uid);
+ if (Array.isArray(value)) return value.map(resolve);
+ if (typeof value !== "object" || value === null) return value;
+ const output: Record = {};
+ for (const [key, child] of Object.entries(value)) {
+ if (key === "$class") output.className = classNameOf(value);
+ else output[key] = resolve(child);
+ }
+ return output;
+ };
+ const hierarchy = (start: unknown): unknown[] => {
+ const visited = new Set();
+ const node = (
+ item: Record,
+ uid: number | undefined,
+ depth: number,
+ ): unknown[] => {
+ const objectId = firstString(
+ authoredId(item),
+ text(item.id),
+ uid === undefined ? null : String(uid),
+ );
+ const children = Object.entries(item)
+ .filter(([key]) => HIERARCHY_KEY.test(key))
+ .flatMap(([, child]) => visit(child, depth + 1));
+ return objectId === null ? children : [{ objectID: objectId, children }];
+ };
+ const visit = (value: unknown, depth: number): unknown[] => {
+ if (depth > 32) return [];
+ const uid = archiveUid(value);
+ if (uid !== undefined) {
+ if (visited.has(uid)) return [];
+ visited.add(uid);
+ const target = objectTable[uid];
+ if (Array.isArray(target)) return visit(target, depth + 1);
+ return typeof target === "object" && target !== null
+ ? node(record(target), uid, depth)
+ : [];
+ }
+ if (Array.isArray(value))
+ return value.flatMap((item) => visit(item, depth + 1));
+ if (typeof value !== "object" || value === null) return [];
+ return node(record(value), undefined, depth);
+ };
+ return visit(start, 0);
+ };
+ return { resolve, hierarchy };
+};
+
/** Project class and connection objects from an NSKeyedArchiver object table. */
const parseKeyedArchive = (
root: Record,
): ReturnType | null => {
if (root.$archiver !== "NSKeyedArchiver" || !Array.isArray(root.$objects))
return null;
- const objectTable = root.$objects;
- const resolve = (value: unknown, depth = 0): unknown => {
- if (depth > 16) return null;
- const uid = record(value).UID;
- if (typeof uid === "number") {
- const target = objectTable[uid];
- const resolved = target === undefined ? null : resolve(target, depth + 1);
- return typeof resolved === "object" &&
- resolved !== null &&
- !Array.isArray(resolved)
- ? { ...resolved, archiveUID: uid }
- : resolved;
- }
- if (Array.isArray(value))
- return value.map((item) => resolve(item, depth + 1));
- if (typeof value !== "object" || value === null) return value;
- const output: Record = {};
- for (const [key, child] of Object.entries(value)) {
- if (key === "$class") {
- const classObject = record(
- typeof record(child).UID === "number"
- ? objectTable[record(child).UID as number]
- : child,
- );
- output.className = firstString(classObject.$classname);
- } else output[key] = resolve(child, depth + 1);
- }
- return output;
- };
- const toHierarchy = (value: unknown, depth = 0): unknown[] => {
- if (depth > 32) return [];
- if (Array.isArray(value))
- return value.flatMap((item) => toHierarchy(item, depth + 1));
- if (typeof value !== "object" || value === null) return [];
- const item = record(value);
- const objectId = firstString(
- item.objectID,
- item["object-id"],
- item.id,
- typeof item.archiveUID === "number" ? String(item.archiveUID) : null,
- );
- const children = Object.entries(item)
- .filter(([key]) =>
- /(?:subviews|contentview|childviewcontrollers|children|views)$/iu.test(
- key,
- ),
- )
- .flatMap(([, child]) => toHierarchy(child, depth + 1));
- return objectId === null ? children : [{ objectID: objectId, children }];
- };
+ const objectTable: readonly unknown[] = root.$objects;
+ const { resolve, hierarchy: toHierarchy } = keyedArchiveTable(objectTable);
const objects: InterfaceBuilderObject[] = [];
const connections: InterfaceBuilderConnection[] = [];
let objectCount = 0;
@@ -252,8 +320,7 @@ const parseKeyedArchive = (
}
}
const top = record(root.$top);
- const topObject = resolve(top.root ?? top.UITopLevelObjectsKey);
- const hierarchy = toHierarchy(topObject);
+ const hierarchy = toHierarchy(top.root ?? top.UITopLevelObjectsKey);
const classes = Object.fromEntries(
objectTable.flatMap((raw) => {
const item = record(raw);
@@ -327,7 +394,11 @@ const classifyObject = (
const value = className?.toLowerCase() ?? "";
if (value.includes("constraint")) return "constraint";
if (value.includes("layoutguide")) return "layout_guide";
- if (value.includes("placeholder") || value.includes("firstresponder"))
+ if (
+ value.includes("placeholder") ||
+ value.includes("firstresponder") ||
+ value === "uiproxyobject"
+ )
return "placeholder";
if (
value.includes("image") ||
diff --git a/src/domain/keyedArchive.ts b/src/domain/apple/keyedArchive.ts
similarity index 99%
rename from src/domain/keyedArchive.ts
rename to src/domain/apple/keyedArchive.ts
index 32e855f18..2fc6a792f 100644
--- a/src/domain/keyedArchive.ts
+++ b/src/domain/apple/keyedArchive.ts
@@ -1,5 +1,5 @@
import { z } from "zod";
-import { jsonValueSchema, type JsonValue } from "./jsonValue.js";
+import { jsonValueSchema, type JsonValue } from "../jsonValue.js";
/** Select one archive within the active bundle and optionally one named root. */
export const keyedArchiveInputSchema = z.strictObject({
diff --git a/src/domain/plistValue.test.ts b/src/domain/apple/plistValue.test.ts
similarity index 100%
rename from src/domain/plistValue.test.ts
rename to src/domain/apple/plistValue.test.ts
diff --git a/src/domain/plistValue.ts b/src/domain/apple/plistValue.ts
similarity index 97%
rename from src/domain/plistValue.ts
rename to src/domain/apple/plistValue.ts
index 6c427a8ad..dc6e4d0ea 100644
--- a/src/domain/plistValue.ts
+++ b/src/domain/apple/plistValue.ts
@@ -1,6 +1,6 @@
import { z } from "zod";
-import type { JsonValue } from "./jsonValue.js";
+import type { JsonValue } from "../jsonValue.js";
const MAX_PLIST_DEPTH = 128;
diff --git a/src/domain/appleApplication.ts b/src/domain/appleApplication.ts
deleted file mode 100644
index cf130e4f5..000000000
--- a/src/domain/appleApplication.ts
+++ /dev/null
@@ -1,267 +0,0 @@
-import { createHash } from "node:crypto";
-
-import canonicalize from "canonicalize";
-import { z } from "zod";
-
-import { parseArtifactInventoryEvidence } from "./artifactInventoryEvidence.js";
-import { evidenceSchema } from "./evidence.js";
-import { digestSchema } from "./../domain/digests.js";
-import { prefixedDigestSchema } from "./../domain/digests.js";
-
-const evidenceIdSchema = prefixedDigestSchema("ev");
-const pathSchema = z.string().min(1);
-
-const componentSchema = z.strictObject({
- path: pathSchema,
- artifact_id: prefixedDigestSchema("art"),
- sha256: digestSchema,
- format: z.string().min(1),
-});
-
-/** Authenticated artifact inventory pages projected as one Apple application. */
-export const appleApplicationProjectionInputSchema = z.strictObject({
- inventory_evidence: z.array(evidenceSchema).min(1),
-});
-
-/** Deterministic, execution-free Apple application inventory projection. */
-export const appleApplicationProjectionResultSchema = z.strictObject({
- projection_id: prefixedDigestSchema("aap"),
- root_sha256: digestSchema,
- root_format: z.literal("ipa"),
- source_evidence_ids: z.array(evidenceIdSchema).min(1),
- application_roots: z.array(pathSchema),
- components: z.strictObject({
- bundle_metadata: z.array(componentSchema),
- executables: z.array(componentSchema),
- frameworks: z.array(componentSchema),
- native_libraries: z.array(componentSchema),
- javascript: z.array(componentSchema),
- signing: z.array(componentSchema),
- }),
- runtime_families: z.array(
- z.enum([
- "native",
- "swift-objective-c",
- "javascript",
- "react-native",
- "flutter",
- "unity",
- ]),
- ),
- bridge_candidates: z.array(
- z.strictObject({
- source_path: pathSchema,
- native_path: pathSchema,
- basis: z.enum([
- "javascript-and-native-content",
- "react-native-convention",
- "flutter-convention",
- "unity-convention",
- ]),
- }),
- ),
- coverage: z.strictObject({
- status: z.enum(["complete-within-inventory", "partial"]),
- inventory_complete: z.boolean(),
- }),
- limitations: z.array(z.string().min(1)),
-});
-
-export type AppleApplicationProjectionInput = z.infer<
- typeof appleApplicationProjectionInputSchema
->;
-export type AppleApplicationProjectionResult = z.infer<
- typeof appleApplicationProjectionResultSchema
->;
-
-type Component = z.infer;
-
-/** Project exact IPA paths and hashes without parsing or executing target code. */
-export const projectAppleApplication = (
- input: AppleApplicationProjectionInput,
-): AppleApplicationProjectionResult => {
- const parsed = appleApplicationProjectionInputSchema.parse(input);
- const { evidence, inventory } = parseArtifactInventoryEvidence(
- parsed.inventory_evidence,
- );
- if (inventory.manifest.root_format !== "ipa")
- throw new TypeError("Apple application projection requires IPA Evidence");
- const nodes = new Map(
- inventory.nodes.map((node) => [node.artifact_id, node]),
- );
- const all = inventory.occurrences
- .filter(
- (occurrence) =>
- occurrence.artifact_id !== null && occurrence.logical_path !== ".",
- )
- .map((occurrence) => {
- const node = nodes.get(occurrence.artifact_id ?? "");
- if (node === undefined)
- throw new TypeError(
- "Apple application occurrence has no artifact node",
- );
- return {
- path: occurrence.logical_path,
- artifact_id: node.artifact_id,
- sha256: node.sha256,
- format: node.format,
- } satisfies Component;
- });
- const roots = [
- ...new Set(
- inventory.occurrences.flatMap(({ logical_path: path }) => {
- const match = /^(Payload\/[^/]+\.app)(?:\/|$)/u.exec(path);
- return match?.[1] === undefined ? [] : [match[1]];
- }),
- ),
- ].sort(compare);
- const classified = classifyComponents(all, roots);
- const runtimeFamilies = identifyRuntimeFamilies(all);
- const bridgeProjection = identifyBridgeCandidates(
- classified.javascript,
- deduplicateComponents([
- ...classified.executables,
- ...classified.native_libraries,
- ]),
- );
- const limitations = projectionLimitations(inventory.complete, roots);
- const withoutId = {
- root_sha256: inventory.manifest.root_sha256,
- root_format: "ipa" as const,
- source_evidence_ids: evidence
- .map(({ evidence_id: id }) => id)
- .sort(compare),
- application_roots: roots,
- components: classified,
- runtime_families: runtimeFamilies,
- bridge_candidates: bridgeProjection.candidates,
- coverage: {
- status: inventory.complete
- ? ("complete-within-inventory" as const)
- : ("partial" as const),
- inventory_complete: inventory.complete,
- },
- limitations,
- };
- return appleApplicationProjectionResultSchema.parse({
- ...withoutId,
- projection_id: `aap_${digest(withoutId)}`,
- });
-};
-
-const classifyComponents = (
- all: readonly Component[],
- roots: readonly string[],
-) => {
- const withinApp = (path: string): boolean =>
- roots.some((root) => path.startsWith(`${root}/`));
- return {
- bundle_metadata: all.filter(({ path }) =>
- /(?:^|\/)Info\.plist$/u.test(path),
- ),
- executables: all.filter(
- ({ path, format }) =>
- withinApp(path) && ["mach-o", "mach-o-universal"].includes(format),
- ),
- frameworks: all.filter(({ path }) => /\.framework\//u.test(path)),
- native_libraries: all.filter(({ path }) => /\.(?:dylib|so)$/iu.test(path)),
- javascript: all.filter(({ format }) => format === "javascript-bundle"),
- signing: all.filter(({ path }) =>
- /(?:^|\/)(?:embedded\.mobileprovision|_CodeSignature\/CodeResources)$/u.test(
- path,
- ),
- ),
- };
-};
-
-const deduplicateComponents = (values: readonly Component[]): Component[] =>
- [...new Map(values.map((value) => [value.path, value])).values()].sort(
- (left, right) => compare(left.path, right.path),
- );
-
-const identifyRuntimeFamilies = (all: readonly Component[]) => {
- const paths = all.map(({ path }) => path.toLowerCase());
- const families = new Set<
- z.infer<
- typeof appleApplicationProjectionResultSchema
- >["runtime_families"][number]
- >();
- if (all.some(({ format }) => ["mach-o", "mach-o-universal"].includes(format)))
- families.add("native");
- if (paths.some((path) => /\.(?:dylib|framework\/[^/]+)$/u.test(path)))
- families.add("swift-objective-c");
- if (all.some(({ format }) => format === "javascript-bundle"))
- families.add("javascript");
- if (
- paths.some(
- (path) =>
- path.includes("reactnative") ||
- path.includes("react.framework") ||
- path.includes("hermes"),
- )
- )
- families.add("react-native");
- if (
- paths.some(
- (path) =>
- path.includes("flutter.framework") || path.includes("app.framework"),
- )
- )
- families.add("flutter");
- if (paths.some((path) => path.includes("unityframework.framework")))
- families.add("unity");
- return [...families].sort(compare);
-};
-
-const identifyBridgeCandidates = (
- scripts: readonly Component[],
- native: readonly Component[],
-) => ({
- candidates: scripts.flatMap((script) =>
- native.map((item) => ({
- source_path: script.path,
- native_path: item.path,
- basis: bridgeBasis(item.path),
- })),
- ),
-});
-
-const bridgeBasis = (
- path: string,
-):
- | "javascript-and-native-content"
- | "react-native-convention"
- | "flutter-convention"
- | "unity-convention" => {
- const lower = path.toLowerCase();
- if (lower.includes("react")) return "react-native-convention";
- if (lower.includes("flutter") || lower.includes("app.framework"))
- return "flutter-convention";
- if (lower.includes("unity")) return "unity-convention";
- return "javascript-and-native-content";
-};
-
-const projectionLimitations = (
- complete: boolean,
- roots: readonly string[],
-): string[] => [
- ...(!complete
- ? ["Source inventory pages are incomplete; absence is unknown."]
- : []),
- ...(roots.length === 0
- ? [
- "No Payload/*.app directory was present in the supplied inventory pages.",
- ]
- : []),
- "Bundle identifiers and signing claims require dedicated plist and CMS parsing; this projection reports only exact paths and hashes.",
- "Bridge candidates are path-based hypotheses, not observed runtime calls.",
-];
-
-const compare = (left: string, right: string): number =>
- left < right ? -1 : left > right ? 1 : 0;
-const digest = (value: unknown): string => {
- const encoded = canonicalize(value);
- if (encoded === undefined)
- throw new TypeError("Apple application projection is not canonical JSON");
- return createHash("sha256").update(encoded).digest("hex");
-};
diff --git a/src/domain/binaryTargetTypes.ts b/src/domain/binaryTargetTypes.ts
index 9083b13c1..edb914706 100644
--- a/src/domain/binaryTargetTypes.ts
+++ b/src/domain/binaryTargetTypes.ts
@@ -4,6 +4,8 @@ export type BinaryArchitecture = "x86" | "x86_64" | "arm" | "arm64";
interface BinaryTargetIdentity {
readonly path: string;
readonly sourcePath?: string;
+ /** Info.plist of the app bundle the target was resolved from. */
+ readonly bundleInfoPlist?: string;
readonly sha256: string;
}
diff --git a/src/domain/javascript/electronStaticAnalysisNative.ts b/src/domain/javascript/electronStaticAnalysisNative.ts
index e292596dc..77353fe78 100644
--- a/src/domain/javascript/electronStaticAnalysisNative.ts
+++ b/src/domain/javascript/electronStaticAnalysisNative.ts
@@ -157,13 +157,12 @@ const nativeRequire = (
):
| { readonly specifier: string; readonly member: string | null }
| undefined => {
- if (t.isMemberExpression(node) || t.isOptionalMemberExpression(node)) {
- const nested = t.isNode(node.object)
- ? nativeRequire(node.object)
- : undefined;
- if (nested === undefined) return undefined;
- const member = semanticStaticPropertyName(node.property, node.computed);
- return { ...nested, member: member === "" ? nested.member : member };
+ let member: string | null = null;
+ while (t.isMemberExpression(node) || t.isOptionalMemberExpression(node)) {
+ if (!t.isNode(node.object)) return undefined;
+ const property = semanticStaticPropertyName(node.property, node.computed);
+ if (member === null && property !== "") member = property;
+ node = node.object;
}
if (!t.isCallExpression(node)) return undefined;
const name = calleeName(node.callee);
@@ -175,7 +174,7 @@ const nativeRequire = (
return undefined;
const specifier = stringValue(argumentNode(node.arguments[0]));
return specifier !== undefined && isNativeSpecifier(specifier, "require")
- ? { specifier, member: null }
+ ? { specifier, member }
: undefined;
};
diff --git a/src/domain/javascript/javascriptAstFingerprint.ts b/src/domain/javascript/javascriptAstFingerprint.ts
index 00bbaefba..fd12f6435 100644
--- a/src/domain/javascript/javascriptAstFingerprint.ts
+++ b/src/domain/javascript/javascriptAstFingerprint.ts
@@ -119,14 +119,30 @@ const addExport = (output: Set, name: string): void => {
};
const memberPath = (node: t.Node | null | undefined): string => {
- if (node === undefined || node === null) return "";
- if (t.isIdentifier(node) || t.isPrivateName(node))
- return t.isIdentifier(node) ? node.name : "";
- if (t.isThisExpression(node)) return "this";
- if (t.isMemberExpression(node) || t.isOptionalMemberExpression(node)) {
- const object = t.isNode(node.object) ? memberPath(node.object) : "";
- const property = propertyName(node.property);
- return object === "" ? property : `${object}.${property}`;
+ const properties: string[] = [];
+ let current = node;
+ while (
+ current !== undefined &&
+ current !== null &&
+ (t.isMemberExpression(current) || t.isOptionalMemberExpression(current))
+ ) {
+ properties.push(propertyName(current.property));
+ current = t.isNode(current.object) ? current.object : undefined;
}
- return "";
+
+ const root =
+ current !== undefined && t.isIdentifier(current)
+ ? current.name
+ : current !== undefined && t.isThisExpression(current)
+ ? "this"
+ : "";
+ if (properties.length === 0) return root;
+
+ properties.reverse();
+ const path = root === "" ? [] : [root];
+ for (const property of properties) {
+ if (path.length === 0 && property === "") continue;
+ path.push(property);
+ }
+ return path.join(".");
};
diff --git a/src/domain/javascript/javascriptSemanticAnalysis.calls.test.ts b/src/domain/javascript/javascriptSemanticAnalysis.calls.test.ts
index 899a1267d..78fea9845 100644
--- a/src/domain/javascript/javascriptSemanticAnalysis.calls.test.ts
+++ b/src/domain/javascript/javascriptSemanticAnalysis.calls.test.ts
@@ -192,6 +192,51 @@ describe("JavaScript semantic analysis: calls 2", () => {
).not.toBe(left.functionFingerprints[0]?.components.literalSetSha256);
});
+ it("keeps fingerprint relations ordered and effects scoped to their owner", () => {
+ const ordered = analyzeJavaScriptSemantics(`
+ function first() {}
+ function second(one, two) {}
+ function ordered() { first(); second(1, 2); }
+ function timerOwner() { setTimeout(work, 10); }
+ function networkOwner() { fetch('/data'); }
+ function noEffects() { return 1; }
+ `);
+ const reversed = analyzeJavaScriptSemantics(`
+ function first() {}
+ function second(one, two) {}
+ function ordered() { second(1, 2); first(); }
+ function timerOwner() { setTimeout(work, 10); }
+ function networkOwner() { fetch('/data'); }
+ function noEffects() { return 1; }
+ `);
+ const fingerprint = (ir: typeof ordered, name: string) =>
+ ir.functionFingerprints.find((value) =>
+ ir.callables.some(
+ (callable) =>
+ callable.callableId === value.callableId && callable.name === name,
+ ),
+ );
+
+ expect(
+ fingerprint(ordered, "ordered")?.components.relationShapeSha256,
+ ).not.toBe(
+ fingerprint(reversed, "ordered")?.components.relationShapeSha256,
+ );
+ expect(fingerprint(ordered, "timerOwner")?.components.effects).toContain(
+ "timer",
+ );
+ expect(fingerprint(ordered, "networkOwner")?.components.effects).toContain(
+ "network",
+ );
+ expect(fingerprint(ordered, "noEffects")?.components.effects).toEqual([]);
+ expect(
+ fingerprint(ordered, "timerOwner")?.components.effects,
+ ).not.toContain("network");
+ expect(
+ fingerprint(ordered, "networkOwner")?.components.effects,
+ ).not.toContain("timer");
+ });
+
it("retains ambiguous local callees and explicit dynamic frontiers", () => {
const ir = analyzeJavaScriptSemantics(`
function left(value) { return value; }
diff --git a/src/domain/javascript/javascriptSemanticAnalysis.dataflow.test.ts b/src/domain/javascript/javascriptSemanticAnalysis.dataflow.test.ts
index 384b8fe67..ba8351c45 100644
--- a/src/domain/javascript/javascriptSemanticAnalysis.dataflow.test.ts
+++ b/src/domain/javascript/javascriptSemanticAnalysis.dataflow.test.ts
@@ -149,6 +149,31 @@ describe("JavaScript semantic analysis: dataflow 1", () => {
});
});
+describe("JavaScript semantic call result flows", () => {
+ it("links only directly assigned scalar call results", () => {
+ const ir = analyzeJavaScriptSemantics(`
+ function run() {
+ const direct = produce();
+ const { field } = unpack();
+ const nested = outer(inner());
+ return direct;
+ }
+ `);
+ const bindingNames = new Map(
+ ir.bindings.map(({ bindingId, name }) => [bindingId, name]),
+ );
+
+ expect(
+ ir.callResultFlows.map(({ bindingId }) => bindingNames.get(bindingId)),
+ ).toEqual(["direct", "nested"]);
+ expect(ir.callSites).toHaveLength(4);
+ expect(ir.callResultFlows.map(({ callSiteId }) => callSiteId)).toEqual([
+ ir.callSites[0]?.callSiteId,
+ ir.callSites[2]?.callSiteId,
+ ]);
+ });
+});
+
describe("JavaScript semantic analysis: read-modify-write", () => {
it.each(["+= 1", "++", "--", "||= 1", "&&= 1", "??= 1"])(
"retains the property read in a read-modify-write operation: %s",
diff --git a/src/domain/javascript/javascriptSemanticAnalysis.member_depth.test.ts b/src/domain/javascript/javascriptSemanticAnalysis.member_depth.test.ts
new file mode 100644
index 000000000..9d27e0ed5
--- /dev/null
+++ b/src/domain/javascript/javascriptSemanticAnalysis.member_depth.test.ts
@@ -0,0 +1,154 @@
+import * as t from "@babel/types";
+import { expect, it } from "vitest";
+
+import { analyzeJavaScriptSemantics } from "./javascriptSemanticAnalysis.js";
+import { onlyBinding, origin } from "./javascriptSemanticAnalysis.fixture.js";
+import { parseJavaScriptSource } from "./javascriptSourceParser.js";
+import { calleeName } from "./javascriptStaticAnalysisHelpers.js";
+import { analyzeJavaScriptStaticSource } from "./javascriptStaticAnalysis.js";
+
+const memberChain = ".next".repeat(12_000);
+
+it("retains native addon observations through a deep member initializer", () => {
+ const analysis = analyzeJavaScriptStaticSource(
+ `const value = require("./addon.node")${memberChain}.last[""];`,
+ );
+ expect(analysis.electron.native_addon_bindings).toEqual([
+ expect.objectContaining({ specifier: "./addon.node", members: ["last"] }),
+ ]);
+ expect(analysis.parse_error_count).toBe(0);
+});
+
+it("keeps a deep non-native initializer outside native addon observations", () => {
+ const analysis = analyzeJavaScriptStaticSource(
+ `const value = root${memberChain}.last;`,
+ );
+ expect(analysis.electron.native_addon_bindings).toEqual([]);
+ expect(analysis.parse_status).toBe("complete");
+});
+
+it("retains unknown value diagnostics and references after a deep member initializer", () => {
+ const ir = analyzeJavaScriptSemantics(
+ `const value = root${memberChain}.last;`,
+ );
+ expect(ir.coverage).toEqual({ status: "complete", omittedCount: 0 });
+ expect(onlyBinding(ir, "value")).toMatchObject({
+ value: { status: "unknown", reason: "Cannot project last from unknown." },
+ provenance: { status: "unknown", reason: "Unbound identifier root." },
+ });
+ expect(ir.references.map(({ name, role }) => ({ name, role }))).toEqual([
+ { name: "root", role: "read" },
+ ]);
+});
+
+it.each([
+ `const value = require("./dependency.js")${memberChain}[""].last;`,
+ `const dependency = require("./dependency.js"); const value = dependency${memberChain}[""].last;`,
+ `const value = require("./dependency.js")?.next${memberChain}[""].last;`,
+])("preserves the full literal module path (case %#)", (source) => {
+ const ir = analyzeJavaScriptSemantics(source);
+ const path = origin(onlyBinding(ir, "value"));
+ expect(path.specifier).toBe("./dependency.js");
+ expect(path.importedPath).toEqual([
+ ...(source.includes("?.next") ? ["next"] : []),
+ ...Array.from({ length: 12_000 }, () => "next"),
+ "",
+ "last",
+ ]);
+ expect(ir.coverage.status).toBe("complete");
+});
+
+it("retains a deep CommonJS re-export path without inventing dynamic module links", () => {
+ const ir = analyzeJavaScriptSemantics(`
+ module.exports.result = require("./dependency.js")${memberChain}.last;
+ const dynamic = require("./other.js")${memberChain}[key].last;
+ `);
+ expect(ir.moduleLinks).toEqual([
+ expect.objectContaining({
+ kind: "commonjs-export",
+ specifier: "./dependency.js",
+ importedName: "last",
+ exportedName: "result",
+ }),
+ ]);
+ expect(onlyBinding(ir, "dynamic").provenance).toMatchObject({
+ status: "unknown",
+ reason: "Dynamic provenance member.",
+ });
+});
+
+it("invalidates a deep mutation while retaining unrelated literal properties", () => {
+ const ir = analyzeJavaScriptSemantics(`
+ const root = { untouched: "retained" };
+ root${memberChain}.last = 1;
+ const value = root.untouched;
+ `);
+ expect(onlyBinding(ir, "root").value).toEqual({
+ status: "object",
+ properties: [
+ { name: "untouched", value: { status: "literal", value: "retained" } },
+ ],
+ unknownProperties: true,
+ omittedProperties: null,
+ });
+ expect(onlyBinding(ir, "value").value).toEqual({
+ status: "literal",
+ value: "retained",
+ });
+});
+
+it("retains the complete location and unresolved target of a deep call", () => {
+ const callee = `root${memberChain}.last`;
+ const ir = analyzeJavaScriptSemantics(`${callee}();`);
+ expect(ir.callSites).toEqual([
+ expect.objectContaining({
+ kind: "call",
+ resolution: "unresolved",
+ calleeCallableIds: [],
+ calleeLocation: {
+ start: { line: 1, column: 0 },
+ end: { line: 1, column: callee.length },
+ },
+ }),
+ ]);
+});
+
+it("retains deep default values without confusing their reads with parameter bindings", () => {
+ const ir = analyzeJavaScriptSemantics(
+ `export function inspect(value = root${memberChain}.last) { return value; }`,
+ );
+ expect(ir.references.map(({ name, role }) => ({ name, role }))).toEqual([
+ { name: "root", role: "read" },
+ { name: "value", role: "read" },
+ ]);
+ expect(ir.coverage.status).toBe("complete");
+});
+
+it("keeps a shadowed require local through a deep member initializer", () => {
+ const ir = analyzeJavaScriptSemantics(
+ `function inspect(require) { const value = require("./dependency.js")${memberChain}.last; return value; }`,
+ );
+ expect(ir.moduleLinks).toEqual([]);
+ expect(onlyBinding(ir, "value").provenance.origins).toEqual([]);
+});
+
+it.each([
+ ["root.first.last()", "root.first.last"],
+ ['root[""].last()', "root..last"],
+ ['("")[""].last()', "last"],
+ ['("")[""]()', ""],
+ ["root[0].last()", "root.0.last"],
+ ["root[key].last()", "root.[computed@5].last"],
+ ["root?.first.last()", "root.first.last"],
+ [`root${memberChain}.last()`, `root${memberChain}.last`],
+])("preserves exact callee syntax (case %#)", (source, expected) => {
+ const file = parseJavaScriptSource(source);
+ const statement = file?.program.body[0];
+ if (
+ !t.isExpressionStatement(statement) ||
+ (!t.isCallExpression(statement.expression) &&
+ !t.isOptionalCallExpression(statement.expression))
+ )
+ throw new Error("Expected parsed call expression");
+ expect(calleeName(statement.expression.callee)).toBe(expected);
+});
diff --git a/src/domain/javascript/javascriptSemanticAnalysis.recoveredArguments.test.ts b/src/domain/javascript/javascriptSemanticAnalysis.recoveredArguments.test.ts
new file mode 100644
index 000000000..98e5516f1
--- /dev/null
+++ b/src/domain/javascript/javascriptSemanticAnalysis.recoveredArguments.test.ts
@@ -0,0 +1,40 @@
+import { describe, expect, it } from "vitest";
+
+import { analyzeJavaScriptSemantics } from "./javascriptSemanticAnalysis.js";
+
+describe("JavaScript semantic analysis: recovered arguments", () => {
+ it.each([
+ { source: "0(,)", indexes: [] },
+ { source: 'call(, "kept", , 42)', indexes: [1, 3] },
+ { source: 'call?.(, "kept")', indexes: [1] },
+ { source: 'new Thing(, "kept")', indexes: [1] },
+ ])(
+ "retains argument positions in recovered syntax: $source",
+ ({ source, indexes }) => {
+ const ir = analyzeJavaScriptSemantics(source);
+
+ expect(ir.coverage.status).toBe("partial");
+ expect(ir.callSites).toHaveLength(1);
+ expect(ir.callSites[0]?.arguments.map(({ index }) => index)).toEqual(
+ indexes,
+ );
+ expect(ir.limitations.join(" ")).toMatch(/parser recovered/iu);
+ },
+ );
+
+ it("keeps recovered argument flows bound to their original parameter", () => {
+ const ir = analyzeJavaScriptSemantics(
+ "function select(first, second) { return second; } const value = 42; select(, value);",
+ );
+ const second = ir.bindings.find(({ name }) => name === "second");
+
+ expect(ir.coverage.status).toBe("partial");
+ expect(second).toBeDefined();
+ expect(ir.argumentFlows).toEqual([
+ expect.objectContaining({
+ argumentIndex: 1,
+ parameterBindingId: second?.bindingId,
+ }),
+ ]);
+ });
+});
diff --git a/src/domain/javascript/javascriptSemanticCalls.ts b/src/domain/javascript/javascriptSemanticCalls.ts
index 0a626b49c..ca775e478 100644
--- a/src/domain/javascript/javascriptSemanticCalls.ts
+++ b/src/domain/javascript/javascriptSemanticCalls.ts
@@ -183,9 +183,7 @@ const collectCallResultFlow = (
context.ancestors,
context.state,
).filter(({ projectionPath }) => projectionPath.length === 0)) {
- const binding = [...context.state.bindingsById.values()].find(
- ({ bindingId }) => bindingId === assigned.bindingId,
- );
+ const binding = context.state.bindingsById.get(assigned.bindingId);
if (binding === undefined) continue;
const identifierRange = range(assigned.identifier);
const definition = binding.definitions.find(
@@ -210,10 +208,13 @@ const retainedArguments = (
| t.SpreadElement
| t.JSXNamespacedName
| t.ArgumentPlaceholder
+ | null
)[],
): JavaScriptSemanticCallSite["arguments"] => {
const retained: JavaScriptSemanticCallSite["arguments"][number][] = [];
for (const [index, node] of nodes.entries()) {
+ // Babel recovery can leave null slots; retain the other argument positions.
+ if (node === null) continue;
retained.push({
index,
location: range(node),
diff --git a/src/domain/javascript/javascriptSemanticFingerprints.ts b/src/domain/javascript/javascriptSemanticFingerprints.ts
index 260f8bd9c..2e3336741 100644
--- a/src/domain/javascript/javascriptSemanticFingerprints.ts
+++ b/src/domain/javascript/javascriptSemanticFingerprints.ts
@@ -50,30 +50,36 @@ export const collectJavaScriptSemanticFingerprints = (
resourceOperations,
parserPartial,
} = input;
+ const callSitesByCaller = groupByOwner(
+ calls.callSites,
+ ({ callerCallableId }) => callerCallableId,
+ );
+ const captureCountByCallable = countByOwner(
+ calls.closureCaptures,
+ ({ callableId }) => callableId,
+ );
+ const promiseEffectsByOwner = groupByOwner(promises, ownerId);
+ const eventEffectsByOwner = groupByOwner(events, ownerId);
+ const timerEffectsByOwner = groupByOwner(timers, ownerId);
+ const childProcessEffectsByOwner = groupByOwner(
+ [...childProcessSpawns, ...childProcessInteractions],
+ ownerId,
+ );
+ const networkEffectsByOwner = groupByOwner(requestOperations, ownerId);
+ const resourceEffectsByOwner = groupByOwner(resourceOperations, ownerId);
return callables.flatMap((callable) => {
if (callable.kind === "class") return [];
const node = state.callableNodesById.get(callable.callableId);
if (node === undefined) return [];
const syntax = fingerprintSyntax(node, callable.callableId);
- const promiseEffects = promises.filter(
- ({ ownerCallableId }) => ownerCallableId === callable.callableId,
- );
- const eventEffects = events.filter(
- ({ ownerCallableId }) => ownerCallableId === callable.callableId,
- );
- const timerEffects = timers.filter(
- ({ ownerCallableId }) => ownerCallableId === callable.callableId,
- );
- const childProcessEffects = [
- ...childProcessSpawns,
- ...childProcessInteractions,
- ].filter(({ ownerCallableId }) => ownerCallableId === callable.callableId);
- const networkEffects = requestOperations.filter(
- ({ ownerCallableId }) => ownerCallableId === callable.callableId,
- );
- const resourceEffects = resourceOperations.filter(
- ({ ownerCallableId }) => ownerCallableId === callable.callableId,
- );
+ const promiseEffects = promiseEffectsByOwner.get(callable.callableId) ?? [];
+ const eventEffects = eventEffectsByOwner.get(callable.callableId) ?? [];
+ const timerEffects = timerEffectsByOwner.get(callable.callableId) ?? [];
+ const childProcessEffects =
+ childProcessEffectsByOwner.get(callable.callableId) ?? [];
+ const networkEffects = networkEffectsByOwner.get(callable.callableId) ?? [];
+ const resourceEffects =
+ resourceEffectsByOwner.get(callable.callableId) ?? [];
return [
{
callableId: callable.callableId,
@@ -86,7 +92,12 @@ export const collectJavaScriptSemanticFingerprints = (
normalizedAstSha256: digest(syntax.normalizedTokens),
controlFlowSha256: digest(syntax.controlFlowTokens),
relationShapeSha256: digest(
- relationShape(callable, calls, promiseEffects),
+ relationShape(
+ callable,
+ callSitesByCaller.get(callable.callableId) ?? [],
+ captureCountByCallable.get(callable.callableId) ?? 0,
+ promiseEffects,
+ ),
),
literalSetSha256: digest(
[...new Set(syntax.literals)].sort(compareCodePoints),
@@ -114,6 +125,36 @@ export const collectJavaScriptSemanticFingerprints = (
});
};
+const ownerId = (
+ value: T,
+): string | null => value.ownerCallableId;
+
+const groupByOwner = (
+ values: readonly T[],
+ getOwner: (value: T) => K,
+): Map => {
+ const grouped = new Map();
+ for (const value of values) {
+ const owner = getOwner(value);
+ const ownedValues = grouped.get(owner);
+ if (ownedValues === undefined) grouped.set(owner, [value]);
+ else ownedValues.push(value);
+ }
+ return grouped;
+};
+
+const countByOwner = (
+ values: readonly T[],
+ getOwner: (value: T) => K,
+): Map => {
+ const counts = new Map();
+ for (const value of values) {
+ const owner = getOwner(value);
+ counts.set(owner, (counts.get(owner) ?? 0) + 1);
+ }
+ return counts;
+};
+
interface FingerprintSyntax {
readonly normalizedTokens: readonly string[];
readonly controlFlowTokens: readonly string[];
@@ -229,21 +270,16 @@ const semanticLiteral = (node: t.Node): string | null => {
const relationShape = (
callable: JavaScriptSemanticCallable,
- calls: JavaScriptSemanticCallAnalysis,
+ callSites: JavaScriptSemanticCallAnalysis["callSites"],
+ captureCount: number,
promises: readonly JavaScriptSemanticPromiseOperation[],
): string[] => [
`returns:${String(callable.returnSites.length)}:${callable.returnCoverage.status}`,
- ...calls.callSites
- .filter(({ callerCallableId }) => callerCallableId === callable.callableId)
- .map(
- ({ kind, resolution, arguments: args, calleeCallableIds }) =>
- `call:${kind}:${resolution}:${String(args.length)}:${String(calleeCallableIds.length)}`,
- ),
- `captures:${String(
- calls.closureCaptures.filter(
- ({ callableId }) => callableId === callable.callableId,
- ).length,
- )}`,
+ ...callSites.map(
+ ({ kind, resolution, arguments: args, calleeCallableIds }) =>
+ `call:${kind}:${resolution}:${String(args.length)}:${String(calleeCallableIds.length)}`,
+ ),
+ `captures:${String(captureCount)}`,
...promises.map(
({ kind, method, ownership, sourceResolution }) =>
`promise:${kind}:${method}:${ownership}:${sourceResolution}`,
diff --git a/src/domain/javascript/javascriptSemanticMemberMutations.ts b/src/domain/javascript/javascriptSemanticMemberMutations.ts
index e168b2046..325e48169 100644
--- a/src/domain/javascript/javascriptSemanticMemberMutations.ts
+++ b/src/domain/javascript/javascriptSemanticMemberMutations.ts
@@ -39,11 +39,18 @@ export const collectSemanticMemberMutations = (
return;
}
if (t.isMemberExpression(node) || t.isOptionalMemberExpression(node)) {
- markValue(
- node.object,
- [semanticStaticPropertyKey(node.property, node.computed), ...path],
- bindings,
- );
+ const members: (string | null)[] = [];
+ let current: t.Node = node;
+ while (
+ t.isMemberExpression(current) ||
+ t.isOptionalMemberExpression(current)
+ ) {
+ members.push(
+ semanticStaticPropertyKey(current.property, current.computed),
+ );
+ current = current.object;
+ }
+ markValue(current, [...members.reverse(), ...path], bindings);
return;
}
for (const value of referencedValues(node, path))
diff --git a/src/domain/javascript/javascriptSemanticProjection.ts b/src/domain/javascript/javascriptSemanticProjection.ts
index 9dcc8a7ad..740b9b0a7 100644
--- a/src/domain/javascript/javascriptSemanticProjection.ts
+++ b/src/domain/javascript/javascriptSemanticProjection.ts
@@ -1,7 +1,6 @@
import * as t from "@babel/types";
import type {
- JavaScriptModuleOrigin,
JavaScriptSemanticBinding,
JavaScriptSemanticModuleLink,
JavaScriptSemanticReference,
@@ -14,6 +13,7 @@ import {
type JavaScriptSemanticAnalysisState,
type JavaScriptSemanticScopeState,
} from "./javascriptSemanticState.js";
+import { semanticRequireOrigin } from "./javascriptSemanticRequireOrigin.js";
import { compareCodePoints } from "../canonicalOrdering.js";
import { traverseJavaScriptAst } from "./javascriptSemanticTraversal.js";
import {
@@ -100,12 +100,16 @@ export const collectSemanticReferences = (
): JavaScriptSemanticReference[] => {
const output: JavaScriptSemanticReference[] = [];
const seen = new Set();
+ const patterns: t.Node[] = [];
traverseJavaScriptAst(program, {
enter: (node, parent, readAncestors) => {
+ if (isPatternNode(node)) patterns.push(node);
if (
!t.isIdentifier(node) ||
parent === null ||
- (name !== undefined && node.name !== name)
+ (name !== undefined && node.name !== name) ||
+ (isNonReferenceKey(node, parent) &&
+ !patterns.some((pattern) => bindsIdentifier(pattern, parent, node)))
)
return;
const role = semanticIdentifierRole(node, parent, readAncestors());
@@ -138,6 +142,9 @@ export const collectSemanticReferences = (
});
}
},
+ exit: (node) => {
+ if (isPatternNode(node)) patterns.pop();
+ },
});
return output;
};
@@ -174,40 +181,6 @@ export const immutableSemanticBindings = (
}))
.sort((left, right) => compareCodePoints(left.bindingId, right.bindingId));
-/** Recover a literal require origin plus an optional member chain. */
-const semanticModuleOrigin = (
- node: t.Node | null | undefined,
- projection: readonly (string | number | null)[],
- state: JavaScriptSemanticAnalysisState,
-): JavaScriptModuleOrigin | undefined => {
- if (t.isMemberExpression(node) || t.isOptionalMemberExpression(node)) {
- const nested = t.isNode(node.object)
- ? semanticModuleOrigin(node.object, projection, state)
- : undefined;
- const member = semanticStaticPropertyKey(node.property, node.computed);
- return nested === undefined || member === null
- ? undefined
- : { ...nested, importedPath: [...nested.importedPath, member] };
- }
- if (
- !t.isCallExpression(node) ||
- !t.isIdentifier(node.callee, { name: "require" })
- )
- return undefined;
- if (
- resolveSemanticBindingState(state, node.callee, "require") !== undefined ||
- semanticResolutionBlocked(state, node.callee, "require")
- )
- return undefined;
- const specifier = stringValue(node.arguments[0]);
- return specifier === undefined || projection.includes(null)
- ? undefined
- : {
- specifier,
- importedPath: projection.map((segment) => String(segment)),
- };
-};
-
export {
semanticStaticPropertyKey,
semanticStaticPropertyName,
@@ -318,7 +291,7 @@ const collectRequireLink = (
node: t.VariableDeclarator,
state: JavaScriptSemanticAnalysisState,
): void => {
- const origin = semanticModuleOrigin(node.init, [], state);
+ const origin = semanticRequireOrigin(node.init, state);
if (origin === undefined) return;
for (const binding of requirePatternBindings(node.id, origin.importedPath))
addModuleLink(state, {
@@ -364,7 +337,7 @@ const collectCommonJsExport = (
): void => {
const exportedName = commonJsExportName(node.left, state);
if (exportedName === undefined) return;
- const origin = semanticModuleOrigin(node.right, [], state);
+ const origin = semanticRequireOrigin(node.right, state);
addModuleLink(state, {
kind: "commonjs-export",
specifier: origin?.specifier ?? null,
diff --git a/src/domain/javascript/javascriptSemanticRequireOrigin.ts b/src/domain/javascript/javascriptSemanticRequireOrigin.ts
new file mode 100644
index 000000000..e0bf54046
--- /dev/null
+++ b/src/domain/javascript/javascriptSemanticRequireOrigin.ts
@@ -0,0 +1,38 @@
+import * as t from "@babel/types";
+
+import type { JavaScriptModuleOrigin } from "./javascriptSemanticIr.js";
+import {
+ resolveSemanticBindingState,
+ semanticResolutionBlocked,
+ type JavaScriptSemanticAnalysisState,
+} from "./javascriptSemanticState.js";
+import { semanticStaticPropertyKey } from "./javascriptAstValues.js";
+import { stringValue } from "./javascriptStaticAnalysisHelpers.js";
+
+/** Recover an unshadowed literal require origin and its exact member path. */
+export const semanticRequireOrigin = (
+ node: t.Node | null | undefined,
+ state: JavaScriptSemanticAnalysisState,
+): JavaScriptModuleOrigin | undefined => {
+ const members: string[] = [];
+ while (t.isMemberExpression(node) || t.isOptionalMemberExpression(node)) {
+ const member = semanticStaticPropertyKey(node.property, node.computed);
+ if (member === null || !t.isNode(node.object)) return undefined;
+ members.push(member);
+ node = node.object;
+ }
+ if (
+ !t.isCallExpression(node) ||
+ !t.isIdentifier(node.callee, { name: "require" })
+ )
+ return undefined;
+ if (
+ resolveSemanticBindingState(state, node.callee, "require") !== undefined ||
+ semanticResolutionBlocked(state, node.callee, "require")
+ )
+ return undefined;
+ const specifier = stringValue(node.arguments[0]);
+ return specifier === undefined
+ ? undefined
+ : { specifier, importedPath: members.reverse() };
+};
diff --git a/src/domain/javascript/javascriptSemanticTraversal.test.ts b/src/domain/javascript/javascriptSemanticTraversal.test.ts
index 1d012c1df..482afe2b9 100644
--- a/src/domain/javascript/javascriptSemanticTraversal.test.ts
+++ b/src/domain/javascript/javascriptSemanticTraversal.test.ts
@@ -51,3 +51,16 @@ it("preserves source-tree enter/exit order and detached ancestor snapshots", ()
],
]);
});
+
+it("skips sparse child slots without disturbing sibling visit order", () => {
+ const parsed = parseJavaScriptSource("const values = [first, , second];");
+ if (parsed === null)
+ throw new TypeError("Expected a parsed JavaScript fixture");
+ const identifiers: string[] = [];
+ traverseJavaScriptAst(parsed.program, {
+ enter: (node) => {
+ if (t.isIdentifier(node)) identifiers.push(node.name);
+ },
+ });
+ expect(identifiers).toEqual(["values", "first", "second"]);
+});
diff --git a/src/domain/javascript/javascriptSemanticTraversal.ts b/src/domain/javascript/javascriptSemanticTraversal.ts
index d3a99f270..5eb311ac2 100644
--- a/src/domain/javascript/javascriptSemanticTraversal.ts
+++ b/src/domain/javascript/javascriptSemanticTraversal.ts
@@ -51,11 +51,19 @@ interface TraversalFrame {
}
const childNodes = (node: t.Node): t.Node[] => {
- const keys: readonly string[] = t.VISITOR_KEYS[node.type] ?? [];
- return keys.flatMap((key) => {
+ const keys = t.VISITOR_KEYS[node.type];
+ if (keys === undefined) return [];
+ const children: t.Node[] = [];
+ for (const key of keys) {
const value: unknown = Reflect.get(node, key);
- if (t.isNode(value)) return [value];
- if (!Array.isArray(value)) return [];
- return value.filter((item): item is t.Node => t.isNode(item));
- });
+ if (t.isNode(value)) {
+ children.push(value);
+ continue;
+ }
+ if (!Array.isArray(value)) continue;
+ for (const item of value) {
+ if (t.isNode(item)) children.push(item);
+ }
+ }
+ return children;
};
diff --git a/src/domain/javascript/javascriptSemanticValues.ts b/src/domain/javascript/javascriptSemanticValues.ts
index 78fc72c1c..034297db5 100644
--- a/src/domain/javascript/javascriptSemanticValues.ts
+++ b/src/domain/javascript/javascriptSemanticValues.ts
@@ -4,17 +4,15 @@ import { invalidateSemanticMutationPath } from "./javascriptSemanticMutationValu
import type {
JavaScriptBindingProvenance,
- JavaScriptModuleOrigin,
JavaScriptSemanticProperty,
JavaScriptSemanticValue,
} from "./javascriptSemanticIr.js";
import {
resolveSemanticBindingState,
- semanticResolutionBlocked,
type JavaScriptSemanticAnalysisState,
type JavaScriptSemanticBindingState,
} from "./javascriptSemanticState.js";
-import { stringValue } from "./javascriptStaticAnalysisHelpers.js";
+import { semanticRequireOrigin } from "./javascriptSemanticRequireOrigin.js";
import { compareCodePoints } from "../canonicalOrdering.js";
import { semanticStaticPropertyKey } from "./javascriptAstValues.js";
import {
@@ -253,15 +251,28 @@ const evaluateMember = (
node: t.MemberExpression | t.OptionalMemberExpression,
context: EvaluationContext,
): JavaScriptSemanticValue => {
- if (!t.isNode(node.object))
- return { status: "unknown", reason: "Unsupported member base." };
- const key =
- semanticStaticPropertyKey(node.property, node.computed) ?? undefined;
- if (key === undefined)
- return { status: "unknown", reason: "Dynamic member key." };
- return projectValue(evaluateExpression(node.object, nestedContext(context)), [
- key,
- ]);
+ const keys: string[] = [];
+ let current: t.Node = node;
+ let value: JavaScriptSemanticValue | undefined;
+ while (
+ t.isMemberExpression(current) ||
+ t.isOptionalMemberExpression(current)
+ ) {
+ if (!t.isNode(current.object)) {
+ value = { status: "unknown", reason: "Unsupported member base." };
+ break;
+ }
+ const key = semanticStaticPropertyKey(current.property, current.computed);
+ if (key === null) {
+ value = { status: "unknown", reason: "Dynamic member key." };
+ break;
+ }
+ keys.push(key);
+ current = current.object;
+ }
+ value ??= evaluateExpression(current, nestedContext(context));
+ for (const key of keys.reverse()) value = projectValue(value, [key]);
+ return value;
};
const evaluateAddition = (
@@ -425,7 +436,7 @@ const provenanceForExpression = (
node: t.Node,
context: EvaluationContext,
): JavaScriptBindingProvenance => {
- const required = requireOrigin(node, context.state);
+ const required = semanticRequireOrigin(node, context.state);
if (required !== undefined) return semanticOriginsProvenance([required]);
if (t.isIdentifier(node)) {
const binding = resolveSemanticBindingState(context.state, node, node.name);
@@ -437,25 +448,37 @@ const provenanceForExpression = (
: provenanceForBinding(binding, nestedContext(context));
}
if (t.isMemberExpression(node) || t.isOptionalMemberExpression(node)) {
- if (!t.isNode(node.object))
- return semanticUnresolvedProvenance(
- "unknown",
- "Unsupported member base.",
+ const members: string[] = [];
+ let current: t.Node = node;
+ while (
+ t.isMemberExpression(current) ||
+ t.isOptionalMemberExpression(current)
+ ) {
+ if (!t.isNode(current.object))
+ return semanticUnresolvedProvenance(
+ "unknown",
+ "Unsupported member base.",
+ );
+ const member = semanticStaticPropertyKey(
+ current.property,
+ current.computed,
);
- const member =
- semanticStaticPropertyKey(node.property, node.computed) ?? undefined;
- if (typeof member !== "string")
- return semanticUnresolvedProvenance(
- "unknown",
- "Dynamic provenance member.",
- );
- const base = provenanceForExpression(node.object, nestedContext(context));
+ if (member === null)
+ return semanticUnresolvedProvenance(
+ "unknown",
+ "Dynamic provenance member.",
+ );
+ members.push(member);
+ current = current.object;
+ }
+ const base = provenanceForExpression(current, nestedContext(context));
+ const path = members.reverse();
return base.status !== "module"
? base
: semanticOriginsProvenance(
base.origins.map((origin) => ({
...origin,
- importedPath: [...origin.importedPath, member],
+ importedPath: [...origin.importedPath, ...path],
})),
);
}
@@ -480,33 +503,6 @@ const provenanceForExpression = (
return semanticLocalProvenance();
};
-const requireOrigin = (
- node: t.Node,
- state: JavaScriptSemanticAnalysisState,
-): JavaScriptModuleOrigin | undefined => {
- if (t.isMemberExpression(node) || t.isOptionalMemberExpression(node)) {
- if (!t.isNode(node.object)) return undefined;
- const nested = requireOrigin(node.object, state);
- const member =
- semanticStaticPropertyKey(node.property, node.computed) ?? undefined;
- return nested === undefined || typeof member !== "string"
- ? undefined
- : { ...nested, importedPath: [...nested.importedPath, member] };
- }
- if (
- !t.isCallExpression(node) ||
- !t.isIdentifier(node.callee, { name: "require" })
- )
- return undefined;
- if (
- resolveSemanticBindingState(state, node.callee, "require") !== undefined ||
- semanticResolutionBlocked(state, node.callee, "require")
- )
- return undefined;
- const specifier = stringValue(node.arguments[0]);
- return specifier === undefined ? undefined : { specifier, importedPath: [] };
-};
-
const mergeValues = (
values: readonly JavaScriptSemanticValue[],
): JavaScriptSemanticValue => {
diff --git a/src/domain/javascript/javascriptStaticAnalysis.member_path_depth.test.ts b/src/domain/javascript/javascriptStaticAnalysis.member_path_depth.test.ts
new file mode 100644
index 000000000..6e426c7c6
--- /dev/null
+++ b/src/domain/javascript/javascriptStaticAnalysis.member_path_depth.test.ts
@@ -0,0 +1,63 @@
+import { expect, it } from "vitest";
+
+import { collectJavaScriptExports } from "./javascriptAstFingerprint.js";
+import { analyzeJavaScriptStaticSource } from "./javascriptStaticAnalysis.js";
+import { parseJavaScriptSource } from "./javascriptSourceParser.js";
+
+const memberChain = ".next".repeat(12_000);
+
+it("collects a 12,000-member CommonJS export path without recursion", () => {
+ const file = parseJavaScriptSource(`exports${memberChain}.last = 1;`);
+ if (file === null) throw new Error("Expected valid JavaScript");
+ expect(collectJavaScriptExports(file).values).toEqual([
+ `${"next.".repeat(12_000)}last`,
+ ]);
+});
+
+it("preserves empty, dynamic, this, and private member path behavior", () => {
+ const file = parseJavaScriptSource(`
+ exports[""].value = 1;
+ exports[""] = 0;
+ exports[key].value = 2;
+ this.exports.ignored = 3;
+ class Example { #private = 0; read() { this.#private = 1; } }
+ `);
+ if (file === null) throw new Error("Expected valid JavaScript");
+ expect(collectJavaScriptExports(file).values).toEqual([
+ "",
+ ".value",
+ "key.value",
+ ]);
+});
+
+it("keeps left-first and outer-member-first bundler runtime matches", () => {
+ const source = `
+ (globalThis.webpackChunkLeft || globalThis.webpackChunkRight).push([[1], { 1: function() {} }]);
+ globalThis.webpackChunkOuter.webpackChunkInner.push([[2], { 2: function() {} }]);
+ `;
+ const analysis = analyzeJavaScriptStaticSource(source);
+ expect(
+ analysis.bundler_registrations.find(({ chunk_keys }) =>
+ chunk_keys.includes("1"),
+ )?.runtime,
+ ).toBe("webpackChunkLeft");
+ expect(
+ analysis.bundler_registrations.find(({ chunk_keys }) =>
+ chunk_keys.includes("2"),
+ )?.runtime,
+ ).toBe("webpackChunkInner");
+});
+
+it("analyzes a 12,000-member bundler runtime chain without recursion", () => {
+ const source = `globalThis.webpackChunkApp${memberChain}.push([[1], { 1: function(module) { module.exports.ok = 42; } }]);`;
+ const analysis = analyzeJavaScriptStaticSource(source);
+ expect(analysis.parse_status).toBe("complete");
+ expect(analysis.parse_error_count).toBe(0);
+ expect(analysis.bundler_registrations).toHaveLength(1);
+ expect(analysis.bundler_registrations[0]).toMatchObject({
+ bundler: "webpack",
+ runtime: "webpackChunkApp",
+ chunk_keys: ["1"],
+ modules: [expect.objectContaining({ exports: ["ok"] })],
+ });
+});
diff --git a/src/domain/javascript/javascriptStaticAnalysisHelpers.ts b/src/domain/javascript/javascriptStaticAnalysisHelpers.ts
index 382feff61..a84d1dd03 100644
--- a/src/domain/javascript/javascriptStaticAnalysisHelpers.ts
+++ b/src/domain/javascript/javascriptStaticAnalysisHelpers.ts
@@ -73,19 +73,38 @@ export const chunkRuntime = (call: t.CallExpression): string | undefined => {
};
const findChunkRuntime = (node: t.Node): string | undefined => {
- if (t.isIdentifier(node) && /(?:webpack|rspack)Chunk/iu.test(node.name))
- return node.name;
- if (t.isMemberExpression(node) || t.isOptionalMemberExpression(node)) {
- const property = semanticStaticPropertyName(node.property, node.computed);
- if (/(?:webpack|rspack)Chunk/iu.test(property)) return property;
- return t.isNode(node.object) ? findChunkRuntime(node.object) : undefined;
+ const pending: t.Node[] = [node];
+ while (pending.length > 0) {
+ const current = pending.pop();
+ if (current === undefined) continue;
+ if (
+ t.isIdentifier(current) &&
+ /(?:webpack|rspack)Chunk/iu.test(current.name)
+ )
+ return current.name;
+ if (
+ t.isMemberExpression(current) ||
+ t.isOptionalMemberExpression(current)
+ ) {
+ const property = semanticStaticPropertyName(
+ current.property,
+ current.computed,
+ );
+ if (/(?:webpack|rspack)Chunk/iu.test(property)) return property;
+ if (t.isNode(current.object)) pending.push(current.object);
+ continue;
+ }
+ if (t.isAssignmentExpression(current)) {
+ pending.push(current.right, current.left);
+ continue;
+ }
+ if (t.isLogicalExpression(current) || t.isBinaryExpression(current)) {
+ pending.push(current.right, current.left);
+ continue;
+ }
+ if (t.isParenthesizedExpression(current) || t.isTSAsExpression(current))
+ pending.push(current.expression);
}
- if (t.isAssignmentExpression(node))
- return findChunkRuntime(node.left) ?? findChunkRuntime(node.right);
- if (t.isLogicalExpression(node) || t.isBinaryExpression(node))
- return findChunkRuntime(node.left) ?? findChunkRuntime(node.right);
- if (t.isParenthesizedExpression(node) || t.isTSAsExpression(node))
- return findChunkRuntime(node.expression);
return undefined;
};
@@ -520,19 +539,23 @@ export const storageKind = (
};
/** Produce a dotted callee name from member syntax. */
-export const calleeName = (node: t.Node): string => calleeNameAt(node);
-
-const calleeNameAt = (node: t.Node): string => {
- if (t.isIdentifier(node)) return node.name;
- if (t.isImport(node)) return "import";
- if (t.isMemberExpression(node) || t.isOptionalMemberExpression(node)) {
- const object = t.isNode(node.object) ? calleeNameAt(node.object) : "";
- // A dynamic key commits no name: `target[method]()` must not be reported as
- // `target.method`, which would fabricate a runtime call shape.
- const property = memberPropertyName(node);
- return object === "" ? property : `${object}.${property}`;
+export const calleeName = (node: t.Node): string => {
+ const segments: string[] = [];
+ while (t.isMemberExpression(node) || t.isOptionalMemberExpression(node)) {
+ // Dynamic keys retain their syntax identity instead of inventing a name.
+ segments.push(memberPropertyName(node));
+ if (!t.isNode(node.object)) break;
+ node = node.object;
}
- return "";
+ const base = t.isIdentifier(node)
+ ? node.name
+ : t.isImport(node)
+ ? "import"
+ : "";
+ segments.push(base);
+ segments.reverse();
+ const first = segments.findIndex((segment) => segment !== "");
+ return first === -1 ? "" : segments.slice(first).join(".");
};
/** Read a member property only when its syntax commits an exact name. */
diff --git a/src/domain/managedApplicationGraph.ts b/src/domain/managed/managedApplicationGraph.ts
similarity index 96%
rename from src/domain/managedApplicationGraph.ts
rename to src/domain/managed/managedApplicationGraph.ts
index 63be9cf23..8158e205c 100644
--- a/src/domain/managedApplicationGraph.ts
+++ b/src/domain/managed/managedApplicationGraph.ts
@@ -3,13 +3,13 @@ import { createHash } from "node:crypto";
import canonicalize from "canonicalize";
import { z } from "zod";
-import { evidenceSchema, parseEvidence, type Evidence } from "./evidence.js";
+import { evidenceSchema, parseEvidence, type Evidence } from "../evidence.js";
import {
createJavaScriptApplicationGraph,
javascriptApplicationGraphSchema,
type ApplicationEdge,
type ApplicationNode,
-} from "./javascript/javascriptApplicationGraph.js";
+} from "../javascript/javascriptApplicationGraph.js";
import {
managedArtifactInspectionSchema,
managedMemberInspectionSchema,
@@ -18,7 +18,7 @@ import {
type ManagedMemberInspection,
type ManagedNativeBoundaryInspection,
} from "./managedArtifact.js";
-import type { JsonValue } from "./jsonValue.js";
+import type { JsonValue } from "../jsonValue.js";
import {
assessManagedGraphOmissions,
managedGraphEvidenceCoverage,
@@ -30,8 +30,8 @@ import {
addBoundaryNodes,
addMemberNodes,
} from "./managedApplicationGraphNodes.js";
-import { digestSchema } from "./../domain/digests.js";
-import { prefixedDigestSchema } from "./../domain/digests.js";
+import { digestSchema } from "../digests.js";
+import { prefixedDigestSchema } from "../digests.js";
const evidenceIdSchema = prefixedDigestSchema("ev");
const textSchema = z.string().min(1);
diff --git a/src/domain/managedApplicationGraphCoverage.ts b/src/domain/managed/managedApplicationGraphCoverage.ts
similarity index 95%
rename from src/domain/managedApplicationGraphCoverage.ts
rename to src/domain/managed/managedApplicationGraphCoverage.ts
index cd60391b2..612d389bc 100644
--- a/src/domain/managedApplicationGraphCoverage.ts
+++ b/src/domain/managed/managedApplicationGraphCoverage.ts
@@ -1,4 +1,4 @@
-import type { ApplicationGraphEvidence } from "./javascript/javascriptApplicationGraph.js";
+import type { ApplicationGraphEvidence } from "../javascript/javascriptApplicationGraph.js";
import type {
ManagedArtifactInspection,
ManagedMemberInspection,
diff --git a/src/domain/managedApplicationGraphNodeCoverage.ts b/src/domain/managed/managedApplicationGraphNodeCoverage.ts
similarity index 100%
rename from src/domain/managedApplicationGraphNodeCoverage.ts
rename to src/domain/managed/managedApplicationGraphNodeCoverage.ts
diff --git a/src/domain/managedApplicationGraphNodes.ts b/src/domain/managed/managedApplicationGraphNodes.ts
similarity index 99%
rename from src/domain/managedApplicationGraphNodes.ts
rename to src/domain/managed/managedApplicationGraphNodes.ts
index 33062d005..3704055d2 100644
--- a/src/domain/managedApplicationGraphNodes.ts
+++ b/src/domain/managed/managedApplicationGraphNodes.ts
@@ -4,7 +4,7 @@ import {
createJavaScriptApplicationNode,
type ApplicationGraphEvidence,
type ApplicationNode,
-} from "./javascript/javascriptApplicationGraph.js";
+} from "../javascript/javascriptApplicationGraph.js";
import { managedSourceCoverage } from "./managedApplicationGraphCoverage.js";
import {
type ManagedMemberInspection,
diff --git a/src/domain/managedArtifact.ts b/src/domain/managed/managedArtifact.ts
similarity index 99%
rename from src/domain/managedArtifact.ts
rename to src/domain/managed/managedArtifact.ts
index 916283adf..23d11d8cc 100644
--- a/src/domain/managedArtifact.ts
+++ b/src/domain/managed/managedArtifact.ts
@@ -1,5 +1,5 @@
import { z } from "zod";
-import { digestSchema } from "./../domain/digests.js";
+import { digestSchema } from "../digests.js";
const tokenSchema = z.string().regex(/^0x[0-9a-f]{8}$/u);
const offsetSchema = z.number().int().min(0);
diff --git a/src/domain/managedMemberComparison.ts b/src/domain/managed/managedMemberComparison.ts
similarity index 97%
rename from src/domain/managedMemberComparison.ts
rename to src/domain/managed/managedMemberComparison.ts
index 31e14dd45..3858ac8b6 100644
--- a/src/domain/managedMemberComparison.ts
+++ b/src/domain/managed/managedMemberComparison.ts
@@ -1,7 +1,7 @@
import { z } from "zod";
-import { emptyArraySchema } from "./emptyArraySchema.js";
-import { evidenceSchema } from "./evidence.js";
+import { emptyArraySchema } from "../emptyArraySchema.js";
+import { evidenceSchema } from "../evidence.js";
import {
cliMetadataGuidSchema,
type ManagedMemberInspection,
@@ -18,8 +18,8 @@ import {
buildMethodItems,
} from "./managedMemberComparisonItems.js";
import { keyMembers, sha256 } from "./managedMemberComparisonMatch.js";
-import { digestSchema } from "./../domain/digests.js";
-import { prefixedDigestSchema } from "./../domain/digests.js";
+import { digestSchema } from "../digests.js";
+import { prefixedDigestSchema } from "../digests.js";
const evidenceIdSchema = prefixedDigestSchema("ev");
const tokenSchema = z.string().regex(/^0x[0-9a-f]{8}$/u);
diff --git a/src/domain/managedMemberComparisonCoverage.ts b/src/domain/managed/managedMemberComparisonCoverage.ts
similarity index 100%
rename from src/domain/managedMemberComparisonCoverage.ts
rename to src/domain/managed/managedMemberComparisonCoverage.ts
diff --git a/src/domain/managedMemberComparisonItems.ts b/src/domain/managed/managedMemberComparisonItems.ts
similarity index 100%
rename from src/domain/managedMemberComparisonItems.ts
rename to src/domain/managed/managedMemberComparisonItems.ts
diff --git a/src/domain/managedMemberComparisonMatch.ts b/src/domain/managed/managedMemberComparisonMatch.ts
similarity index 98%
rename from src/domain/managedMemberComparisonMatch.ts
rename to src/domain/managed/managedMemberComparisonMatch.ts
index 9a809a71b..0e3cb314f 100644
--- a/src/domain/managedMemberComparisonMatch.ts
+++ b/src/domain/managed/managedMemberComparisonMatch.ts
@@ -2,7 +2,7 @@ import { createHash } from "node:crypto";
import canonicalize from "canonicalize";
-import { parseEvidence } from "./evidence.js";
+import { parseEvidence } from "../evidence.js";
import {
managedMemberInspectionSchema,
type ManagedMemberInspection,
@@ -11,7 +11,7 @@ import type {
ManagedMemberComparisonResult,
ManagedMemberComparisonSide,
} from "./managedMemberComparison.js";
-import type { JsonValue } from "./jsonValue.js";
+import type { JsonValue } from "../jsonValue.js";
export const sha256 = (value: JsonValue): string => {
const serialized = canonicalize(value);
diff --git a/src/domain/managedNativeVerification.ts b/src/domain/managed/managedNativeVerification.ts
similarity index 96%
rename from src/domain/managedNativeVerification.ts
rename to src/domain/managed/managedNativeVerification.ts
index 2b77f107c..2263fd412 100644
--- a/src/domain/managedNativeVerification.ts
+++ b/src/domain/managed/managedNativeVerification.ts
@@ -2,12 +2,12 @@ import { createHash } from "node:crypto";
import canonicalize from "canonicalize";
-import { parseEvidence } from "./evidence.js";
+import { parseEvidence } from "../evidence.js";
import {
managedNativeBoundaryInspectionSchema,
type ManagedNativeBoundaryInspection,
} from "./managedArtifact.js";
-import type { JsonValue } from "./jsonValue.js";
+import type { JsonValue } from "../jsonValue.js";
import {
managedNativeVerificationResultSchema,
type ManagedNativeVerificationInput,
diff --git a/src/domain/managedNativeVerificationMatch.ts b/src/domain/managed/managedNativeVerificationMatch.ts
similarity index 98%
rename from src/domain/managedNativeVerificationMatch.ts
rename to src/domain/managed/managedNativeVerificationMatch.ts
index 433881ff8..20c2dd14b 100644
--- a/src/domain/managedNativeVerificationMatch.ts
+++ b/src/domain/managed/managedNativeVerificationMatch.ts
@@ -3,11 +3,11 @@ import { basename } from "node:path";
import canonicalize from "canonicalize";
-import { parseEvidence } from "./evidence.js";
-import { functionDossierSchema } from "./hopperValues.js";
-import { inspectMachoSchema } from "./nativeInspection.js";
+import { parseEvidence } from "../evidence.js";
+import { functionDossierSchema } from "../hopperValues.js";
+import { inspectMachoSchema } from "../nativeInspection.js";
import type { ManagedNativeBoundaryInspection } from "./managedArtifact.js";
-import type { JsonValue } from "./jsonValue.js";
+import type { JsonValue } from "../jsonValue.js";
import {
pinvokeVerificationSchema,
type ManagedNativeVerificationInput,
diff --git a/src/domain/managedNativeVerificationSchemas.ts b/src/domain/managed/managedNativeVerificationSchemas.ts
similarity index 96%
rename from src/domain/managedNativeVerificationSchemas.ts
rename to src/domain/managed/managedNativeVerificationSchemas.ts
index 3bf680182..03590b389 100644
--- a/src/domain/managedNativeVerificationSchemas.ts
+++ b/src/domain/managed/managedNativeVerificationSchemas.ts
@@ -1,10 +1,10 @@
import { z } from "zod";
-import { emptyArraySchema } from "./emptyArraySchema.js";
-import { evidenceSchema } from "./evidence.js";
+import { emptyArraySchema } from "../emptyArraySchema.js";
+import { evidenceSchema } from "../evidence.js";
import { cliMetadataGuidSchema } from "./managedArtifact.js";
-import { digestSchema } from "./../domain/digests.js";
-import { prefixedDigestSchema } from "./../domain/digests.js";
+import { digestSchema } from "../digests.js";
+import { prefixedDigestSchema } from "../digests.js";
const evidenceIdSchema = prefixedDigestSchema("ev");
const tokenSchema = z.string().regex(/^0x[0-9a-f]{8}$/u);
diff --git a/src/domain/managedReconstruction.test.ts b/src/domain/managed/managedReconstruction.test.ts
similarity index 98%
rename from src/domain/managedReconstruction.test.ts
rename to src/domain/managed/managedReconstruction.test.ts
index e0d15337c..a1b5837ba 100644
--- a/src/domain/managedReconstruction.test.ts
+++ b/src/domain/managed/managedReconstruction.test.ts
@@ -1,6 +1,6 @@
import { describe, expect, it } from "vitest";
-import { createEvidence } from "./evidence.js";
+import { createEvidence } from "../evidence.js";
import { managedReconstructionImportInputSchema } from "./managedReconstruction.js";
describe("managed reconstruction import input", () => {
diff --git a/src/domain/managedReconstruction.ts b/src/domain/managed/managedReconstruction.ts
similarity index 97%
rename from src/domain/managedReconstruction.ts
rename to src/domain/managed/managedReconstruction.ts
index d064f65b3..dc8863ace 100644
--- a/src/domain/managedReconstruction.ts
+++ b/src/domain/managed/managedReconstruction.ts
@@ -3,15 +3,15 @@ import { createHash } from "node:crypto";
import canonicalize from "canonicalize";
import { z } from "zod";
-import { evidenceSchema, parseEvidence } from "./evidence.js";
+import { evidenceSchema, parseEvidence } from "../evidence.js";
import {
cliMetadataGuidSchema,
managedMemberInspectionSchema,
type ManagedMemberInspection,
} from "./managedArtifact.js";
-import type { JsonValue } from "./jsonValue.js";
-import { digestSchema } from "./../domain/digests.js";
-import { prefixedDigestSchema } from "./../domain/digests.js";
+import type { JsonValue } from "../jsonValue.js";
+import { digestSchema } from "../digests.js";
+import { prefixedDigestSchema } from "../digests.js";
const evidenceIdSchema = prefixedDigestSchema("ev");
const tokenSchema = z.string().regex(/^0x[0-9a-f]{8}$/u);
diff --git a/src/domain/nativeInvestigationGraph.test.ts b/src/domain/nativeInvestigationGraph.test.ts
index af077ffe4..160d29660 100644
--- a/src/domain/nativeInvestigationGraph.test.ts
+++ b/src/domain/nativeInvestigationGraph.test.ts
@@ -8,7 +8,7 @@ import {
import {
buildInterfaceBuilderAnalysis,
interfaceBuilderLimitsSchema,
-} from "./interfaceBuilderGraph.js";
+} from "./apple/interfaceBuilderGraph.js";
const evidence = [
{
@@ -166,6 +166,7 @@ describe("Interface Builder dispatch joins", () => {
const joined = joinInterfaceBuilderDispatch(ui.graph, {
objc_classes: [],
objc_protocols: [],
+ objc_categories: [],
swift_decls: [],
objc_ivars: [],
objc_protocol_records: [],
@@ -227,6 +228,7 @@ describe("Interface Builder dispatch joins", () => {
const metadata = {
objc_classes: [],
objc_protocols: [],
+ objc_categories: [],
swift_decls: [],
objc_ivars: [],
objc_protocol_records: [],
@@ -304,6 +306,7 @@ describe("placeholder dispatch joins", () => {
const joined = joinInterfaceBuilderDispatch(ui.graph, {
objc_classes: [],
objc_protocols: [],
+ objc_categories: [],
swift_decls: [],
objc_ivars: [],
objc_protocol_records: [],
diff --git a/src/domain/objcSwiftMetadata.ts b/src/domain/objcSwiftMetadata.ts
index 745f9eff5..17079d9fd 100644
--- a/src/domain/objcSwiftMetadata.ts
+++ b/src/domain/objcSwiftMetadata.ts
@@ -156,6 +156,8 @@ export const objcDispatchImplementationSchema = z.strictObject({
selector: z.string().min(1),
method_type: z.enum(["instance", "class"]),
implementation_address: z.string().nullable(),
+ /** Category that adds this method, when it is not defined by the class itself. */
+ category: z.string().nullable().optional(),
location: nativeMetadataLocationSchema,
decode: nativeMetadataDecodeSchema,
evidence: z.array(nativeMetadataEvidenceSchema).min(1),
@@ -164,6 +166,21 @@ export type ObjcDispatchImplementation = z.infer<
typeof objcDispatchImplementationSchema
>;
+/** Objective-C category: methods, protocols and properties added to a class. */
+export const objcCategorySchema = z.strictObject({
+ name: z.string().min(1),
+ /** Extended class; external classes come from the category's bind symbol. */
+ class_name: z.string().min(1).nullable(),
+ class_source: z.enum(["local", "external", "unresolved"]),
+ instance_methods: z.array(z.string()),
+ class_methods: z.array(z.string()),
+ protocols: z.array(z.string()),
+ properties: z.array(objcPropertySchema),
+ location: nativeMetadataLocationSchema,
+ decode: nativeMetadataDecodeSchema,
+ evidence: z.array(nativeMetadataEvidenceSchema).min(1),
+});
+
/** Swift protocol conformance and its associated witness-table location. */
export const swiftConformanceSchema = z.strictObject({
type_name: z.string().min(1),
@@ -279,6 +296,7 @@ export type DbSaveResult = z.infer;
export const objcSwiftMetadataSchema = z.strictObject({
objc_classes: z.array(objcClassSchema).default([]),
objc_protocols: z.array(objcProtocolSchema).default([]),
+ objc_categories: z.array(objcCategorySchema).default([]),
swift_decls: z.array(swiftDeclSchema).default([]),
objc_ivars: z.array(objcIvarSchema).default([]),
objc_protocol_records: z.array(objcProtocolRecordSchema).default([]),
diff --git a/src/domain/processScenario.test.ts b/src/domain/processScenario.test.ts
index a9cd441db..a90eb5985 100644
--- a/src/domain/processScenario.test.ts
+++ b/src/domain/processScenario.test.ts
@@ -28,13 +28,37 @@ describe("direct process scenarios", () => {
});
it("rejects malformed environment names and adapter-reserved identity", () => {
- for (const name of ["", "KEY=VALUE", "KEY\0VALUE", "REA_PROCESS_RUN_ID"])
- expect(
- processScenarioSchema.safeParse({
- executable: "node",
- environment: { [name]: "value" },
- }).success,
- ).toBe(false);
+ for (const name of ["", "KEY=VALUE", "KEY\0VALUE", "REA_PROCESS_RUN_ID"]) {
+ const result = processScenarioSchema.safeParse({
+ executable: "node",
+ environment: { [name]: "value" },
+ });
+ expect(result.success).toBe(false);
+ if (name === "" && !result.success) {
+ const invalidKey = result.error.issues[0];
+ expect(invalidKey?.code).toBe("invalid_key");
+ if (invalidKey?.code === "invalid_key") {
+ expect(invalidKey.issues[0]?.message).toBe(
+ "Environment names must not be empty",
+ );
+ }
+ }
+ if (name === "REA_PROCESS_RUN_ID" && !result.success) {
+ const invalidKey = result.error.issues[0];
+ expect(invalidKey?.code).toBe("invalid_key");
+ if (invalidKey?.code === "invalid_key") {
+ expect(invalidKey.issues[0]?.message).toBe(
+ "REA_PROCESS_RUN_ID is reserved by the process adapter",
+ );
+ }
+ }
+ }
+ expect(
+ processScenarioSchema.safeParse({
+ executable: "node",
+ environment: { "REA_PROCESS_RUN_ID\n": "caller-value" },
+ }).success,
+ ).toBe(true);
});
it("keeps bounded capture controls and ordered scheduled interaction", () => {
diff --git a/src/domain/processScenario.ts b/src/domain/processScenario.ts
index 040d0efcb..b9924e036 100644
--- a/src/domain/processScenario.ts
+++ b/src/domain/processScenario.ts
@@ -4,10 +4,16 @@ import { z } from "zod";
const positiveBudget = z.number().int().safe().positive();
const timedEventBase = { at_ms: z.number().int().safe().nonnegative() };
+const reservedRunIdEnvironmentName = "REA_PROCESS_RUN_ID";
const environmentName = z
.string()
- .regex(/^[^=\0]+$/u, "Environment names cannot contain '=' or NUL");
-const reservedEnvironment = new Set(["REA_PROCESS_RUN_ID"]);
+ .min(1, "Environment names must not be empty")
+ .regex(/^(?!REA_PROCESS_RUN_ID(?![\s\S]))[^=\0]+$/u, {
+ error: (issue) =>
+ issue.input === reservedRunIdEnvironmentName
+ ? `${reservedRunIdEnvironmentName} is reserved by the process adapter`
+ : "Environment names cannot contain '=' or NUL",
+ });
export const normalizationSchema = z.object({
paths: z.boolean(),
pids: z.boolean(),
@@ -170,16 +176,6 @@ export const processScenarioSchema = z
});
}
}
- const explicit = new Set(Object.keys(scenario.environment));
- for (const name of explicit) {
- if (reservedEnvironment.has(name)) {
- context.addIssue({
- code: "custom",
- message: `${name} is reserved by the process adapter`,
- path: ["environment", name],
- });
- }
- }
for (const event of scenario.events) {
if (event.at_ms > scenario.timeout_ms) {
context.addIssue({
diff --git a/src/dotnet/ManagedArtifactInspector.ts b/src/dotnet/ManagedArtifactInspector.ts
index 4f9fd7528..a5caecba9 100644
--- a/src/dotnet/ManagedArtifactInspector.ts
+++ b/src/dotnet/ManagedArtifactInspector.ts
@@ -3,7 +3,7 @@ import {
managedArtifactInspectionSchema,
type ManagedArtifactInspection,
type ManagedParseIssue,
-} from "../domain/managedArtifact.js";
+} from "../domain/managed/managedArtifact.js";
import {
readManagedPeLayout,
type ManagedCliHeader,
diff --git a/src/dotnet/ManagedMemberInspector.ts b/src/dotnet/ManagedMemberInspector.ts
index 16f2f5c5d..8e3b6ef3d 100644
--- a/src/dotnet/ManagedMemberInspector.ts
+++ b/src/dotnet/ManagedMemberInspector.ts
@@ -3,7 +3,7 @@ import {
managedMemberInspectionSchema,
type ManagedMemberInspection,
type ManagedParseIssue,
-} from "../domain/managedArtifact.js";
+} from "../domain/managed/managedArtifact.js";
import {
readManagedPeLayout,
type ManagedPeLayout,
diff --git a/src/dotnet/ManagedMemberInspectorCore.ts b/src/dotnet/ManagedMemberInspectorCore.ts
index 218761fbc..227a93cc9 100644
--- a/src/dotnet/ManagedMemberInspectorCore.ts
+++ b/src/dotnet/ManagedMemberInspectorCore.ts
@@ -2,7 +2,7 @@ import {
managedFailure,
ManagedReaderFailure,
} from "./ManagedReaderFailure.js";
-import type { ManagedMemberInspection } from "../domain/managedArtifact.js";
+import type { ManagedMemberInspection } from "../domain/managed/managedArtifact.js";
import {
type ManagedMetadataLayout,
type MetadataTableLayout,
diff --git a/src/dotnet/ManagedMetadataInventory.ts b/src/dotnet/ManagedMetadataInventory.ts
index ed0d88d9d..f0eadaaa0 100644
--- a/src/dotnet/ManagedMetadataInventory.ts
+++ b/src/dotnet/ManagedMetadataInventory.ts
@@ -1,7 +1,7 @@
import type {
ManagedArtifactInspection,
ManagedParseIssue,
-} from "../domain/managedArtifact.js";
+} from "../domain/managed/managedArtifact.js";
import {
METADATA_TABLE_NAMES,
type ManagedMetadataLayout,
diff --git a/src/dotnet/ManagedMetadataInventoryRows.ts b/src/dotnet/ManagedMetadataInventoryRows.ts
index 15c800ca8..836c9a376 100644
--- a/src/dotnet/ManagedMetadataInventoryRows.ts
+++ b/src/dotnet/ManagedMetadataInventoryRows.ts
@@ -1,7 +1,7 @@
import type {
ManagedArtifactInspection,
ManagedParseIssue,
-} from "../domain/managedArtifact.js";
+} from "../domain/managed/managedArtifact.js";
import {
metadataRowOffset,
type ManagedMetadataLayout,
diff --git a/src/dotnet/ManagedNativeBoundaryHelpers.ts b/src/dotnet/ManagedNativeBoundaryHelpers.ts
index 1e9908f42..5ef2e3bbb 100644
--- a/src/dotnet/ManagedNativeBoundaryHelpers.ts
+++ b/src/dotnet/ManagedNativeBoundaryHelpers.ts
@@ -3,7 +3,7 @@ import {
managedNativeBoundaryInspectionSchema,
type ManagedNativeBoundaryInspection,
type ManagedParseIssue,
-} from "../domain/managedArtifact.js";
+} from "../domain/managed/managedArtifact.js";
import { type ManagedMetadataLayout } from "./ManagedMetadataLayout.js";
import {
metadataRowCursor,
diff --git a/src/dotnet/ManagedNativeBoundaryInspector.ts b/src/dotnet/ManagedNativeBoundaryInspector.ts
index b9d519ee7..a0e58f3c0 100644
--- a/src/dotnet/ManagedNativeBoundaryInspector.ts
+++ b/src/dotnet/ManagedNativeBoundaryInspector.ts
@@ -3,7 +3,7 @@ import {
managedNativeBoundaryInspectionSchema,
type ManagedNativeBoundaryInspection,
type ManagedParseIssue,
-} from "../domain/managedArtifact.js";
+} from "../domain/managed/managedArtifact.js";
import {
readManagedMetadataInventory,
type ManagedResourceDirectory,
diff --git a/src/dotnet/ManagedPeReader.ts b/src/dotnet/ManagedPeReader.ts
index 84e3ce5b6..2f2f7fdba 100644
--- a/src/dotnet/ManagedPeReader.ts
+++ b/src/dotnet/ManagedPeReader.ts
@@ -1,4 +1,4 @@
-import type { ManagedParseIssue } from "../domain/managedArtifact.js";
+import type { ManagedParseIssue } from "../domain/managed/managedArtifact.js";
import {
managedFailure,
ManagedReaderFailure,
diff --git a/src/dotnet/ManagedReaderFailure.ts b/src/dotnet/ManagedReaderFailure.ts
index 98a28b18b..734b72ea9 100644
--- a/src/dotnet/ManagedReaderFailure.ts
+++ b/src/dotnet/ManagedReaderFailure.ts
@@ -1,4 +1,4 @@
-import type { ManagedParseIssue } from "../domain/managedArtifact.js";
+import type { ManagedParseIssue } from "../domain/managed/managedArtifact.js";
/** Bounded format failure retained as caller-visible managed coverage. */
export class ManagedReaderFailure extends Error {
diff --git a/src/dotnet/ManagedStaticProvider.ts b/src/dotnet/ManagedStaticProvider.ts
index a61345960..a5019006a 100644
--- a/src/dotnet/ManagedStaticProvider.ts
+++ b/src/dotnet/ManagedStaticProvider.ts
@@ -21,7 +21,7 @@ import {
managedMemberInputSchema,
managedNativeBoundaryInputSchema,
type ManagedToolName,
-} from "../contracts/managedToolContracts.js";
+} from "../contracts/managed/managedToolContracts.js";
import type { BinaryTarget } from "../domain/binaryTarget.js";
import {
AnalysisCancelledError,
@@ -35,7 +35,7 @@ import type {
ManagedArtifactInspection,
ManagedMemberInspection,
ManagedNativeBoundaryInspection,
-} from "../domain/managedArtifact.js";
+} from "../domain/managed/managedArtifact.js";
import { err, ok } from "../domain/result.js";
import { inspectManagedArtifactBytes } from "./ManagedArtifactInspector.js";
import { inspectManagedMembersBytes } from "./ManagedMemberInspector.js";
diff --git a/src/dotnet/ManagedStaticProviderMetadata.ts b/src/dotnet/ManagedStaticProviderMetadata.ts
index 09d5e970d..4495cdd59 100644
--- a/src/dotnet/ManagedStaticProviderMetadata.ts
+++ b/src/dotnet/ManagedStaticProviderMetadata.ts
@@ -6,7 +6,7 @@ import { MANAGED_STATIC_PROVIDER } from "../application/InvestigationProviders.j
import {
MANAGED_TOOL_CONTRACTS,
type ManagedToolName,
-} from "../contracts/managedToolContracts.js";
+} from "../contracts/managed/managedToolContracts.js";
/** Identity of execution-free managed metadata observations. */
export const MANAGED_STATIC_PROVIDER_IDENTITY: ProviderIdentity = Object.freeze(
diff --git a/src/generatedMcpToolCatalog.ts b/src/generatedMcpToolCatalog.ts
index 426c52a5a..7c19b69e7 100644
--- a/src/generatedMcpToolCatalog.ts
+++ b/src/generatedMcpToolCatalog.ts
@@ -30,7 +30,7 @@ interface GeneratedPayload {
}
const GENERATED_PAYLOAD_JSON =
- '{\n "auxiliaryProviders": [\n {\n "capabilities": [\n {\n "available": true,\n "effects": {\n "changesPermissions": false,\n "launchesProcess": true,\n "mayAccessNetwork": false,\n "mayShowUi": false,\n "mayWriteFilesystem": true,\n "mutatesArtifact": false,\n "requiresRoot": false\n },\n "limitations": [\n "DMG child inventory automatically uses a read-only native macOS mount; PKG remains root-hash-only.",\n "ASAR files discovered in filesystem-backed inventories are expanded without bulk extraction; other nested containers remain recorded only."\n ],\n "operation": "inventory_artifact",\n "provider": {\n "id": "rea-artifact-graph",\n "name": "REA safe artifact graph provider",\n "version": "1"\n },\n "reason": null\n },\n {\n "available": true,\n "effects": {\n "changesPermissions": false,\n "launchesProcess": true,\n "mayAccessNetwork": false,\n "mayShowUi": false,\n "mayWriteFilesystem": true,\n "mutatesArtifact": false,\n "requiresRoot": false\n },\n "limitations": [\n "DMG child inventory automatically uses a read-only native macOS mount; PKG remains root-hash-only.",\n "ASAR files discovered in filesystem-backed inventories are expanded without bulk extraction; other nested containers remain recorded only."\n ],\n "operation": "inspect_artifact",\n "provider": {\n "id": "rea-artifact-graph",\n "name": "REA safe artifact graph provider",\n "version": "1"\n },\n "reason": null\n },\n {\n "available": true,\n "effects": {\n "changesPermissions": false,\n "launchesProcess": true,\n "mayAccessNetwork": false,\n "mayShowUi": false,\n "mayWriteFilesystem": true,\n "mutatesArtifact": false,\n "requiresRoot": false\n },\n "limitations": [\n "DMG child inventory automatically uses a read-only native macOS mount; PKG remains root-hash-only.",\n "ASAR files discovered in filesystem-backed inventories are expanded without bulk extraction; other nested containers remain recorded only."\n ],\n "operation": "extract_artifact",\n "provider": {\n "id": "rea-artifact-graph",\n "name": "REA safe artifact graph provider",\n "version": "1"\n },\n "reason": null\n },\n {\n "available": true,\n "effects": {\n "changesPermissions": false,\n "launchesProcess": false,\n "mayAccessNetwork": false,\n "mayShowUi": false,\n "mayWriteFilesystem": false,\n "mutatesArtifact": false,\n "requiresRoot": false\n },\n "limitations": [\n "DMG child inventory automatically uses a read-only native macOS mount; PKG remains root-hash-only.",\n "ASAR files discovered in filesystem-backed inventories are expanded without bulk extraction; other nested containers remain recorded only."\n ],\n "operation": "decode_interface_builder",\n "provider": {\n "id": "rea-artifact-graph",\n "name": "REA safe artifact graph provider",\n "version": "1"\n },\n "reason": null\n },\n {\n "available": true,\n "effects": {\n "changesPermissions": false,\n "launchesProcess": false,\n "mayAccessNetwork": false,\n "mayShowUi": false,\n "mayWriteFilesystem": false,\n "mutatesArtifact": false,\n "requiresRoot": false\n },\n "limitations": [\n "DMG child inventory automatically uses a read-only native macOS mount; PKG remains root-hash-only.",\n "ASAR files discovered in filesystem-backed inventories are expanded without bulk extraction; other nested containers remain recorded only."\n ],\n "operation": "inspect_keyed_archive",\n "provider": {\n "id": "rea-artifact-graph",\n "name": "REA safe artifact graph provider",\n "version": "1"\n },\n "reason": null\n },\n {\n "available": true,\n "effects": {\n "changesPermissions": false,\n "launchesProcess": true,\n "mayAccessNetwork": false,\n "mayShowUi": false,\n "mayWriteFilesystem": false,\n "mutatesArtifact": false,\n "requiresRoot": false\n },\n "limitations": [\n "DMG child inventory automatically uses a read-only native macOS mount; PKG remains root-hash-only.",\n "ASAR files discovered in filesystem-backed inventories are expanded without bulk extraction; other nested containers remain recorded only."\n ],\n "operation": "inspect_asset_catalog",\n "provider": {\n "id": "rea-artifact-graph",\n "name": "REA safe artifact graph provider",\n "version": "1"\n },\n "reason": null\n }\n ],\n "identity": {\n "id": "rea-artifact-graph",\n "name": "REA safe artifact graph provider",\n "version": "1"\n }\n },\n {\n "capabilities": [\n {\n "available": true,\n "effects": {\n "changesPermissions": false,\n "launchesProcess": true,\n "mayAccessNetwork": false,\n "mayShowUi": false,\n "mayWriteFilesystem": true,\n "mutatesArtifact": false,\n "requiresRoot": false\n },\n "limitations": [\n "Availability and textual formats depend on the installed macOS/Xcode toolchain."\n ],\n "operation": "observe_native_ui",\n "provider": {\n "id": "native-macos",\n "name": "macOS native inspection utilities",\n "version": null\n },\n "reason": null\n },\n {\n "available": true,\n "effects": {\n "changesPermissions": false,\n "launchesProcess": true,\n "mayAccessNetwork": true,\n "mayShowUi": true,\n "mayWriteFilesystem": true,\n "mutatesArtifact": false,\n "requiresRoot": false\n },\n "limitations": [\n "Availability and textual formats depend on the installed macOS/Xcode toolchain."\n ],\n "operation": "capture_native_ui_scenario",\n "provider": {\n "id": "native-macos",\n "name": "macOS native inspection utilities",\n "version": null\n },\n "reason": null\n },\n {\n "available": true,\n "effects": {\n "changesPermissions": false,\n "launchesProcess": true,\n "mayAccessNetwork": false,\n "mayShowUi": false,\n "mayWriteFilesystem": false,\n "mutatesArtifact": false,\n "requiresRoot": false\n },\n "limitations": [\n "Availability and textual formats depend on the installed macOS/Xcode toolchain."\n ],\n "operation": "inspect_macho",\n "provider": {\n "id": "native-macos",\n "name": "macOS native inspection utilities",\n "version": null\n },\n "reason": null\n },\n {\n "available": true,\n "effects": {\n "changesPermissions": false,\n "launchesProcess": true,\n "mayAccessNetwork": false,\n "mayShowUi": false,\n "mayWriteFilesystem": false,\n "mutatesArtifact": false,\n "requiresRoot": false\n },\n "limitations": [\n "Availability and textual formats depend on the installed macOS/Xcode toolchain."\n ],\n "operation": "inspect_signature",\n "provider": {\n "id": "native-macos",\n "name": "macOS native inspection utilities",\n "version": null\n },\n "reason": null\n },\n {\n "available": true,\n "effects": {\n "changesPermissions": false,\n "launchesProcess": true,\n "mayAccessNetwork": false,\n "mayShowUi": false,\n "mayWriteFilesystem": false,\n "mutatesArtifact": false,\n "requiresRoot": false\n },\n "limitations": [\n "Availability and textual formats depend on the installed macOS/Xcode toolchain."\n ],\n "operation": "inspect_plist",\n "provider": {\n "id": "native-macos",\n "name": "macOS native inspection utilities",\n "version": null\n },\n "reason": null\n },\n {\n "available": true,\n "effects": {\n "changesPermissions": false,\n "launchesProcess": true,\n "mayAccessNetwork": false,\n "mayShowUi": false,\n "mayWriteFilesystem": false,\n "mutatesArtifact": false,\n "requiresRoot": false\n },\n "limitations": [\n "Availability and textual formats depend on the installed macOS/Xcode toolchain."\n ],\n "operation": "list_architectures",\n "provider": {\n "id": "native-macos",\n "name": "macOS native inspection utilities",\n "version": null\n },\n "reason": null\n },\n {\n "available": true,\n "effects": {\n "changesPermissions": false,\n "launchesProcess": true,\n "mayAccessNetwork": false,\n "mayShowUi": false,\n "mayWriteFilesystem": false,\n "mutatesArtifact": false,\n "requiresRoot": false\n },\n "limitations": [\n "Availability and textual formats depend on the installed macOS/Xcode toolchain."\n ],\n "operation": "demangle_swift",\n "provider": {\n "id": "native-macos",\n "name": "macOS native inspection utilities",\n "version": null\n },\n "reason": null\n },\n {\n "available": true,\n "effects": {\n "changesPermissions": false,\n "launchesProcess": false,\n "mayAccessNetwork": false,\n "mayShowUi": false,\n "mayWriteFilesystem": false,\n "mutatesArtifact": false,\n "requiresRoot": false\n },\n "limitations": [\n "Availability and textual formats depend on the installed macOS/Xcode toolchain."\n ],\n "operation": "inspect_native_dispatch_metadata",\n "provider": {\n "id": "native-macos",\n "name": "macOS native inspection utilities",\n "version": null\n },\n "reason": null\n }\n ],\n "identity": {\n "id": "native-macos",\n "name": "macOS native inspection utilities",\n "version": null\n }\n },\n {\n "capabilities": [\n {\n "available": true,\n "effects": {\n "changesPermissions": false,\n "launchesProcess": false,\n "mayAccessNetwork": false,\n "mayShowUi": false,\n "mayWriteFilesystem": false,\n "mutatesArtifact": false,\n "requiresRoot": false\n },\n "limitations": [\n "This capability inventories PE/CLI identity only; inspect_managed_members admits metadata members, signatures, and CIL anchors.",\n "It never loads the target assembly, resolves dependencies through a CLR, decompiles C#, or executes target code."\n ],\n "operation": "inspect_managed_artifact",\n "provider": {\n "id": "rea-dotnet-static",\n "name": "REA managed static analysis provider",\n "version": "1"\n },\n "reason": null\n },\n {\n "available": true,\n "effects": {\n "changesPermissions": false,\n "launchesProcess": false,\n "mayAccessNetwork": false,\n "mayShowUi": false,\n "mayWriteFilesystem": false,\n "mutatesArtifact": false,\n "requiresRoot": false\n },\n "limitations": [\n "This capability decodes PE/CLI metadata members, signatures, and file-backed method bodies; decompiled C# reconstruction and cross-build member comparison are separate operations.",\n "It never loads the target assembly, resolves dependencies through a CLR, decompiles C#, or executes target code."\n ],\n "operation": "inspect_managed_members",\n "provider": {\n "id": "rea-dotnet-static",\n "name": "REA managed static analysis provider",\n "version": "1"\n },\n "reason": null\n },\n {\n "available": true,\n "effects": {\n "changesPermissions": false,\n "launchesProcess": false,\n "mayAccessNetwork": false,\n "mayShowUi": false,\n "mayWriteFilesystem": false,\n "mutatesArtifact": false,\n "requiresRoot": false\n },\n "limitations": [\n "This capability inventories managed declarations for native boundaries only; native exports, thunks, and addresses require separate native-provider evidence.",\n "It never loads the target assembly, resolves dependencies through a CLR, decompiles C#, or executes target code."\n ],\n "operation": "inspect_managed_native_boundaries",\n "provider": {\n "id": "rea-dotnet-static",\n "name": "REA managed static analysis provider",\n "version": "1"\n },\n "reason": null\n }\n ],\n "identity": {\n "id": "rea-dotnet-static",\n "name": "REA managed static analysis provider",\n "version": "1"\n }\n }\n ],\n "catalog": [\n {\n "analysisOperation": "annotate_native_function",\n "annotations": {\n "destructiveHint": false,\n "idempotentHint": true,\n "openWorldHint": true,\n "readOnlyHint": false\n },\n "description": "Atomically update one function name and/or entry comments, read them back, and return a refreshed complete function dossier. Ghidra changes its ephemeral session analysis database only; original executable bytes remain unchanged. Empty comment text clears that comment. Edits remain available to subsequent MCP calls until close; CLI returns the updated dossier before discarding its session. Invalid edits roll back the entire operation. Windows P0 and providers without this capability are unsupported.",\n "effects": {\n "accessesNetwork": false,\n "changesUiState": false,\n "idempotent": true,\n "launchesProcess": true,\n "mayDiscardData": false,\n "mutatesSession": true,\n "mutatesTarget": true,\n "writesFilesystem": true\n },\n "inputSchema": {\n "$schema": "https://json-schema.org/draft/2020-12/schema",\n "additionalProperties": false,\n "examples": [\n {\n "comment": "Analyst observation",\n "name": "entry",\n "procedure": "0x10100"\n }\n ],\n "properties": {\n "comment": {\n "description": "Regular entry comment; empty text clears it",\n "type": "string"\n },\n "inline_comment": {\n "description": "Inline entry comment; empty text clears it",\n "type": "string"\n },\n "name": {\n "description": "Exact name used by this operation.",\n "minLength": 1,\n "type": "string"\n },\n "procedure": {\n "description": "Value for procedure.",\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "procedure"\n ],\n "type": "object"\n },\n "kind": "official-proxy",\n "name": "annotate_native_function",\n "outputSchema": {\n "$defs": {\n "__schema0": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "number"\n },\n {\n "type": "boolean"\n },\n {\n "type": "null"\n },\n {\n "items": {\n "$ref": "#/$defs/__schema0"\n },\n "type": "array"\n },\n {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n }\n ]\n }\n },\n "$schema": "https://json-schema.org/draft/2020-12/schema",\n "additionalProperties": false,\n "properties": {\n "evidence": {\n "additionalProperties": false,\n "properties": {\n "analysis_profile": {\n "additionalProperties": false,\n "properties": {\n "digest": {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n },\n "parameters": {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n },\n "provider": {\n "additionalProperties": false,\n "properties": {\n "id": {\n "minLength": 1,\n "type": "string"\n },\n "name": {\n "minLength": 1,\n "type": "string"\n },\n "version": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "id",\n "name",\n "version"\n ],\n "type": "object"\n }\n },\n "required": [\n "provider",\n "parameters",\n "digest"\n ],\n "type": "object"\n },\n "authority": {\n "enum": [\n "shipped-artifact",\n "controlled-replay",\n "historical-reference",\n "external-service",\n "analyst-inference"\n ],\n "type": "string"\n },\n "confidence": {\n "enum": [\n "observed",\n "derived",\n "inferred"\n ],\n "type": "string"\n },\n "environment": {\n "anyOf": [\n {\n "additionalProperties": false,\n "properties": {\n "architecture": {\n "minLength": 1,\n "type": "string"\n },\n "id": {\n "minLength": 1,\n "type": "string"\n },\n "isolation": {\n "enum": [\n "none",\n "process",\n "container",\n "virtual-machine"\n ],\n "type": "string"\n },\n "platform": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "id",\n "platform",\n "architecture",\n "isolation"\n ],\n "type": "object"\n },\n {\n "type": "null"\n }\n ]\n },\n "evidence_id": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "evidence_links": {\n "items": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "type": "array"\n },\n "limitations": {\n "items": {\n "type": "string"\n },\n "type": "array"\n },\n "locations": {\n "items": {\n "oneOf": [\n {\n "additionalProperties": false,\n "properties": {\n "address": {\n "minLength": 1,\n "type": "string"\n },\n "kind": {\n "const": "address",\n "type": "string"\n }\n },\n "required": [\n "kind",\n "address"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "end": {\n "minLength": 1,\n "type": "string"\n },\n "kind": {\n "const": "address-range",\n "type": "string"\n },\n "start": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "kind",\n "start",\n "end"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "kind": {\n "const": "artifact-path",\n "type": "string"\n },\n "path": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "kind",\n "path"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "kind": {\n "const": "file-offset",\n "type": "string"\n },\n "offset": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "kind",\n "offset"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "end": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "kind": {\n "const": "file-offset-range",\n "type": "string"\n },\n "start": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "kind",\n "start",\n "end"\n ],\n "type": "object"\n }\n ]\n },\n "type": "array"\n },\n "normalized_result": {\n "$ref": "#/$defs/__schema0"\n },\n "operation": {\n "minLength": 1,\n "type": "string"\n },\n "parameters": {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n },\n "predicate_type": {\n "minLength": 1,\n "type": "string"\n },\n "provider": {\n "additionalProperties": false,\n "properties": {\n "id": {\n "minLength": 1,\n "type": "string"\n },\n "name": {\n "minLength": 1,\n "type": "string"\n },\n "version": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "id",\n "name",\n "version"\n ],\n "type": "object"\n },\n "raw_result": {\n "anyOf": [\n {\n "$ref": "#/$defs/__schema0"\n },\n {\n "type": "null"\n }\n ]\n },\n "subject": {\n "anyOf": [\n {\n "additionalProperties": false,\n "properties": {\n "architecture": {\n "anyOf": [\n {\n "enum": [\n "x86",\n "x86_64",\n "arm",\n "arm64"\n ],\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "digest": {\n "additionalProperties": false,\n "properties": {\n "sha256": {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n }\n },\n "required": [\n "sha256"\n ],\n "type": "object"\n },\n "format": {\n "enum": [\n "hopper",\n "analysis-database",\n "mach-o",\n "elf",\n "pe",\n "dos-mz",\n "dos-com",\n "zip",\n "ipa",\n "apk",\n "msix",\n "appx",\n "asar",\n "dmg",\n "pkg",\n "plist",\n "javascript",\n "source-map",\n "directory",\n "file",\n "unknown",\n "mach-o-universal",\n "javascript-bundle",\n "entitlements"\n ],\n "type": "string"\n },\n "local_path": {\n "type": "string"\n },\n "name": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "name",\n "digest",\n "format",\n "architecture",\n "local_path"\n ],\n "type": "object"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "evidence_id",\n "subject",\n "provider",\n "predicate_type",\n "operation",\n "parameters",\n "raw_result",\n "normalized_result",\n "confidence",\n "authority",\n "environment",\n "limitations",\n "locations",\n "evidence_links"\n ],\n "type": "object"\n },\n "evidence_id": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "result": {\n "additionalProperties": false,\n "properties": {\n "annotations": {\n "additionalProperties": false,\n "properties": {\n "address": {\n "minLength": 1,\n "type": "string"\n },\n "comment": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "inline_comment": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "name": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "address",\n "name",\n "comment",\n "inline_comment"\n ],\n "type": "object"\n },\n "dossier": {\n "additionalProperties": false,\n "properties": {\n "assembly": {\n "items": {\n "type": "string"\n },\n "type": "array"\n },\n "basic_blocks": {\n "items": {\n "additionalProperties": false,\n "properties": {\n "end": {\n "type": "string"\n },\n "start": {\n "type": "string"\n },\n "successors": {\n "items": {\n "type": "string"\n },\n "type": "array"\n }\n },\n "required": [\n "start",\n "end",\n "successors"\n ],\n "type": "object"\n },\n "type": "array"\n },\n "callees": {\n "items": {\n "additionalProperties": false,\n "properties": {\n "address": {\n "type": "string"\n },\n "body": {\n "default": {\n "available": false,\n "reason": "The provider did not report complete function body ranges."\n },\n "oneOf": [\n {\n "additionalProperties": false,\n "properties": {\n "available": {\n "const": false,\n "type": "boolean"\n },\n "reason": {\n "type": "string"\n }\n },\n "required": [\n "available",\n "reason"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "available": {\n "const": true,\n "type": "boolean"\n },\n "contains_entry": {\n "type": "boolean"\n },\n "non_contiguous": {\n "type": "boolean"\n },\n "provenance": {\n "minLength": 1,\n "type": "string"\n },\n "ranges": {\n "items": {\n "additionalProperties": false,\n "properties": {\n "end": {\n "description": "Inclusive last address of this observed body range.",\n "type": "string"\n },\n "start": {\n "type": "string"\n }\n },\n "required": [\n "start",\n "end"\n ],\n "type": "object"\n },\n "type": "array"\n },\n "span_bytes": {\n "anyOf": [\n {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n {\n "type": "null"\n }\n ]\n },\n "total_bytes": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "available",\n "provenance",\n "ranges",\n "total_bytes",\n "span_bytes",\n "non_contiguous",\n "contains_entry"\n ],\n "type": "object"\n }\n ]\n },\n "classification": {\n "anyOf": [\n {\n "additionalProperties": false,\n "properties": {\n "external": {\n "type": "boolean"\n },\n "provenance": {\n "minLength": 1,\n "type": "string"\n },\n "thunk": {\n "type": "boolean"\n },\n "thunk_target": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "external",\n "thunk",\n "thunk_target",\n "provenance"\n ],\n "type": "object"\n },\n {\n "type": "null"\n }\n ],\n "default": null\n },\n "name": {\n "type": "string"\n }\n },\n "required": [\n "address",\n "name",\n "classification",\n "body"\n ],\n "type": "object"\n },\n "type": "array"\n },\n "callers": {\n "items": {\n "additionalProperties": false,\n "properties": {\n "address": {\n "type": "string"\n },\n "body": {\n "default": {\n "available": false,\n "reason": "The provider did not report complete function body ranges."\n },\n "oneOf": [\n {\n "additionalProperties": false,\n "properties": {\n "available": {\n "const": false,\n "type": "boolean"\n },\n "reason": {\n "type": "string"\n }\n },\n "required": [\n "available",\n "reason"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "available": {\n "const": true,\n "type": "boolean"\n },\n "contains_entry": {\n "type": "boolean"\n },\n "non_contiguous": {\n "type": "boolean"\n },\n "provenance": {\n "minLength": 1,\n "type": "string"\n },\n "ranges": {\n "items": {\n "additionalProperties": false,\n "properties": {\n "end": {\n "description": "Inclusive last address of this observed body range.",\n "type": "string"\n },\n "start": {\n "type": "string"\n }\n },\n "required": [\n "start",\n "end"\n ],\n "type": "object"\n },\n "type": "array"\n },\n "span_bytes": {\n "anyOf": [\n {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n {\n "type": "null"\n }\n ]\n },\n "total_bytes": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "available",\n "provenance",\n "ranges",\n "total_bytes",\n "span_bytes",\n "non_contiguous",\n "contains_entry"\n ],\n "type": "object"\n }\n ]\n },\n "classification": {\n "anyOf": [\n {\n "additionalProperties": false,\n "properties": {\n "external": {\n "type": "boolean"\n },\n "provenance": {\n "minLength": 1,\n "type": "string"\n },\n "thunk": {\n "type": "boolean"\n },\n "thunk_target": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "external",\n "thunk",\n "thunk_target",\n "provenance"\n ],\n "type": "object"\n },\n {\n "type": "null"\n }\n ],\n "default": null\n },\n "name": {\n "type": "string"\n }\n },\n "required": [\n "address",\n "name",\n "classification",\n "body"\n ],\n "type": "object"\n },\n "type": "array"\n },\n "comments": {\n "items": {\n "additionalProperties": false,\n "properties": {\n "address": {\n "type": "string"\n },\n "kind": {\n "enum": [\n "comment",\n "inline"\n ],\n "type": "string"\n },\n "text": {\n "type": "string"\n }\n },\n "required": [\n "address",\n "kind",\n "text"\n ],\n "type": "object"\n },\n "type": "array"\n },\n "incoming_references": {\n "items": {\n "additionalProperties": false,\n "properties": {\n "kind": {\n "oneOf": [\n {\n "additionalProperties": false,\n "properties": {\n "available": {\n "const": false,\n "type": "boolean"\n },\n "reason": {\n "type": "string"\n }\n },\n "required": [\n "available",\n "reason"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "available": {\n "const": true,\n "type": "boolean"\n },\n "call": {\n "type": "boolean"\n },\n "computed": {\n "type": "boolean"\n },\n "conditional": {\n "type": "boolean"\n },\n "data": {\n "type": "boolean"\n },\n "external": {\n "type": "boolean"\n },\n "flow": {\n "type": "boolean"\n },\n "indirect": {\n "type": "boolean"\n },\n "jump": {\n "type": "boolean"\n },\n "operand_index": {\n "maximum": 9007199254740991,\n "minimum": -9007199254740991,\n "type": "integer"\n },\n "primary": {\n "type": "boolean"\n },\n "provenance": {\n "minLength": 1,\n "type": "string"\n },\n "read": {\n "type": "boolean"\n },\n "terminal": {\n "type": "boolean"\n },\n "type": {\n "type": "string"\n },\n "write": {\n "type": "boolean"\n }\n },\n "required": [\n "available",\n "provenance",\n "type",\n "flow",\n "call",\n "jump",\n "data",\n "read",\n "write",\n "indirect",\n "computed",\n "conditional",\n "terminal",\n "primary",\n "operand_index",\n "external"\n ],\n "type": "object"\n }\n ]\n },\n "source_address": {\n "type": "string"\n },\n "source_procedure": {\n "anyOf": [\n {\n "additionalProperties": false,\n "properties": {\n "address": {\n "type": "string"\n },\n "body": {\n "default": {\n "available": false,\n "reason": "The provider did not report complete function body ranges."\n },\n "oneOf": [\n {\n "additionalProperties": false,\n "properties": {\n "available": {\n "const": false,\n "type": "boolean"\n },\n "reason": {\n "type": "string"\n }\n },\n "required": [\n "available",\n "reason"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "available": {\n "const": true,\n "type": "boolean"\n },\n "contains_entry": {\n "type": "boolean"\n },\n "non_contiguous": {\n "type": "boolean"\n },\n "provenance": {\n "minLength": 1,\n "type": "string"\n },\n "ranges": {\n "items": {\n "additionalProperties": false,\n "properties": {\n "end": {\n "description": "Inclusive last address of this observed body range.",\n "type": "string"\n },\n "start": {\n "type": "string"\n }\n },\n "required": [\n "start",\n "end"\n ],\n "type": "object"\n },\n "type": "array"\n },\n "span_bytes": {\n "anyOf": [\n {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n {\n "type": "null"\n }\n ]\n },\n "total_bytes": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "available",\n "provenance",\n "ranges",\n "total_bytes",\n "span_bytes",\n "non_contiguous",\n "contains_entry"\n ],\n "type": "object"\n }\n ]\n },\n "classification": {\n "anyOf": [\n {\n "additionalProperties": false,\n "properties": {\n "external": {\n "type": "boolean"\n },\n "provenance": {\n "minLength": 1,\n "type": "string"\n },\n "thunk": {\n "type": "boolean"\n },\n "thunk_target": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "external",\n "thunk",\n "thunk_target",\n "provenance"\n ],\n "type": "object"\n },\n {\n "type": "null"\n }\n ],\n "default": null\n },\n "name": {\n "type": "string"\n }\n },\n "required": [\n "address",\n "name",\n "classification",\n "body"\n ],\n "type": "object"\n },\n {\n "type": "null"\n }\n ]\n },\n "target_address": {\n "type": "string"\n },\n "target_procedure": {\n "anyOf": [\n {\n "additionalProperties": false,\n "properties": {\n "address": {\n "type": "string"\n },\n "body": {\n "default": {\n "available": false,\n "reason": "The provider did not report complete function body ranges."\n },\n "oneOf": [\n {\n "additionalProperties": false,\n "properties": {\n "available": {\n "const": false,\n "type": "boolean"\n },\n "reason": {\n "type": "string"\n }\n },\n "required": [\n "available",\n "reason"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "available": {\n "const": true,\n "type": "boolean"\n },\n "contains_entry": {\n "type": "boolean"\n },\n "non_contiguous": {\n "type": "boolean"\n },\n "provenance": {\n "minLength": 1,\n "type": "string"\n },\n "ranges": {\n "items": {\n "additionalProperties": false,\n "properties": {\n "end": {\n "description": "Inclusive last address of this observed body range.",\n "type": "string"\n },\n "start": {\n "type": "string"\n }\n },\n "required": [\n "start",\n "end"\n ],\n "type": "object"\n },\n "type": "array"\n },\n "span_bytes": {\n "anyOf": [\n {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n {\n "type": "null"\n }\n ]\n },\n "total_bytes": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "available",\n "provenance",\n "ranges",\n "total_bytes",\n "span_bytes",\n "non_contiguous",\n "contains_entry"\n ],\n "type": "object"\n }\n ]\n },\n "classification": {\n "anyOf": [\n {\n "additionalProperties": false,\n "properties": {\n "external": {\n "type": "boolean"\n },\n "provenance": {\n "minLength": 1,\n "type": "string"\n },\n "thunk": {\n "type": "boolean"\n },\n "thunk_target": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "external",\n "thunk",\n "thunk_target",\n "provenance"\n ],\n "type": "object"\n },\n {\n "type": "null"\n }\n ],\n "default": null\n },\n "name": {\n "type": "string"\n }\n },\n "required": [\n "address",\n "name",\n "classification",\n "body"\n ],\n "type": "object"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "source_address",\n "target_address",\n "source_procedure",\n "target_procedure",\n "kind"\n ],\n "type": "object"\n },\n "type": "array"\n },\n "limitations": {\n "default": [],\n "items": {\n "type": "string"\n },\n "type": "array"\n },\n "native_api": {\n "anyOf": [\n {\n "oneOf": [\n {\n "additionalProperties": false,\n "properties": {\n "available": {\n "const": false,\n "type": "boolean"\n },\n "reason": {\n "minLength": 1,\n "type": "string"\n },\n "residual_unknowns": {\n "items": {\n "minLength": 1,\n "type": "string"\n },\n "minItems": 1,\n "type": "array"\n }\n },\n "required": [\n "available",\n "reason",\n "residual_unknowns"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "available": {\n "const": true,\n "type": "boolean"\n },\n "calling_convention": {\n "minLength": 1,\n "type": "string"\n },\n "decompiler_artifacts": {\n "items": {\n "enum": [\n "recovered-signature",\n "register-and-stack-variables",\n "compiler-generated-control-flow",\n "pointer-arithmetic",\n "pseudocode"\n ],\n "type": "string"\n },\n "type": "array"\n },\n "jump_tables": {\n "items": {\n "additionalProperties": false,\n "properties": {\n "data_sources": {\n "items": {\n "additionalProperties": false,\n "properties": {\n "address": {\n "minLength": 1,\n "type": "string"\n },\n "confidence": {\n "enum": [\n "low",\n "medium",\n "high"\n ],\n "type": "string"\n },\n "entry_count": {\n "anyOf": [\n {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n {\n "type": "null"\n }\n ]\n },\n "entry_size_bytes": {\n "anyOf": [\n {\n "maximum": 9007199254740991,\n "minimum": 1,\n "type": "integer"\n },\n {\n "type": "null"\n }\n ]\n },\n "evidence": {\n "items": {\n "additionalProperties": false,\n "properties": {\n "detail": {\n "minLength": 1,\n "type": "string"\n },\n "kind": {\n "enum": [\n "signature-source",\n "decompiler-type",\n "type-lock",\n "calling-convention",\n "jump-table"\n ],\n "type": "string"\n },\n "source": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "kind",\n "source",\n "detail"\n ],\n "type": "object"\n },\n "minItems": 1,\n "type": "array"\n },\n "provenance": {\n "enum": [\n "ghidra-decompiler-load-table",\n "ghidra-dispatch-block-data-reference",\n "ghidra-aarch64-byte-table",\n "ghidra-aarch64-halfword-table"\n ],\n "type": "string"\n }\n },\n "required": [\n "address",\n "provenance",\n "entry_size_bytes",\n "entry_count",\n "confidence",\n "evidence"\n ],\n "type": "object"\n },\n "type": "array"\n },\n "default_targets": {\n "default": [],\n "items": {\n "additionalProperties": false,\n "properties": {\n "confidence": {\n "enum": [\n "low",\n "medium",\n "high"\n ],\n "type": "string"\n },\n "evidence": {\n "items": {\n "additionalProperties": false,\n "properties": {\n "detail": {\n "minLength": 1,\n "type": "string"\n },\n "kind": {\n "enum": [\n "signature-source",\n "decompiler-type",\n "type-lock",\n "calling-convention",\n "jump-table"\n ],\n "type": "string"\n },\n "source": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "kind",\n "source",\n "detail"\n ],\n "type": "object"\n },\n "minItems": 1,\n "type": "array"\n },\n "target_address": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "target_address",\n "confidence",\n "evidence"\n ],\n "type": "object"\n },\n "type": "array"\n },\n "dispatch_address": {\n "minLength": 1,\n "type": "string"\n },\n "limitations": {\n "items": {\n "type": "string"\n },\n "type": "array"\n },\n "mappings": {\n "items": {\n "additionalProperties": false,\n "properties": {\n "case_value": {\n "anyOf": [\n {\n "maximum": 9007199254740991,\n "minimum": -9007199254740991,\n "type": "integer"\n },\n {\n "type": "null"\n }\n ]\n },\n "confidence": {\n "enum": [\n "low",\n "medium",\n "high"\n ],\n "type": "string"\n },\n "evidence": {\n "items": {\n "additionalProperties": false,\n "properties": {\n "detail": {\n "minLength": 1,\n "type": "string"\n },\n "kind": {\n "enum": [\n "signature-source",\n "decompiler-type",\n "type-lock",\n "calling-convention",\n "jump-table"\n ],\n "type": "string"\n },\n "source": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "kind",\n "source",\n "detail"\n ],\n "type": "object"\n },\n "minItems": 1,\n "type": "array"\n },\n "target_address": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "case_value",\n "target_address",\n "confidence",\n "evidence"\n ],\n "type": "object"\n },\n "type": "array"\n }\n },\n "required": [\n "dispatch_address",\n "data_sources",\n "mappings",\n "default_targets",\n "limitations"\n ],\n "type": "object"\n },\n "type": "array"\n },\n "limitations": {\n "items": {\n "type": "string"\n },\n "type": "array"\n },\n "parameters": {\n "items": {\n "additionalProperties": false,\n "properties": {\n "confidence": {\n "enum": [\n "low",\n "medium",\n "high"\n ],\n "type": "string"\n },\n "data_type": {\n "minLength": 1,\n "type": "string"\n },\n "decompiler_artifacts": {\n "items": {\n "enum": [\n "recovered-signature",\n "register-or-stack-storage",\n "compiler-generated-variable"\n ],\n "type": "string"\n },\n "type": "array"\n },\n "evidence": {\n "items": {\n "additionalProperties": false,\n "properties": {\n "detail": {\n "minLength": 1,\n "type": "string"\n },\n "kind": {\n "enum": [\n "signature-source",\n "decompiler-type",\n "type-lock",\n "calling-convention",\n "jump-table"\n ],\n "type": "string"\n },\n "source": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "kind",\n "source",\n "detail"\n ],\n "type": "object"\n },\n "minItems": 1,\n "type": "array"\n },\n "name": {\n "anyOf": [\n {\n "minLength": 1,\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "ordinal": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "role": {\n "const": "parameter",\n "type": "string"\n },\n "size_bytes": {\n "anyOf": [\n {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n {\n "type": "null"\n }\n ]\n },\n "storage": {\n "anyOf": [\n {\n "minLength": 1,\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "ordinal",\n "name",\n "data_type",\n "size_bytes",\n "storage",\n "confidence",\n "evidence",\n "decompiler_artifacts",\n "role"\n ],\n "type": "object"\n },\n "type": "array"\n },\n "provenance": {\n "minLength": 1,\n "type": "string"\n },\n "pseudocode": {\n "additionalProperties": false,\n "properties": {\n "classification": {\n "const": "decompiler-generated-non-source",\n "type": "string"\n },\n "compilable": {\n "const": false,\n "type": "boolean"\n }\n },\n "required": [\n "classification",\n "compilable"\n ],\n "type": "object"\n },\n "return_type": {\n "additionalProperties": false,\n "properties": {\n "confidence": {\n "enum": [\n "low",\n "medium",\n "high"\n ],\n "type": "string"\n },\n "data_type": {\n "minLength": 1,\n "type": "string"\n },\n "decompiler_artifacts": {\n "items": {\n "enum": [\n "recovered-signature",\n "register-or-stack-storage",\n "compiler-generated-variable"\n ],\n "type": "string"\n },\n "type": "array"\n },\n "evidence": {\n "items": {\n "additionalProperties": false,\n "properties": {\n "detail": {\n "minLength": 1,\n "type": "string"\n },\n "kind": {\n "enum": [\n "signature-source",\n "decompiler-type",\n "type-lock",\n "calling-convention",\n "jump-table"\n ],\n "type": "string"\n },\n "source": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "kind",\n "source",\n "detail"\n ],\n "type": "object"\n },\n "minItems": 1,\n "type": "array"\n },\n "name": {\n "type": "null"\n },\n "ordinal": {\n "type": "null"\n },\n "role": {\n "const": "return",\n "type": "string"\n },\n "size_bytes": {\n "anyOf": [\n {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n {\n "type": "null"\n }\n ]\n },\n "storage": {\n "anyOf": [\n {\n "minLength": 1,\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "ordinal",\n "name",\n "data_type",\n "size_bytes",\n "storage",\n "confidence",\n "evidence",\n "decompiler_artifacts",\n "role"\n ],\n "type": "object"\n },\n "signature_source": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "available",\n "provenance",\n "signature_source",\n "calling_convention",\n "return_type",\n "parameters",\n "jump_tables",\n "pseudocode",\n "decompiler_artifacts",\n "limitations"\n ],\n "type": "object"\n }\n ]\n },\n {\n "type": "null"\n }\n ],\n "default": null\n },\n "native_value_flow": {\n "anyOf": [\n {\n "oneOf": [\n {\n "additionalProperties": false,\n "properties": {\n "available": {\n "const": true,\n "type": "boolean"\n },\n "def_use": {\n "items": {\n "additionalProperties": false,\n "properties": {\n "definition": {\n "minLength": 1,\n "type": "string"\n },\n "input_index": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "use": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "definition",\n "use",\n "input_index"\n ],\n "type": "object"\n },\n "type": "array"\n },\n "effects": {\n "items": {\n "additionalProperties": false,\n "properties": {\n "kind": {\n "enum": [\n "memory_read",\n "memory_write",\n "conditional_branch",\n "indirect_branch",\n "direct_call",\n "indirect_call"\n ],\n "type": "string"\n },\n "operand_input": {\n "anyOf": [\n {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n {\n "type": "null"\n }\n ]\n },\n "operation": {\n "minLength": 1,\n "type": "string"\n },\n "value_input": {\n "anyOf": [\n {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "operation",\n "kind",\n "operand_input",\n "value_input"\n ],\n "type": "object"\n },\n "type": "array"\n },\n "known_omitted_edges": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "known_omitted_inputs": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "limitations": {\n "items": {\n "minLength": 1,\n "type": "string"\n },\n "type": "array"\n },\n "omitted_operations_lower_bound": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "operations": {\n "items": {\n "additionalProperties": false,\n "properties": {\n "address": {\n "minLength": 1,\n "type": "string"\n },\n "block_membership": {\n "default": "unavailable",\n "enum": [\n "member",\n "detached",\n "unavailable"\n ],\n "type": "string"\n },\n "id": {\n "minLength": 1,\n "type": "string"\n },\n "inputs": {\n "items": {\n "additionalProperties": false,\n "properties": {\n "constant_hex": {\n "anyOf": [\n {\n "pattern": "^[0-9a-f]+$",\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "kind": {\n "enum": [\n "constant",\n "address",\n "register",\n "unique",\n "other"\n ],\n "type": "string"\n },\n "location": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "size_bytes": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "kind",\n "size_bytes",\n "location",\n "constant_hex"\n ],\n "type": "object"\n },\n "type": "array"\n },\n "is_dead": {\n "type": "boolean"\n },\n "opcode": {\n "minLength": 1,\n "type": "string"\n },\n "output": {\n "anyOf": [\n {\n "additionalProperties": false,\n "properties": {\n "constant_hex": {\n "anyOf": [\n {\n "pattern": "^[0-9a-f]+$",\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "kind": {\n "enum": [\n "constant",\n "address",\n "register",\n "unique",\n "other"\n ],\n "type": "string"\n },\n "location": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "size_bytes": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "kind",\n "size_bytes",\n "location",\n "constant_hex"\n ],\n "type": "object"\n },\n {\n "type": "null"\n }\n ]\n },\n "sequence": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "id",\n "address",\n "sequence",\n "opcode",\n "is_dead",\n "block_membership",\n "inputs",\n "output"\n ],\n "type": "object"\n },\n "type": "array"\n },\n "parameter_uses": {\n "default": [],\n "items": {\n "additionalProperties": false,\n "properties": {\n "input_index": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "ordinal": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "use": {\n "type": "string"\n }\n },\n "required": [\n "ordinal",\n "use",\n "input_index"\n ],\n "type": "object"\n },\n "type": "array"\n },\n "parameters": {\n "default": [],\n "items": {\n "additionalProperties": false,\n "properties": {\n "data_type": {\n "type": "string"\n },\n "name": {\n "type": "string"\n },\n "ordinal": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "ordinal",\n "name",\n "data_type"\n ],\n "type": "object"\n },\n "type": "array"\n },\n "provenance": {\n "const": "ghidra-high-pcode",\n "type": "string"\n },\n "truncated": {\n "type": "boolean"\n }\n },\n "required": [\n "available",\n "provenance",\n "operations",\n "def_use",\n "effects",\n "parameters",\n "parameter_uses",\n "truncated",\n "omitted_operations_lower_bound",\n "known_omitted_inputs",\n "known_omitted_edges",\n "limitations"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "available": {\n "const": false,\n "type": "boolean"\n },\n "limitations": {\n "items": {\n "minLength": 1,\n "type": "string"\n },\n "type": "array"\n },\n "reason": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "available",\n "reason",\n "limitations"\n ],\n "type": "object"\n }\n ]\n },\n {\n "type": "null"\n }\n ],\n "default": null\n },\n "outgoing_references": {\n "items": {\n "additionalProperties": false,\n "properties": {\n "kind": {\n "oneOf": [\n {\n "additionalProperties": false,\n "properties": {\n "available": {\n "const": false,\n "type": "boolean"\n },\n "reason": {\n "type": "string"\n }\n },\n "required": [\n "available",\n "reason"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "available": {\n "const": true,\n "type": "boolean"\n },\n "call": {\n "type": "boolean"\n },\n "computed": {\n "type": "boolean"\n },\n "conditional": {\n "type": "boolean"\n },\n "data": {\n "type": "boolean"\n },\n "external": {\n "type": "boolean"\n },\n "flow": {\n "type": "boolean"\n },\n "indirect": {\n "type": "boolean"\n },\n "jump": {\n "type": "boolean"\n },\n "operand_index": {\n "maximum": 9007199254740991,\n "minimum": -9007199254740991,\n "type": "integer"\n },\n "primary": {\n "type": "boolean"\n },\n "provenance": {\n "minLength": 1,\n "type": "string"\n },\n "read": {\n "type": "boolean"\n },\n "terminal": {\n "type": "boolean"\n },\n "type": {\n "type": "string"\n },\n "write": {\n "type": "boolean"\n }\n },\n "required": [\n "available",\n "provenance",\n "type",\n "flow",\n "call",\n "jump",\n "data",\n "read",\n "write",\n "indirect",\n "computed",\n "conditional",\n "terminal",\n "primary",\n "operand_index",\n "external"\n ],\n "type": "object"\n }\n ]\n },\n "source_address": {\n "type": "string"\n },\n "source_procedure": {\n "anyOf": [\n {\n "additionalProperties": false,\n "properties": {\n "address": {\n "type": "string"\n },\n "body": {\n "default": {\n "available": false,\n "reason": "The provider did not report complete function body ranges."\n },\n "oneOf": [\n {\n "additionalProperties": false,\n "properties": {\n "available": {\n "const": false,\n "type": "boolean"\n },\n "reason": {\n "type": "string"\n }\n },\n "required": [\n "available",\n "reason"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "available": {\n "const": true,\n "type": "boolean"\n },\n "contains_entry": {\n "type": "boolean"\n },\n "non_contiguous": {\n "type": "boolean"\n },\n "provenance": {\n "minLength": 1,\n "type": "string"\n },\n "ranges": {\n "items": {\n "additionalProperties": false,\n "properties": {\n "end": {\n "description": "Inclusive last address of this observed body range.",\n "type": "string"\n },\n "start": {\n "type": "string"\n }\n },\n "required": [\n "start",\n "end"\n ],\n "type": "object"\n },\n "type": "array"\n },\n "span_bytes": {\n "anyOf": [\n {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n {\n "type": "null"\n }\n ]\n },\n "total_bytes": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "available",\n "provenance",\n "ranges",\n "total_bytes",\n "span_bytes",\n "non_contiguous",\n "contains_entry"\n ],\n "type": "object"\n }\n ]\n },\n "classification": {\n "anyOf": [\n {\n "additionalProperties": false,\n "properties": {\n "external": {\n "type": "boolean"\n },\n "provenance": {\n "minLength": 1,\n "type": "string"\n },\n "thunk": {\n "type": "boolean"\n },\n "thunk_target": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "external",\n "thunk",\n "thunk_target",\n "provenance"\n ],\n "type": "object"\n },\n {\n "type": "null"\n }\n ],\n "default": null\n },\n "name": {\n "type": "string"\n }\n },\n "required": [\n "address",\n "name",\n "classification",\n "body"\n ],\n "type": "object"\n },\n {\n "type": "null"\n }\n ]\n },\n "target_address": {\n "type": "string"\n },\n "target_procedure": {\n "anyOf": [\n {\n "additionalProperties": false,\n "properties": {\n "address": {\n "type": "string"\n },\n "body": {\n "default": {\n "available": false,\n "reason": "The provider did not report complete function body ranges."\n },\n "oneOf": [\n {\n "additionalProperties": false,\n "properties": {\n "available": {\n "const": false,\n "type": "boolean"\n },\n "reason": {\n "type": "string"\n }\n },\n "required": [\n "available",\n "reason"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "available": {\n "const": true,\n "type": "boolean"\n },\n "contains_entry": {\n "type": "boolean"\n },\n "non_contiguous": {\n "type": "boolean"\n },\n "provenance": {\n "minLength": 1,\n "type": "string"\n },\n "ranges": {\n "items": {\n "additionalProperties": false,\n "properties": {\n "end": {\n "description": "Inclusive last address of this observed body range.",\n "type": "string"\n },\n "start": {\n "type": "string"\n }\n },\n "required": [\n "start",\n "end"\n ],\n "type": "object"\n },\n "type": "array"\n },\n "span_bytes": {\n "anyOf": [\n {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n {\n "type": "null"\n }\n ]\n },\n "total_bytes": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "available",\n "provenance",\n "ranges",\n "total_bytes",\n "span_bytes",\n "non_contiguous",\n "contains_entry"\n ],\n "type": "object"\n }\n ]\n },\n "classification": {\n "anyOf": [\n {\n "additionalProperties": false,\n "properties": {\n "external": {\n "type": "boolean"\n },\n "provenance": {\n "minLength": 1,\n "type": "string"\n },\n "thunk": {\n "type": "boolean"\n },\n "thunk_target": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "external",\n "thunk",\n "thunk_target",\n "provenance"\n ],\n "type": "object"\n },\n {\n "type": "null"\n }\n ],\n "default": null\n },\n "name": {\n "type": "string"\n }\n },\n "required": [\n "address",\n "name",\n "classification",\n "body"\n ],\n "type": "object"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "source_address",\n "target_address",\n "source_procedure",\n "target_procedure",\n "kind"\n ],\n "type": "object"\n },\n "type": "array"\n },\n "procedure": {\n "additionalProperties": false,\n "properties": {\n "address": {\n "type": "string"\n },\n "body": {\n "default": {\n "available": false,\n "reason": "The provider did not report complete function body ranges."\n },\n "oneOf": [\n {\n "additionalProperties": false,\n "properties": {\n "available": {\n "const": false,\n "type": "boolean"\n },\n "reason": {\n "type": "string"\n }\n },\n "required": [\n "available",\n "reason"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "available": {\n "const": true,\n "type": "boolean"\n },\n "contains_entry": {\n "type": "boolean"\n },\n "non_contiguous": {\n "type": "boolean"\n },\n "provenance": {\n "minLength": 1,\n "type": "string"\n },\n "ranges": {\n "items": {\n "additionalProperties": false,\n "properties": {\n "end": {\n "description": "Inclusive last address of this observed body range.",\n "type": "string"\n },\n "start": {\n "type": "string"\n }\n },\n "required": [\n "start",\n "end"\n ],\n "type": "object"\n },\n "type": "array"\n },\n "span_bytes": {\n "anyOf": [\n {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n {\n "type": "null"\n }\n ]\n },\n "total_bytes": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "available",\n "provenance",\n "ranges",\n "total_bytes",\n "span_bytes",\n "non_contiguous",\n "contains_entry"\n ],\n "type": "object"\n }\n ]\n },\n "classification": {\n "anyOf": [\n {\n "additionalProperties": false,\n "properties": {\n "external": {\n "type": "boolean"\n },\n "provenance": {\n "minLength": 1,\n "type": "string"\n },\n "thunk": {\n "type": "boolean"\n },\n "thunk_target": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "external",\n "thunk",\n "thunk_target",\n "provenance"\n ],\n "type": "object"\n },\n {\n "type": "null"\n }\n ],\n "default": null\n },\n "locals": {\n "items": {\n "additionalProperties": false,\n "properties": {\n "description": {\n "type": "string"\n },\n "provenance": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "description",\n "provenance"\n ],\n "type": "object"\n },\n "type": "array"\n },\n "name": {\n "type": "string"\n },\n "signature": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "address",\n "name",\n "classification",\n "body",\n "signature",\n "locals"\n ],\n "type": "object"\n },\n "pseudocode": {\n "type": "string"\n },\n "referenced_names": {\n "items": {\n "additionalProperties": false,\n "properties": {\n "address": {\n "type": "string"\n },\n "source_address": {\n "type": "string"\n },\n "value": {\n "type": "string"\n }\n },\n "required": [\n "address",\n "value",\n "source_address"\n ],\n "type": "object"\n },\n "type": "array"\n },\n "referenced_strings": {\n "items": {\n "additionalProperties": false,\n "properties": {\n "address": {\n "type": "string"\n },\n "source_address": {\n "type": "string"\n },\n "value": {\n "type": "string"\n }\n },\n "required": [\n "address",\n "value",\n "source_address"\n ],\n "type": "object"\n },\n "type": "array"\n }\n },\n "required": [\n "procedure",\n "pseudocode",\n "assembly",\n "comments",\n "callers",\n "callees",\n "incoming_references",\n "outgoing_references",\n "referenced_strings",\n "referenced_names",\n "basic_blocks",\n "native_api",\n "native_value_flow",\n "limitations"\n ],\n "type": "object"\n },\n "effects": {\n "additionalProperties": false,\n "properties": {\n "persists_after_close": {\n "const": false,\n "type": "boolean"\n },\n "scope": {\n "const": "session-analysis-database",\n "type": "string"\n },\n "source_bytes_modified": {\n "const": false,\n "type": "boolean"\n }\n },\n "required": [\n "scope",\n "source_bytes_modified",\n "persists_after_close"\n ],\n "type": "object"\n }\n },\n "required": [\n "annotations",\n "dossier",\n "effects"\n ],\n "type": "object"\n }\n },\n "required": [\n "result",\n "evidence_id",\n "evidence"\n ],\n "type": "object"\n },\n "requiresSession": false,\n "title": "Annotate Native Function"\n },\n {\n "analysisOperation": "inspect_native_load_image",\n "annotations": {\n "destructiveHint": false,\n "idempotentHint": true,\n "openWorldHint": false,\n "readOnlyHint": false\n },\n "description": "Verify the provider\'s loaded DOS MZ or explicitly selected COM image against its immutable target snapshot: complete original/modified source-byte digests, header/module file mappings and memory digests, relocations and external entry. Returns measured observations and independent checks with mismatch coordinates. COM verification includes its imposed entry register context and does not claim PSP/runtime coverage. Overlay and uninitialized coverage remain explicit; other formats return unsupported. Does not execute or modify the target.",\n "effects": {\n "accessesNetwork": false,\n "changesUiState": false,\n "idempotent": true,\n "launchesProcess": false,\n "mayDiscardData": false,\n "mutatesSession": true,\n "mutatesTarget": false,\n "writesFilesystem": false\n },\n "inputSchema": {\n "$schema": "https://json-schema.org/draft/2020-12/schema",\n "additionalProperties": false,\n "examples": [\n {}\n ],\n "properties": {},\n "type": "object"\n },\n "kind": "official-proxy",\n "name": "inspect_native_load_image",\n "outputSchema": {\n "$defs": {\n "__schema0": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "number"\n },\n {\n "type": "boolean"\n },\n {\n "type": "null"\n },\n {\n "items": {\n "$ref": "#/$defs/__schema0"\n },\n "type": "array"\n },\n {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n }\n ]\n }\n },\n "$schema": "https://json-schema.org/draft/2020-12/schema",\n "additionalProperties": false,\n "properties": {\n "evidence": {\n "additionalProperties": false,\n "properties": {\n "analysis_profile": {\n "additionalProperties": false,\n "properties": {\n "digest": {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n },\n "parameters": {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n },\n "provider": {\n "additionalProperties": false,\n "properties": {\n "id": {\n "minLength": 1,\n "type": "string"\n },\n "name": {\n "minLength": 1,\n "type": "string"\n },\n "version": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "id",\n "name",\n "version"\n ],\n "type": "object"\n }\n },\n "required": [\n "provider",\n "parameters",\n "digest"\n ],\n "type": "object"\n },\n "authority": {\n "enum": [\n "shipped-artifact",\n "controlled-replay",\n "historical-reference",\n "external-service",\n "analyst-inference"\n ],\n "type": "string"\n },\n "confidence": {\n "enum": [\n "observed",\n "derived",\n "inferred"\n ],\n "type": "string"\n },\n "environment": {\n "anyOf": [\n {\n "additionalProperties": false,\n "properties": {\n "architecture": {\n "minLength": 1,\n "type": "string"\n },\n "id": {\n "minLength": 1,\n "type": "string"\n },\n "isolation": {\n "enum": [\n "none",\n "process",\n "container",\n "virtual-machine"\n ],\n "type": "string"\n },\n "platform": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "id",\n "platform",\n "architecture",\n "isolation"\n ],\n "type": "object"\n },\n {\n "type": "null"\n }\n ]\n },\n "evidence_id": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "evidence_links": {\n "items": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "type": "array"\n },\n "limitations": {\n "items": {\n "type": "string"\n },\n "type": "array"\n },\n "locations": {\n "items": {\n "oneOf": [\n {\n "additionalProperties": false,\n "properties": {\n "address": {\n "minLength": 1,\n "type": "string"\n },\n "kind": {\n "const": "address",\n "type": "string"\n }\n },\n "required": [\n "kind",\n "address"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "end": {\n "minLength": 1,\n "type": "string"\n },\n "kind": {\n "const": "address-range",\n "type": "string"\n },\n "start": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "kind",\n "start",\n "end"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "kind": {\n "const": "artifact-path",\n "type": "string"\n },\n "path": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "kind",\n "path"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "kind": {\n "const": "file-offset",\n "type": "string"\n },\n "offset": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "kind",\n "offset"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "end": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "kind": {\n "const": "file-offset-range",\n "type": "string"\n },\n "start": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "kind",\n "start",\n "end"\n ],\n "type": "object"\n }\n ]\n },\n "type": "array"\n },\n "normalized_result": {\n "$ref": "#/$defs/__schema0"\n },\n "operation": {\n "minLength": 1,\n "type": "string"\n },\n "parameters": {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n },\n "predicate_type": {\n "minLength": 1,\n "type": "string"\n },\n "provider": {\n "additionalProperties": false,\n "properties": {\n "id": {\n "minLength": 1,\n "type": "string"\n },\n "name": {\n "minLength": 1,\n "type": "string"\n },\n "version": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "id",\n "name",\n "version"\n ],\n "type": "object"\n },\n "raw_result": {\n "anyOf": [\n {\n "$ref": "#/$defs/__schema0"\n },\n {\n "type": "null"\n }\n ]\n },\n "subject": {\n "anyOf": [\n {\n "additionalProperties": false,\n "properties": {\n "architecture": {\n "anyOf": [\n {\n "enum": [\n "x86",\n "x86_64",\n "arm",\n "arm64"\n ],\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "digest": {\n "additionalProperties": false,\n "properties": {\n "sha256": {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n }\n },\n "required": [\n "sha256"\n ],\n "type": "object"\n },\n "format": {\n "enum": [\n "hopper",\n "analysis-database",\n "mach-o",\n "elf",\n "pe",\n "dos-mz",\n "dos-com",\n "zip",\n "ipa",\n "apk",\n "msix",\n "appx",\n "asar",\n "dmg",\n "pkg",\n "plist",\n "javascript",\n "source-map",\n "directory",\n "file",\n "unknown",\n "mach-o-universal",\n "javascript-bundle",\n "entitlements"\n ],\n "type": "string"\n },\n "local_path": {\n "type": "string"\n },\n "name": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "name",\n "digest",\n "format",\n "architecture",\n "local_path"\n ],\n "type": "object"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "evidence_id",\n "subject",\n "provider",\n "predicate_type",\n "operation",\n "parameters",\n "raw_result",\n "normalized_result",\n "confidence",\n "authority",\n "environment",\n "limitations",\n "locations",\n "evidence_links"\n ],\n "type": "object"\n },\n "evidence_id": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "result": {\n "oneOf": [\n {\n "additionalProperties": false,\n "properties": {\n "limitations": {\n "items": {\n "minLength": 1,\n "type": "string"\n },\n "type": "array"\n },\n "observations": {\n "additionalProperties": false,\n "properties": {\n "compiler_spec_id": {\n "minLength": 1,\n "type": "string"\n },\n "default_address_space": {\n "minLength": 1,\n "type": "string"\n },\n "entry_context": {\n "items": {\n "additionalProperties": false,\n "properties": {\n "address": {\n "minLength": 1,\n "type": "string"\n },\n "registers": {\n "items": {\n "additionalProperties": false,\n "properties": {\n "name": {\n "minLength": 1,\n "type": "string"\n },\n "value_hex": {\n "anyOf": [\n {\n "pattern": "^0x[a-f0-9]+$",\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "name",\n "value_hex"\n ],\n "type": "object"\n },\n "type": "array"\n }\n },\n "required": [\n "address",\n "registers"\n ],\n "type": "object"\n },\n "type": "array"\n },\n "entry_points": {\n "items": {\n "minLength": 1,\n "type": "string"\n },\n "type": "array"\n },\n "executable_format": {\n "minLength": 1,\n "type": "string"\n },\n "image_base": {\n "minLength": 1,\n "type": "string"\n },\n "language_id": {\n "minLength": 1,\n "type": "string"\n },\n "mappings": {\n "items": {\n "additionalProperties": false,\n "properties": {\n "address_space": {\n "minLength": 1,\n "type": "string"\n },\n "block": {\n "type": "string"\n },\n "end": {\n "minLength": 1,\n "type": "string"\n },\n "file_offset": {\n "anyOf": [\n {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n {\n "type": "null"\n }\n ]\n },\n "initialized": {\n "type": "boolean"\n },\n "length": {\n "maximum": 9007199254740991,\n "minimum": 1,\n "type": "integer"\n },\n "loaded": {\n "type": "boolean"\n },\n "overlay": {\n "type": "boolean"\n },\n "sha256": {\n "anyOf": [\n {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "source_file_index": {\n "anyOf": [\n {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n {\n "type": "null"\n }\n ]\n },\n "start": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "block",\n "start",\n "end",\n "address_space",\n "initialized",\n "loaded",\n "overlay",\n "length",\n "source_file_index",\n "file_offset",\n "sha256"\n ],\n "type": "object"\n },\n "type": "array"\n },\n "metadata_recovery": {\n "items": {\n "additionalProperties": false,\n "properties": {\n "analysis_artifact_sha256": {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n },\n "coverage": {\n "anyOf": [\n {\n "additionalProperties": false,\n "properties": {\n "basis": {\n "const": "rehydrated-pointer-candidates-and-committed-instance-types",\n "type": "string"\n },\n "frozen_object_candidates": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "frozen_objects_annotated": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "frozen_object_candidates",\n "frozen_objects_annotated",\n "basis"\n ],\n "type": "object"\n },\n {\n "type": "null"\n }\n ]\n },\n "derived_memory": {\n "anyOf": [\n {\n "additionalProperties": false,\n "properties": {\n "address": {\n "pattern": "^0x[0-9a-f]+$",\n "type": "string"\n },\n "file_offset": {\n "type": "null"\n },\n "sha256": {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n },\n "size_bytes": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "address",\n "size_bytes",\n "sha256",\n "file_offset"\n ],\n "type": "object"\n },\n {\n "type": "null"\n }\n ]\n },\n "diagnostics": {\n "items": {\n "type": "string"\n },\n "type": "array"\n },\n "discovery": {\n "anyOf": [\n {\n "enum": [\n "symbol",\n "signature-heuristic"\n ],\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "format": {\n "const": "dotnet-nativeaot",\n "type": "string"\n },\n "format_major": {\n "anyOf": [\n {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n {\n "type": "null"\n }\n ]\n },\n "format_minor": {\n "anyOf": [\n {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n {\n "type": "null"\n }\n ]\n },\n "header_address": {\n "anyOf": [\n {\n "pattern": "^0x[0-9a-f]+$",\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "limitations": {\n "items": {\n "type": "string"\n },\n "type": "array"\n },\n "method_tables": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "reason": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "status": {\n "enum": [\n "complete",\n "partial",\n "not_applicable"\n ],\n "type": "string"\n },\n "types": {\n "items": {\n "additionalProperties": false,\n "properties": {\n "address": {\n "pattern": "^0x[0-9a-f]+$",\n "type": "string"\n },\n "type": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "address",\n "type"\n ],\n "type": "object"\n },\n "type": "array"\n }\n },\n "required": [\n "format",\n "status",\n "reason",\n "analysis_artifact_sha256",\n "header_address",\n "discovery",\n "format_major",\n "format_minor",\n "method_tables",\n "types",\n "derived_memory",\n "coverage",\n "diagnostics",\n "limitations"\n ],\n "type": "object"\n },\n "type": "array"\n },\n "relocations": {\n "items": {\n "additionalProperties": false,\n "properties": {\n "address": {\n "minLength": 1,\n "type": "string"\n },\n "memory_bytes_hex": {\n "anyOf": [\n {\n "pattern": "^(?:[a-f0-9]{2})*$",\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "offset": {\n "anyOf": [\n {\n "maximum": 65535,\n "minimum": 0,\n "type": "integer"\n },\n {\n "type": "null"\n }\n ]\n },\n "original_bytes_hex": {\n "anyOf": [\n {\n "pattern": "^(?:[a-f0-9]{2})*$",\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "segment": {\n "anyOf": [\n {\n "maximum": 65535,\n "minimum": 0,\n "type": "integer"\n },\n {\n "type": "null"\n }\n ]\n },\n "status": {\n "minLength": 1,\n "type": "string"\n },\n "type": {\n "maximum": 9007199254740991,\n "minimum": -9007199254740991,\n "type": "integer"\n },\n "values": {\n "items": {\n "maximum": 9007199254740991,\n "minimum": -9007199254740991,\n "type": "integer"\n },\n "type": "array"\n }\n },\n "required": [\n "address",\n "segment",\n "offset",\n "status",\n "type",\n "values",\n "original_bytes_hex",\n "memory_bytes_hex"\n ],\n "type": "object"\n },\n "type": "array"\n },\n "source_files": {\n "items": {\n "additionalProperties": false,\n "properties": {\n "modified_sha256": {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n },\n "name": {\n "type": "string"\n },\n "original_sha256": {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n },\n "size": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "name",\n "size",\n "original_sha256",\n "modified_sha256"\n ],\n "type": "object"\n },\n "type": "array"\n }\n },\n "required": [\n "executable_format",\n "language_id",\n "compiler_spec_id",\n "image_base",\n "default_address_space",\n "source_files",\n "mappings",\n "relocations",\n "entry_points",\n "entry_context"\n ],\n "type": "object"\n },\n "reason": {\n "minLength": 1,\n "type": "string"\n },\n "status": {\n "const": "unsupported",\n "type": "string"\n }\n },\n "required": [\n "status",\n "reason",\n "observations",\n "limitations"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "checks": {\n "items": {\n "additionalProperties": false,\n "properties": {\n "address": {\n "anyOf": [\n {\n "minLength": 1,\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "expected": {\n "$ref": "#/$defs/__schema0"\n },\n "file_offset": {\n "anyOf": [\n {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n {\n "type": "null"\n }\n ]\n },\n "matched": {\n "type": "boolean"\n },\n "name": {\n "minLength": 1,\n "type": "string"\n },\n "observed": {\n "$ref": "#/$defs/__schema0"\n }\n },\n "required": [\n "name",\n "matched",\n "expected",\n "observed",\n "file_offset",\n "address"\n ],\n "type": "object"\n },\n "type": "array"\n },\n "entry": {\n "additionalProperties": false,\n "properties": {\n "linear_address": {\n "minLength": 1,\n "type": "string"\n },\n "offset": {\n "maximum": 65535,\n "minimum": 0,\n "type": "integer"\n },\n "relative_segment": {\n "maximum": 65535,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "relative_segment",\n "offset",\n "linear_address"\n ],\n "type": "object"\n },\n "format": {\n "enum": [\n "dos-mz",\n "dos-com"\n ],\n "type": "string"\n },\n "header_bytes": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "limitations": {\n "items": {\n "minLength": 1,\n "type": "string"\n },\n "type": "array"\n },\n "load_segment": {\n "maximum": 65535,\n "minimum": 0,\n "type": "integer"\n },\n "module_bytes": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "observations": {\n "additionalProperties": false,\n "properties": {\n "compiler_spec_id": {\n "minLength": 1,\n "type": "string"\n },\n "default_address_space": {\n "minLength": 1,\n "type": "string"\n },\n "entry_context": {\n "items": {\n "additionalProperties": false,\n "properties": {\n "address": {\n "minLength": 1,\n "type": "string"\n },\n "registers": {\n "items": {\n "additionalProperties": false,\n "properties": {\n "name": {\n "minLength": 1,\n "type": "string"\n },\n "value_hex": {\n "anyOf": [\n {\n "pattern": "^0x[a-f0-9]+$",\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "name",\n "value_hex"\n ],\n "type": "object"\n },\n "type": "array"\n }\n },\n "required": [\n "address",\n "registers"\n ],\n "type": "object"\n },\n "type": "array"\n },\n "entry_points": {\n "items": {\n "minLength": 1,\n "type": "string"\n },\n "type": "array"\n },\n "executable_format": {\n "minLength": 1,\n "type": "string"\n },\n "image_base": {\n "minLength": 1,\n "type": "string"\n },\n "language_id": {\n "minLength": 1,\n "type": "string"\n },\n "mappings": {\n "items": {\n "additionalProperties": false,\n "properties": {\n "address_space": {\n "minLength": 1,\n "type": "string"\n },\n "block": {\n "type": "string"\n },\n "end": {\n "minLength": 1,\n "type": "string"\n },\n "file_offset": {\n "anyOf": [\n {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n {\n "type": "null"\n }\n ]\n },\n "initialized": {\n "type": "boolean"\n },\n "length": {\n "maximum": 9007199254740991,\n "minimum": 1,\n "type": "integer"\n },\n "loaded": {\n "type": "boolean"\n },\n "overlay": {\n "type": "boolean"\n },\n "sha256": {\n "anyOf": [\n {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "source_file_index": {\n "anyOf": [\n {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n {\n "type": "null"\n }\n ]\n },\n "start": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "block",\n "start",\n "end",\n "address_space",\n "initialized",\n "loaded",\n "overlay",\n "length",\n "source_file_index",\n "file_offset",\n "sha256"\n ],\n "type": "object"\n },\n "type": "array"\n },\n "metadata_recovery": {\n "items": {\n "additionalProperties": false,\n "properties": {\n "analysis_artifact_sha256": {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n },\n "coverage": {\n "anyOf": [\n {\n "additionalProperties": false,\n "properties": {\n "basis": {\n "const": "rehydrated-pointer-candidates-and-committed-instance-types",\n "type": "string"\n },\n "frozen_object_candidates": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "frozen_objects_annotated": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "frozen_object_candidates",\n "frozen_objects_annotated",\n "basis"\n ],\n "type": "object"\n },\n {\n "type": "null"\n }\n ]\n },\n "derived_memory": {\n "anyOf": [\n {\n "additionalProperties": false,\n "properties": {\n "address": {\n "pattern": "^0x[0-9a-f]+$",\n "type": "string"\n },\n "file_offset": {\n "type": "null"\n },\n "sha256": {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n },\n "size_bytes": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "address",\n "size_bytes",\n "sha256",\n "file_offset"\n ],\n "type": "object"\n },\n {\n "type": "null"\n }\n ]\n },\n "diagnostics": {\n "items": {\n "type": "string"\n },\n "type": "array"\n },\n "discovery": {\n "anyOf": [\n {\n "enum": [\n "symbol",\n "signature-heuristic"\n ],\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "format": {\n "const": "dotnet-nativeaot",\n "type": "string"\n },\n "format_major": {\n "anyOf": [\n {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n {\n "type": "null"\n }\n ]\n },\n "format_minor": {\n "anyOf": [\n {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n {\n "type": "null"\n }\n ]\n },\n "header_address": {\n "anyOf": [\n {\n "pattern": "^0x[0-9a-f]+$",\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "limitations": {\n "items": {\n "type": "string"\n },\n "type": "array"\n },\n "method_tables": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "reason": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "status": {\n "enum": [\n "complete",\n "partial",\n "not_applicable"\n ],\n "type": "string"\n },\n "types": {\n "items": {\n "additionalProperties": false,\n "properties": {\n "address": {\n "pattern": "^0x[0-9a-f]+$",\n "type": "string"\n },\n "type": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "address",\n "type"\n ],\n "type": "object"\n },\n "type": "array"\n }\n },\n "required": [\n "format",\n "status",\n "reason",\n "analysis_artifact_sha256",\n "header_address",\n "discovery",\n "format_major",\n "format_minor",\n "method_tables",\n "types",\n "derived_memory",\n "coverage",\n "diagnostics",\n "limitations"\n ],\n "type": "object"\n },\n "type": "array"\n },\n "relocations": {\n "items": {\n "additionalProperties": false,\n "properties": {\n "address": {\n "minLength": 1,\n "type": "string"\n },\n "memory_bytes_hex": {\n "anyOf": [\n {\n "pattern": "^(?:[a-f0-9]{2})*$",\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "offset": {\n "anyOf": [\n {\n "maximum": 65535,\n "minimum": 0,\n "type": "integer"\n },\n {\n "type": "null"\n }\n ]\n },\n "original_bytes_hex": {\n "anyOf": [\n {\n "pattern": "^(?:[a-f0-9]{2})*$",\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "segment": {\n "anyOf": [\n {\n "maximum": 65535,\n "minimum": 0,\n "type": "integer"\n },\n {\n "type": "null"\n }\n ]\n },\n "status": {\n "minLength": 1,\n "type": "string"\n },\n "type": {\n "maximum": 9007199254740991,\n "minimum": -9007199254740991,\n "type": "integer"\n },\n "values": {\n "items": {\n "maximum": 9007199254740991,\n "minimum": -9007199254740991,\n "type": "integer"\n },\n "type": "array"\n }\n },\n "required": [\n "address",\n "segment",\n "offset",\n "status",\n "type",\n "values",\n "original_bytes_hex",\n "memory_bytes_hex"\n ],\n "type": "object"\n },\n "type": "array"\n },\n "source_files": {\n "items": {\n "additionalProperties": false,\n "properties": {\n "modified_sha256": {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n },\n "name": {\n "type": "string"\n },\n "original_sha256": {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n },\n "size": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "name",\n "size",\n "original_sha256",\n "modified_sha256"\n ],\n "type": "object"\n },\n "type": "array"\n }\n },\n "required": [\n "executable_format",\n "language_id",\n "compiler_spec_id",\n "image_base",\n "default_address_space",\n "source_files",\n "mappings",\n "relocations",\n "entry_points",\n "entry_context"\n ],\n "type": "object"\n },\n "overlay_bytes": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "status": {\n "enum": [\n "verified",\n "mismatch"\n ],\n "type": "string"\n },\n "target_sha256": {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n }\n },\n "required": [\n "status",\n "format",\n "target_sha256",\n "load_segment",\n "header_bytes",\n "module_bytes",\n "overlay_bytes",\n "entry",\n "observations",\n "checks",\n "limitations"\n ],\n "type": "object"\n }\n ]\n }\n },\n "required": [\n "result",\n "evidence_id",\n "evidence"\n ],\n "type": "object"\n },\n "requiresSession": false,\n "title": "Inspect Native Load Image"\n },\n {\n "analysisOperation": "inspect_native_data_type",\n "annotations": {\n "destructiveHint": false,\n "idempotentHint": true,\n "openWorldHint": false,\n "readOnlyHint": false\n },\n "description": "Inspect one recovered type by exact database category path or defined typed data address. Returns observed size, alignment, packing, fields, bitfields, enum values, and child type identities; source-level authority and flexible-tail semantics remain unknown unless substantiated.",\n "effects": {\n "accessesNetwork": false,\n "changesUiState": false,\n "idempotent": true,\n "launchesProcess": false,\n "mayDiscardData": false,\n "mutatesSession": true,\n "mutatesTarget": false,\n "writesFilesystem": false\n },\n "inputSchema": {\n "$schema": "https://json-schema.org/draft/2020-12/schema",\n "additionalProperties": false,\n "examples": [\n {\n "type": "/MyStruct"\n }\n ],\n "properties": {\n "address": {\n "description": "Value for address.",\n "minLength": 1,\n "type": "string"\n },\n "document": {\n "description": "Exact provider document or program identity.",\n "type": "string"\n },\n "type": {\n "description": "Value for type.",\n "minLength": 1,\n "type": "string"\n }\n },\n "type": "object"\n },\n "kind": "official-proxy",\n "name": "inspect_native_data_type",\n "outputSchema": {\n "$defs": {\n "__schema0": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "number"\n },\n {\n "type": "boolean"\n },\n {\n "type": "null"\n },\n {\n "items": {\n "$ref": "#/$defs/__schema0"\n },\n "type": "array"\n },\n {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n }\n ]\n }\n },\n "$schema": "https://json-schema.org/draft/2020-12/schema",\n "additionalProperties": false,\n "properties": {\n "evidence": {\n "additionalProperties": false,\n "properties": {\n "analysis_profile": {\n "additionalProperties": false,\n "properties": {\n "digest": {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n },\n "parameters": {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n },\n "provider": {\n "additionalProperties": false,\n "properties": {\n "id": {\n "minLength": 1,\n "type": "string"\n },\n "name": {\n "minLength": 1,\n "type": "string"\n },\n "version": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "id",\n "name",\n "version"\n ],\n "type": "object"\n }\n },\n "required": [\n "provider",\n "parameters",\n "digest"\n ],\n "type": "object"\n },\n "authority": {\n "enum": [\n "shipped-artifact",\n "controlled-replay",\n "historical-reference",\n "external-service",\n "analyst-inference"\n ],\n "type": "string"\n },\n "confidence": {\n "enum": [\n "observed",\n "derived",\n "inferred"\n ],\n "type": "string"\n },\n "environment": {\n "anyOf": [\n {\n "additionalProperties": false,\n "properties": {\n "architecture": {\n "minLength": 1,\n "type": "string"\n },\n "id": {\n "minLength": 1,\n "type": "string"\n },\n "isolation": {\n "enum": [\n "none",\n "process",\n "container",\n "virtual-machine"\n ],\n "type": "string"\n },\n "platform": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "id",\n "platform",\n "architecture",\n "isolation"\n ],\n "type": "object"\n },\n {\n "type": "null"\n }\n ]\n },\n "evidence_id": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "evidence_links": {\n "items": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "type": "array"\n },\n "limitations": {\n "items": {\n "type": "string"\n },\n "type": "array"\n },\n "locations": {\n "items": {\n "oneOf": [\n {\n "additionalProperties": false,\n "properties": {\n "address": {\n "minLength": 1,\n "type": "string"\n },\n "kind": {\n "const": "address",\n "type": "string"\n }\n },\n "required": [\n "kind",\n "address"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "end": {\n "minLength": 1,\n "type": "string"\n },\n "kind": {\n "const": "address-range",\n "type": "string"\n },\n "start": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "kind",\n "start",\n "end"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "kind": {\n "const": "artifact-path",\n "type": "string"\n },\n "path": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "kind",\n "path"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "kind": {\n "const": "file-offset",\n "type": "string"\n },\n "offset": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "kind",\n "offset"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "end": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "kind": {\n "const": "file-offset-range",\n "type": "string"\n },\n "start": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "kind",\n "start",\n "end"\n ],\n "type": "object"\n }\n ]\n },\n "type": "array"\n },\n "normalized_result": {\n "$ref": "#/$defs/__schema0"\n },\n "operation": {\n "minLength": 1,\n "type": "string"\n },\n "parameters": {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n },\n "predicate_type": {\n "minLength": 1,\n "type": "string"\n },\n "provider": {\n "additionalProperties": false,\n "properties": {\n "id": {\n "minLength": 1,\n "type": "string"\n },\n "name": {\n "minLength": 1,\n "type": "string"\n },\n "version": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "id",\n "name",\n "version"\n ],\n "type": "object"\n },\n "raw_result": {\n "anyOf": [\n {\n "$ref": "#/$defs/__schema0"\n },\n {\n "type": "null"\n }\n ]\n },\n "subject": {\n "anyOf": [\n {\n "additionalProperties": false,\n "properties": {\n "architecture": {\n "anyOf": [\n {\n "enum": [\n "x86",\n "x86_64",\n "arm",\n "arm64"\n ],\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "digest": {\n "additionalProperties": false,\n "properties": {\n "sha256": {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n }\n },\n "required": [\n "sha256"\n ],\n "type": "object"\n },\n "format": {\n "enum": [\n "hopper",\n "analysis-database",\n "mach-o",\n "elf",\n "pe",\n "dos-mz",\n "dos-com",\n "zip",\n "ipa",\n "apk",\n "msix",\n "appx",\n "asar",\n "dmg",\n "pkg",\n "plist",\n "javascript",\n "source-map",\n "directory",\n "file",\n "unknown",\n "mach-o-universal",\n "javascript-bundle",\n "entitlements"\n ],\n "type": "string"\n },\n "local_path": {\n "type": "string"\n },\n "name": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "name",\n "digest",\n "format",\n "architecture",\n "local_path"\n ],\n "type": "object"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "evidence_id",\n "subject",\n "provider",\n "predicate_type",\n "operation",\n "parameters",\n "raw_result",\n "normalized_result",\n "confidence",\n "authority",\n "environment",\n "limitations",\n "locations",\n "evidence_links"\n ],\n "type": "object"\n },\n "evidence_id": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "result": {\n "additionalProperties": false,\n "properties": {\n "address": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "alignment_bytes": {\n "anyOf": [\n {\n "exclusiveMinimum": 0,\n "maximum": 9007199254740991,\n "type": "integer"\n },\n {\n "type": "null"\n }\n ]\n },\n "array_count": {\n "anyOf": [\n {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n {\n "type": "null"\n }\n ]\n },\n "array_stride_bytes": {\n "anyOf": [\n {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n {\n "type": "null"\n }\n ]\n },\n "fields": {\n "items": {\n "additionalProperties": false,\n "properties": {\n "bit_offset": {\n "anyOf": [\n {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n {\n "type": "null"\n }\n ]\n },\n "bit_size": {\n "anyOf": [\n {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n {\n "type": "null"\n }\n ]\n },\n "flexible_tail": {\n "const": "unknown",\n "type": "string"\n },\n "name": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "offset_bytes": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "ordinal": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "size_bytes": {\n "anyOf": [\n {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n {\n "type": "null"\n }\n ]\n },\n "status": {\n "enum": [\n "observed",\n "unsupported"\n ],\n "type": "string"\n },\n "type_id": {\n "type": "string"\n }\n },\n "required": [\n "ordinal",\n "name",\n "offset_bytes",\n "size_bytes",\n "type_id",\n "bit_size",\n "bit_offset",\n "status",\n "flexible_tail"\n ],\n "type": "object"\n },\n "type": "array"\n },\n "id": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "kind": {\n "enum": [\n "struct",\n "union",\n "enum",\n "pointer",\n "array",\n "typedef",\n "scalar",\n "unsupported",\n "unavailable"\n ],\n "type": "string"\n },\n "limitations": {\n "items": {\n "type": "string"\n },\n "type": "array"\n },\n "members": {\n "items": {\n "additionalProperties": false,\n "properties": {\n "name": {\n "type": "string"\n },\n "value": {\n "type": "string"\n }\n },\n "required": [\n "name",\n "value"\n ],\n "type": "object"\n },\n "type": "array"\n },\n "metadata_recovery": {\n "additionalProperties": false,\n "properties": {\n "base_size_bytes": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "derived_memory": {\n "additionalProperties": false,\n "properties": {\n "address": {\n "pattern": "^0x[0-9a-f]+$",\n "type": "string"\n },\n "file_offset": {\n "type": "null"\n },\n "sha256": {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n },\n "size_bytes": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "address",\n "size_bytes",\n "sha256",\n "file_offset"\n ],\n "type": "object"\n },\n "diagnostics": {\n "items": {\n "type": "string"\n },\n "type": "array"\n },\n "format": {\n "const": "dotnet-nativeaot",\n "type": "string"\n },\n "format_major": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "format_minor": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "header_address": {\n "pattern": "^0x[0-9a-f]+$",\n "type": "string"\n },\n "interfaces": {\n "items": {\n "additionalProperties": false,\n "properties": {\n "address": {\n "pattern": "^0x[0-9a-f]+$",\n "type": "string"\n },\n "type": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "address",\n "type"\n ],\n "type": "object"\n },\n "type": "array"\n },\n "limitations": {\n "items": {\n "type": "string"\n },\n "type": "array"\n },\n "method_table_address": {\n "pattern": "^0x[0-9a-f]+$",\n "type": "string"\n },\n "name_origin": {\n "enum": [\n "generated",\n "inferred"\n ],\n "type": "string"\n },\n "original_name": {\n "type": "null"\n },\n "related_type": {\n "anyOf": [\n {\n "additionalProperties": false,\n "properties": {\n "address": {\n "pattern": "^0x[0-9a-f]+$",\n "type": "string"\n },\n "type": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "address",\n "type"\n ],\n "type": "object"\n },\n {\n "type": "null"\n }\n ]\n },\n "status": {\n "enum": [\n "complete",\n "partial"\n ],\n "type": "string"\n },\n "virtual_slots": {\n "items": {\n "additionalProperties": false,\n "properties": {\n "basis": {\n "const": "method-table-pointer",\n "type": "string"\n },\n "procedure_name": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "slot": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "slot_address": {\n "pattern": "^0x[0-9a-f]+$",\n "type": "string"\n },\n "target_address": {\n "anyOf": [\n {\n "pattern": "^0x[0-9a-f]+$",\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "slot",\n "slot_address",\n "target_address",\n "procedure_name",\n "basis"\n ],\n "type": "object"\n },\n "type": "array"\n }\n },\n "required": [\n "format",\n "status",\n "header_address",\n "format_major",\n "format_minor",\n "method_table_address",\n "name_origin",\n "original_name",\n "base_size_bytes",\n "related_type",\n "interfaces",\n "virtual_slots",\n "derived_memory",\n "diagnostics",\n "limitations"\n ],\n "type": "object"\n },\n "name": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "packing_enabled": {\n "anyOf": [\n {\n "type": "boolean"\n },\n {\n "type": "null"\n }\n ]\n },\n "reason": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "referenced_type": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "size_bytes": {\n "anyOf": [\n {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n {\n "type": "null"\n }\n ]\n },\n "source": {\n "const": "analysis-database",\n "type": "string"\n },\n "source_archive": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "status": {\n "enum": [\n "available",\n "unavailable"\n ],\n "type": "string"\n },\n "total_fields": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "truncated": {\n "type": "boolean"\n }\n },\n "required": [\n "status",\n "reason",\n "id",\n "name",\n "kind",\n "source",\n "source_archive",\n "address",\n "size_bytes",\n "alignment_bytes",\n "packing_enabled",\n "referenced_type",\n "array_count",\n "array_stride_bytes",\n "fields",\n "members",\n "total_fields",\n "truncated",\n "limitations"\n ],\n "type": "object"\n }\n },\n "required": [\n "result",\n "evidence_id",\n "evidence"\n ],\n "type": "object"\n },\n "requiresSession": false,\n "title": "Inspect Native Data Type"\n },\n {\n "analysisOperation": "inspect_native_instruction",\n "annotations": {\n "destructiveHint": false,\n "idempotentHint": true,\n "openWorldHint": false,\n "readOnlyHint": false\n },\n "description": "Inspect one exact instruction address: decoded bytes, mnemonic, ordered operand tokens, flow and typed references. Memory addressing decomposition is unavailable when the provider supplies only tokens. Data, interior instruction addresses and undecodable bytes are distinct outcomes.",\n "effects": {\n "accessesNetwork": false,\n "changesUiState": false,\n "idempotent": true,\n "launchesProcess": false,\n "mayDiscardData": false,\n "mutatesSession": true,\n "mutatesTarget": false,\n "writesFilesystem": false\n },\n "inputSchema": {\n "$schema": "https://json-schema.org/draft/2020-12/schema",\n "additionalProperties": false,\n "examples": [\n {\n "address": "0x1000"\n }\n ],\n "properties": {\n "address": {\n "description": "Value for address.",\n "minLength": 1,\n "type": "string"\n },\n "document": {\n "description": "Exact provider document or program identity.",\n "type": "string"\n }\n },\n "required": [\n "address"\n ],\n "type": "object"\n },\n "kind": "official-proxy",\n "name": "inspect_native_instruction",\n "outputSchema": {\n "$defs": {\n "__schema0": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "number"\n },\n {\n "type": "boolean"\n },\n {\n "type": "null"\n },\n {\n "items": {\n "$ref": "#/$defs/__schema0"\n },\n "type": "array"\n },\n {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n }\n ]\n }\n },\n "$schema": "https://json-schema.org/draft/2020-12/schema",\n "additionalProperties": false,\n "properties": {\n "evidence": {\n "additionalProperties": false,\n "properties": {\n "analysis_profile": {\n "additionalProperties": false,\n "properties": {\n "digest": {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n },\n "parameters": {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n },\n "provider": {\n "additionalProperties": false,\n "properties": {\n "id": {\n "minLength": 1,\n "type": "string"\n },\n "name": {\n "minLength": 1,\n "type": "string"\n },\n "version": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "id",\n "name",\n "version"\n ],\n "type": "object"\n }\n },\n "required": [\n "provider",\n "parameters",\n "digest"\n ],\n "type": "object"\n },\n "authority": {\n "enum": [\n "shipped-artifact",\n "controlled-replay",\n "historical-reference",\n "external-service",\n "analyst-inference"\n ],\n "type": "string"\n },\n "confidence": {\n "enum": [\n "observed",\n "derived",\n "inferred"\n ],\n "type": "string"\n },\n "environment": {\n "anyOf": [\n {\n "additionalProperties": false,\n "properties": {\n "architecture": {\n "minLength": 1,\n "type": "string"\n },\n "id": {\n "minLength": 1,\n "type": "string"\n },\n "isolation": {\n "enum": [\n "none",\n "process",\n "container",\n "virtual-machine"\n ],\n "type": "string"\n },\n "platform": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "id",\n "platform",\n "architecture",\n "isolation"\n ],\n "type": "object"\n },\n {\n "type": "null"\n }\n ]\n },\n "evidence_id": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "evidence_links": {\n "items": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "type": "array"\n },\n "limitations": {\n "items": {\n "type": "string"\n },\n "type": "array"\n },\n "locations": {\n "items": {\n "oneOf": [\n {\n "additionalProperties": false,\n "properties": {\n "address": {\n "minLength": 1,\n "type": "string"\n },\n "kind": {\n "const": "address",\n "type": "string"\n }\n },\n "required": [\n "kind",\n "address"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "end": {\n "minLength": 1,\n "type": "string"\n },\n "kind": {\n "const": "address-range",\n "type": "string"\n },\n "start": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "kind",\n "start",\n "end"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "kind": {\n "const": "artifact-path",\n "type": "string"\n },\n "path": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "kind",\n "path"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "kind": {\n "const": "file-offset",\n "type": "string"\n },\n "offset": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "kind",\n "offset"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "end": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "kind": {\n "const": "file-offset-range",\n "type": "string"\n },\n "start": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "kind",\n "start",\n "end"\n ],\n "type": "object"\n }\n ]\n },\n "type": "array"\n },\n "normalized_result": {\n "$ref": "#/$defs/__schema0"\n },\n "operation": {\n "minLength": 1,\n "type": "string"\n },\n "parameters": {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n },\n "predicate_type": {\n "minLength": 1,\n "type": "string"\n },\n "provider": {\n "additionalProperties": false,\n "properties": {\n "id": {\n "minLength": 1,\n "type": "string"\n },\n "name": {\n "minLength": 1,\n "type": "string"\n },\n "version": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "id",\n "name",\n "version"\n ],\n "type": "object"\n },\n "raw_result": {\n "anyOf": [\n {\n "$ref": "#/$defs/__schema0"\n },\n {\n "type": "null"\n }\n ]\n },\n "subject": {\n "anyOf": [\n {\n "additionalProperties": false,\n "properties": {\n "architecture": {\n "anyOf": [\n {\n "enum": [\n "x86",\n "x86_64",\n "arm",\n "arm64"\n ],\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "digest": {\n "additionalProperties": false,\n "properties": {\n "sha256": {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n }\n },\n "required": [\n "sha256"\n ],\n "type": "object"\n },\n "format": {\n "enum": [\n "hopper",\n "analysis-database",\n "mach-o",\n "elf",\n "pe",\n "dos-mz",\n "dos-com",\n "zip",\n "ipa",\n "apk",\n "msix",\n "appx",\n "asar",\n "dmg",\n "pkg",\n "plist",\n "javascript",\n "source-map",\n "directory",\n "file",\n "unknown",\n "mach-o-universal",\n "javascript-bundle",\n "entitlements"\n ],\n "type": "string"\n },\n "local_path": {\n "type": "string"\n },\n "name": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "name",\n "digest",\n "format",\n "architecture",\n "local_path"\n ],\n "type": "object"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "evidence_id",\n "subject",\n "provider",\n "predicate_type",\n "operation",\n "parameters",\n "raw_result",\n "normalized_result",\n "confidence",\n "authority",\n "environment",\n "limitations",\n "locations",\n "evidence_links"\n ],\n "type": "object"\n },\n "evidence_id": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "result": {\n "additionalProperties": false,\n "properties": {\n "address": {\n "type": "string"\n },\n "architecture": {\n "type": "string"\n },\n "bytes": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "flow": {\n "additionalProperties": false,\n "properties": {\n "computed": {\n "type": "boolean"\n },\n "conditional": {\n "type": "boolean"\n },\n "direct_destinations": {\n "items": {\n "type": "string"\n },\n "type": "array"\n },\n "kind": {\n "enum": [\n "call",\n "jump",\n "return",\n "fallthrough",\n "terminal",\n "unavailable"\n ],\n "type": "string"\n }\n },\n "required": [\n "kind",\n "conditional",\n "computed",\n "direct_destinations"\n ],\n "type": "object"\n },\n "length": {\n "anyOf": [\n {\n "exclusiveMinimum": 0,\n "maximum": 9007199254740991,\n "type": "integer"\n },\n {\n "type": "null"\n }\n ]\n },\n "limitations": {\n "items": {\n "type": "string"\n },\n "type": "array"\n },\n "mnemonic": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "mode": {\n "type": "string"\n },\n "operands": {\n "items": {\n "additionalProperties": false,\n "properties": {\n "components": {\n "items": {\n "additionalProperties": false,\n "properties": {\n "bit_width": {\n "anyOf": [\n {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n {\n "type": "null"\n }\n ]\n },\n "kind": {\n "enum": [\n "register",\n "immediate",\n "address",\n "unknown"\n ],\n "type": "string"\n },\n "text": {\n "type": "string"\n },\n "value": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "kind",\n "text",\n "value",\n "bit_width"\n ],\n "type": "object"\n },\n "type": "array"\n },\n "index": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "memory_addressing": {\n "const": "unavailable",\n "type": "string"\n },\n "provider_type": {\n "maximum": 9007199254740991,\n "minimum": -9007199254740991,\n "type": "integer"\n },\n "raw": {\n "type": "string"\n }\n },\n "required": [\n "index",\n "raw",\n "provider_type",\n "components",\n "memory_addressing"\n ],\n "type": "object"\n },\n "type": "array"\n },\n "procedure": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "raw_disassembly": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "references": {\n "items": {\n "additionalProperties": false,\n "properties": {\n "call": {\n "type": "boolean"\n },\n "computed": {\n "type": "boolean"\n },\n "indirect": {\n "type": "boolean"\n },\n "jump": {\n "type": "boolean"\n },\n "operand_index": {\n "maximum": 9007199254740991,\n "minimum": -9007199254740991,\n "type": "integer"\n },\n "target_address": {\n "type": "string"\n },\n "type": {\n "type": "string"\n }\n },\n "required": [\n "target_address",\n "type",\n "call",\n "jump",\n "indirect",\n "computed",\n "operand_index"\n ],\n "type": "object"\n },\n "type": "array"\n },\n "status": {\n "enum": [\n "decoded",\n "not-instruction-boundary",\n "data",\n "undecodable",\n "outside-memory"\n ],\n "type": "string"\n }\n },\n "required": [\n "address",\n "status",\n "procedure",\n "architecture",\n "mode",\n "bytes",\n "length",\n "mnemonic",\n "raw_disassembly",\n "operands",\n "flow",\n "references",\n "limitations"\n ],\n "type": "object"\n }\n },\n "required": [\n "result",\n "evidence_id",\n "evidence"\n ],\n "type": "object"\n },\n "requiresSession": false,\n "title": "Inspect Native Instruction"\n },\n {\n "analysisOperation": "resolve_native_call_targets",\n "annotations": {\n "destructiveHint": false,\n "idempotentHint": true,\n "openWorldHint": false,\n "readOnlyHint": false\n },\n "description": "Resolve one explicit static call site using typed provider call references. Preserves ambiguous targets as candidates and unresolved computed calls as unknown; does not execute code or traverse a call graph.",\n "effects": {\n "accessesNetwork": false,\n "changesUiState": false,\n "idempotent": true,\n "launchesProcess": false,\n "mayDiscardData": false,\n "mutatesSession": true,\n "mutatesTarget": false,\n "writesFilesystem": false\n },\n "inputSchema": {\n "$schema": "https://json-schema.org/draft/2020-12/schema",\n "additionalProperties": false,\n "examples": [\n {\n "address": "0x1000"\n }\n ],\n "properties": {\n "address": {\n "description": "Value for address.",\n "minLength": 1,\n "type": "string"\n },\n "document": {\n "description": "Exact provider document or program identity.",\n "type": "string"\n }\n },\n "required": [\n "address"\n ],\n "type": "object"\n },\n "kind": "official-proxy",\n "name": "resolve_native_call_targets",\n "outputSchema": {\n "$defs": {\n "__schema0": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "number"\n },\n {\n "type": "boolean"\n },\n {\n "type": "null"\n },\n {\n "items": {\n "$ref": "#/$defs/__schema0"\n },\n "type": "array"\n },\n {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n }\n ]\n }\n },\n "$schema": "https://json-schema.org/draft/2020-12/schema",\n "additionalProperties": false,\n "properties": {\n "evidence": {\n "additionalProperties": false,\n "properties": {\n "analysis_profile": {\n "additionalProperties": false,\n "properties": {\n "digest": {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n },\n "parameters": {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n },\n "provider": {\n "additionalProperties": false,\n "properties": {\n "id": {\n "minLength": 1,\n "type": "string"\n },\n "name": {\n "minLength": 1,\n "type": "string"\n },\n "version": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "id",\n "name",\n "version"\n ],\n "type": "object"\n }\n },\n "required": [\n "provider",\n "parameters",\n "digest"\n ],\n "type": "object"\n },\n "authority": {\n "enum": [\n "shipped-artifact",\n "controlled-replay",\n "historical-reference",\n "external-service",\n "analyst-inference"\n ],\n "type": "string"\n },\n "confidence": {\n "enum": [\n "observed",\n "derived",\n "inferred"\n ],\n "type": "string"\n },\n "environment": {\n "anyOf": [\n {\n "additionalProperties": false,\n "properties": {\n "architecture": {\n "minLength": 1,\n "type": "string"\n },\n "id": {\n "minLength": 1,\n "type": "string"\n },\n "isolation": {\n "enum": [\n "none",\n "process",\n "container",\n "virtual-machine"\n ],\n "type": "string"\n },\n "platform": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "id",\n "platform",\n "architecture",\n "isolation"\n ],\n "type": "object"\n },\n {\n "type": "null"\n }\n ]\n },\n "evidence_id": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "evidence_links": {\n "items": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "type": "array"\n },\n "limitations": {\n "items": {\n "type": "string"\n },\n "type": "array"\n },\n "locations": {\n "items": {\n "oneOf": [\n {\n "additionalProperties": false,\n "properties": {\n "address": {\n "minLength": 1,\n "type": "string"\n },\n "kind": {\n "const": "address",\n "type": "string"\n }\n },\n "required": [\n "kind",\n "address"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "end": {\n "minLength": 1,\n "type": "string"\n },\n "kind": {\n "const": "address-range",\n "type": "string"\n },\n "start": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "kind",\n "start",\n "end"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "kind": {\n "const": "artifact-path",\n "type": "string"\n },\n "path": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "kind",\n "path"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "kind": {\n "const": "file-offset",\n "type": "string"\n },\n "offset": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "kind",\n "offset"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "end": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "kind": {\n "const": "file-offset-range",\n "type": "string"\n },\n "start": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "kind",\n "start",\n "end"\n ],\n "type": "object"\n }\n ]\n },\n "type": "array"\n },\n "normalized_result": {\n "$ref": "#/$defs/__schema0"\n },\n "operation": {\n "minLength": 1,\n "type": "string"\n },\n "parameters": {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n },\n "predicate_type": {\n "minLength": 1,\n "type": "string"\n },\n "provider": {\n "additionalProperties": false,\n "properties": {\n "id": {\n "minLength": 1,\n "type": "string"\n },\n "name": {\n "minLength": 1,\n "type": "string"\n },\n "version": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "id",\n "name",\n "version"\n ],\n "type": "object"\n },\n "raw_result": {\n "anyOf": [\n {\n "$ref": "#/$defs/__schema0"\n },\n {\n "type": "null"\n }\n ]\n },\n "subject": {\n "anyOf": [\n {\n "additionalProperties": false,\n "properties": {\n "architecture": {\n "anyOf": [\n {\n "enum": [\n "x86",\n "x86_64",\n "arm",\n "arm64"\n ],\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "digest": {\n "additionalProperties": false,\n "properties": {\n "sha256": {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n }\n },\n "required": [\n "sha256"\n ],\n "type": "object"\n },\n "format": {\n "enum": [\n "hopper",\n "analysis-database",\n "mach-o",\n "elf",\n "pe",\n "dos-mz",\n "dos-com",\n "zip",\n "ipa",\n "apk",\n "msix",\n "appx",\n "asar",\n "dmg",\n "pkg",\n "plist",\n "javascript",\n "source-map",\n "directory",\n "file",\n "unknown",\n "mach-o-universal",\n "javascript-bundle",\n "entitlements"\n ],\n "type": "string"\n },\n "local_path": {\n "type": "string"\n },\n "name": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "name",\n "digest",\n "format",\n "architecture",\n "local_path"\n ],\n "type": "object"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "evidence_id",\n "subject",\n "provider",\n "predicate_type",\n "operation",\n "parameters",\n "raw_result",\n "normalized_result",\n "confidence",\n "authority",\n "environment",\n "limitations",\n "locations",\n "evidence_links"\n ],\n "type": "object"\n },\n "evidence_id": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "result": {\n "additionalProperties": false,\n "properties": {\n "call_site": {\n "type": "string"\n },\n "limitations": {\n "items": {\n "type": "string"\n },\n "type": "array"\n },\n "mechanism": {\n "enum": [\n "direct",\n "computed",\n "indirect",\n "unavailable"\n ],\n "type": "string"\n },\n "procedure": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "status": {\n "enum": [\n "direct",\n "resolved-indirect",\n "ambiguous",\n "unresolved",\n "not-call",\n "unavailable"\n ],\n "type": "string"\n },\n "targets": {\n "items": {\n "additionalProperties": false,\n "properties": {\n "address": {\n "type": "string"\n },\n "basis": {\n "const": "provider-reference",\n "type": "string"\n },\n "procedure": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "references": {\n "items": {\n "additionalProperties": false,\n "properties": {\n "call": {\n "type": "boolean"\n },\n "computed": {\n "type": "boolean"\n },\n "indirect": {\n "type": "boolean"\n },\n "jump": {\n "type": "boolean"\n },\n "operand_index": {\n "maximum": 9007199254740991,\n "minimum": -9007199254740991,\n "type": "integer"\n },\n "target_address": {\n "type": "string"\n },\n "type": {\n "type": "string"\n }\n },\n "required": [\n "target_address",\n "type",\n "call",\n "jump",\n "indirect",\n "computed",\n "operand_index"\n ],\n "type": "object"\n },\n "type": "array"\n },\n "status": {\n "enum": [\n "direct",\n "resolved-indirect",\n "candidate"\n ],\n "type": "string"\n }\n },\n "required": [\n "address",\n "procedure",\n "status",\n "basis",\n "references"\n ],\n "type": "object"\n },\n "type": "array"\n }\n },\n "required": [\n "call_site",\n "procedure",\n "status",\n "mechanism",\n "targets",\n "limitations"\n ],\n "type": "object"\n }\n },\n "required": [\n "result",\n "evidence_id",\n "evidence"\n ],\n "type": "object"\n },\n "requiresSession": false,\n "title": "Resolve Native Call Targets"\n },\n {\n "analysisOperation": "address_name",\n "annotations": {\n "destructiveHint": false,\n "idempotentHint": true,\n "openWorldHint": false,\n "readOnlyHint": false\n },\n "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.",\n "effects": {\n "accessesNetwork": false,\n "changesUiState": false,\n "idempotent": true,\n "launchesProcess": false,\n "mayDiscardData": false,\n "mutatesSession": true,\n "mutatesTarget": false,\n "writesFilesystem": false\n },\n "inputSchema": {\n "$schema": "https://json-schema.org/draft/2020-12/schema",\n "examples": [\n {}\n ],\n "properties": {\n "address": {\n "description": "A provider-normalized address; default memory uses 0x-prefixed hexadecimal",\n "type": "string"\n },\n "document": {\n "description": "The document name",\n "type": "string"\n }\n },\n "type": "object"\n },\n "kind": "official-proxy",\n "name": "address_name",\n "outputSchema": {\n "$defs": {\n "__schema0": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "number"\n },\n {\n "type": "boolean"\n },\n {\n "type": "null"\n },\n {\n "items": {\n "$ref": "#/$defs/__schema0"\n },\n "type": "array"\n },\n {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n }\n ]\n }\n },\n "$schema": "https://json-schema.org/draft/2020-12/schema",\n "additionalProperties": false,\n "properties": {\n "evidence": {\n "additionalProperties": false,\n "properties": {\n "analysis_profile": {\n "additionalProperties": false,\n "properties": {\n "digest": {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n },\n "parameters": {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n },\n "provider": {\n "additionalProperties": false,\n "properties": {\n "id": {\n "minLength": 1,\n "type": "string"\n },\n "name": {\n "minLength": 1,\n "type": "string"\n },\n "version": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "id",\n "name",\n "version"\n ],\n "type": "object"\n }\n },\n "required": [\n "provider",\n "parameters",\n "digest"\n ],\n "type": "object"\n },\n "authority": {\n "enum": [\n "shipped-artifact",\n "controlled-replay",\n "historical-reference",\n "external-service",\n "analyst-inference"\n ],\n "type": "string"\n },\n "confidence": {\n "enum": [\n "observed",\n "derived",\n "inferred"\n ],\n "type": "string"\n },\n "environment": {\n "anyOf": [\n {\n "additionalProperties": false,\n "properties": {\n "architecture": {\n "minLength": 1,\n "type": "string"\n },\n "id": {\n "minLength": 1,\n "type": "string"\n },\n "isolation": {\n "enum": [\n "none",\n "process",\n "container",\n "virtual-machine"\n ],\n "type": "string"\n },\n "platform": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "id",\n "platform",\n "architecture",\n "isolation"\n ],\n "type": "object"\n },\n {\n "type": "null"\n }\n ]\n },\n "evidence_id": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "evidence_links": {\n "items": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "type": "array"\n },\n "limitations": {\n "items": {\n "type": "string"\n },\n "type": "array"\n },\n "locations": {\n "items": {\n "oneOf": [\n {\n "additionalProperties": false,\n "properties": {\n "address": {\n "minLength": 1,\n "type": "string"\n },\n "kind": {\n "const": "address",\n "type": "string"\n }\n },\n "required": [\n "kind",\n "address"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "end": {\n "minLength": 1,\n "type": "string"\n },\n "kind": {\n "const": "address-range",\n "type": "string"\n },\n "start": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "kind",\n "start",\n "end"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "kind": {\n "const": "artifact-path",\n "type": "string"\n },\n "path": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "kind",\n "path"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "kind": {\n "const": "file-offset",\n "type": "string"\n },\n "offset": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "kind",\n "offset"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "end": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "kind": {\n "const": "file-offset-range",\n "type": "string"\n },\n "start": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "kind",\n "start",\n "end"\n ],\n "type": "object"\n }\n ]\n },\n "type": "array"\n },\n "normalized_result": {\n "$ref": "#/$defs/__schema0"\n },\n "operation": {\n "minLength": 1,\n "type": "string"\n },\n "parameters": {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n },\n "predicate_type": {\n "minLength": 1,\n "type": "string"\n },\n "provider": {\n "additionalProperties": false,\n "properties": {\n "id": {\n "minLength": 1,\n "type": "string"\n },\n "name": {\n "minLength": 1,\n "type": "string"\n },\n "version": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "id",\n "name",\n "version"\n ],\n "type": "object"\n },\n "raw_result": {\n "anyOf": [\n {\n "$ref": "#/$defs/__schema0"\n },\n {\n "type": "null"\n }\n ]\n },\n "subject": {\n "anyOf": [\n {\n "additionalProperties": false,\n "properties": {\n "architecture": {\n "anyOf": [\n {\n "enum": [\n "x86",\n "x86_64",\n "arm",\n "arm64"\n ],\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "digest": {\n "additionalProperties": false,\n "properties": {\n "sha256": {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n }\n },\n "required": [\n "sha256"\n ],\n "type": "object"\n },\n "format": {\n "enum": [\n "hopper",\n "analysis-database",\n "mach-o",\n "elf",\n "pe",\n "dos-mz",\n "dos-com",\n "zip",\n "ipa",\n "apk",\n "msix",\n "appx",\n "asar",\n "dmg",\n "pkg",\n "plist",\n "javascript",\n "source-map",\n "directory",\n "file",\n "unknown",\n "mach-o-universal",\n "javascript-bundle",\n "entitlements"\n ],\n "type": "string"\n },\n "local_path": {\n "type": "string"\n },\n "name": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "name",\n "digest",\n "format",\n "architecture",\n "local_path"\n ],\n "type": "object"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "evidence_id",\n "subject",\n "provider",\n "predicate_type",\n "operation",\n "parameters",\n "raw_result",\n "normalized_result",\n "confidence",\n "authority",\n "environment",\n "limitations",\n "locations",\n "evidence_links"\n ],\n "type": "object"\n },\n "evidence_id": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "result": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "result",\n "evidence_id",\n "evidence"\n ],\n "type": "object"\n },\n "requiresSession": false,\n "title": "Address Name"\n },\n {\n "analysisOperation": "comment",\n "annotations": {\n "destructiveHint": false,\n "idempotentHint": true,\n "openWorldHint": false,\n "readOnlyHint": false\n },\n "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.",\n "effects": {\n "accessesNetwork": false,\n "changesUiState": false,\n "idempotent": true,\n "launchesProcess": false,\n "mayDiscardData": false,\n "mutatesSession": true,\n "mutatesTarget": false,\n "writesFilesystem": false\n },\n "inputSchema": {\n "$schema": "https://json-schema.org/draft/2020-12/schema",\n "examples": [\n {}\n ],\n "properties": {\n "address": {\n "description": "A provider-normalized address; default memory uses 0x-prefixed hexadecimal",\n "type": "string"\n },\n "document": {\n "description": "The document name",\n "type": "string"\n }\n },\n "type": "object"\n },\n "kind": "official-proxy",\n "name": "comment",\n "outputSchema": {\n "$defs": {\n "__schema0": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "number"\n },\n {\n "type": "boolean"\n },\n {\n "type": "null"\n },\n {\n "items": {\n "$ref": "#/$defs/__schema0"\n },\n "type": "array"\n },\n {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n }\n ]\n }\n },\n "$schema": "https://json-schema.org/draft/2020-12/schema",\n "additionalProperties": false,\n "properties": {\n "evidence": {\n "additionalProperties": false,\n "properties": {\n "analysis_profile": {\n "additionalProperties": false,\n "properties": {\n "digest": {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n },\n "parameters": {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n },\n "provider": {\n "additionalProperties": false,\n "properties": {\n "id": {\n "minLength": 1,\n "type": "string"\n },\n "name": {\n "minLength": 1,\n "type": "string"\n },\n "version": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "id",\n "name",\n "version"\n ],\n "type": "object"\n }\n },\n "required": [\n "provider",\n "parameters",\n "digest"\n ],\n "type": "object"\n },\n "authority": {\n "enum": [\n "shipped-artifact",\n "controlled-replay",\n "historical-reference",\n "external-service",\n "analyst-inference"\n ],\n "type": "string"\n },\n "confidence": {\n "enum": [\n "observed",\n "derived",\n "inferred"\n ],\n "type": "string"\n },\n "environment": {\n "anyOf": [\n {\n "additionalProperties": false,\n "properties": {\n "architecture": {\n "minLength": 1,\n "type": "string"\n },\n "id": {\n "minLength": 1,\n "type": "string"\n },\n "isolation": {\n "enum": [\n "none",\n "process",\n "container",\n "virtual-machine"\n ],\n "type": "string"\n },\n "platform": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "id",\n "platform",\n "architecture",\n "isolation"\n ],\n "type": "object"\n },\n {\n "type": "null"\n }\n ]\n },\n "evidence_id": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "evidence_links": {\n "items": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "type": "array"\n },\n "limitations": {\n "items": {\n "type": "string"\n },\n "type": "array"\n },\n "locations": {\n "items": {\n "oneOf": [\n {\n "additionalProperties": false,\n "properties": {\n "address": {\n "minLength": 1,\n "type": "string"\n },\n "kind": {\n "const": "address",\n "type": "string"\n }\n },\n "required": [\n "kind",\n "address"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "end": {\n "minLength": 1,\n "type": "string"\n },\n "kind": {\n "const": "address-range",\n "type": "string"\n },\n "start": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "kind",\n "start",\n "end"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "kind": {\n "const": "artifact-path",\n "type": "string"\n },\n "path": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "kind",\n "path"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "kind": {\n "const": "file-offset",\n "type": "string"\n },\n "offset": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "kind",\n "offset"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "end": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "kind": {\n "const": "file-offset-range",\n "type": "string"\n },\n "start": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "kind",\n "start",\n "end"\n ],\n "type": "object"\n }\n ]\n },\n "type": "array"\n },\n "normalized_result": {\n "$ref": "#/$defs/__schema0"\n },\n "operation": {\n "minLength": 1,\n "type": "string"\n },\n "parameters": {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n },\n "predicate_type": {\n "minLength": 1,\n "type": "string"\n },\n "provider": {\n "additionalProperties": false,\n "properties": {\n "id": {\n "minLength": 1,\n "type": "string"\n },\n "name": {\n "minLength": 1,\n "type": "string"\n },\n "version": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "id",\n "name",\n "version"\n ],\n "type": "object"\n },\n "raw_result": {\n "anyOf": [\n {\n "$ref": "#/$defs/__schema0"\n },\n {\n "type": "null"\n }\n ]\n },\n "subject": {\n "anyOf": [\n {\n "additionalProperties": false,\n "properties": {\n "architecture": {\n "anyOf": [\n {\n "enum": [\n "x86",\n "x86_64",\n "arm",\n "arm64"\n ],\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "digest": {\n "additionalProperties": false,\n "properties": {\n "sha256": {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n }\n },\n "required": [\n "sha256"\n ],\n "type": "object"\n },\n "format": {\n "enum": [\n "hopper",\n "analysis-database",\n "mach-o",\n "elf",\n "pe",\n "dos-mz",\n "dos-com",\n "zip",\n "ipa",\n "apk",\n "msix",\n "appx",\n "asar",\n "dmg",\n "pkg",\n "plist",\n "javascript",\n "source-map",\n "directory",\n "file",\n "unknown",\n "mach-o-universal",\n "javascript-bundle",\n "entitlements"\n ],\n "type": "string"\n },\n "local_path": {\n "type": "string"\n },\n "name": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "name",\n "digest",\n "format",\n "architecture",\n "local_path"\n ],\n "type": "object"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "evidence_id",\n "subject",\n "provider",\n "predicate_type",\n "operation",\n "parameters",\n "raw_result",\n "normalized_result",\n "confidence",\n "authority",\n "environment",\n "limitations",\n "locations",\n "evidence_links"\n ],\n "type": "object"\n },\n "evidence_id": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "result": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "result",\n "evidence_id",\n "evidence"\n ],\n "type": "object"\n },\n "requiresSession": false,\n "title": "Comment"\n },\n {\n "analysisOperation": "current_address",\n "annotations": {\n "destructiveHint": false,\n "idempotentHint": true,\n "openWorldHint": false,\n "readOnlyHint": false\n },\n "description": "Return Hopper\'s current cursor address for the selected document. Use only for interactive navigation state; prefer explicit addresses in reproducible investigations.",\n "effects": {\n "accessesNetwork": false,\n "changesUiState": false,\n "idempotent": true,\n "launchesProcess": false,\n "mayDiscardData": false,\n "mutatesSession": true,\n "mutatesTarget": false,\n "writesFilesystem": false\n },\n "inputSchema": {\n "$schema": "https://json-schema.org/draft/2020-12/schema",\n "examples": [\n {}\n ],\n "properties": {\n "document": {\n "description": "The document name",\n "type": "string"\n }\n },\n "type": "object"\n },\n "kind": "official-proxy",\n "name": "current_address",\n "outputSchema": {\n "$defs": {\n "__schema0": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "number"\n },\n {\n "type": "boolean"\n },\n {\n "type": "null"\n },\n {\n "items": {\n "$ref": "#/$defs/__schema0"\n },\n "type": "array"\n },\n {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n }\n ]\n }\n },\n "$schema": "https://json-schema.org/draft/2020-12/schema",\n "additionalProperties": false,\n "properties": {\n "evidence": {\n "additionalProperties": false,\n "properties": {\n "analysis_profile": {\n "additionalProperties": false,\n "properties": {\n "digest": {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n },\n "parameters": {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n },\n "provider": {\n "additionalProperties": false,\n "properties": {\n "id": {\n "minLength": 1,\n "type": "string"\n },\n "name": {\n "minLength": 1,\n "type": "string"\n },\n "version": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "id",\n "name",\n "version"\n ],\n "type": "object"\n }\n },\n "required": [\n "provider",\n "parameters",\n "digest"\n ],\n "type": "object"\n },\n "authority": {\n "enum": [\n "shipped-artifact",\n "controlled-replay",\n "historical-reference",\n "external-service",\n "analyst-inference"\n ],\n "type": "string"\n },\n "confidence": {\n "enum": [\n "observed",\n "derived",\n "inferred"\n ],\n "type": "string"\n },\n "environment": {\n "anyOf": [\n {\n "additionalProperties": false,\n "properties": {\n "architecture": {\n "minLength": 1,\n "type": "string"\n },\n "id": {\n "minLength": 1,\n "type": "string"\n },\n "isolation": {\n "enum": [\n "none",\n "process",\n "container",\n "virtual-machine"\n ],\n "type": "string"\n },\n "platform": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "id",\n "platform",\n "architecture",\n "isolation"\n ],\n "type": "object"\n },\n {\n "type": "null"\n }\n ]\n },\n "evidence_id": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "evidence_links": {\n "items": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "type": "array"\n },\n "limitations": {\n "items": {\n "type": "string"\n },\n "type": "array"\n },\n "locations": {\n "items": {\n "oneOf": [\n {\n "additionalProperties": false,\n "properties": {\n "address": {\n "minLength": 1,\n "type": "string"\n },\n "kind": {\n "const": "address",\n "type": "string"\n }\n },\n "required": [\n "kind",\n "address"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "end": {\n "minLength": 1,\n "type": "string"\n },\n "kind": {\n "const": "address-range",\n "type": "string"\n },\n "start": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "kind",\n "start",\n "end"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "kind": {\n "const": "artifact-path",\n "type": "string"\n },\n "path": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "kind",\n "path"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "kind": {\n "const": "file-offset",\n "type": "string"\n },\n "offset": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "kind",\n "offset"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "end": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "kind": {\n "const": "file-offset-range",\n "type": "string"\n },\n "start": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "kind",\n "start",\n "end"\n ],\n "type": "object"\n }\n ]\n },\n "type": "array"\n },\n "normalized_result": {\n "$ref": "#/$defs/__schema0"\n },\n "operation": {\n "minLength": 1,\n "type": "string"\n },\n "parameters": {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n },\n "predicate_type": {\n "minLength": 1,\n "type": "string"\n },\n "provider": {\n "additionalProperties": false,\n "properties": {\n "id": {\n "minLength": 1,\n "type": "string"\n },\n "name": {\n "minLength": 1,\n "type": "string"\n },\n "version": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "id",\n "name",\n "version"\n ],\n "type": "object"\n },\n "raw_result": {\n "anyOf": [\n {\n "$ref": "#/$defs/__schema0"\n },\n {\n "type": "null"\n }\n ]\n },\n "subject": {\n "anyOf": [\n {\n "additionalProperties": false,\n "properties": {\n "architecture": {\n "anyOf": [\n {\n "enum": [\n "x86",\n "x86_64",\n "arm",\n "arm64"\n ],\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "digest": {\n "additionalProperties": false,\n "properties": {\n "sha256": {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n }\n },\n "required": [\n "sha256"\n ],\n "type": "object"\n },\n "format": {\n "enum": [\n "hopper",\n "analysis-database",\n "mach-o",\n "elf",\n "pe",\n "dos-mz",\n "dos-com",\n "zip",\n "ipa",\n "apk",\n "msix",\n "appx",\n "asar",\n "dmg",\n "pkg",\n "plist",\n "javascript",\n "source-map",\n "directory",\n "file",\n "unknown",\n "mach-o-universal",\n "javascript-bundle",\n "entitlements"\n ],\n "type": "string"\n },\n "local_path": {\n "type": "string"\n },\n "name": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "name",\n "digest",\n "format",\n "architecture",\n "local_path"\n ],\n "type": "object"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "evidence_id",\n "subject",\n "provider",\n "predicate_type",\n "operation",\n "parameters",\n "raw_result",\n "normalized_result",\n "confidence",\n "authority",\n "environment",\n "limitations",\n "locations",\n "evidence_links"\n ],\n "type": "object"\n },\n "evidence_id": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "result": {\n "type": "string"\n }\n },\n "required": [\n "result",\n "evidence_id",\n "evidence"\n ],\n "type": "object"\n },\n "requiresSession": false,\n "title": "Current Address"\n },\n {\n "analysisOperation": "current_procedure",\n "annotations": {\n "destructiveHint": false,\n "idempotentHint": true,\n "openWorldHint": false,\n "readOnlyHint": false\n },\n "description": "Return the analyzed procedure containing Hopper\'s current cursor. This uses GUI cursor state and is not a procedure-name lookup.",\n "effects": {\n "accessesNetwork": false,\n "changesUiState": false,\n "idempotent": true,\n "launchesProcess": false,\n "mayDiscardData": false,\n "mutatesSession": true,\n "mutatesTarget": false,\n "writesFilesystem": false\n },\n "inputSchema": {\n "$schema": "https://json-schema.org/draft/2020-12/schema",\n "examples": [\n {}\n ],\n "properties": {\n "document": {\n "description": "The document name",\n "type": "string"\n }\n },\n "type": "object"\n },\n "kind": "official-proxy",\n "name": "current_procedure",\n "outputSchema": {\n "$defs": {\n "__schema0": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "number"\n },\n {\n "type": "boolean"\n },\n {\n "type": "null"\n },\n {\n "items": {\n "$ref": "#/$defs/__schema0"\n },\n "type": "array"\n },\n {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n }\n ]\n }\n },\n "$schema": "https://json-schema.org/draft/2020-12/schema",\n "additionalProperties": false,\n "properties": {\n "evidence": {\n "additionalProperties": false,\n "properties": {\n "analysis_profile": {\n "additionalProperties": false,\n "properties": {\n "digest": {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n },\n "parameters": {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n },\n "provider": {\n "additionalProperties": false,\n "properties": {\n "id": {\n "minLength": 1,\n "type": "string"\n },\n "name": {\n "minLength": 1,\n "type": "string"\n },\n "version": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "id",\n "name",\n "version"\n ],\n "type": "object"\n }\n },\n "required": [\n "provider",\n "parameters",\n "digest"\n ],\n "type": "object"\n },\n "authority": {\n "enum": [\n "shipped-artifact",\n "controlled-replay",\n "historical-reference",\n "external-service",\n "analyst-inference"\n ],\n "type": "string"\n },\n "confidence": {\n "enum": [\n "observed",\n "derived",\n "inferred"\n ],\n "type": "string"\n },\n "environment": {\n "anyOf": [\n {\n "additionalProperties": false,\n "properties": {\n "architecture": {\n "minLength": 1,\n "type": "string"\n },\n "id": {\n "minLength": 1,\n "type": "string"\n },\n "isolation": {\n "enum": [\n "none",\n "process",\n "container",\n "virtual-machine"\n ],\n "type": "string"\n },\n "platform": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "id",\n "platform",\n "architecture",\n "isolation"\n ],\n "type": "object"\n },\n {\n "type": "null"\n }\n ]\n },\n "evidence_id": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "evidence_links": {\n "items": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "type": "array"\n },\n "limitations": {\n "items": {\n "type": "string"\n },\n "type": "array"\n },\n "locations": {\n "items": {\n "oneOf": [\n {\n "additionalProperties": false,\n "properties": {\n "address": {\n "minLength": 1,\n "type": "string"\n },\n "kind": {\n "const": "address",\n "type": "string"\n }\n },\n "required": [\n "kind",\n "address"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "end": {\n "minLength": 1,\n "type": "string"\n },\n "kind": {\n "const": "address-range",\n "type": "string"\n },\n "start": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "kind",\n "start",\n "end"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "kind": {\n "const": "artifact-path",\n "type": "string"\n },\n "path": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "kind",\n "path"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "kind": {\n "const": "file-offset",\n "type": "string"\n },\n "offset": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "kind",\n "offset"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "end": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "kind": {\n "const": "file-offset-range",\n "type": "string"\n },\n "start": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "kind",\n "start",\n "end"\n ],\n "type": "object"\n }\n ]\n },\n "type": "array"\n },\n "normalized_result": {\n "$ref": "#/$defs/__schema0"\n },\n "operation": {\n "minLength": 1,\n "type": "string"\n },\n "parameters": {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n },\n "predicate_type": {\n "minLength": 1,\n "type": "string"\n },\n "provider": {\n "additionalProperties": false,\n "properties": {\n "id": {\n "minLength": 1,\n "type": "string"\n },\n "name": {\n "minLength": 1,\n "type": "string"\n },\n "version": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "id",\n "name",\n "version"\n ],\n "type": "object"\n },\n "raw_result": {\n "anyOf": [\n {\n "$ref": "#/$defs/__schema0"\n },\n {\n "type": "null"\n }\n ]\n },\n "subject": {\n "anyOf": [\n {\n "additionalProperties": false,\n "properties": {\n "architecture": {\n "anyOf": [\n {\n "enum": [\n "x86",\n "x86_64",\n "arm",\n "arm64"\n ],\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "digest": {\n "additionalProperties": false,\n "properties": {\n "sha256": {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n }\n },\n "required": [\n "sha256"\n ],\n "type": "object"\n },\n "format": {\n "enum": [\n "hopper",\n "analysis-database",\n "mach-o",\n "elf",\n "pe",\n "dos-mz",\n "dos-com",\n "zip",\n "ipa",\n "apk",\n "msix",\n "appx",\n "asar",\n "dmg",\n "pkg",\n "plist",\n "javascript",\n "source-map",\n "directory",\n "file",\n "unknown",\n "mach-o-universal",\n "javascript-bundle",\n "entitlements"\n ],\n "type": "string"\n },\n "local_path": {\n "type": "string"\n },\n "name": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "name",\n "digest",\n "format",\n "architecture",\n "local_path"\n ],\n "type": "object"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "evidence_id",\n "subject",\n "provider",\n "predicate_type",\n "operation",\n "parameters",\n "raw_result",\n "normalized_result",\n "confidence",\n "authority",\n "environment",\n "limitations",\n "locations",\n "evidence_links"\n ],\n "type": "object"\n },\n "evidence_id": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "result": {\n "type": "string"\n }\n },\n "required": [\n "result",\n "evidence_id",\n "evidence"\n ],\n "type": "object"\n },\n "requiresSession": false,\n "title": "Current Procedure"\n },\n {\n "analysisOperation": "current_document",\n "annotations": {\n "destructiveHint": false,\n "idempotentHint": true,\n "openWorldHint": false,\n "readOnlyHint": false\n },\n "description": "Return the document currently selected by REA\'s Hopper bridge.",\n "effects": {\n "accessesNetwork": false,\n "changesUiState": false,\n "idempotent": true,\n "launchesProcess": false,\n "mayDiscardData": false,\n "mutatesSession": true,\n "mutatesTarget": false,\n "writesFilesystem": false\n },\n "inputSchema": {\n "$schema": "https://json-schema.org/draft/2020-12/schema",\n "examples": [\n {}\n ],\n "properties": {},\n "type": "object"\n },\n "kind": "official-proxy",\n "name": "current_document",\n "outputSchema": {\n "$defs": {\n "__schema0": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "number"\n },\n {\n "type": "boolean"\n },\n {\n "type": "null"\n },\n {\n "items": {\n "$ref": "#/$defs/__schema0"\n },\n "type": "array"\n },\n {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n }\n ]\n }\n },\n "$schema": "https://json-schema.org/draft/2020-12/schema",\n "additionalProperties": false,\n "properties": {\n "evidence": {\n "additionalProperties": false,\n "properties": {\n "analysis_profile": {\n "additionalProperties": false,\n "properties": {\n "digest": {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n },\n "parameters": {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n },\n "provider": {\n "additionalProperties": false,\n "properties": {\n "id": {\n "minLength": 1,\n "type": "string"\n },\n "name": {\n "minLength": 1,\n "type": "string"\n },\n "version": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "id",\n "name",\n "version"\n ],\n "type": "object"\n }\n },\n "required": [\n "provider",\n "parameters",\n "digest"\n ],\n "type": "object"\n },\n "authority": {\n "enum": [\n "shipped-artifact",\n "controlled-replay",\n "historical-reference",\n "external-service",\n "analyst-inference"\n ],\n "type": "string"\n },\n "confidence": {\n "enum": [\n "observed",\n "derived",\n "inferred"\n ],\n "type": "string"\n },\n "environment": {\n "anyOf": [\n {\n "additionalProperties": false,\n "properties": {\n "architecture": {\n "minLength": 1,\n "type": "string"\n },\n "id": {\n "minLength": 1,\n "type": "string"\n },\n "isolation": {\n "enum": [\n "none",\n "process",\n "container",\n "virtual-machine"\n ],\n "type": "string"\n },\n "platform": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "id",\n "platform",\n "architecture",\n "isolation"\n ],\n "type": "object"\n },\n {\n "type": "null"\n }\n ]\n },\n "evidence_id": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "evidence_links": {\n "items": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "type": "array"\n },\n "limitations": {\n "items": {\n "type": "string"\n },\n "type": "array"\n },\n "locations": {\n "items": {\n "oneOf": [\n {\n "additionalProperties": false,\n "properties": {\n "address": {\n "minLength": 1,\n "type": "string"\n },\n "kind": {\n "const": "address",\n "type": "string"\n }\n },\n "required": [\n "kind",\n "address"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "end": {\n "minLength": 1,\n "type": "string"\n },\n "kind": {\n "const": "address-range",\n "type": "string"\n },\n "start": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "kind",\n "start",\n "end"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "kind": {\n "const": "artifact-path",\n "type": "string"\n },\n "path": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "kind",\n "path"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "kind": {\n "const": "file-offset",\n "type": "string"\n },\n "offset": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "kind",\n "offset"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "end": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "kind": {\n "const": "file-offset-range",\n "type": "string"\n },\n "start": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "kind",\n "start",\n "end"\n ],\n "type": "object"\n }\n ]\n },\n "type": "array"\n },\n "normalized_result": {\n "$ref": "#/$defs/__schema0"\n },\n "operation": {\n "minLength": 1,\n "type": "string"\n },\n "parameters": {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n },\n "predicate_type": {\n "minLength": 1,\n "type": "string"\n },\n "provider": {\n "additionalProperties": false,\n "properties": {\n "id": {\n "minLength": 1,\n "type": "string"\n },\n "name": {\n "minLength": 1,\n "type": "string"\n },\n "version": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "id",\n "name",\n "version"\n ],\n "type": "object"\n },\n "raw_result": {\n "anyOf": [\n {\n "$ref": "#/$defs/__schema0"\n },\n {\n "type": "null"\n }\n ]\n },\n "subject": {\n "anyOf": [\n {\n "additionalProperties": false,\n "properties": {\n "architecture": {\n "anyOf": [\n {\n "enum": [\n "x86",\n "x86_64",\n "arm",\n "arm64"\n ],\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "digest": {\n "additionalProperties": false,\n "properties": {\n "sha256": {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n }\n },\n "required": [\n "sha256"\n ],\n "type": "object"\n },\n "format": {\n "enum": [\n "hopper",\n "analysis-database",\n "mach-o",\n "elf",\n "pe",\n "dos-mz",\n "dos-com",\n "zip",\n "ipa",\n "apk",\n "msix",\n "appx",\n "asar",\n "dmg",\n "pkg",\n "plist",\n "javascript",\n "source-map",\n "directory",\n "file",\n "unknown",\n "mach-o-universal",\n "javascript-bundle",\n "entitlements"\n ],\n "type": "string"\n },\n "local_path": {\n "type": "string"\n },\n "name": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "name",\n "digest",\n "format",\n "architecture",\n "local_path"\n ],\n "type": "object"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "evidence_id",\n "subject",\n "provider",\n "predicate_type",\n "operation",\n "parameters",\n "raw_result",\n "normalized_result",\n "confidence",\n "authority",\n "environment",\n "limitations",\n "locations",\n "evidence_links"\n ],\n "type": "object"\n },\n "evidence_id": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "result": {\n "type": "string"\n }\n },\n "required": [\n "result",\n "evidence_id",\n "evidence"\n ],\n "type": "object"\n },\n "requiresSession": false,\n "title": "Current Document"\n },\n {\n "analysisOperation": "goto_address",\n "annotations": {\n "destructiveHint": false,\n "idempotentHint": true,\n "openWorldHint": false,\n "readOnlyHint": false\n },\n "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.",\n "effects": {\n "accessesNetwork": false,\n "changesUiState": true,\n "idempotent": true,\n "launchesProcess": false,\n "mayDiscardData": false,\n "mutatesSession": true,\n "mutatesTarget": false,\n "writesFilesystem": false\n },\n "inputSchema": {\n "$schema": "https://json-schema.org/draft/2020-12/schema",\n "examples": [\n {\n "address": "0x1000"\n }\n ],\n "properties": {\n "address": {\n "description": "A provider-normalized address; default memory uses 0x-prefixed hexadecimal",\n "type": "string"\n },\n "document": {\n "description": "The document name",\n "type": "string"\n }\n },\n "required": [\n "address"\n ],\n "type": "object"\n },\n "kind": "official-proxy",\n "name": "goto_address",\n "outputSchema": {\n "$defs": {\n "__schema0": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "number"\n },\n {\n "type": "boolean"\n },\n {\n "type": "null"\n },\n {\n "items": {\n "$ref": "#/$defs/__schema0"\n },\n "type": "array"\n },\n {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n }\n ]\n }\n },\n "$schema": "https://json-schema.org/draft/2020-12/schema",\n "additionalProperties": false,\n "properties": {\n "evidence": {\n "additionalProperties": false,\n "properties": {\n "analysis_profile": {\n "additionalProperties": false,\n "properties": {\n "digest": {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n },\n "parameters": {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n },\n "provider": {\n "additionalProperties": false,\n "properties": {\n "id": {\n "minLength": 1,\n "type": "string"\n },\n "name": {\n "minLength": 1,\n "type": "string"\n },\n "version": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "id",\n "name",\n "version"\n ],\n "type": "object"\n }\n },\n "required": [\n "provider",\n "parameters",\n "digest"\n ],\n "type": "object"\n },\n "authority": {\n "enum": [\n "shipped-artifact",\n "controlled-replay",\n "historical-reference",\n "external-service",\n "analyst-inference"\n ],\n "type": "string"\n },\n "confidence": {\n "enum": [\n "observed",\n "derived",\n "inferred"\n ],\n "type": "string"\n },\n "environment": {\n "anyOf": [\n {\n "additionalProperties": false,\n "properties": {\n "architecture": {\n "minLength": 1,\n "type": "string"\n },\n "id": {\n "minLength": 1,\n "type": "string"\n },\n "isolation": {\n "enum": [\n "none",\n "process",\n "container",\n "virtual-machine"\n ],\n "type": "string"\n },\n "platform": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "id",\n "platform",\n "architecture",\n "isolation"\n ],\n "type": "object"\n },\n {\n "type": "null"\n }\n ]\n },\n "evidence_id": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "evidence_links": {\n "items": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "type": "array"\n },\n "limitations": {\n "items": {\n "type": "string"\n },\n "type": "array"\n },\n "locations": {\n "items": {\n "oneOf": [\n {\n "additionalProperties": false,\n "properties": {\n "address": {\n "minLength": 1,\n "type": "string"\n },\n "kind": {\n "const": "address",\n "type": "string"\n }\n },\n "required": [\n "kind",\n "address"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "end": {\n "minLength": 1,\n "type": "string"\n },\n "kind": {\n "const": "address-range",\n "type": "string"\n },\n "start": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "kind",\n "start",\n "end"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "kind": {\n "const": "artifact-path",\n "type": "string"\n },\n "path": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "kind",\n "path"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "kind": {\n "const": "file-offset",\n "type": "string"\n },\n "offset": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "kind",\n "offset"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "end": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "kind": {\n "const": "file-offset-range",\n "type": "string"\n },\n "start": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "kind",\n "start",\n "end"\n ],\n "type": "object"\n }\n ]\n },\n "type": "array"\n },\n "normalized_result": {\n "$ref": "#/$defs/__schema0"\n },\n "operation": {\n "minLength": 1,\n "type": "string"\n },\n "parameters": {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n },\n "predicate_type": {\n "minLength": 1,\n "type": "string"\n },\n "provider": {\n "additionalProperties": false,\n "properties": {\n "id": {\n "minLength": 1,\n "type": "string"\n },\n "name": {\n "minLength": 1,\n "type": "string"\n },\n "version": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "id",\n "name",\n "version"\n ],\n "type": "object"\n },\n "raw_result": {\n "anyOf": [\n {\n "$ref": "#/$defs/__schema0"\n },\n {\n "type": "null"\n }\n ]\n },\n "subject": {\n "anyOf": [\n {\n "additionalProperties": false,\n "properties": {\n "architecture": {\n "anyOf": [\n {\n "enum": [\n "x86",\n "x86_64",\n "arm",\n "arm64"\n ],\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "digest": {\n "additionalProperties": false,\n "properties": {\n "sha256": {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n }\n },\n "required": [\n "sha256"\n ],\n "type": "object"\n },\n "format": {\n "enum": [\n "hopper",\n "analysis-database",\n "mach-o",\n "elf",\n "pe",\n "dos-mz",\n "dos-com",\n "zip",\n "ipa",\n "apk",\n "msix",\n "appx",\n "asar",\n "dmg",\n "pkg",\n "plist",\n "javascript",\n "source-map",\n "directory",\n "file",\n "unknown",\n "mach-o-universal",\n "javascript-bundle",\n "entitlements"\n ],\n "type": "string"\n },\n "local_path": {\n "type": "string"\n },\n "name": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "name",\n "digest",\n "format",\n "architecture",\n "local_path"\n ],\n "type": "object"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "evidence_id",\n "subject",\n "provider",\n "predicate_type",\n "operation",\n "parameters",\n "raw_result",\n "normalized_result",\n "confidence",\n "authority",\n "environment",\n "limitations",\n "locations",\n "evidence_links"\n ],\n "type": "object"\n },\n "evidence_id": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "result": {\n "type": "string"\n }\n },\n "required": [\n "result",\n "evidence_id",\n "evidence"\n ],\n "type": "object"\n },\n "requiresSession": false,\n "title": "Goto Address"\n },\n {\n "analysisOperation": "inline_comment",\n "annotations": {\n "destructiveHint": false,\n "idempotentHint": true,\n "openWorldHint": false,\n "readOnlyHint": false\n },\n "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.",\n "effects": {\n "accessesNetwork": false,\n "changesUiState": false,\n "idempotent": true,\n "launchesProcess": false,\n "mayDiscardData": false,\n "mutatesSession": true,\n "mutatesTarget": false,\n "writesFilesystem": false\n },\n "inputSchema": {\n "$schema": "https://json-schema.org/draft/2020-12/schema",\n "examples": [\n {}\n ],\n "properties": {\n "address": {\n "description": "A provider-normalized address; default memory uses 0x-prefixed hexadecimal",\n "type": "string"\n },\n "document": {\n "description": "The document name",\n "type": "string"\n }\n },\n "type": "object"\n },\n "kind": "official-proxy",\n "name": "inline_comment",\n "outputSchema": {\n "$defs": {\n "__schema0": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "number"\n },\n {\n "type": "boolean"\n },\n {\n "type": "null"\n },\n {\n "items": {\n "$ref": "#/$defs/__schema0"\n },\n "type": "array"\n },\n {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n }\n ]\n }\n },\n "$schema": "https://json-schema.org/draft/2020-12/schema",\n "additionalProperties": false,\n "properties": {\n "evidence": {\n "additionalProperties": false,\n "properties": {\n "analysis_profile": {\n "additionalProperties": false,\n "properties": {\n "digest": {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n },\n "parameters": {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n },\n "provider": {\n "additionalProperties": false,\n "properties": {\n "id": {\n "minLength": 1,\n "type": "string"\n },\n "name": {\n "minLength": 1,\n "type": "string"\n },\n "version": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "id",\n "name",\n "version"\n ],\n "type": "object"\n }\n },\n "required": [\n "provider",\n "parameters",\n "digest"\n ],\n "type": "object"\n },\n "authority": {\n "enum": [\n "shipped-artifact",\n "controlled-replay",\n "historical-reference",\n "external-service",\n "analyst-inference"\n ],\n "type": "string"\n },\n "confidence": {\n "enum": [\n "observed",\n "derived",\n "inferred"\n ],\n "type": "string"\n },\n "environment": {\n "anyOf": [\n {\n "additionalProperties": false,\n "properties": {\n "architecture": {\n "minLength": 1,\n "type": "string"\n },\n "id": {\n "minLength": 1,\n "type": "string"\n },\n "isolation": {\n "enum": [\n "none",\n "process",\n "container",\n "virtual-machine"\n ],\n "type": "string"\n },\n "platform": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "id",\n "platform",\n "architecture",\n "isolation"\n ],\n "type": "object"\n },\n {\n "type": "null"\n }\n ]\n },\n "evidence_id": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "evidence_links": {\n "items": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "type": "array"\n },\n "limitations": {\n "items": {\n "type": "string"\n },\n "type": "array"\n },\n "locations": {\n "items": {\n "oneOf": [\n {\n "additionalProperties": false,\n "properties": {\n "address": {\n "minLength": 1,\n "type": "string"\n },\n "kind": {\n "const": "address",\n "type": "string"\n }\n },\n "required": [\n "kind",\n "address"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "end": {\n "minLength": 1,\n "type": "string"\n },\n "kind": {\n "const": "address-range",\n "type": "string"\n },\n "start": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "kind",\n "start",\n "end"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "kind": {\n "const": "artifact-path",\n "type": "string"\n },\n "path": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "kind",\n "path"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "kind": {\n "const": "file-offset",\n "type": "string"\n },\n "offset": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "kind",\n "offset"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "end": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "kind": {\n "const": "file-offset-range",\n "type": "string"\n },\n "start": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "kind",\n "start",\n "end"\n ],\n "type": "object"\n }\n ]\n },\n "type": "array"\n },\n "normalized_result": {\n "$ref": "#/$defs/__schema0"\n },\n "operation": {\n "minLength": 1,\n "type": "string"\n },\n "parameters": {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n },\n "predicate_type": {\n "minLength": 1,\n "type": "string"\n },\n "provider": {\n "additionalProperties": false,\n "properties": {\n "id": {\n "minLength": 1,\n "type": "string"\n },\n "name": {\n "minLength": 1,\n "type": "string"\n },\n "version": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "id",\n "name",\n "version"\n ],\n "type": "object"\n },\n "raw_result": {\n "anyOf": [\n {\n "$ref": "#/$defs/__schema0"\n },\n {\n "type": "null"\n }\n ]\n },\n "subject": {\n "anyOf": [\n {\n "additionalProperties": false,\n "properties": {\n "architecture": {\n "anyOf": [\n {\n "enum": [\n "x86",\n "x86_64",\n "arm",\n "arm64"\n ],\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "digest": {\n "additionalProperties": false,\n "properties": {\n "sha256": {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n }\n },\n "required": [\n "sha256"\n ],\n "type": "object"\n },\n "format": {\n "enum": [\n "hopper",\n "analysis-database",\n "mach-o",\n "elf",\n "pe",\n "dos-mz",\n "dos-com",\n "zip",\n "ipa",\n "apk",\n "msix",\n "appx",\n "asar",\n "dmg",\n "pkg",\n "plist",\n "javascript",\n "source-map",\n "directory",\n "file",\n "unknown",\n "mach-o-universal",\n "javascript-bundle",\n "entitlements"\n ],\n "type": "string"\n },\n "local_path": {\n "type": "string"\n },\n "name": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "name",\n "digest",\n "format",\n "architecture",\n "local_path"\n ],\n "type": "object"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "evidence_id",\n "subject",\n "provider",\n "predicate_type",\n "operation",\n "parameters",\n "raw_result",\n "normalized_result",\n "confidence",\n "authority",\n "environment",\n "limitations",\n "locations",\n "evidence_links"\n ],\n "type": "object"\n },\n "evidence_id": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "result": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "result",\n "evidence_id",\n "evidence"\n ],\n "type": "object"\n },\n "requiresSession": false,\n "title": "Inline Comment"\n },\n {\n "analysisOperation": "list_bookmarks",\n "annotations": {\n "destructiveHint": false,\n "idempotentHint": true,\n "openWorldHint": false,\n "readOnlyHint": false\n },\n "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.",\n "effects": {\n "accessesNetwork": false,\n "changesUiState": false,\n "idempotent": true,\n "launchesProcess": false,\n "mayDiscardData": false,\n "mutatesSession": true,\n "mutatesTarget": false,\n "writesFilesystem": false\n },\n "inputSchema": {\n "$schema": "https://json-schema.org/draft/2020-12/schema",\n "examples": [\n {}\n ],\n "properties": {\n "document": {\n "description": "The document name",\n "type": "string"\n }\n },\n "type": "object"\n },\n "kind": "official-proxy",\n "name": "list_bookmarks",\n "outputSchema": {\n "$defs": {\n "__schema0": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "number"\n },\n {\n "type": "boolean"\n },\n {\n "type": "null"\n },\n {\n "items": {\n "$ref": "#/$defs/__schema0"\n },\n "type": "array"\n },\n {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n }\n ]\n }\n },\n "$schema": "https://json-schema.org/draft/2020-12/schema",\n "additionalProperties": false,\n "properties": {\n "evidence": {\n "additionalProperties": false,\n "properties": {\n "analysis_profile": {\n "additionalProperties": false,\n "properties": {\n "digest": {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n },\n "parameters": {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n },\n "provider": {\n "additionalProperties": false,\n "properties": {\n "id": {\n "minLength": 1,\n "type": "string"\n },\n "name": {\n "minLength": 1,\n "type": "string"\n },\n "version": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "id",\n "name",\n "version"\n ],\n "type": "object"\n }\n },\n "required": [\n "provider",\n "parameters",\n "digest"\n ],\n "type": "object"\n },\n "authority": {\n "enum": [\n "shipped-artifact",\n "controlled-replay",\n "historical-reference",\n "external-service",\n "analyst-inference"\n ],\n "type": "string"\n },\n "confidence": {\n "enum": [\n "observed",\n "derived",\n "inferred"\n ],\n "type": "string"\n },\n "environment": {\n "anyOf": [\n {\n "additionalProperties": false,\n "properties": {\n "architecture": {\n "minLength": 1,\n "type": "string"\n },\n "id": {\n "minLength": 1,\n "type": "string"\n },\n "isolation": {\n "enum": [\n "none",\n "process",\n "container",\n "virtual-machine"\n ],\n "type": "string"\n },\n "platform": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "id",\n "platform",\n "architecture",\n "isolation"\n ],\n "type": "object"\n },\n {\n "type": "null"\n }\n ]\n },\n "evidence_id": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "evidence_links": {\n "items": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "type": "array"\n },\n "limitations": {\n "items": {\n "type": "string"\n },\n "type": "array"\n },\n "locations": {\n "items": {\n "oneOf": [\n {\n "additionalProperties": false,\n "properties": {\n "address": {\n "minLength": 1,\n "type": "string"\n },\n "kind": {\n "const": "address",\n "type": "string"\n }\n },\n "required": [\n "kind",\n "address"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "end": {\n "minLength": 1,\n "type": "string"\n },\n "kind": {\n "const": "address-range",\n "type": "string"\n },\n "start": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "kind",\n "start",\n "end"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "kind": {\n "const": "artifact-path",\n "type": "string"\n },\n "path": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "kind",\n "path"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "kind": {\n "const": "file-offset",\n "type": "string"\n },\n "offset": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "kind",\n "offset"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "end": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "kind": {\n "const": "file-offset-range",\n "type": "string"\n },\n "start": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "kind",\n "start",\n "end"\n ],\n "type": "object"\n }\n ]\n },\n "type": "array"\n },\n "normalized_result": {\n "$ref": "#/$defs/__schema0"\n },\n "operation": {\n "minLength": 1,\n "type": "string"\n },\n "parameters": {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n },\n "predicate_type": {\n "minLength": 1,\n "type": "string"\n },\n "provider": {\n "additionalProperties": false,\n "properties": {\n "id": {\n "minLength": 1,\n "type": "string"\n },\n "name": {\n "minLength": 1,\n "type": "string"\n },\n "version": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "id",\n "name",\n "version"\n ],\n "type": "object"\n },\n "raw_result": {\n "anyOf": [\n {\n "$ref": "#/$defs/__schema0"\n },\n {\n "type": "null"\n }\n ]\n },\n "subject": {\n "anyOf": [\n {\n "additionalProperties": false,\n "properties": {\n "architecture": {\n "anyOf": [\n {\n "enum": [\n "x86",\n "x86_64",\n "arm",\n "arm64"\n ],\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "digest": {\n "additionalProperties": false,\n "properties": {\n "sha256": {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n }\n },\n "required": [\n "sha256"\n ],\n "type": "object"\n },\n "format": {\n "enum": [\n "hopper",\n "analysis-database",\n "mach-o",\n "elf",\n "pe",\n "dos-mz",\n "dos-com",\n "zip",\n "ipa",\n "apk",\n "msix",\n "appx",\n "asar",\n "dmg",\n "pkg",\n "plist",\n "javascript",\n "source-map",\n "directory",\n "file",\n "unknown",\n "mach-o-universal",\n "javascript-bundle",\n "entitlements"\n ],\n "type": "string"\n },\n "local_path": {\n "type": "string"\n },\n "name": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "name",\n "digest",\n "format",\n "architecture",\n "local_path"\n ],\n "type": "object"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "evidence_id",\n "subject",\n "provider",\n "predicate_type",\n "operation",\n "parameters",\n "raw_result",\n "normalized_result",\n "confidence",\n "authority",\n "environment",\n "limitations",\n "locations",\n "evidence_links"\n ],\n "type": "object"\n },\n "evidence_id": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "result": {\n "items": {\n "additionalProperties": false,\n "properties": {\n "address": {\n "type": "string"\n },\n "name": {\n "type": "string"\n }\n },\n "required": [\n "address",\n "name"\n ],\n "type": "object"\n },\n "type": "array"\n }\n },\n "required": [\n "result",\n "evidence_id",\n "evidence"\n ],\n "type": "object"\n },\n "requiresSession": false,\n "title": "List Bookmarks"\n },\n {\n "analysisOperation": "list_documents",\n "annotations": {\n "destructiveHint": false,\n "idempotentHint": true,\n "openWorldHint": false,\n "readOnlyHint": false\n },\n "description": "List provider program or document identities. Hopper may expose several documents; a Ghidra headless session contains exactly its one imported Program.",\n "effects": {\n "accessesNetwork": false,\n "changesUiState": false,\n "idempotent": true,\n "launchesProcess": false,\n "mayDiscardData": false,\n "mutatesSession": true,\n "mutatesTarget": false,\n "writesFilesystem": false\n },\n "inputSchema": {\n "$schema": "https://json-schema.org/draft/2020-12/schema",\n "examples": [\n {}\n ],\n "properties": {},\n "type": "object"\n },\n "kind": "official-proxy",\n "name": "list_documents",\n "outputSchema": {\n "$defs": {\n "__schema0": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "number"\n },\n {\n "type": "boolean"\n },\n {\n "type": "null"\n },\n {\n "items": {\n "$ref": "#/$defs/__schema0"\n },\n "type": "array"\n },\n {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n }\n ]\n }\n },\n "$schema": "https://json-schema.org/draft/2020-12/schema",\n "additionalProperties": false,\n "properties": {\n "evidence": {\n "additionalProperties": false,\n "properties": {\n "analysis_profile": {\n "additionalProperties": false,\n "properties": {\n "digest": {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n },\n "parameters": {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n },\n "provider": {\n "additionalProperties": false,\n "properties": {\n "id": {\n "minLength": 1,\n "type": "string"\n },\n "name": {\n "minLength": 1,\n "type": "string"\n },\n "version": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "id",\n "name",\n "version"\n ],\n "type": "object"\n }\n },\n "required": [\n "provider",\n "parameters",\n "digest"\n ],\n "type": "object"\n },\n "authority": {\n "enum": [\n "shipped-artifact",\n "controlled-replay",\n "historical-reference",\n "external-service",\n "analyst-inference"\n ],\n "type": "string"\n },\n "confidence": {\n "enum": [\n "observed",\n "derived",\n "inferred"\n ],\n "type": "string"\n },\n "environment": {\n "anyOf": [\n {\n "additionalProperties": false,\n "properties": {\n "architecture": {\n "minLength": 1,\n "type": "string"\n },\n "id": {\n "minLength": 1,\n "type": "string"\n },\n "isolation": {\n "enum": [\n "none",\n "process",\n "container",\n "virtual-machine"\n ],\n "type": "string"\n },\n "platform": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "id",\n "platform",\n "architecture",\n "isolation"\n ],\n "type": "object"\n },\n {\n "type": "null"\n }\n ]\n },\n "evidence_id": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "evidence_links": {\n "items": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "type": "array"\n },\n "limitations": {\n "items": {\n "type": "string"\n },\n "type": "array"\n },\n "locations": {\n "items": {\n "oneOf": [\n {\n "additionalProperties": false,\n "properties": {\n "address": {\n "minLength": 1,\n "type": "string"\n },\n "kind": {\n "const": "address",\n "type": "string"\n }\n },\n "required": [\n "kind",\n "address"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "end": {\n "minLength": 1,\n "type": "string"\n },\n "kind": {\n "const": "address-range",\n "type": "string"\n },\n "start": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "kind",\n "start",\n "end"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "kind": {\n "const": "artifact-path",\n "type": "string"\n },\n "path": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "kind",\n "path"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "kind": {\n "const": "file-offset",\n "type": "string"\n },\n "offset": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "kind",\n "offset"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "end": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "kind": {\n "const": "file-offset-range",\n "type": "string"\n },\n "start": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "kind",\n "start",\n "end"\n ],\n "type": "object"\n }\n ]\n },\n "type": "array"\n },\n "normalized_result": {\n "$ref": "#/$defs/__schema0"\n },\n "operation": {\n "minLength": 1,\n "type": "string"\n },\n "parameters": {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n },\n "predicate_type": {\n "minLength": 1,\n "type": "string"\n },\n "provider": {\n "additionalProperties": false,\n "properties": {\n "id": {\n "minLength": 1,\n "type": "string"\n },\n "name": {\n "minLength": 1,\n "type": "string"\n },\n "version": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "id",\n "name",\n "version"\n ],\n "type": "object"\n },\n "raw_result": {\n "anyOf": [\n {\n "$ref": "#/$defs/__schema0"\n },\n {\n "type": "null"\n }\n ]\n },\n "subject": {\n "anyOf": [\n {\n "additionalProperties": false,\n "properties": {\n "architecture": {\n "anyOf": [\n {\n "enum": [\n "x86",\n "x86_64",\n "arm",\n "arm64"\n ],\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "digest": {\n "additionalProperties": false,\n "properties": {\n "sha256": {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n }\n },\n "required": [\n "sha256"\n ],\n "type": "object"\n },\n "format": {\n "enum": [\n "hopper",\n "analysis-database",\n "mach-o",\n "elf",\n "pe",\n "dos-mz",\n "dos-com",\n "zip",\n "ipa",\n "apk",\n "msix",\n "appx",\n "asar",\n "dmg",\n "pkg",\n "plist",\n "javascript",\n "source-map",\n "directory",\n "file",\n "unknown",\n "mach-o-universal",\n "javascript-bundle",\n "entitlements"\n ],\n "type": "string"\n },\n "local_path": {\n "type": "string"\n },\n "name": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "name",\n "digest",\n "format",\n "architecture",\n "local_path"\n ],\n "type": "object"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "evidence_id",\n "subject",\n "provider",\n "predicate_type",\n "operation",\n "parameters",\n "raw_result",\n "normalized_result",\n "confidence",\n "authority",\n "environment",\n "limitations",\n "locations",\n "evidence_links"\n ],\n "type": "object"\n },\n "evidence_id": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "result": {\n "items": {\n "type": "string"\n },\n "type": "array"\n }\n },\n "required": [\n "result",\n "evidence_id",\n "evidence"\n ],\n "type": "object"\n },\n "requiresSession": false,\n "title": "List Documents"\n },\n {\n "analysisOperation": "list_names",\n "annotations": {\n "destructiveHint": false,\n "idempotentHint": true,\n "openWorldHint": false,\n "readOnlyHint": false\n },\n "description": "List every analyzed memory and external symbol as address/value pairs. Provider metadata distinguishes Ghidra primary, dynamic, external, type, and source facts when available.",\n "effects": {\n "accessesNetwork": false,\n "changesUiState": false,\n "idempotent": true,\n "launchesProcess": false,\n "mayDiscardData": false,\n "mutatesSession": true,\n "mutatesTarget": false,\n "writesFilesystem": false\n },\n "inputSchema": {\n "$schema": "https://json-schema.org/draft/2020-12/schema",\n "examples": [\n {}\n ],\n "properties": {\n "address": {\n "description": "A provider-normalized address; default memory uses 0x-prefixed hexadecimal",\n "type": "string"\n },\n "document": {\n "description": "The document name",\n "type": "string"\n }\n },\n "type": "object"\n },\n "kind": "official-proxy",\n "name": "list_names",\n "outputSchema": {\n "$defs": {\n "__schema0": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "number"\n },\n {\n "type": "boolean"\n },\n {\n "type": "null"\n },\n {\n "items": {\n "$ref": "#/$defs/__schema0"\n },\n "type": "array"\n },\n {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n }\n ]\n }\n },\n "$schema": "https://json-schema.org/draft/2020-12/schema",\n "additionalProperties": false,\n "properties": {\n "evidence": {\n "additionalProperties": false,\n "properties": {\n "analysis_profile": {\n "additionalProperties": false,\n "properties": {\n "digest": {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n },\n "parameters": {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n },\n "provider": {\n "additionalProperties": false,\n "properties": {\n "id": {\n "minLength": 1,\n "type": "string"\n },\n "name": {\n "minLength": 1,\n "type": "string"\n },\n "version": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "id",\n "name",\n "version"\n ],\n "type": "object"\n }\n },\n "required": [\n "provider",\n "parameters",\n "digest"\n ],\n "type": "object"\n },\n "authority": {\n "enum": [\n "shipped-artifact",\n "controlled-replay",\n "historical-reference",\n "external-service",\n "analyst-inference"\n ],\n "type": "string"\n },\n "confidence": {\n "enum": [\n "observed",\n "derived",\n "inferred"\n ],\n "type": "string"\n },\n "environment": {\n "anyOf": [\n {\n "additionalProperties": false,\n "properties": {\n "architecture": {\n "minLength": 1,\n "type": "string"\n },\n "id": {\n "minLength": 1,\n "type": "string"\n },\n "isolation": {\n "enum": [\n "none",\n "process",\n "container",\n "virtual-machine"\n ],\n "type": "string"\n },\n "platform": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "id",\n "platform",\n "architecture",\n "isolation"\n ],\n "type": "object"\n },\n {\n "type": "null"\n }\n ]\n },\n "evidence_id": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "evidence_links": {\n "items": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "type": "array"\n },\n "limitations": {\n "items": {\n "type": "string"\n },\n "type": "array"\n },\n "locations": {\n "items": {\n "oneOf": [\n {\n "additionalProperties": false,\n "properties": {\n "address": {\n "minLength": 1,\n "type": "string"\n },\n "kind": {\n "const": "address",\n "type": "string"\n }\n },\n "required": [\n "kind",\n "address"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "end": {\n "minLength": 1,\n "type": "string"\n },\n "kind": {\n "const": "address-range",\n "type": "string"\n },\n "start": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "kind",\n "start",\n "end"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "kind": {\n "const": "artifact-path",\n "type": "string"\n },\n "path": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "kind",\n "path"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "kind": {\n "const": "file-offset",\n "type": "string"\n },\n "offset": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "kind",\n "offset"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "end": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "kind": {\n "const": "file-offset-range",\n "type": "string"\n },\n "start": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "kind",\n "start",\n "end"\n ],\n "type": "object"\n }\n ]\n },\n "type": "array"\n },\n "normalized_result": {\n "$ref": "#/$defs/__schema0"\n },\n "operation": {\n "minLength": 1,\n "type": "string"\n },\n "parameters": {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n },\n "predicate_type": {\n "minLength": 1,\n "type": "string"\n },\n "provider": {\n "additionalProperties": false,\n "properties": {\n "id": {\n "minLength": 1,\n "type": "string"\n },\n "name": {\n "minLength": 1,\n "type": "string"\n },\n "version": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "id",\n "name",\n "version"\n ],\n "type": "object"\n },\n "raw_result": {\n "anyOf": [\n {\n "$ref": "#/$defs/__schema0"\n },\n {\n "type": "null"\n }\n ]\n },\n "subject": {\n "anyOf": [\n {\n "additionalProperties": false,\n "properties": {\n "architecture": {\n "anyOf": [\n {\n "enum": [\n "x86",\n "x86_64",\n "arm",\n "arm64"\n ],\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "digest": {\n "additionalProperties": false,\n "properties": {\n "sha256": {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n }\n },\n "required": [\n "sha256"\n ],\n "type": "object"\n },\n "format": {\n "enum": [\n "hopper",\n "analysis-database",\n "mach-o",\n "elf",\n "pe",\n "dos-mz",\n "dos-com",\n "zip",\n "ipa",\n "apk",\n "msix",\n "appx",\n "asar",\n "dmg",\n "pkg",\n "plist",\n "javascript",\n "source-map",\n "directory",\n "file",\n "unknown",\n "mach-o-universal",\n "javascript-bundle",\n "entitlements"\n ],\n "type": "string"\n },\n "local_path": {\n "type": "string"\n },\n "name": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "name",\n "digest",\n "format",\n "architecture",\n "local_path"\n ],\n "type": "object"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "evidence_id",\n "subject",\n "provider",\n "predicate_type",\n "operation",\n "parameters",\n "raw_result",\n "normalized_result",\n "confidence",\n "authority",\n "environment",\n "limitations",\n "locations",\n "evidence_links"\n ],\n "type": "object"\n },\n "evidence_id": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "result": {\n "items": {\n "additionalProperties": false,\n "properties": {\n "address": {\n "type": "string"\n },\n "procedure": {\n "additionalProperties": false,\n "properties": {\n "external": {\n "type": "boolean"\n },\n "thunk": {\n "type": "boolean"\n },\n "thunk_target": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "external",\n "thunk",\n "thunk_target"\n ],\n "type": "object"\n },\n "string": {\n "additionalProperties": false,\n "properties": {\n "byte_length": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "encoding": {\n "type": "string"\n },\n "termination": {\n "enum": [\n "missing",\n "present_or_not_required"\n ],\n "type": "string"\n }\n },\n "required": [\n "encoding",\n "termination",\n "byte_length"\n ],\n "type": "object"\n },\n "symbol": {\n "additionalProperties": false,\n "properties": {\n "dynamic": {\n "type": "boolean"\n },\n "external": {\n "type": "boolean"\n },\n "primary": {\n "type": "boolean"\n },\n "source": {\n "enum": [\n "default",\n "analysis",\n "ai",\n "imported",\n "user_defined"\n ],\n "type": "string"\n },\n "type": {\n "type": "string"\n }\n },\n "required": [\n "primary",\n "dynamic",\n "external",\n "type",\n "source"\n ],\n "type": "object"\n },\n "value": {\n "type": "string"\n }\n },\n "required": [\n "address",\n "value"\n ],\n "type": "object"\n },\n "type": "array"\n }\n },\n "required": [\n "result",\n "evidence_id",\n "evidence"\n ],\n "type": "object"\n },\n "requiresSession": false,\n "title": "List Names"\n },\n {\n "analysisOperation": "list_procedures",\n "annotations": {\n "destructiveHint": false,\n "idempotentHint": true,\n "openWorldHint": false,\n "readOnlyHint": false\n },\n "description": "List every analyzed procedure as address/value pairs after provider analysis. Ghidra metadata distinguishes thunks and external functions; use returned addresses in later function operations.",\n "effects": {\n "accessesNetwork": false,\n "changesUiState": false,\n "idempotent": true,\n "launchesProcess": false,\n "mayDiscardData": false,\n "mutatesSession": true,\n "mutatesTarget": false,\n "writesFilesystem": false\n },\n "inputSchema": {\n "$schema": "https://json-schema.org/draft/2020-12/schema",\n "examples": [\n {}\n ],\n "properties": {\n "document": {\n "description": "The document name",\n "type": "string"\n }\n },\n "type": "object"\n },\n "kind": "official-proxy",\n "name": "list_procedures",\n "outputSchema": {\n "$defs": {\n "__schema0": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "number"\n },\n {\n "type": "boolean"\n },\n {\n "type": "null"\n },\n {\n "items": {\n "$ref": "#/$defs/__schema0"\n },\n "type": "array"\n },\n {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n }\n ]\n }\n },\n "$schema": "https://json-schema.org/draft/2020-12/schema",\n "additionalProperties": false,\n "properties": {\n "evidence": {\n "additionalProperties": false,\n "properties": {\n "analysis_profile": {\n "additionalProperties": false,\n "properties": {\n "digest": {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n },\n "parameters": {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n },\n "provider": {\n "additionalProperties": false,\n "properties": {\n "id": {\n "minLength": 1,\n "type": "string"\n },\n "name": {\n "minLength": 1,\n "type": "string"\n },\n "version": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "id",\n "name",\n "version"\n ],\n "type": "object"\n }\n },\n "required": [\n "provider",\n "parameters",\n "digest"\n ],\n "type": "object"\n },\n "authority": {\n "enum": [\n "shipped-artifact",\n "controlled-replay",\n "historical-reference",\n "external-service",\n "analyst-inference"\n ],\n "type": "string"\n },\n "confidence": {\n "enum": [\n "observed",\n "derived",\n "inferred"\n ],\n "type": "string"\n },\n "environment": {\n "anyOf": [\n {\n "additionalProperties": false,\n "properties": {\n "architecture": {\n "minLength": 1,\n "type": "string"\n },\n "id": {\n "minLength": 1,\n "type": "string"\n },\n "isolation": {\n "enum": [\n "none",\n "process",\n "container",\n "virtual-machine"\n ],\n "type": "string"\n },\n "platform": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "id",\n "platform",\n "architecture",\n "isolation"\n ],\n "type": "object"\n },\n {\n "type": "null"\n }\n ]\n },\n "evidence_id": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "evidence_links": {\n "items": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "type": "array"\n },\n "limitations": {\n "items": {\n "type": "string"\n },\n "type": "array"\n },\n "locations": {\n "items": {\n "oneOf": [\n {\n "additionalProperties": false,\n "properties": {\n "address": {\n "minLength": 1,\n "type": "string"\n },\n "kind": {\n "const": "address",\n "type": "string"\n }\n },\n "required": [\n "kind",\n "address"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "end": {\n "minLength": 1,\n "type": "string"\n },\n "kind": {\n "const": "address-range",\n "type": "string"\n },\n "start": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "kind",\n "start",\n "end"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "kind": {\n "const": "artifact-path",\n "type": "string"\n },\n "path": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "kind",\n "path"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "kind": {\n "const": "file-offset",\n "type": "string"\n },\n "offset": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "kind",\n "offset"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "end": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "kind": {\n "const": "file-offset-range",\n "type": "string"\n },\n "start": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "kind",\n "start",\n "end"\n ],\n "type": "object"\n }\n ]\n },\n "type": "array"\n },\n "normalized_result": {\n "$ref": "#/$defs/__schema0"\n },\n "operation": {\n "minLength": 1,\n "type": "string"\n },\n "parameters": {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n },\n "predicate_type": {\n "minLength": 1,\n "type": "string"\n },\n "provider": {\n "additionalProperties": false,\n "properties": {\n "id": {\n "minLength": 1,\n "type": "string"\n },\n "name": {\n "minLength": 1,\n "type": "string"\n },\n "version": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "id",\n "name",\n "version"\n ],\n "type": "object"\n },\n "raw_result": {\n "anyOf": [\n {\n "$ref": "#/$defs/__schema0"\n },\n {\n "type": "null"\n }\n ]\n },\n "subject": {\n "anyOf": [\n {\n "additionalProperties": false,\n "properties": {\n "architecture": {\n "anyOf": [\n {\n "enum": [\n "x86",\n "x86_64",\n "arm",\n "arm64"\n ],\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "digest": {\n "additionalProperties": false,\n "properties": {\n "sha256": {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n }\n },\n "required": [\n "sha256"\n ],\n "type": "object"\n },\n "format": {\n "enum": [\n "hopper",\n "analysis-database",\n "mach-o",\n "elf",\n "pe",\n "dos-mz",\n "dos-com",\n "zip",\n "ipa",\n "apk",\n "msix",\n "appx",\n "asar",\n "dmg",\n "pkg",\n "plist",\n "javascript",\n "source-map",\n "directory",\n "file",\n "unknown",\n "mach-o-universal",\n "javascript-bundle",\n "entitlements"\n ],\n "type": "string"\n },\n "local_path": {\n "type": "string"\n },\n "name": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "name",\n "digest",\n "format",\n "architecture",\n "local_path"\n ],\n "type": "object"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "evidence_id",\n "subject",\n "provider",\n "predicate_type",\n "operation",\n "parameters",\n "raw_result",\n "normalized_result",\n "confidence",\n "authority",\n "environment",\n "limitations",\n "locations",\n "evidence_links"\n ],\n "type": "object"\n },\n "evidence_id": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "result": {\n "items": {\n "additionalProperties": false,\n "properties": {\n "address": {\n "type": "string"\n },\n "procedure": {\n "additionalProperties": false,\n "properties": {\n "external": {\n "type": "boolean"\n },\n "thunk": {\n "type": "boolean"\n },\n "thunk_target": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "external",\n "thunk",\n "thunk_target"\n ],\n "type": "object"\n },\n "string": {\n "additionalProperties": false,\n "properties": {\n "byte_length": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "encoding": {\n "type": "string"\n },\n "termination": {\n "enum": [\n "missing",\n "present_or_not_required"\n ],\n "type": "string"\n }\n },\n "required": [\n "encoding",\n "termination",\n "byte_length"\n ],\n "type": "object"\n },\n "symbol": {\n "additionalProperties": false,\n "properties": {\n "dynamic": {\n "type": "boolean"\n },\n "external": {\n "type": "boolean"\n },\n "primary": {\n "type": "boolean"\n },\n "source": {\n "enum": [\n "default",\n "analysis",\n "ai",\n "imported",\n "user_defined"\n ],\n "type": "string"\n },\n "type": {\n "type": "string"\n }\n },\n "required": [\n "primary",\n "dynamic",\n "external",\n "type",\n "source"\n ],\n "type": "object"\n },\n "value": {\n "type": "string"\n }\n },\n "required": [\n "address",\n "value"\n ],\n "type": "object"\n },\n "type": "array"\n }\n },\n "required": [\n "result",\n "evidence_id",\n "evidence"\n ],\n "type": "object"\n },\n "requiresSession": false,\n "title": "List Procedures"\n },\n {\n "analysisOperation": "list_segments",\n "annotations": {\n "destructiveHint": false,\n "idempotentHint": true,\n "openWorldHint": false,\n "readOnlyHint": false\n },\n "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.",\n "effects": {\n "accessesNetwork": false,\n "changesUiState": false,\n "idempotent": true,\n "launchesProcess": false,\n "mayDiscardData": false,\n "mutatesSession": true,\n "mutatesTarget": false,\n "writesFilesystem": false\n },\n "inputSchema": {\n "$schema": "https://json-schema.org/draft/2020-12/schema",\n "examples": [\n {}\n ],\n "properties": {\n "document": {\n "description": "The document name",\n "type": "string"\n }\n },\n "type": "object"\n },\n "kind": "official-proxy",\n "name": "list_segments",\n "outputSchema": {\n "$defs": {\n "__schema0": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "number"\n },\n {\n "type": "boolean"\n },\n {\n "type": "null"\n },\n {\n "items": {\n "$ref": "#/$defs/__schema0"\n },\n "type": "array"\n },\n {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n }\n ]\n }\n },\n "$schema": "https://json-schema.org/draft/2020-12/schema",\n "additionalProperties": false,\n "properties": {\n "evidence": {\n "additionalProperties": false,\n "properties": {\n "analysis_profile": {\n "additionalProperties": false,\n "properties": {\n "digest": {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n },\n "parameters": {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n },\n "provider": {\n "additionalProperties": false,\n "properties": {\n "id": {\n "minLength": 1,\n "type": "string"\n },\n "name": {\n "minLength": 1,\n "type": "string"\n },\n "version": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "id",\n "name",\n "version"\n ],\n "type": "object"\n }\n },\n "required": [\n "provider",\n "parameters",\n "digest"\n ],\n "type": "object"\n },\n "authority": {\n "enum": [\n "shipped-artifact",\n "controlled-replay",\n "historical-reference",\n "external-service",\n "analyst-inference"\n ],\n "type": "string"\n },\n "confidence": {\n "enum": [\n "observed",\n "derived",\n "inferred"\n ],\n "type": "string"\n },\n "environment": {\n "anyOf": [\n {\n "additionalProperties": false,\n "properties": {\n "architecture": {\n "minLength": 1,\n "type": "string"\n },\n "id": {\n "minLength": 1,\n "type": "string"\n },\n "isolation": {\n "enum": [\n "none",\n "process",\n "container",\n "virtual-machine"\n ],\n "type": "string"\n },\n "platform": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "id",\n "platform",\n "architecture",\n "isolation"\n ],\n "type": "object"\n },\n {\n "type": "null"\n }\n ]\n },\n "evidence_id": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "evidence_links": {\n "items": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "type": "array"\n },\n "limitations": {\n "items": {\n "type": "string"\n },\n "type": "array"\n },\n "locations": {\n "items": {\n "oneOf": [\n {\n "additionalProperties": false,\n "properties": {\n "address": {\n "minLength": 1,\n "type": "string"\n },\n "kind": {\n "const": "address",\n "type": "string"\n }\n },\n "required": [\n "kind",\n "address"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "end": {\n "minLength": 1,\n "type": "string"\n },\n "kind": {\n "const": "address-range",\n "type": "string"\n },\n "start": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "kind",\n "start",\n "end"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "kind": {\n "const": "artifact-path",\n "type": "string"\n },\n "path": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "kind",\n "path"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "kind": {\n "const": "file-offset",\n "type": "string"\n },\n "offset": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "kind",\n "offset"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "end": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "kind": {\n "const": "file-offset-range",\n "type": "string"\n },\n "start": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "kind",\n "start",\n "end"\n ],\n "type": "object"\n }\n ]\n },\n "type": "array"\n },\n "normalized_result": {\n "$ref": "#/$defs/__schema0"\n },\n "operation": {\n "minLength": 1,\n "type": "string"\n },\n "parameters": {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n },\n "predicate_type": {\n "minLength": 1,\n "type": "string"\n },\n "provider": {\n "additionalProperties": false,\n "properties": {\n "id": {\n "minLength": 1,\n "type": "string"\n },\n "name": {\n "minLength": 1,\n "type": "string"\n },\n "version": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "id",\n "name",\n "version"\n ],\n "type": "object"\n },\n "raw_result": {\n "anyOf": [\n {\n "$ref": "#/$defs/__schema0"\n },\n {\n "type": "null"\n }\n ]\n },\n "subject": {\n "anyOf": [\n {\n "additionalProperties": false,\n "properties": {\n "architecture": {\n "anyOf": [\n {\n "enum": [\n "x86",\n "x86_64",\n "arm",\n "arm64"\n ],\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "digest": {\n "additionalProperties": false,\n "properties": {\n "sha256": {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n }\n },\n "required": [\n "sha256"\n ],\n "type": "object"\n },\n "format": {\n "enum": [\n "hopper",\n "analysis-database",\n "mach-o",\n "elf",\n "pe",\n "dos-mz",\n "dos-com",\n "zip",\n "ipa",\n "apk",\n "msix",\n "appx",\n "asar",\n "dmg",\n "pkg",\n "plist",\n "javascript",\n "source-map",\n "directory",\n "file",\n "unknown",\n "mach-o-universal",\n "javascript-bundle",\n "entitlements"\n ],\n "type": "string"\n },\n "local_path": {\n "type": "string"\n },\n "name": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "name",\n "digest",\n "format",\n "architecture",\n "local_path"\n ],\n "type": "object"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "evidence_id",\n "subject",\n "provider",\n "predicate_type",\n "operation",\n "parameters",\n "raw_result",\n "normalized_result",\n "confidence",\n "authority",\n "environment",\n "limitations",\n "locations",\n "evidence_links"\n ],\n "type": "object"\n },\n "evidence_id": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "result": {\n "items": {\n "additionalProperties": false,\n "properties": {\n "address_space": {\n "type": "string"\n },\n "end": {\n "type": "string"\n },\n "executable": {\n "anyOf": [\n {\n "type": "boolean"\n },\n {\n "type": "null"\n }\n ]\n },\n "image_base": {\n "type": "string"\n },\n "initialized": {\n "type": "boolean"\n },\n "name": {\n "type": "string"\n },\n "overlay": {\n "type": "boolean"\n },\n "permissions": {\n "anyOf": [\n {\n "additionalProperties": false,\n "properties": {\n "available": {\n "const": false,\n "type": "boolean"\n },\n "reason": {\n "type": "string"\n }\n },\n "required": [\n "available",\n "reason"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "available": {\n "const": true,\n "type": "boolean"\n },\n "source": {\n "const": "ghidra-memory-block",\n "type": "string"\n }\n },\n "required": [\n "available",\n "source"\n ],\n "type": "object"\n }\n ]\n },\n "provenance": {\n "enum": [\n "hopper-public-python-api",\n "ghidra-memory-block"\n ],\n "type": "string"\n },\n "readable": {\n "anyOf": [\n {\n "type": "boolean"\n },\n {\n "type": "null"\n }\n ]\n },\n "sections": {\n "items": {\n "additionalProperties": false,\n "properties": {\n "address_space": {\n "type": "string"\n },\n "end": {\n "type": "string"\n },\n "executable": {\n "anyOf": [\n {\n "type": "boolean"\n },\n {\n "type": "null"\n }\n ]\n },\n "image_base": {\n "type": "string"\n },\n "initialized": {\n "type": "boolean"\n },\n "name": {\n "type": "string"\n },\n "overlay": {\n "type": "boolean"\n },\n "permissions": {\n "anyOf": [\n {\n "additionalProperties": false,\n "properties": {\n "available": {\n "const": false,\n "type": "boolean"\n },\n "reason": {\n "type": "string"\n }\n },\n "required": [\n "available",\n "reason"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "available": {\n "const": true,\n "type": "boolean"\n },\n "source": {\n "const": "ghidra-memory-block",\n "type": "string"\n }\n },\n "required": [\n "available",\n "source"\n ],\n "type": "object"\n }\n ]\n },\n "provenance": {\n "enum": [\n "hopper-public-python-api",\n "ghidra-memory-block"\n ],\n "type": "string"\n },\n "readable": {\n "anyOf": [\n {\n "type": "boolean"\n },\n {\n "type": "null"\n }\n ]\n },\n "start": {\n "type": "string"\n },\n "writable": {\n "anyOf": [\n {\n "type": "boolean"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "name",\n "start",\n "end",\n "readable",\n "writable",\n "executable",\n "permissions",\n "provenance"\n ],\n "type": "object"\n },\n "type": "array"\n },\n "start": {\n "type": "string"\n },\n "writable": {\n "anyOf": [\n {\n "type": "boolean"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "name",\n "start",\n "end",\n "readable",\n "writable",\n "executable",\n "permissions",\n "provenance",\n "sections"\n ],\n "type": "object"\n },\n "type": "array"\n }\n },\n "required": [\n "result",\n "evidence_id",\n "evidence"\n ],\n "type": "object"\n },\n "requiresSession": false,\n "title": "List Segments"\n },\n {\n "analysisOperation": "list_strings",\n "annotations": {\n "destructiveHint": false,\n "idempotentHint": true,\n "openWorldHint": false,\n "readOnlyHint": false\n },\n "description": "List every provider-defined string, or filter to one address, as address/value pairs. Ghidra also reports encoding, terminator status, and byte length.",\n "effects": {\n "accessesNetwork": false,\n "changesUiState": false,\n "idempotent": true,\n "launchesProcess": false,\n "mayDiscardData": false,\n "mutatesSession": true,\n "mutatesTarget": false,\n "writesFilesystem": false\n },\n "inputSchema": {\n "$schema": "https://json-schema.org/draft/2020-12/schema",\n "examples": [\n {}\n ],\n "properties": {\n "address": {\n "description": "A provider-normalized address; default memory uses 0x-prefixed hexadecimal",\n "type": "string"\n },\n "document": {\n "description": "The document name",\n "type": "string"\n }\n },\n "type": "object"\n },\n "kind": "official-proxy",\n "name": "list_strings",\n "outputSchema": {\n "$defs": {\n "__schema0": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "number"\n },\n {\n "type": "boolean"\n },\n {\n "type": "null"\n },\n {\n "items": {\n "$ref": "#/$defs/__schema0"\n },\n "type": "array"\n },\n {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n }\n ]\n }\n },\n "$schema": "https://json-schema.org/draft/2020-12/schema",\n "additionalProperties": false,\n "properties": {\n "evidence": {\n "additionalProperties": false,\n "properties": {\n "analysis_profile": {\n "additionalProperties": false,\n "properties": {\n "digest": {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n },\n "parameters": {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n },\n "provider": {\n "additionalProperties": false,\n "properties": {\n "id": {\n "minLength": 1,\n "type": "string"\n },\n "name": {\n "minLength": 1,\n "type": "string"\n },\n "version": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "id",\n "name",\n "version"\n ],\n "type": "object"\n }\n },\n "required": [\n "provider",\n "parameters",\n "digest"\n ],\n "type": "object"\n },\n "authority": {\n "enum": [\n "shipped-artifact",\n "controlled-replay",\n "historical-reference",\n "external-service",\n "analyst-inference"\n ],\n "type": "string"\n },\n "confidence": {\n "enum": [\n "observed",\n "derived",\n "inferred"\n ],\n "type": "string"\n },\n "environment": {\n "anyOf": [\n {\n "additionalProperties": false,\n "properties": {\n "architecture": {\n "minLength": 1,\n "type": "string"\n },\n "id": {\n "minLength": 1,\n "type": "string"\n },\n "isolation": {\n "enum": [\n "none",\n "process",\n "container",\n "virtual-machine"\n ],\n "type": "string"\n },\n "platform": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "id",\n "platform",\n "architecture",\n "isolation"\n ],\n "type": "object"\n },\n {\n "type": "null"\n }\n ]\n },\n "evidence_id": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "evidence_links": {\n "items": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "type": "array"\n },\n "limitations": {\n "items": {\n "type": "string"\n },\n "type": "array"\n },\n "locations": {\n "items": {\n "oneOf": [\n {\n "additionalProperties": false,\n "properties": {\n "address": {\n "minLength": 1,\n "type": "string"\n },\n "kind": {\n "const": "address",\n "type": "string"\n }\n },\n "required": [\n "kind",\n "address"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "end": {\n "minLength": 1,\n "type": "string"\n },\n "kind": {\n "const": "address-range",\n "type": "string"\n },\n "start": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "kind",\n "start",\n "end"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "kind": {\n "const": "artifact-path",\n "type": "string"\n },\n "path": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "kind",\n "path"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "kind": {\n "const": "file-offset",\n "type": "string"\n },\n "offset": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "kind",\n "offset"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "end": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "kind": {\n "const": "file-offset-range",\n "type": "string"\n },\n "start": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "kind",\n "start",\n "end"\n ],\n "type": "object"\n }\n ]\n },\n "type": "array"\n },\n "normalized_result": {\n "$ref": "#/$defs/__schema0"\n },\n "operation": {\n "minLength": 1,\n "type": "string"\n },\n "parameters": {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n },\n "predicate_type": {\n "minLength": 1,\n "type": "string"\n },\n "provider": {\n "additionalProperties": false,\n "properties": {\n "id": {\n "minLength": 1,\n "type": "string"\n },\n "name": {\n "minLength": 1,\n "type": "string"\n },\n "version": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "id",\n "name",\n "version"\n ],\n "type": "object"\n },\n "raw_result": {\n "anyOf": [\n {\n "$ref": "#/$defs/__schema0"\n },\n {\n "type": "null"\n }\n ]\n },\n "subject": {\n "anyOf": [\n {\n "additionalProperties": false,\n "properties": {\n "architecture": {\n "anyOf": [\n {\n "enum": [\n "x86",\n "x86_64",\n "arm",\n "arm64"\n ],\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "digest": {\n "additionalProperties": false,\n "properties": {\n "sha256": {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n }\n },\n "required": [\n "sha256"\n ],\n "type": "object"\n },\n "format": {\n "enum": [\n "hopper",\n "analysis-database",\n "mach-o",\n "elf",\n "pe",\n "dos-mz",\n "dos-com",\n "zip",\n "ipa",\n "apk",\n "msix",\n "appx",\n "asar",\n "dmg",\n "pkg",\n "plist",\n "javascript",\n "source-map",\n "directory",\n "file",\n "unknown",\n "mach-o-universal",\n "javascript-bundle",\n "entitlements"\n ],\n "type": "string"\n },\n "local_path": {\n "type": "string"\n },\n "name": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "name",\n "digest",\n "format",\n "architecture",\n "local_path"\n ],\n "type": "object"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "evidence_id",\n "subject",\n "provider",\n "predicate_type",\n "operation",\n "parameters",\n "raw_result",\n "normalized_result",\n "confidence",\n "authority",\n "environment",\n "limitations",\n "locations",\n "evidence_links"\n ],\n "type": "object"\n },\n "evidence_id": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "result": {\n "items": {\n "additionalProperties": false,\n "properties": {\n "address": {\n "type": "string"\n },\n "string": {\n "additionalProperties": false,\n "properties": {\n "byte_length": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "encoding": {\n "minLength": 1,\n "type": "string"\n },\n "termination": {\n "enum": [\n "missing",\n "present_or_not_required"\n ],\n "type": "string"\n }\n },\n "required": [\n "encoding",\n "termination",\n "byte_length"\n ],\n "type": "object"\n },\n "value": {\n "type": "string"\n }\n },\n "required": [\n "address",\n "value"\n ],\n "type": "object"\n },\n "type": "array"\n }\n },\n "required": [\n "result",\n "evidence_id",\n "evidence"\n ],\n "type": "object"\n },\n "requiresSession": false,\n "title": "List Strings"\n },\n {\n "analysisOperation": "next_address",\n "annotations": {\n "destructiveHint": false,\n "idempotentHint": true,\n "openWorldHint": false,\n "readOnlyHint": false\n },\n "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.",\n "effects": {\n "accessesNetwork": false,\n "changesUiState": false,\n "idempotent": true,\n "launchesProcess": false,\n "mayDiscardData": false,\n "mutatesSession": true,\n "mutatesTarget": false,\n "writesFilesystem": false\n },\n "inputSchema": {\n "$schema": "https://json-schema.org/draft/2020-12/schema",\n "examples": [\n {}\n ],\n "properties": {\n "address": {\n "description": "A provider-normalized address; default memory uses 0x-prefixed hexadecimal",\n "type": "string"\n },\n "document": {\n "description": "The document name",\n "type": "string"\n }\n },\n "type": "object"\n },\n "kind": "official-proxy",\n "name": "next_address",\n "outputSchema": {\n "$defs": {\n "__schema0": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "number"\n },\n {\n "type": "boolean"\n },\n {\n "type": "null"\n },\n {\n "items": {\n "$ref": "#/$defs/__schema0"\n },\n "type": "array"\n },\n {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n }\n ]\n }\n },\n "$schema": "https://json-schema.org/draft/2020-12/schema",\n "additionalProperties": false,\n "properties": {\n "evidence": {\n "additionalProperties": false,\n "properties": {\n "analysis_profile": {\n "additionalProperties": false,\n "properties": {\n "digest": {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n },\n "parameters": {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n },\n "provider": {\n "additionalProperties": false,\n "properties": {\n "id": {\n "minLength": 1,\n "type": "string"\n },\n "name": {\n "minLength": 1,\n "type": "string"\n },\n "version": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "id",\n "name",\n "version"\n ],\n "type": "object"\n }\n },\n "required": [\n "provider",\n "parameters",\n "digest"\n ],\n "type": "object"\n },\n "authority": {\n "enum": [\n "shipped-artifact",\n "controlled-replay",\n "historical-reference",\n "external-service",\n "analyst-inference"\n ],\n "type": "string"\n },\n "confidence": {\n "enum": [\n "observed",\n "derived",\n "inferred"\n ],\n "type": "string"\n },\n "environment": {\n "anyOf": [\n {\n "additionalProperties": false,\n "properties": {\n "architecture": {\n "minLength": 1,\n "type": "string"\n },\n "id": {\n "minLength": 1,\n "type": "string"\n },\n "isolation": {\n "enum": [\n "none",\n "process",\n "container",\n "virtual-machine"\n ],\n "type": "string"\n },\n "platform": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "id",\n "platform",\n "architecture",\n "isolation"\n ],\n "type": "object"\n },\n {\n "type": "null"\n }\n ]\n },\n "evidence_id": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "evidence_links": {\n "items": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "type": "array"\n },\n "limitations": {\n "items": {\n "type": "string"\n },\n "type": "array"\n },\n "locations": {\n "items": {\n "oneOf": [\n {\n "additionalProperties": false,\n "properties": {\n "address": {\n "minLength": 1,\n "type": "string"\n },\n "kind": {\n "const": "address",\n "type": "string"\n }\n },\n "required": [\n "kind",\n "address"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "end": {\n "minLength": 1,\n "type": "string"\n },\n "kind": {\n "const": "address-range",\n "type": "string"\n },\n "start": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "kind",\n "start",\n "end"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "kind": {\n "const": "artifact-path",\n "type": "string"\n },\n "path": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "kind",\n "path"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "kind": {\n "const": "file-offset",\n "type": "string"\n },\n "offset": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "kind",\n "offset"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "end": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "kind": {\n "const": "file-offset-range",\n "type": "string"\n },\n "start": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "kind",\n "start",\n "end"\n ],\n "type": "object"\n }\n ]\n },\n "type": "array"\n },\n "normalized_result": {\n "$ref": "#/$defs/__schema0"\n },\n "operation": {\n "minLength": 1,\n "type": "string"\n },\n "parameters": {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n },\n "predicate_type": {\n "minLength": 1,\n "type": "string"\n },\n "provider": {\n "additionalProperties": false,\n "properties": {\n "id": {\n "minLength": 1,\n "type": "string"\n },\n "name": {\n "minLength": 1,\n "type": "string"\n },\n "version": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "id",\n "name",\n "version"\n ],\n "type": "object"\n },\n "raw_result": {\n "anyOf": [\n {\n "$ref": "#/$defs/__schema0"\n },\n {\n "type": "null"\n }\n ]\n },\n "subject": {\n "anyOf": [\n {\n "additionalProperties": false,\n "properties": {\n "architecture": {\n "anyOf": [\n {\n "enum": [\n "x86",\n "x86_64",\n "arm",\n "arm64"\n ],\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "digest": {\n "additionalProperties": false,\n "properties": {\n "sha256": {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n }\n },\n "required": [\n "sha256"\n ],\n "type": "object"\n },\n "format": {\n "enum": [\n "hopper",\n "analysis-database",\n "mach-o",\n "elf",\n "pe",\n "dos-mz",\n "dos-com",\n "zip",\n "ipa",\n "apk",\n "msix",\n "appx",\n "asar",\n "dmg",\n "pkg",\n "plist",\n "javascript",\n "source-map",\n "directory",\n "file",\n "unknown",\n "mach-o-universal",\n "javascript-bundle",\n "entitlements"\n ],\n "type": "string"\n },\n "local_path": {\n "type": "string"\n },\n "name": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "name",\n "digest",\n "format",\n "architecture",\n "local_path"\n ],\n "type": "object"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "evidence_id",\n "subject",\n "provider",\n "predicate_type",\n "operation",\n "parameters",\n "raw_result",\n "normalized_result",\n "confidence",\n "authority",\n "environment",\n "limitations",\n "locations",\n "evidence_links"\n ],\n "type": "object"\n },\n "evidence_id": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "result": {\n "type": "string"\n }\n },\n "required": [\n "result",\n "evidence_id",\n "evidence"\n ],\n "type": "object"\n },\n "requiresSession": false,\n "title": "Next Address"\n },\n {\n "analysisOperation": "prev_address",\n "annotations": {\n "destructiveHint": false,\n "idempotentHint": true,\n "openWorldHint": false,\n "readOnlyHint": false\n },\n "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.",\n "effects": {\n "accessesNetwork": false,\n "changesUiState": false,\n "idempotent": true,\n "launchesProcess": false,\n "mayDiscardData": false,\n "mutatesSession": true,\n "mutatesTarget": false,\n "writesFilesystem": false\n },\n "inputSchema": {\n "$schema": "https://json-schema.org/draft/2020-12/schema",\n "examples": [\n {}\n ],\n "properties": {\n "address": {\n "description": "A provider-normalized address; default memory uses 0x-prefixed hexadecimal",\n "type": "string"\n },\n "document": {\n "description": "The document name",\n "type": "string"\n }\n },\n "type": "object"\n },\n "kind": "official-proxy",\n "name": "prev_address",\n "outputSchema": {\n "$defs": {\n "__schema0": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "number"\n },\n {\n "type": "boolean"\n },\n {\n "type": "null"\n },\n {\n "items": {\n "$ref": "#/$defs/__schema0"\n },\n "type": "array"\n },\n {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n }\n ]\n }\n },\n "$schema": "https://json-schema.org/draft/2020-12/schema",\n "additionalProperties": false,\n "properties": {\n "evidence": {\n "additionalProperties": false,\n "properties": {\n "analysis_profile": {\n "additionalProperties": false,\n "properties": {\n "digest": {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n },\n "parameters": {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n },\n "provider": {\n "additionalProperties": false,\n "properties": {\n "id": {\n "minLength": 1,\n "type": "string"\n },\n "name": {\n "minLength": 1,\n "type": "string"\n },\n "version": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "id",\n "name",\n "version"\n ],\n "type": "object"\n }\n },\n "required": [\n "provider",\n "parameters",\n "digest"\n ],\n "type": "object"\n },\n "authority": {\n "enum": [\n "shipped-artifact",\n "controlled-replay",\n "historical-reference",\n "external-service",\n "analyst-inference"\n ],\n "type": "string"\n },\n "confidence": {\n "enum": [\n "observed",\n "derived",\n "inferred"\n ],\n "type": "string"\n },\n "environment": {\n "anyOf": [\n {\n "additionalProperties": false,\n "properties": {\n "architecture": {\n "minLength": 1,\n "type": "string"\n },\n "id": {\n "minLength": 1,\n "type": "string"\n },\n "isolation": {\n "enum": [\n "none",\n "process",\n "container",\n "virtual-machine"\n ],\n "type": "string"\n },\n "platform": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "id",\n "platform",\n "architecture",\n "isolation"\n ],\n "type": "object"\n },\n {\n "type": "null"\n }\n ]\n },\n "evidence_id": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "evidence_links": {\n "items": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "type": "array"\n },\n "limitations": {\n "items": {\n "type": "string"\n },\n "type": "array"\n },\n "locations": {\n "items": {\n "oneOf": [\n {\n "additionalProperties": false,\n "properties": {\n "address": {\n "minLength": 1,\n "type": "string"\n },\n "kind": {\n "const": "address",\n "type": "string"\n }\n },\n "required": [\n "kind",\n "address"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "end": {\n "minLength": 1,\n "type": "string"\n },\n "kind": {\n "const": "address-range",\n "type": "string"\n },\n "start": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "kind",\n "start",\n "end"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "kind": {\n "const": "artifact-path",\n "type": "string"\n },\n "path": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "kind",\n "path"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "kind": {\n "const": "file-offset",\n "type": "string"\n },\n "offset": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "kind",\n "offset"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "end": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "kind": {\n "const": "file-offset-range",\n "type": "string"\n },\n "start": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "kind",\n "start",\n "end"\n ],\n "type": "object"\n }\n ]\n },\n "type": "array"\n },\n "normalized_result": {\n "$ref": "#/$defs/__schema0"\n },\n "operation": {\n "minLength": 1,\n "type": "string"\n },\n "parameters": {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n },\n "predicate_type": {\n "minLength": 1,\n "type": "string"\n },\n "provider": {\n "additionalProperties": false,\n "properties": {\n "id": {\n "minLength": 1,\n "type": "string"\n },\n "name": {\n "minLength": 1,\n "type": "string"\n },\n "version": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "id",\n "name",\n "version"\n ],\n "type": "object"\n },\n "raw_result": {\n "anyOf": [\n {\n "$ref": "#/$defs/__schema0"\n },\n {\n "type": "null"\n }\n ]\n },\n "subject": {\n "anyOf": [\n {\n "additionalProperties": false,\n "properties": {\n "architecture": {\n "anyOf": [\n {\n "enum": [\n "x86",\n "x86_64",\n "arm",\n "arm64"\n ],\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "digest": {\n "additionalProperties": false,\n "properties": {\n "sha256": {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n }\n },\n "required": [\n "sha256"\n ],\n "type": "object"\n },\n "format": {\n "enum": [\n "hopper",\n "analysis-database",\n "mach-o",\n "elf",\n "pe",\n "dos-mz",\n "dos-com",\n "zip",\n "ipa",\n "apk",\n "msix",\n "appx",\n "asar",\n "dmg",\n "pkg",\n "plist",\n "javascript",\n "source-map",\n "directory",\n "file",\n "unknown",\n "mach-o-universal",\n "javascript-bundle",\n "entitlements"\n ],\n "type": "string"\n },\n "local_path": {\n "type": "string"\n },\n "name": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "name",\n "digest",\n "format",\n "architecture",\n "local_path"\n ],\n "type": "object"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "evidence_id",\n "subject",\n "provider",\n "predicate_type",\n "operation",\n "parameters",\n "raw_result",\n "normalized_result",\n "confidence",\n "authority",\n "environment",\n "limitations",\n "locations",\n "evidence_links"\n ],\n "type": "object"\n },\n "evidence_id": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "result": {\n "type": "string"\n }\n },\n "required": [\n "result",\n "evidence_id",\n "evidence"\n ],\n "type": "object"\n },\n "requiresSession": false,\n "title": "Prev Address"\n },\n {\n "analysisOperation": "procedure_address",\n "annotations": {\n "destructiveHint": false,\n "idempotentHint": true,\n "openWorldHint": false,\n "readOnlyHint": false\n },\n "description": "Resolve an unambiguous procedure symbol name or provider-normalized address to its canonical entry address. External address spaces remain explicit.",\n "effects": {\n "accessesNetwork": false,\n "changesUiState": false,\n "idempotent": true,\n "launchesProcess": false,\n "mayDiscardData": false,\n "mutatesSession": true,\n "mutatesTarget": false,\n "writesFilesystem": false\n },\n "inputSchema": {\n "$schema": "https://json-schema.org/draft/2020-12/schema",\n "examples": [\n {\n "procedure": "main"\n }\n ],\n "properties": {\n "document": {\n "description": "The document name",\n "type": "string"\n },\n "procedure": {\n "description": "The procedure name or address",\n "type": "string"\n }\n },\n "required": [\n "procedure"\n ],\n "type": "object"\n },\n "kind": "official-proxy",\n "name": "procedure_address",\n "outputSchema": {\n "$defs": {\n "__schema0": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "number"\n },\n {\n "type": "boolean"\n },\n {\n "type": "null"\n },\n {\n "items": {\n "$ref": "#/$defs/__schema0"\n },\n "type": "array"\n },\n {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n }\n ]\n }\n },\n "$schema": "https://json-schema.org/draft/2020-12/schema",\n "additionalProperties": false,\n "properties": {\n "evidence": {\n "additionalProperties": false,\n "properties": {\n "analysis_profile": {\n "additionalProperties": false,\n "properties": {\n "digest": {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n },\n "parameters": {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n },\n "provider": {\n "additionalProperties": false,\n "properties": {\n "id": {\n "minLength": 1,\n "type": "string"\n },\n "name": {\n "minLength": 1,\n "type": "string"\n },\n "version": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "id",\n "name",\n "version"\n ],\n "type": "object"\n }\n },\n "required": [\n "provider",\n "parameters",\n "digest"\n ],\n "type": "object"\n },\n "authority": {\n "enum": [\n "shipped-artifact",\n "controlled-replay",\n "historical-reference",\n "external-service",\n "analyst-inference"\n ],\n "type": "string"\n },\n "confidence": {\n "enum": [\n "observed",\n "derived",\n "inferred"\n ],\n "type": "string"\n },\n "environment": {\n "anyOf": [\n {\n "additionalProperties": false,\n "properties": {\n "architecture": {\n "minLength": 1,\n "type": "string"\n },\n "id": {\n "minLength": 1,\n "type": "string"\n },\n "isolation": {\n "enum": [\n "none",\n "process",\n "container",\n "virtual-machine"\n ],\n "type": "string"\n },\n "platform": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "id",\n "platform",\n "architecture",\n "isolation"\n ],\n "type": "object"\n },\n {\n "type": "null"\n }\n ]\n },\n "evidence_id": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "evidence_links": {\n "items": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "type": "array"\n },\n "limitations": {\n "items": {\n "type": "string"\n },\n "type": "array"\n },\n "locations": {\n "items": {\n "oneOf": [\n {\n "additionalProperties": false,\n "properties": {\n "address": {\n "minLength": 1,\n "type": "string"\n },\n "kind": {\n "const": "address",\n "type": "string"\n }\n },\n "required": [\n "kind",\n "address"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "end": {\n "minLength": 1,\n "type": "string"\n },\n "kind": {\n "const": "address-range",\n "type": "string"\n },\n "start": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "kind",\n "start",\n "end"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "kind": {\n "const": "artifact-path",\n "type": "string"\n },\n "path": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "kind",\n "path"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "kind": {\n "const": "file-offset",\n "type": "string"\n },\n "offset": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "kind",\n "offset"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "end": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "kind": {\n "const": "file-offset-range",\n "type": "string"\n },\n "start": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "kind",\n "start",\n "end"\n ],\n "type": "object"\n }\n ]\n },\n "type": "array"\n },\n "normalized_result": {\n "$ref": "#/$defs/__schema0"\n },\n "operation": {\n "minLength": 1,\n "type": "string"\n },\n "parameters": {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n },\n "predicate_type": {\n "minLength": 1,\n "type": "string"\n },\n "provider": {\n "additionalProperties": false,\n "properties": {\n "id": {\n "minLength": 1,\n "type": "string"\n },\n "name": {\n "minLength": 1,\n "type": "string"\n },\n "version": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "id",\n "name",\n "version"\n ],\n "type": "object"\n },\n "raw_result": {\n "anyOf": [\n {\n "$ref": "#/$defs/__schema0"\n },\n {\n "type": "null"\n }\n ]\n },\n "subject": {\n "anyOf": [\n {\n "additionalProperties": false,\n "properties": {\n "architecture": {\n "anyOf": [\n {\n "enum": [\n "x86",\n "x86_64",\n "arm",\n "arm64"\n ],\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "digest": {\n "additionalProperties": false,\n "properties": {\n "sha256": {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n }\n },\n "required": [\n "sha256"\n ],\n "type": "object"\n },\n "format": {\n "enum": [\n "hopper",\n "analysis-database",\n "mach-o",\n "elf",\n "pe",\n "dos-mz",\n "dos-com",\n "zip",\n "ipa",\n "apk",\n "msix",\n "appx",\n "asar",\n "dmg",\n "pkg",\n "plist",\n "javascript",\n "source-map",\n "directory",\n "file",\n "unknown",\n "mach-o-universal",\n "javascript-bundle",\n "entitlements"\n ],\n "type": "string"\n },\n "local_path": {\n "type": "string"\n },\n "name": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "name",\n "digest",\n "format",\n "architecture",\n "local_path"\n ],\n "type": "object"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "evidence_id",\n "subject",\n "provider",\n "predicate_type",\n "operation",\n "parameters",\n "raw_result",\n "normalized_result",\n "confidence",\n "authority",\n "environment",\n "limitations",\n "locations",\n "evidence_links"\n ],\n "type": "object"\n },\n "evidence_id": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "result": {\n "type": "string"\n }\n },\n "required": [\n "result",\n "evidence_id",\n "evidence"\n ],\n "type": "object"\n },\n "requiresSession": false,\n "title": "Procedure Address"\n },\n {\n "analysisOperation": "procedure_assembly",\n "annotations": {\n "destructiveHint": false,\n "idempotentHint": true,\n "openWorldHint": false,\n "readOnlyHint": false\n },\n "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.",\n "effects": {\n "accessesNetwork": false,\n "changesUiState": false,\n "idempotent": true,\n "launchesProcess": false,\n "mayDiscardData": false,\n "mutatesSession": true,\n "mutatesTarget": false,\n "writesFilesystem": false\n },\n "inputSchema": {\n "$schema": "https://json-schema.org/draft/2020-12/schema",\n "examples": [\n {\n "procedure": "main"\n }\n ],\n "properties": {\n "document": {\n "description": "The document name",\n "type": "string"\n },\n "procedure": {\n "description": "The procedure name or address",\n "type": "string"\n }\n },\n "required": [\n "procedure"\n ],\n "type": "object"\n },\n "kind": "official-proxy",\n "name": "procedure_assembly",\n "outputSchema": {\n "$defs": {\n "__schema0": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "number"\n },\n {\n "type": "boolean"\n },\n {\n "type": "null"\n },\n {\n "items": {\n "$ref": "#/$defs/__schema0"\n },\n "type": "array"\n },\n {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n }\n ]\n }\n },\n "$schema": "https://json-schema.org/draft/2020-12/schema",\n "additionalProperties": false,\n "properties": {\n "evidence": {\n "additionalProperties": false,\n "properties": {\n "analysis_profile": {\n "additionalProperties": false,\n "properties": {\n "digest": {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n },\n "parameters": {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n },\n "provider": {\n "additionalProperties": false,\n "properties": {\n "id": {\n "minLength": 1,\n "type": "string"\n },\n "name": {\n "minLength": 1,\n "type": "string"\n },\n "version": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "id",\n "name",\n "version"\n ],\n "type": "object"\n }\n },\n "required": [\n "provider",\n "parameters",\n "digest"\n ],\n "type": "object"\n },\n "authority": {\n "enum": [\n "shipped-artifact",\n "controlled-replay",\n "historical-reference",\n "external-service",\n "analyst-inference"\n ],\n "type": "string"\n },\n "confidence": {\n "enum": [\n "observed",\n "derived",\n "inferred"\n ],\n "type": "string"\n },\n "environment": {\n "anyOf": [\n {\n "additionalProperties": false,\n "properties": {\n "architecture": {\n "minLength": 1,\n "type": "string"\n },\n "id": {\n "minLength": 1,\n "type": "string"\n },\n "isolation": {\n "enum": [\n "none",\n "process",\n "container",\n "virtual-machine"\n ],\n "type": "string"\n },\n "platform": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "id",\n "platform",\n "architecture",\n "isolation"\n ],\n "type": "object"\n },\n {\n "type": "null"\n }\n ]\n },\n "evidence_id": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "evidence_links": {\n "items": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "type": "array"\n },\n "limitations": {\n "items": {\n "type": "string"\n },\n "type": "array"\n },\n "locations": {\n "items": {\n "oneOf": [\n {\n "additionalProperties": false,\n "properties": {\n "address": {\n "minLength": 1,\n "type": "string"\n },\n "kind": {\n "const": "address",\n "type": "string"\n }\n },\n "required": [\n "kind",\n "address"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "end": {\n "minLength": 1,\n "type": "string"\n },\n "kind": {\n "const": "address-range",\n "type": "string"\n },\n "start": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "kind",\n "start",\n "end"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "kind": {\n "const": "artifact-path",\n "type": "string"\n },\n "path": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "kind",\n "path"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "kind": {\n "const": "file-offset",\n "type": "string"\n },\n "offset": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "kind",\n "offset"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "end": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "kind": {\n "const": "file-offset-range",\n "type": "string"\n },\n "start": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "kind",\n "start",\n "end"\n ],\n "type": "object"\n }\n ]\n },\n "type": "array"\n },\n "normalized_result": {\n "$ref": "#/$defs/__schema0"\n },\n "operation": {\n "minLength": 1,\n "type": "string"\n },\n "parameters": {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n },\n "predicate_type": {\n "minLength": 1,\n "type": "string"\n },\n "provider": {\n "additionalProperties": false,\n "properties": {\n "id": {\n "minLength": 1,\n "type": "string"\n },\n "name": {\n "minLength": 1,\n "type": "string"\n },\n "version": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "id",\n "name",\n "version"\n ],\n "type": "object"\n },\n "raw_result": {\n "anyOf": [\n {\n "$ref": "#/$defs/__schema0"\n },\n {\n "type": "null"\n }\n ]\n },\n "subject": {\n "anyOf": [\n {\n "additionalProperties": false,\n "properties": {\n "architecture": {\n "anyOf": [\n {\n "enum": [\n "x86",\n "x86_64",\n "arm",\n "arm64"\n ],\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "digest": {\n "additionalProperties": false,\n "properties": {\n "sha256": {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n }\n },\n "required": [\n "sha256"\n ],\n "type": "object"\n },\n "format": {\n "enum": [\n "hopper",\n "analysis-database",\n "mach-o",\n "elf",\n "pe",\n "dos-mz",\n "dos-com",\n "zip",\n "ipa",\n "apk",\n "msix",\n "appx",\n "asar",\n "dmg",\n "pkg",\n "plist",\n "javascript",\n "source-map",\n "directory",\n "file",\n "unknown",\n "mach-o-universal",\n "javascript-bundle",\n "entitlements"\n ],\n "type": "string"\n },\n "local_path": {\n "type": "string"\n },\n "name": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "name",\n "digest",\n "format",\n "architecture",\n "local_path"\n ],\n "type": "object"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "evidence_id",\n "subject",\n "provider",\n "predicate_type",\n "operation",\n "parameters",\n "raw_result",\n "normalized_result",\n "confidence",\n "authority",\n "environment",\n "limitations",\n "locations",\n "evidence_links"\n ],\n "type": "object"\n },\n "evidence_id": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "result": {\n "type": "string"\n }\n },\n "required": [\n "result",\n "evidence_id",\n "evidence"\n ],\n "type": "object"\n },\n "requiresSession": false,\n "title": "Procedure Assembly"\n },\n {\n "analysisOperation": "procedure_callees",\n "annotations": {\n "destructiveHint": false,\n "idempotentHint": true,\n "openWorldHint": false,\n "readOnlyHint": false\n },\n "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.",\n "effects": {\n "accessesNetwork": false,\n "changesUiState": false,\n "idempotent": true,\n "launchesProcess": false,\n "mayDiscardData": false,\n "mutatesSession": true,\n "mutatesTarget": false,\n "writesFilesystem": false\n },\n "inputSchema": {\n "$schema": "https://json-schema.org/draft/2020-12/schema",\n "examples": [\n {\n "procedure": "main"\n }\n ],\n "properties": {\n "document": {\n "description": "The document name",\n "type": "string"\n },\n "procedure": {\n "description": "The procedure name or address",\n "type": "string"\n }\n },\n "required": [\n "procedure"\n ],\n "type": "object"\n },\n "kind": "official-proxy",\n "name": "procedure_callees",\n "outputSchema": {\n "$defs": {\n "__schema0": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "number"\n },\n {\n "type": "boolean"\n },\n {\n "type": "null"\n },\n {\n "items": {\n "$ref": "#/$defs/__schema0"\n },\n "type": "array"\n },\n {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n }\n ]\n }\n },\n "$schema": "https://json-schema.org/draft/2020-12/schema",\n "additionalProperties": false,\n "properties": {\n "evidence": {\n "additionalProperties": false,\n "properties": {\n "analysis_profile": {\n "additionalProperties": false,\n "properties": {\n "digest": {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n },\n "parameters": {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n },\n "provider": {\n "additionalProperties": false,\n "properties": {\n "id": {\n "minLength": 1,\n "type": "string"\n },\n "name": {\n "minLength": 1,\n "type": "string"\n },\n "version": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "id",\n "name",\n "version"\n ],\n "type": "object"\n }\n },\n "required": [\n "provider",\n "parameters",\n "digest"\n ],\n "type": "object"\n },\n "authority": {\n "enum": [\n "shipped-artifact",\n "controlled-replay",\n "historical-reference",\n "external-service",\n "analyst-inference"\n ],\n "type": "string"\n },\n "confidence": {\n "enum": [\n "observed",\n "derived",\n "inferred"\n ],\n "type": "string"\n },\n "environment": {\n "anyOf": [\n {\n "additionalProperties": false,\n "properties": {\n "architecture": {\n "minLength": 1,\n "type": "string"\n },\n "id": {\n "minLength": 1,\n "type": "string"\n },\n "isolation": {\n "enum": [\n "none",\n "process",\n "container",\n "virtual-machine"\n ],\n "type": "string"\n },\n "platform": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "id",\n "platform",\n "architecture",\n "isolation"\n ],\n "type": "object"\n },\n {\n "type": "null"\n }\n ]\n },\n "evidence_id": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "evidence_links": {\n "items": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "type": "array"\n },\n "limitations": {\n "items": {\n "type": "string"\n },\n "type": "array"\n },\n "locations": {\n "items": {\n "oneOf": [\n {\n "additionalProperties": false,\n "properties": {\n "address": {\n "minLength": 1,\n "type": "string"\n },\n "kind": {\n "const": "address",\n "type": "string"\n }\n },\n "required": [\n "kind",\n "address"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "end": {\n "minLength": 1,\n "type": "string"\n },\n "kind": {\n "const": "address-range",\n "type": "string"\n },\n "start": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "kind",\n "start",\n "end"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "kind": {\n "const": "artifact-path",\n "type": "string"\n },\n "path": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "kind",\n "path"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "kind": {\n "const": "file-offset",\n "type": "string"\n },\n "offset": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "kind",\n "offset"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "end": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "kind": {\n "const": "file-offset-range",\n "type": "string"\n },\n "start": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "kind",\n "start",\n "end"\n ],\n "type": "object"\n }\n ]\n },\n "type": "array"\n },\n "normalized_result": {\n "$ref": "#/$defs/__schema0"\n },\n "operation": {\n "minLength": 1,\n "type": "string"\n },\n "parameters": {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n },\n "predicate_type": {\n "minLength": 1,\n "type": "string"\n },\n "provider": {\n "additionalProperties": false,\n "properties": {\n "id": {\n "minLength": 1,\n "type": "string"\n },\n "name": {\n "minLength": 1,\n "type": "string"\n },\n "version": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "id",\n "name",\n "version"\n ],\n "type": "object"\n },\n "raw_result": {\n "anyOf": [\n {\n "$ref": "#/$defs/__schema0"\n },\n {\n "type": "null"\n }\n ]\n },\n "subject": {\n "anyOf": [\n {\n "additionalProperties": false,\n "properties": {\n "architecture": {\n "anyOf": [\n {\n "enum": [\n "x86",\n "x86_64",\n "arm",\n "arm64"\n ],\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "digest": {\n "additionalProperties": false,\n "properties": {\n "sha256": {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n }\n },\n "required": [\n "sha256"\n ],\n "type": "object"\n },\n "format": {\n "enum": [\n "hopper",\n "analysis-database",\n "mach-o",\n "elf",\n "pe",\n "dos-mz",\n "dos-com",\n "zip",\n "ipa",\n "apk",\n "msix",\n "appx",\n "asar",\n "dmg",\n "pkg",\n "plist",\n "javascript",\n "source-map",\n "directory",\n "file",\n "unknown",\n "mach-o-universal",\n "javascript-bundle",\n "entitlements"\n ],\n "type": "string"\n },\n "local_path": {\n "type": "string"\n },\n "name": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "name",\n "digest",\n "format",\n "architecture",\n "local_path"\n ],\n "type": "object"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "evidence_id",\n "subject",\n "provider",\n "predicate_type",\n "operation",\n "parameters",\n "raw_result",\n "normalized_result",\n "confidence",\n "authority",\n "environment",\n "limitations",\n "locations",\n "evidence_links"\n ],\n "type": "object"\n },\n "evidence_id": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "result": {\n "items": {\n "type": "string"\n },\n "type": "array"\n }\n },\n "required": [\n "result",\n "evidence_id",\n "evidence"\n ],\n "type": "object"\n },\n "requiresSession": false,\n "title": "Procedure Callees"\n },\n {\n "analysisOperation": "procedure_callers",\n "annotations": {\n "destructiveHint": false,\n "idempotentHint": true,\n "openWorldHint": false,\n "readOnlyHint": false\n },\n "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.",\n "effects": {\n "accessesNetwork": false,\n "changesUiState": false,\n "idempotent": true,\n "launchesProcess": false,\n "mayDiscardData": false,\n "mutatesSession": true,\n "mutatesTarget": false,\n "writesFilesystem": false\n },\n "inputSchema": {\n "$schema": "https://json-schema.org/draft/2020-12/schema",\n "examples": [\n {\n "procedure": "main"\n }\n ],\n "properties": {\n "document": {\n "description": "The document name",\n "type": "string"\n },\n "procedure": {\n "description": "The procedure name or address",\n "type": "string"\n }\n },\n "required": [\n "procedure"\n ],\n "type": "object"\n },\n "kind": "official-proxy",\n "name": "procedure_callers",\n "outputSchema": {\n "$defs": {\n "__schema0": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "number"\n },\n {\n "type": "boolean"\n },\n {\n "type": "null"\n },\n {\n "items": {\n "$ref": "#/$defs/__schema0"\n },\n "type": "array"\n },\n {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n }\n ]\n }\n },\n "$schema": "https://json-schema.org/draft/2020-12/schema",\n "additionalProperties": false,\n "properties": {\n "evidence": {\n "additionalProperties": false,\n "properties": {\n "analysis_profile": {\n "additionalProperties": false,\n "properties": {\n "digest": {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n },\n "parameters": {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n },\n "provider": {\n "additionalProperties": false,\n "properties": {\n "id": {\n "minLength": 1,\n "type": "string"\n },\n "name": {\n "minLength": 1,\n "type": "string"\n },\n "version": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "id",\n "name",\n "version"\n ],\n "type": "object"\n }\n },\n "required": [\n "provider",\n "parameters",\n "digest"\n ],\n "type": "object"\n },\n "authority": {\n "enum": [\n "shipped-artifact",\n "controlled-replay",\n "historical-reference",\n "external-service",\n "analyst-inference"\n ],\n "type": "string"\n },\n "confidence": {\n "enum": [\n "observed",\n "derived",\n "inferred"\n ],\n "type": "string"\n },\n "environment": {\n "anyOf": [\n {\n "additionalProperties": false,\n "properties": {\n "architecture": {\n "minLength": 1,\n "type": "string"\n },\n "id": {\n "minLength": 1,\n "type": "string"\n },\n "isolation": {\n "enum": [\n "none",\n "process",\n "container",\n "virtual-machine"\n ],\n "type": "string"\n },\n "platform": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "id",\n "platform",\n "architecture",\n "isolation"\n ],\n "type": "object"\n },\n {\n "type": "null"\n }\n ]\n },\n "evidence_id": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "evidence_links": {\n "items": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "type": "array"\n },\n "limitations": {\n "items": {\n "type": "string"\n },\n "type": "array"\n },\n "locations": {\n "items": {\n "oneOf": [\n {\n "additionalProperties": false,\n "properties": {\n "address": {\n "minLength": 1,\n "type": "string"\n },\n "kind": {\n "const": "address",\n "type": "string"\n }\n },\n "required": [\n "kind",\n "address"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "end": {\n "minLength": 1,\n "type": "string"\n },\n "kind": {\n "const": "address-range",\n "type": "string"\n },\n "start": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "kind",\n "start",\n "end"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "kind": {\n "const": "artifact-path",\n "type": "string"\n },\n "path": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "kind",\n "path"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "kind": {\n "const": "file-offset",\n "type": "string"\n },\n "offset": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "kind",\n "offset"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "end": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "kind": {\n "const": "file-offset-range",\n "type": "string"\n },\n "start": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "kind",\n "start",\n "end"\n ],\n "type": "object"\n }\n ]\n },\n "type": "array"\n },\n "normalized_result": {\n "$ref": "#/$defs/__schema0"\n },\n "operation": {\n "minLength": 1,\n "type": "string"\n },\n "parameters": {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n },\n "predicate_type": {\n "minLength": 1,\n "type": "string"\n },\n "provider": {\n "additionalProperties": false,\n "properties": {\n "id": {\n "minLength": 1,\n "type": "string"\n },\n "name": {\n "minLength": 1,\n "type": "string"\n },\n "version": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "id",\n "name",\n "version"\n ],\n "type": "object"\n },\n "raw_result": {\n "anyOf": [\n {\n "$ref": "#/$defs/__schema0"\n },\n {\n "type": "null"\n }\n ]\n },\n "subject": {\n "anyOf": [\n {\n "additionalProperties": false,\n "properties": {\n "architecture": {\n "anyOf": [\n {\n "enum": [\n "x86",\n "x86_64",\n "arm",\n "arm64"\n ],\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "digest": {\n "additionalProperties": false,\n "properties": {\n "sha256": {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n }\n },\n "required": [\n "sha256"\n ],\n "type": "object"\n },\n "format": {\n "enum": [\n "hopper",\n "analysis-database",\n "mach-o",\n "elf",\n "pe",\n "dos-mz",\n "dos-com",\n "zip",\n "ipa",\n "apk",\n "msix",\n "appx",\n "asar",\n "dmg",\n "pkg",\n "plist",\n "javascript",\n "source-map",\n "directory",\n "file",\n "unknown",\n "mach-o-universal",\n "javascript-bundle",\n "entitlements"\n ],\n "type": "string"\n },\n "local_path": {\n "type": "string"\n },\n "name": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "name",\n "digest",\n "format",\n "architecture",\n "local_path"\n ],\n "type": "object"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "evidence_id",\n "subject",\n "provider",\n "predicate_type",\n "operation",\n "parameters",\n "raw_result",\n "normalized_result",\n "confidence",\n "authority",\n "environment",\n "limitations",\n "locations",\n "evidence_links"\n ],\n "type": "object"\n },\n "evidence_id": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "result": {\n "items": {\n "type": "string"\n },\n "type": "array"\n }\n },\n "required": [\n "result",\n "evidence_id",\n "evidence"\n ],\n "type": "object"\n },\n "requiresSession": false,\n "title": "Procedure Callers"\n },\n {\n "analysisOperation": "procedure_info",\n "annotations": {\n "destructiveHint": false,\n "idempotentHint": true,\n "openWorldHint": false,\n "readOnlyHint": false\n },\n "description": "Return provider metadata for one procedure identified by symbol or address: entrypoint, signature, locals, size, block count, and complete inclusive body ranges when observed. Body byte count and enclosing span remain distinct; unavailable extent is explicit.",\n "effects": {\n "accessesNetwork": false,\n "changesUiState": false,\n "idempotent": true,\n "launchesProcess": false,\n "mayDiscardData": false,\n "mutatesSession": true,\n "mutatesTarget": false,\n "writesFilesystem": false\n },\n "inputSchema": {\n "$schema": "https://json-schema.org/draft/2020-12/schema",\n "examples": [\n {\n "procedure": "main"\n }\n ],\n "properties": {\n "document": {\n "description": "The document name",\n "type": "string"\n },\n "procedure": {\n "description": "The procedure name or address",\n "type": "string"\n }\n },\n "required": [\n "procedure"\n ],\n "type": "object"\n },\n "kind": "official-proxy",\n "name": "procedure_info",\n "outputSchema": {\n "$defs": {\n "__schema0": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "number"\n },\n {\n "type": "boolean"\n },\n {\n "type": "null"\n },\n {\n "items": {\n "$ref": "#/$defs/__schema0"\n },\n "type": "array"\n },\n {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n }\n ]\n }\n },\n "$schema": "https://json-schema.org/draft/2020-12/schema",\n "additionalProperties": false,\n "properties": {\n "evidence": {\n "additionalProperties": false,\n "properties": {\n "analysis_profile": {\n "additionalProperties": false,\n "properties": {\n "digest": {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n },\n "parameters": {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n },\n "provider": {\n "additionalProperties": false,\n "properties": {\n "id": {\n "minLength": 1,\n "type": "string"\n },\n "name": {\n "minLength": 1,\n "type": "string"\n },\n "version": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "id",\n "name",\n "version"\n ],\n "type": "object"\n }\n },\n "required": [\n "provider",\n "parameters",\n "digest"\n ],\n "type": "object"\n },\n "authority": {\n "enum": [\n "shipped-artifact",\n "controlled-replay",\n "historical-reference",\n "external-service",\n "analyst-inference"\n ],\n "type": "string"\n },\n "confidence": {\n "enum": [\n "observed",\n "derived",\n "inferred"\n ],\n "type": "string"\n },\n "environment": {\n "anyOf": [\n {\n "additionalProperties": false,\n "properties": {\n "architecture": {\n "minLength": 1,\n "type": "string"\n },\n "id": {\n "minLength": 1,\n "type": "string"\n },\n "isolation": {\n "enum": [\n "none",\n "process",\n "container",\n "virtual-machine"\n ],\n "type": "string"\n },\n "platform": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "id",\n "platform",\n "architecture",\n "isolation"\n ],\n "type": "object"\n },\n {\n "type": "null"\n }\n ]\n },\n "evidence_id": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "evidence_links": {\n "items": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "type": "array"\n },\n "limitations": {\n "items": {\n "type": "string"\n },\n "type": "array"\n },\n "locations": {\n "items": {\n "oneOf": [\n {\n "additionalProperties": false,\n "properties": {\n "address": {\n "minLength": 1,\n "type": "string"\n },\n "kind": {\n "const": "address",\n "type": "string"\n }\n },\n "required": [\n "kind",\n "address"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "end": {\n "minLength": 1,\n "type": "string"\n },\n "kind": {\n "const": "address-range",\n "type": "string"\n },\n "start": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "kind",\n "start",\n "end"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "kind": {\n "const": "artifact-path",\n "type": "string"\n },\n "path": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "kind",\n "path"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "kind": {\n "const": "file-offset",\n "type": "string"\n },\n "offset": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "kind",\n "offset"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "end": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "kind": {\n "const": "file-offset-range",\n "type": "string"\n },\n "start": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "kind",\n "start",\n "end"\n ],\n "type": "object"\n }\n ]\n },\n "type": "array"\n },\n "normalized_result": {\n "$ref": "#/$defs/__schema0"\n },\n "operation": {\n "minLength": 1,\n "type": "string"\n },\n "parameters": {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n },\n "predicate_type": {\n "minLength": 1,\n "type": "string"\n },\n "provider": {\n "additionalProperties": false,\n "properties": {\n "id": {\n "minLength": 1,\n "type": "string"\n },\n "name": {\n "minLength": 1,\n "type": "string"\n },\n "version": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "id",\n "name",\n "version"\n ],\n "type": "object"\n },\n "raw_result": {\n "anyOf": [\n {\n "$ref": "#/$defs/__schema0"\n },\n {\n "type": "null"\n }\n ]\n },\n "subject": {\n "anyOf": [\n {\n "additionalProperties": false,\n "properties": {\n "architecture": {\n "anyOf": [\n {\n "enum": [\n "x86",\n "x86_64",\n "arm",\n "arm64"\n ],\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "digest": {\n "additionalProperties": false,\n "properties": {\n "sha256": {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n }\n },\n "required": [\n "sha256"\n ],\n "type": "object"\n },\n "format": {\n "enum": [\n "hopper",\n "analysis-database",\n "mach-o",\n "elf",\n "pe",\n "dos-mz",\n "dos-com",\n "zip",\n "ipa",\n "apk",\n "msix",\n "appx",\n "asar",\n "dmg",\n "pkg",\n "plist",\n "javascript",\n "source-map",\n "directory",\n "file",\n "unknown",\n "mach-o-universal",\n "javascript-bundle",\n "entitlements"\n ],\n "type": "string"\n },\n "local_path": {\n "type": "string"\n },\n "name": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "name",\n "digest",\n "format",\n "architecture",\n "local_path"\n ],\n "type": "object"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "evidence_id",\n "subject",\n "provider",\n "predicate_type",\n "operation",\n "parameters",\n "raw_result",\n "normalized_result",\n "confidence",\n "authority",\n "environment",\n "limitations",\n "locations",\n "evidence_links"\n ],\n "type": "object"\n },\n "evidence_id": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "result": {\n "additionalProperties": false,\n "properties": {\n "basicblock_count": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "body": {\n "default": {\n "available": false,\n "reason": "The provider did not report complete function body ranges."\n },\n "oneOf": [\n {\n "additionalProperties": false,\n "properties": {\n "available": {\n "const": false,\n "type": "boolean"\n },\n "reason": {\n "type": "string"\n }\n },\n "required": [\n "available",\n "reason"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "available": {\n "const": true,\n "type": "boolean"\n },\n "contains_entry": {\n "type": "boolean"\n },\n "non_contiguous": {\n "type": "boolean"\n },\n "provenance": {\n "minLength": 1,\n "type": "string"\n },\n "ranges": {\n "items": {\n "additionalProperties": false,\n "properties": {\n "end": {\n "description": "Inclusive last address of this observed body range.",\n "type": "string"\n },\n "start": {\n "type": "string"\n }\n },\n "required": [\n "start",\n "end"\n ],\n "type": "object"\n },\n "type": "array"\n },\n "span_bytes": {\n "anyOf": [\n {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n {\n "type": "null"\n }\n ]\n },\n "total_bytes": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "available",\n "provenance",\n "ranges",\n "total_bytes",\n "span_bytes",\n "non_contiguous",\n "contains_entry"\n ],\n "type": "object"\n }\n ]\n },\n "classification": {\n "anyOf": [\n {\n "additionalProperties": false,\n "properties": {\n "external": {\n "type": "boolean"\n },\n "provenance": {\n "minLength": 1,\n "type": "string"\n },\n "thunk": {\n "type": "boolean"\n },\n "thunk_target": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "external",\n "thunk",\n "thunk_target",\n "provenance"\n ],\n "type": "object"\n },\n {\n "type": "null"\n }\n ],\n "default": null\n },\n "entrypoint": {\n "type": "string"\n },\n "length": {\n "minimum": 0,\n "type": "number"\n },\n "locals": {\n "items": {\n "additionalProperties": false,\n "properties": {\n "description": {\n "type": "string"\n },\n "provenance": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "description",\n "provenance"\n ],\n "type": "object"\n },\n "type": "array"\n },\n "name": {\n "type": "string"\n },\n "signature": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "name",\n "entrypoint",\n "basicblock_count",\n "length",\n "signature",\n "locals",\n "classification",\n "body"\n ],\n "type": "object"\n }\n },\n "required": [\n "result",\n "evidence_id",\n "evidence"\n ],\n "type": "object"\n },\n "requiresSession": false,\n "title": "Procedure Info"\n },\n {\n "analysisOperation": "read_function_instructions",\n "annotations": {\n "destructiveHint": false,\n "idempotentHint": true,\n "openWorldHint": false,\n "readOnlyHint": false\n },\n "description": "Return every raw instruction for one analyzed procedure. Instruction text is provider-specific.",\n "effects": {\n "accessesNetwork": false,\n "changesUiState": false,\n "idempotent": true,\n "launchesProcess": false,\n "mayDiscardData": false,\n "mutatesSession": true,\n "mutatesTarget": false,\n "writesFilesystem": false\n },\n "inputSchema": {\n "$schema": "https://json-schema.org/draft/2020-12/schema",\n "examples": [\n {\n "procedure": "main"\n }\n ],\n "properties": {\n "document": {\n "description": "The document name",\n "type": "string"\n },\n "procedure": {\n "description": "The procedure name or address",\n "type": "string"\n }\n },\n "required": [\n "procedure"\n ],\n "type": "object"\n },\n "kind": "official-proxy",\n "name": "read_function_instructions",\n "outputSchema": {\n "$defs": {\n "__schema0": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "number"\n },\n {\n "type": "boolean"\n },\n {\n "type": "null"\n },\n {\n "items": {\n "$ref": "#/$defs/__schema0"\n },\n "type": "array"\n },\n {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n }\n ]\n }\n },\n "$schema": "https://json-schema.org/draft/2020-12/schema",\n "additionalProperties": false,\n "properties": {\n "evidence": {\n "additionalProperties": false,\n "properties": {\n "analysis_profile": {\n "additionalProperties": false,\n "properties": {\n "digest": {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n },\n "parameters": {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n },\n "provider": {\n "additionalProperties": false,\n "properties": {\n "id": {\n "minLength": 1,\n "type": "string"\n },\n "name": {\n "minLength": 1,\n "type": "string"\n },\n "version": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "id",\n "name",\n "version"\n ],\n "type": "object"\n }\n },\n "required": [\n "provider",\n "parameters",\n "digest"\n ],\n "type": "object"\n },\n "authority": {\n "enum": [\n "shipped-artifact",\n "controlled-replay",\n "historical-reference",\n "external-service",\n "analyst-inference"\n ],\n "type": "string"\n },\n "confidence": {\n "enum": [\n "observed",\n "derived",\n "inferred"\n ],\n "type": "string"\n },\n "environment": {\n "anyOf": [\n {\n "additionalProperties": false,\n "properties": {\n "architecture": {\n "minLength": 1,\n "type": "string"\n },\n "id": {\n "minLength": 1,\n "type": "string"\n },\n "isolation": {\n "enum": [\n "none",\n "process",\n "container",\n "virtual-machine"\n ],\n "type": "string"\n },\n "platform": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "id",\n "platform",\n "architecture",\n "isolation"\n ],\n "type": "object"\n },\n {\n "type": "null"\n }\n ]\n },\n "evidence_id": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "evidence_links": {\n "items": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "type": "array"\n },\n "limitations": {\n "items": {\n "type": "string"\n },\n "type": "array"\n },\n "locations": {\n "items": {\n "oneOf": [\n {\n "additionalProperties": false,\n "properties": {\n "address": {\n "minLength": 1,\n "type": "string"\n },\n "kind": {\n "const": "address",\n "type": "string"\n }\n },\n "required": [\n "kind",\n "address"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "end": {\n "minLength": 1,\n "type": "string"\n },\n "kind": {\n "const": "address-range",\n "type": "string"\n },\n "start": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "kind",\n "start",\n "end"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "kind": {\n "const": "artifact-path",\n "type": "string"\n },\n "path": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "kind",\n "path"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "kind": {\n "const": "file-offset",\n "type": "string"\n },\n "offset": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "kind",\n "offset"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "end": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "kind": {\n "const": "file-offset-range",\n "type": "string"\n },\n "start": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "kind",\n "start",\n "end"\n ],\n "type": "object"\n }\n ]\n },\n "type": "array"\n },\n "normalized_result": {\n "$ref": "#/$defs/__schema0"\n },\n "operation": {\n "minLength": 1,\n "type": "string"\n },\n "parameters": {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n },\n "predicate_type": {\n "minLength": 1,\n "type": "string"\n },\n "provider": {\n "additionalProperties": false,\n "properties": {\n "id": {\n "minLength": 1,\n "type": "string"\n },\n "name": {\n "minLength": 1,\n "type": "string"\n },\n "version": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "id",\n "name",\n "version"\n ],\n "type": "object"\n },\n "raw_result": {\n "anyOf": [\n {\n "$ref": "#/$defs/__schema0"\n },\n {\n "type": "null"\n }\n ]\n },\n "subject": {\n "anyOf": [\n {\n "additionalProperties": false,\n "properties": {\n "architecture": {\n "anyOf": [\n {\n "enum": [\n "x86",\n "x86_64",\n "arm",\n "arm64"\n ],\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "digest": {\n "additionalProperties": false,\n "properties": {\n "sha256": {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n }\n },\n "required": [\n "sha256"\n ],\n "type": "object"\n },\n "format": {\n "enum": [\n "hopper",\n "analysis-database",\n "mach-o",\n "elf",\n "pe",\n "dos-mz",\n "dos-com",\n "zip",\n "ipa",\n "apk",\n "msix",\n "appx",\n "asar",\n "dmg",\n "pkg",\n "plist",\n "javascript",\n "source-map",\n "directory",\n "file",\n "unknown",\n "mach-o-universal",\n "javascript-bundle",\n "entitlements"\n ],\n "type": "string"\n },\n "local_path": {\n "type": "string"\n },\n "name": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "name",\n "digest",\n "format",\n "architecture",\n "local_path"\n ],\n "type": "object"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "evidence_id",\n "subject",\n "provider",\n "predicate_type",\n "operation",\n "parameters",\n "raw_result",\n "normalized_result",\n "confidence",\n "authority",\n "environment",\n "limitations",\n "locations",\n "evidence_links"\n ],\n "type": "object"\n },\n "evidence_id": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "result": {\n "additionalProperties": false,\n "properties": {\n "instructions": {\n "items": {\n "type": "string"\n },\n "type": "array"\n },\n "limitations": {\n "items": {\n "type": "string"\n },\n "type": "array"\n },\n "procedure": {\n "additionalProperties": false,\n "properties": {\n "address": {\n "type": "string"\n },\n "body": {\n "default": {\n "available": false,\n "reason": "The provider did not report complete function body ranges."\n },\n "oneOf": [\n {\n "additionalProperties": false,\n "properties": {\n "available": {\n "const": false,\n "type": "boolean"\n },\n "reason": {\n "type": "string"\n }\n },\n "required": [\n "available",\n "reason"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "available": {\n "const": true,\n "type": "boolean"\n },\n "contains_entry": {\n "type": "boolean"\n },\n "non_contiguous": {\n "type": "boolean"\n },\n "provenance": {\n "minLength": 1,\n "type": "string"\n },\n "ranges": {\n "items": {\n "additionalProperties": false,\n "properties": {\n "end": {\n "description": "Inclusive last address of this observed body range.",\n "type": "string"\n },\n "start": {\n "type": "string"\n }\n },\n "required": [\n "start",\n "end"\n ],\n "type": "object"\n },\n "type": "array"\n },\n "span_bytes": {\n "anyOf": [\n {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n {\n "type": "null"\n }\n ]\n },\n "total_bytes": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "available",\n "provenance",\n "ranges",\n "total_bytes",\n "span_bytes",\n "non_contiguous",\n "contains_entry"\n ],\n "type": "object"\n }\n ]\n },\n "classification": {\n "anyOf": [\n {\n "additionalProperties": false,\n "properties": {\n "external": {\n "type": "boolean"\n },\n "provenance": {\n "minLength": 1,\n "type": "string"\n },\n "thunk": {\n "type": "boolean"\n },\n "thunk_target": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "external",\n "thunk",\n "thunk_target",\n "provenance"\n ],\n "type": "object"\n },\n {\n "type": "null"\n }\n ],\n "default": null\n },\n "name": {\n "type": "string"\n }\n },\n "required": [\n "address",\n "name",\n "classification",\n "body"\n ],\n "type": "object"\n }\n },\n "required": [\n "procedure",\n "instructions",\n "limitations"\n ],\n "type": "object"\n }\n },\n "required": [\n "result",\n "evidence_id",\n "evidence"\n ],\n "type": "object"\n },\n "requiresSession": false,\n "title": "Read Function Instructions"\n },\n {\n "analysisOperation": "read_bytes",\n "annotations": {\n "destructiveHint": false,\n "idempotentHint": true,\n "openWorldHint": false,\n "readOnlyHint": false\n },\n "description": "Read 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.",\n "effects": {\n "accessesNetwork": false,\n "changesUiState": false,\n "idempotent": true,\n "launchesProcess": false,\n "mayDiscardData": false,\n "mutatesSession": true,\n "mutatesTarget": false,\n "writesFilesystem": false\n },\n "inputSchema": {\n "$schema": "https://json-schema.org/draft/2020-12/schema",\n "examples": [\n {\n "address": "0x1000",\n "length": 16\n }\n ],\n "properties": {\n "address": {\n "description": "A provider-normalized address; default memory uses 0x-prefixed hexadecimal",\n "type": "string"\n },\n "document": {\n "description": "The document name",\n "type": "string"\n },\n "length": {\n "default": 256,\n "description": "Value for length.",\n "maximum": 9007199254740991,\n "minimum": 1,\n "type": "integer"\n }\n },\n "required": [\n "address"\n ],\n "type": "object"\n },\n "kind": "official-proxy",\n "name": "read_bytes",\n "outputSchema": {\n "$defs": {\n "__schema0": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "number"\n },\n {\n "type": "boolean"\n },\n {\n "type": "null"\n },\n {\n "items": {\n "$ref": "#/$defs/__schema0"\n },\n "type": "array"\n },\n {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n }\n ]\n }\n },\n "$schema": "https://json-schema.org/draft/2020-12/schema",\n "additionalProperties": false,\n "properties": {\n "evidence": {\n "additionalProperties": false,\n "properties": {\n "analysis_profile": {\n "additionalProperties": false,\n "properties": {\n "digest": {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n },\n "parameters": {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n },\n "provider": {\n "additionalProperties": false,\n "properties": {\n "id": {\n "minLength": 1,\n "type": "string"\n },\n "name": {\n "minLength": 1,\n "type": "string"\n },\n "version": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "id",\n "name",\n "version"\n ],\n "type": "object"\n }\n },\n "required": [\n "provider",\n "parameters",\n "digest"\n ],\n "type": "object"\n },\n "authority": {\n "enum": [\n "shipped-artifact",\n "controlled-replay",\n "historical-reference",\n "external-service",\n "analyst-inference"\n ],\n "type": "string"\n },\n "confidence": {\n "enum": [\n "observed",\n "derived",\n "inferred"\n ],\n "type": "string"\n },\n "environment": {\n "anyOf": [\n {\n "additionalProperties": false,\n "properties": {\n "architecture": {\n "minLength": 1,\n "type": "string"\n },\n "id": {\n "minLength": 1,\n "type": "string"\n },\n "isolation": {\n "enum": [\n "none",\n "process",\n "container",\n "virtual-machine"\n ],\n "type": "string"\n },\n "platform": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "id",\n "platform",\n "architecture",\n "isolation"\n ],\n "type": "object"\n },\n {\n "type": "null"\n }\n ]\n },\n "evidence_id": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "evidence_links": {\n "items": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "type": "array"\n },\n "limitations": {\n "items": {\n "type": "string"\n },\n "type": "array"\n },\n "locations": {\n "items": {\n "oneOf": [\n {\n "additionalProperties": false,\n "properties": {\n "address": {\n "minLength": 1,\n "type": "string"\n },\n "kind": {\n "const": "address",\n "type": "string"\n }\n },\n "required": [\n "kind",\n "address"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "end": {\n "minLength": 1,\n "type": "string"\n },\n "kind": {\n "const": "address-range",\n "type": "string"\n },\n "start": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "kind",\n "start",\n "end"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "kind": {\n "const": "artifact-path",\n "type": "string"\n },\n "path": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "kind",\n "path"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "kind": {\n "const": "file-offset",\n "type": "string"\n },\n "offset": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "kind",\n "offset"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "end": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "kind": {\n "const": "file-offset-range",\n "type": "string"\n },\n "start": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "kind",\n "start",\n "end"\n ],\n "type": "object"\n }\n ]\n },\n "type": "array"\n },\n "normalized_result": {\n "$ref": "#/$defs/__schema0"\n },\n "operation": {\n "minLength": 1,\n "type": "string"\n },\n "parameters": {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n },\n "predicate_type": {\n "minLength": 1,\n "type": "string"\n },\n "provider": {\n "additionalProperties": false,\n "properties": {\n "id": {\n "minLength": 1,\n "type": "string"\n },\n "name": {\n "minLength": 1,\n "type": "string"\n },\n "version": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "id",\n "name",\n "version"\n ],\n "type": "object"\n },\n "raw_result": {\n "anyOf": [\n {\n "$ref": "#/$defs/__schema0"\n },\n {\n "type": "null"\n }\n ]\n },\n "subject": {\n "anyOf": [\n {\n "additionalProperties": false,\n "properties": {\n "architecture": {\n "anyOf": [\n {\n "enum": [\n "x86",\n "x86_64",\n "arm",\n "arm64"\n ],\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "digest": {\n "additionalProperties": false,\n "properties": {\n "sha256": {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n }\n },\n "required": [\n "sha256"\n ],\n "type": "object"\n },\n "format": {\n "enum": [\n "hopper",\n "analysis-database",\n "mach-o",\n "elf",\n "pe",\n "dos-mz",\n "dos-com",\n "zip",\n "ipa",\n "apk",\n "msix",\n "appx",\n "asar",\n "dmg",\n "pkg",\n "plist",\n "javascript",\n "source-map",\n "directory",\n "file",\n "unknown",\n "mach-o-universal",\n "javascript-bundle",\n "entitlements"\n ],\n "type": "string"\n },\n "local_path": {\n "type": "string"\n },\n "name": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "name",\n "digest",\n "format",\n "architecture",\n "local_path"\n ],\n "type": "object"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "evidence_id",\n "subject",\n "provider",\n "predicate_type",\n "operation",\n "parameters",\n "raw_result",\n "normalized_result",\n "confidence",\n "authority",\n "environment",\n "limitations",\n "locations",\n "evidence_links"\n ],\n "type": "object"\n },\n "evidence_id": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "result": {\n "additionalProperties": false,\n "properties": {\n "address": {\n "type": "string"\n },\n "bytes_hex": {\n "pattern": "^(?:[a-f0-9]{2})*$",\n "type": "string"\n },\n "complete": {\n "type": "boolean"\n },\n "requested_bytes": {\n "maximum": 9007199254740991,\n "minimum": 1,\n "type": "integer"\n },\n "returned_bytes": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "address",\n "requested_bytes",\n "returned_bytes",\n "bytes_hex",\n "complete"\n ],\n "type": "object"\n }\n },\n "required": [\n "result",\n "evidence_id",\n "evidence"\n ],\n "type": "object"\n },\n "requiresSession": false,\n "title": "Read Bytes"\n },\n {\n "analysisOperation": "address_to_file_offset",\n "annotations": {\n "destructiveHint": false,\n "idempotentHint": true,\n "openWorldHint": false,\n "readOnlyHint": false\n },\n "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.",\n "effects": {\n "accessesNetwork": false,\n "changesUiState": false,\n "idempotent": true,\n "launchesProcess": false,\n "mayDiscardData": false,\n "mutatesSession": true,\n "mutatesTarget": false,\n "writesFilesystem": false\n },\n "inputSchema": {\n "$schema": "https://json-schema.org/draft/2020-12/schema",\n "examples": [\n {\n "address": "0x1000"\n }\n ],\n "properties": {\n "address": {\n "description": "A provider-normalized address; default memory uses 0x-prefixed hexadecimal",\n "type": "string"\n },\n "document": {\n "description": "The document name",\n "type": "string"\n }\n },\n "required": [\n "address"\n ],\n "type": "object"\n },\n "kind": "official-proxy",\n "name": "address_to_file_offset",\n "outputSchema": {\n "$defs": {\n "__schema0": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "number"\n },\n {\n "type": "boolean"\n },\n {\n "type": "null"\n },\n {\n "items": {\n "$ref": "#/$defs/__schema0"\n },\n "type": "array"\n },\n {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n }\n ]\n }\n },\n "$schema": "https://json-schema.org/draft/2020-12/schema",\n "additionalProperties": false,\n "properties": {\n "evidence": {\n "additionalProperties": false,\n "properties": {\n "analysis_profile": {\n "additionalProperties": false,\n "properties": {\n "digest": {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n },\n "parameters": {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n },\n "provider": {\n "additionalProperties": false,\n "properties": {\n "id": {\n "minLength": 1,\n "type": "string"\n },\n "name": {\n "minLength": 1,\n "type": "string"\n },\n "version": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "id",\n "name",\n "version"\n ],\n "type": "object"\n }\n },\n "required": [\n "provider",\n "parameters",\n "digest"\n ],\n "type": "object"\n },\n "authority": {\n "enum": [\n "shipped-artifact",\n "controlled-replay",\n "historical-reference",\n "external-service",\n "analyst-inference"\n ],\n "type": "string"\n },\n "confidence": {\n "enum": [\n "observed",\n "derived",\n "inferred"\n ],\n "type": "string"\n },\n "environment": {\n "anyOf": [\n {\n "additionalProperties": false,\n "properties": {\n "architecture": {\n "minLength": 1,\n "type": "string"\n },\n "id": {\n "minLength": 1,\n "type": "string"\n },\n "isolation": {\n "enum": [\n "none",\n "process",\n "container",\n "virtual-machine"\n ],\n "type": "string"\n },\n "platform": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "id",\n "platform",\n "architecture",\n "isolation"\n ],\n "type": "object"\n },\n {\n "type": "null"\n }\n ]\n },\n "evidence_id": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "evidence_links": {\n "items": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "type": "array"\n },\n "limitations": {\n "items": {\n "type": "string"\n },\n "type": "array"\n },\n "locations": {\n "items": {\n "oneOf": [\n {\n "additionalProperties": false,\n "properties": {\n "address": {\n "minLength": 1,\n "type": "string"\n },\n "kind": {\n "const": "address",\n "type": "string"\n }\n },\n "required": [\n "kind",\n "address"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "end": {\n "minLength": 1,\n "type": "string"\n },\n "kind": {\n "const": "address-range",\n "type": "string"\n },\n "start": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "kind",\n "start",\n "end"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "kind": {\n "const": "artifact-path",\n "type": "string"\n },\n "path": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "kind",\n "path"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "kind": {\n "const": "file-offset",\n "type": "string"\n },\n "offset": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "kind",\n "offset"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "end": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "kind": {\n "const": "file-offset-range",\n "type": "string"\n },\n "start": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "kind",\n "start",\n "end"\n ],\n "type": "object"\n }\n ]\n },\n "type": "array"\n },\n "normalized_result": {\n "$ref": "#/$defs/__schema0"\n },\n "operation": {\n "minLength": 1,\n "type": "string"\n },\n "parameters": {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n },\n "predicate_type": {\n "minLength": 1,\n "type": "string"\n },\n "provider": {\n "additionalProperties": false,\n "properties": {\n "id": {\n "minLength": 1,\n "type": "string"\n },\n "name": {\n "minLength": 1,\n "type": "string"\n },\n "version": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "id",\n "name",\n "version"\n ],\n "type": "object"\n },\n "raw_result": {\n "anyOf": [\n {\n "$ref": "#/$defs/__schema0"\n },\n {\n "type": "null"\n }\n ]\n },\n "subject": {\n "anyOf": [\n {\n "additionalProperties": false,\n "properties": {\n "architecture": {\n "anyOf": [\n {\n "enum": [\n "x86",\n "x86_64",\n "arm",\n "arm64"\n ],\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "digest": {\n "additionalProperties": false,\n "properties": {\n "sha256": {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n }\n },\n "required": [\n "sha256"\n ],\n "type": "object"\n },\n "format": {\n "enum": [\n "hopper",\n "analysis-database",\n "mach-o",\n "elf",\n "pe",\n "dos-mz",\n "dos-com",\n "zip",\n "ipa",\n "apk",\n "msix",\n "appx",\n "asar",\n "dmg",\n "pkg",\n "plist",\n "javascript",\n "source-map",\n "directory",\n "file",\n "unknown",\n "mach-o-universal",\n "javascript-bundle",\n "entitlements"\n ],\n "type": "string"\n },\n "local_path": {\n "type": "string"\n },\n "name": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "name",\n "digest",\n "format",\n "architecture",\n "local_path"\n ],\n "type": "object"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "evidence_id",\n "subject",\n "provider",\n "predicate_type",\n "operation",\n "parameters",\n "raw_result",\n "normalized_result",\n "confidence",\n "authority",\n "environment",\n "limitations",\n "locations",\n "evidence_links"\n ],\n "type": "object"\n },\n "evidence_id": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "result": {\n "additionalProperties": false,\n "properties": {\n "address": {\n "type": "string"\n },\n "file_offset": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "address",\n "file_offset"\n ],\n "type": "object"\n }\n },\n "required": [\n "result",\n "evidence_id",\n "evidence"\n ],\n "type": "object"\n },\n "requiresSession": false,\n "title": "Address To File Offset"\n },\n {\n "analysisOperation": "procedure_references",\n "annotations": {\n "destructiveHint": false,\n "idempotentHint": true,\n "openWorldHint": false,\n "readOnlyHint": false\n },\n "description": "Return every raw incoming or outgoing reference edge for one procedure. Endpoint procedures are resolved only from provider containment; Ghidra preserves observed reference kinds while providers without kind authority mark them unavailable.",\n "effects": {\n "accessesNetwork": false,\n "changesUiState": false,\n "idempotent": true,\n "launchesProcess": false,\n "mayDiscardData": false,\n "mutatesSession": true,\n "mutatesTarget": false,\n "writesFilesystem": false\n },\n "inputSchema": {\n "$schema": "https://json-schema.org/draft/2020-12/schema",\n "examples": [\n {\n "direction": "outgoing",\n "procedure": "main"\n }\n ],\n "properties": {\n "direction": {\n "default": "outgoing",\n "description": "Direction in which to traverse or compare relationships.",\n "enum": [\n "incoming",\n "outgoing"\n ],\n "type": "string"\n },\n "document": {\n "description": "The document name",\n "type": "string"\n },\n "procedure": {\n "description": "The procedure name or address",\n "type": "string"\n }\n },\n "required": [\n "procedure"\n ],\n "type": "object"\n },\n "kind": "official-proxy",\n "name": "procedure_references",\n "outputSchema": {\n "$defs": {\n "__schema0": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "number"\n },\n {\n "type": "boolean"\n },\n {\n "type": "null"\n },\n {\n "items": {\n "$ref": "#/$defs/__schema0"\n },\n "type": "array"\n },\n {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n }\n ]\n }\n },\n "$schema": "https://json-schema.org/draft/2020-12/schema",\n "additionalProperties": false,\n "properties": {\n "evidence": {\n "additionalProperties": false,\n "properties": {\n "analysis_profile": {\n "additionalProperties": false,\n "properties": {\n "digest": {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n },\n "parameters": {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n },\n "provider": {\n "additionalProperties": false,\n "properties": {\n "id": {\n "minLength": 1,\n "type": "string"\n },\n "name": {\n "minLength": 1,\n "type": "string"\n },\n "version": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "id",\n "name",\n "version"\n ],\n "type": "object"\n }\n },\n "required": [\n "provider",\n "parameters",\n "digest"\n ],\n "type": "object"\n },\n "authority": {\n "enum": [\n "shipped-artifact",\n "controlled-replay",\n "historical-reference",\n "external-service",\n "analyst-inference"\n ],\n "type": "string"\n },\n "confidence": {\n "enum": [\n "observed",\n "derived",\n "inferred"\n ],\n "type": "string"\n },\n "environment": {\n "anyOf": [\n {\n "additionalProperties": false,\n "properties": {\n "architecture": {\n "minLength": 1,\n "type": "string"\n },\n "id": {\n "minLength": 1,\n "type": "string"\n },\n "isolation": {\n "enum": [\n "none",\n "process",\n "container",\n "virtual-machine"\n ],\n "type": "string"\n },\n "platform": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "id",\n "platform",\n "architecture",\n "isolation"\n ],\n "type": "object"\n },\n {\n "type": "null"\n }\n ]\n },\n "evidence_id": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "evidence_links": {\n "items": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "type": "array"\n },\n "limitations": {\n "items": {\n "type": "string"\n },\n "type": "array"\n },\n "locations": {\n "items": {\n "oneOf": [\n {\n "additionalProperties": false,\n "properties": {\n "address": {\n "minLength": 1,\n "type": "string"\n },\n "kind": {\n "const": "address",\n "type": "string"\n }\n },\n "required": [\n "kind",\n "address"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "end": {\n "minLength": 1,\n "type": "string"\n },\n "kind": {\n "const": "address-range",\n "type": "string"\n },\n "start": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "kind",\n "start",\n "end"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "kind": {\n "const": "artifact-path",\n "type": "string"\n },\n "path": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "kind",\n "path"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "kind": {\n "const": "file-offset",\n "type": "string"\n },\n "offset": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "kind",\n "offset"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "end": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "kind": {\n "const": "file-offset-range",\n "type": "string"\n },\n "start": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "kind",\n "start",\n "end"\n ],\n "type": "object"\n }\n ]\n },\n "type": "array"\n },\n "normalized_result": {\n "$ref": "#/$defs/__schema0"\n },\n "operation": {\n "minLength": 1,\n "type": "string"\n },\n "parameters": {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n },\n "predicate_type": {\n "minLength": 1,\n "type": "string"\n },\n "provider": {\n "additionalProperties": false,\n "properties": {\n "id": {\n "minLength": 1,\n "type": "string"\n },\n "name": {\n "minLength": 1,\n "type": "string"\n },\n "version": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "id",\n "name",\n "version"\n ],\n "type": "object"\n },\n "raw_result": {\n "anyOf": [\n {\n "$ref": "#/$defs/__schema0"\n },\n {\n "type": "null"\n }\n ]\n },\n "subject": {\n "anyOf": [\n {\n "additionalProperties": false,\n "properties": {\n "architecture": {\n "anyOf": [\n {\n "enum": [\n "x86",\n "x86_64",\n "arm",\n "arm64"\n ],\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "digest": {\n "additionalProperties": false,\n "properties": {\n "sha256": {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n }\n },\n "required": [\n "sha256"\n ],\n "type": "object"\n },\n "format": {\n "enum": [\n "hopper",\n "analysis-database",\n "mach-o",\n "elf",\n "pe",\n "dos-mz",\n "dos-com",\n "zip",\n "ipa",\n "apk",\n "msix",\n "appx",\n "asar",\n "dmg",\n "pkg",\n "plist",\n "javascript",\n "source-map",\n "directory",\n "file",\n "unknown",\n "mach-o-universal",\n "javascript-bundle",\n "entitlements"\n ],\n "type": "string"\n },\n "local_path": {\n "type": "string"\n },\n "name": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "name",\n "digest",\n "format",\n "architecture",\n "local_path"\n ],\n "type": "object"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "evidence_id",\n "subject",\n "provider",\n "predicate_type",\n "operation",\n "parameters",\n "raw_result",\n "normalized_result",\n "confidence",\n "authority",\n "environment",\n "limitations",\n "locations",\n "evidence_links"\n ],\n "type": "object"\n },\n "evidence_id": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "result": {\n "additionalProperties": false,\n "properties": {\n "direction": {\n "enum": [\n "incoming",\n "outgoing"\n ],\n "type": "string"\n },\n "procedure": {\n "additionalProperties": false,\n "properties": {\n "address": {\n "type": "string"\n },\n "body": {\n "default": {\n "available": false,\n "reason": "The provider did not report complete function body ranges."\n },\n "oneOf": [\n {\n "additionalProperties": false,\n "properties": {\n "available": {\n "const": false,\n "type": "boolean"\n },\n "reason": {\n "type": "string"\n }\n },\n "required": [\n "available",\n "reason"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "available": {\n "const": true,\n "type": "boolean"\n },\n "contains_entry": {\n "type": "boolean"\n },\n "non_contiguous": {\n "type": "boolean"\n },\n "provenance": {\n "minLength": 1,\n "type": "string"\n },\n "ranges": {\n "items": {\n "additionalProperties": false,\n "properties": {\n "end": {\n "description": "Inclusive last address of this observed body range.",\n "type": "string"\n },\n "start": {\n "type": "string"\n }\n },\n "required": [\n "start",\n "end"\n ],\n "type": "object"\n },\n "type": "array"\n },\n "span_bytes": {\n "anyOf": [\n {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n {\n "type": "null"\n }\n ]\n },\n "total_bytes": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "available",\n "provenance",\n "ranges",\n "total_bytes",\n "span_bytes",\n "non_contiguous",\n "contains_entry"\n ],\n "type": "object"\n }\n ]\n },\n "classification": {\n "anyOf": [\n {\n "additionalProperties": false,\n "properties": {\n "external": {\n "type": "boolean"\n },\n "provenance": {\n "minLength": 1,\n "type": "string"\n },\n "thunk": {\n "type": "boolean"\n },\n "thunk_target": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "external",\n "thunk",\n "thunk_target",\n "provenance"\n ],\n "type": "object"\n },\n {\n "type": "null"\n }\n ],\n "default": null\n },\n "name": {\n "type": "string"\n }\n },\n "required": [\n "address",\n "name",\n "classification",\n "body"\n ],\n "type": "object"\n },\n "reference_kinds_available": {\n "type": "boolean"\n },\n "references": {\n "items": {\n "additionalProperties": false,\n "properties": {\n "kind": {\n "oneOf": [\n {\n "additionalProperties": false,\n "properties": {\n "available": {\n "const": false,\n "type": "boolean"\n },\n "reason": {\n "type": "string"\n }\n },\n "required": [\n "available",\n "reason"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "available": {\n "const": true,\n "type": "boolean"\n },\n "call": {\n "type": "boolean"\n },\n "computed": {\n "type": "boolean"\n },\n "conditional": {\n "type": "boolean"\n },\n "data": {\n "type": "boolean"\n },\n "external": {\n "type": "boolean"\n },\n "flow": {\n "type": "boolean"\n },\n "indirect": {\n "type": "boolean"\n },\n "jump": {\n "type": "boolean"\n },\n "operand_index": {\n "maximum": 9007199254740991,\n "minimum": -9007199254740991,\n "type": "integer"\n },\n "primary": {\n "type": "boolean"\n },\n "provenance": {\n "minLength": 1,\n "type": "string"\n },\n "read": {\n "type": "boolean"\n },\n "terminal": {\n "type": "boolean"\n },\n "type": {\n "type": "string"\n },\n "write": {\n "type": "boolean"\n }\n },\n "required": [\n "available",\n "provenance",\n "type",\n "flow",\n "call",\n "jump",\n "data",\n "read",\n "write",\n "indirect",\n "computed",\n "conditional",\n "terminal",\n "primary",\n "operand_index",\n "external"\n ],\n "type": "object"\n }\n ]\n },\n "source_address": {\n "type": "string"\n },\n "source_procedure": {\n "anyOf": [\n {\n "additionalProperties": false,\n "properties": {\n "address": {\n "type": "string"\n },\n "body": {\n "default": {\n "available": false,\n "reason": "The provider did not report complete function body ranges."\n },\n "oneOf": [\n {\n "additionalProperties": false,\n "properties": {\n "available": {\n "const": false,\n "type": "boolean"\n },\n "reason": {\n "type": "string"\n }\n },\n "required": [\n "available",\n "reason"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "available": {\n "const": true,\n "type": "boolean"\n },\n "contains_entry": {\n "type": "boolean"\n },\n "non_contiguous": {\n "type": "boolean"\n },\n "provenance": {\n "minLength": 1,\n "type": "string"\n },\n "ranges": {\n "items": {\n "additionalProperties": false,\n "properties": {\n "end": {\n "description": "Inclusive last address of this observed body range.",\n "type": "string"\n },\n "start": {\n "type": "string"\n }\n },\n "required": [\n "start",\n "end"\n ],\n "type": "object"\n },\n "type": "array"\n },\n "span_bytes": {\n "anyOf": [\n {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n {\n "type": "null"\n }\n ]\n },\n "total_bytes": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "available",\n "provenance",\n "ranges",\n "total_bytes",\n "span_bytes",\n "non_contiguous",\n "contains_entry"\n ],\n "type": "object"\n }\n ]\n },\n "classification": {\n "anyOf": [\n {\n "additionalProperties": false,\n "properties": {\n "external": {\n "type": "boolean"\n },\n "provenance": {\n "minLength": 1,\n "type": "string"\n },\n "thunk": {\n "type": "boolean"\n },\n "thunk_target": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "external",\n "thunk",\n "thunk_target",\n "provenance"\n ],\n "type": "object"\n },\n {\n "type": "null"\n }\n ],\n "default": null\n },\n "name": {\n "type": "string"\n }\n },\n "required": [\n "address",\n "name",\n "classification",\n "body"\n ],\n "type": "object"\n },\n {\n "type": "null"\n }\n ]\n },\n "target_address": {\n "type": "string"\n },\n "target_procedure": {\n "anyOf": [\n {\n "additionalProperties": false,\n "properties": {\n "address": {\n "type": "string"\n },\n "body": {\n "default": {\n "available": false,\n "reason": "The provider did not report complete function body ranges."\n },\n "oneOf": [\n {\n "additionalProperties": false,\n "properties": {\n "available": {\n "const": false,\n "type": "boolean"\n },\n "reason": {\n "type": "string"\n }\n },\n "required": [\n "available",\n "reason"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "available": {\n "const": true,\n "type": "boolean"\n },\n "contains_entry": {\n "type": "boolean"\n },\n "non_contiguous": {\n "type": "boolean"\n },\n "provenance": {\n "minLength": 1,\n "type": "string"\n },\n "ranges": {\n "items": {\n "additionalProperties": false,\n "properties": {\n "end": {\n "description": "Inclusive last address of this observed body range.",\n "type": "string"\n },\n "start": {\n "type": "string"\n }\n },\n "required": [\n "start",\n "end"\n ],\n "type": "object"\n },\n "type": "array"\n },\n "span_bytes": {\n "anyOf": [\n {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n {\n "type": "null"\n }\n ]\n },\n "total_bytes": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "available",\n "provenance",\n "ranges",\n "total_bytes",\n "span_bytes",\n "non_contiguous",\n "contains_entry"\n ],\n "type": "object"\n }\n ]\n },\n "classification": {\n "anyOf": [\n {\n "additionalProperties": false,\n "properties": {\n "external": {\n "type": "boolean"\n },\n "provenance": {\n "minLength": 1,\n "type": "string"\n },\n "thunk": {\n "type": "boolean"\n },\n "thunk_target": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "external",\n "thunk",\n "thunk_target",\n "provenance"\n ],\n "type": "object"\n },\n {\n "type": "null"\n }\n ],\n "default": null\n },\n "name": {\n "type": "string"\n }\n },\n "required": [\n "address",\n "name",\n "classification",\n "body"\n ],\n "type": "object"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "source_address",\n "target_address",\n "source_procedure",\n "target_procedure",\n "kind"\n ],\n "type": "object"\n },\n "type": "array"\n },\n "unresolved_calls": {\n "default": [],\n "items": {\n "additionalProperties": false,\n "properties": {\n "address": {\n "type": "string"\n },\n "reason": {\n "type": "string"\n }\n },\n "required": [\n "address",\n "reason"\n ],\n "type": "object"\n },\n "type": "array"\n }\n },\n "required": [\n "procedure",\n "direction",\n "unresolved_calls",\n "references"\n ],\n "type": "object"\n }\n },\n "required": [\n "result",\n "evidence_id",\n "evidence"\n ],\n "type": "object"\n },\n "requiresSession": false,\n "title": "Procedure References"\n },\n {\n "analysisOperation": "procedure_pseudo_code",\n "annotations": {\n "destructiveHint": false,\n "idempotentHint": true,\n "openWorldHint": false,\n "readOnlyHint": false\n },\n "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.",\n "effects": {\n "accessesNetwork": false,\n "changesUiState": false,\n "idempotent": true,\n "launchesProcess": false,\n "mayDiscardData": false,\n "mutatesSession": true,\n "mutatesTarget": false,\n "writesFilesystem": false\n },\n "inputSchema": {\n "$schema": "https://json-schema.org/draft/2020-12/schema",\n "examples": [\n {\n "procedure": "main"\n }\n ],\n "properties": {\n "document": {\n "description": "The document name",\n "type": "string"\n },\n "procedure": {\n "description": "The procedure name or address",\n "type": "string"\n }\n },\n "required": [\n "procedure"\n ],\n "type": "object"\n },\n "kind": "official-proxy",\n "name": "procedure_pseudo_code",\n "outputSchema": {\n "$defs": {\n "__schema0": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "number"\n },\n {\n "type": "boolean"\n },\n {\n "type": "null"\n },\n {\n "items": {\n "$ref": "#/$defs/__schema0"\n },\n "type": "array"\n },\n {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n }\n ]\n }\n },\n "$schema": "https://json-schema.org/draft/2020-12/schema",\n "additionalProperties": false,\n "properties": {\n "evidence": {\n "additionalProperties": false,\n "properties": {\n "analysis_profile": {\n "additionalProperties": false,\n "properties": {\n "digest": {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n },\n "parameters": {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n },\n "provider": {\n "additionalProperties": false,\n "properties": {\n "id": {\n "minLength": 1,\n "type": "string"\n },\n "name": {\n "minLength": 1,\n "type": "string"\n },\n "version": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "id",\n "name",\n "version"\n ],\n "type": "object"\n }\n },\n "required": [\n "provider",\n "parameters",\n "digest"\n ],\n "type": "object"\n },\n "authority": {\n "enum": [\n "shipped-artifact",\n "controlled-replay",\n "historical-reference",\n "external-service",\n "analyst-inference"\n ],\n "type": "string"\n },\n "confidence": {\n "enum": [\n "observed",\n "derived",\n "inferred"\n ],\n "type": "string"\n },\n "environment": {\n "anyOf": [\n {\n "additionalProperties": false,\n "properties": {\n "architecture": {\n "minLength": 1,\n "type": "string"\n },\n "id": {\n "minLength": 1,\n "type": "string"\n },\n "isolation": {\n "enum": [\n "none",\n "process",\n "container",\n "virtual-machine"\n ],\n "type": "string"\n },\n "platform": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "id",\n "platform",\n "architecture",\n "isolation"\n ],\n "type": "object"\n },\n {\n "type": "null"\n }\n ]\n },\n "evidence_id": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "evidence_links": {\n "items": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "type": "array"\n },\n "limitations": {\n "items": {\n "type": "string"\n },\n "type": "array"\n },\n "locations": {\n "items": {\n "oneOf": [\n {\n "additionalProperties": false,\n "properties": {\n "address": {\n "minLength": 1,\n "type": "string"\n },\n "kind": {\n "const": "address",\n "type": "string"\n }\n },\n "required": [\n "kind",\n "address"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "end": {\n "minLength": 1,\n "type": "string"\n },\n "kind": {\n "const": "address-range",\n "type": "string"\n },\n "start": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "kind",\n "start",\n "end"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "kind": {\n "const": "artifact-path",\n "type": "string"\n },\n "path": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "kind",\n "path"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "kind": {\n "const": "file-offset",\n "type": "string"\n },\n "offset": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "kind",\n "offset"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "end": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "kind": {\n "const": "file-offset-range",\n "type": "string"\n },\n "start": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "kind",\n "start",\n "end"\n ],\n "type": "object"\n }\n ]\n },\n "type": "array"\n },\n "normalized_result": {\n "$ref": "#/$defs/__schema0"\n },\n "operation": {\n "minLength": 1,\n "type": "string"\n },\n "parameters": {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n },\n "predicate_type": {\n "minLength": 1,\n "type": "string"\n },\n "provider": {\n "additionalProperties": false,\n "properties": {\n "id": {\n "minLength": 1,\n "type": "string"\n },\n "name": {\n "minLength": 1,\n "type": "string"\n },\n "version": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "id",\n "name",\n "version"\n ],\n "type": "object"\n },\n "raw_result": {\n "anyOf": [\n {\n "$ref": "#/$defs/__schema0"\n },\n {\n "type": "null"\n }\n ]\n },\n "subject": {\n "anyOf": [\n {\n "additionalProperties": false,\n "properties": {\n "architecture": {\n "anyOf": [\n {\n "enum": [\n "x86",\n "x86_64",\n "arm",\n "arm64"\n ],\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "digest": {\n "additionalProperties": false,\n "properties": {\n "sha256": {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n }\n },\n "required": [\n "sha256"\n ],\n "type": "object"\n },\n "format": {\n "enum": [\n "hopper",\n "analysis-database",\n "mach-o",\n "elf",\n "pe",\n "dos-mz",\n "dos-com",\n "zip",\n "ipa",\n "apk",\n "msix",\n "appx",\n "asar",\n "dmg",\n "pkg",\n "plist",\n "javascript",\n "source-map",\n "directory",\n "file",\n "unknown",\n "mach-o-universal",\n "javascript-bundle",\n "entitlements"\n ],\n "type": "string"\n },\n "local_path": {\n "type": "string"\n },\n "name": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "name",\n "digest",\n "format",\n "architecture",\n "local_path"\n ],\n "type": "object"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "evidence_id",\n "subject",\n "provider",\n "predicate_type",\n "operation",\n "parameters",\n "raw_result",\n "normalized_result",\n "confidence",\n "authority",\n "environment",\n "limitations",\n "locations",\n "evidence_links"\n ],\n "type": "object"\n },\n "evidence_id": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "result": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "result",\n "evidence_id",\n "evidence"\n ],\n "type": "object"\n },\n "requiresSession": false,\n "title": "Procedure Pseudo Code"\n },\n {\n "analysisOperation": "resolve_containing_procedure",\n "annotations": {\n "destructiveHint": false,\n "idempotentHint": true,\n "openWorldHint": false,\n "readOnlyHint": false\n },\n "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.",\n "effects": {\n "accessesNetwork": false,\n "changesUiState": false,\n "idempotent": true,\n "launchesProcess": false,\n "mayDiscardData": false,\n "mutatesSession": true,\n "mutatesTarget": false,\n "writesFilesystem": false\n },\n "inputSchema": {\n "$schema": "https://json-schema.org/draft/2020-12/schema",\n "examples": [\n {\n "address": "0x1000"\n }\n ],\n "properties": {\n "address": {\n "description": "A provider-normalized address; default memory uses 0x-prefixed hexadecimal",\n "type": "string"\n },\n "document": {\n "description": "The document name",\n "type": "string"\n }\n },\n "required": [\n "address"\n ],\n "type": "object"\n },\n "kind": "official-proxy",\n "name": "resolve_containing_procedure",\n "outputSchema": {\n "$defs": {\n "__schema0": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "number"\n },\n {\n "type": "boolean"\n },\n {\n "type": "null"\n },\n {\n "items": {\n "$ref": "#/$defs/__schema0"\n },\n "type": "array"\n },\n {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n }\n ]\n }\n },\n "$schema": "https://json-schema.org/draft/2020-12/schema",\n "additionalProperties": false,\n "properties": {\n "evidence": {\n "additionalProperties": false,\n "properties": {\n "analysis_profile": {\n "additionalProperties": false,\n "properties": {\n "digest": {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n },\n "parameters": {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n },\n "provider": {\n "additionalProperties": false,\n "properties": {\n "id": {\n "minLength": 1,\n "type": "string"\n },\n "name": {\n "minLength": 1,\n "type": "string"\n },\n "version": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "id",\n "name",\n "version"\n ],\n "type": "object"\n }\n },\n "required": [\n "provider",\n "parameters",\n "digest"\n ],\n "type": "object"\n },\n "authority": {\n "enum": [\n "shipped-artifact",\n "controlled-replay",\n "historical-reference",\n "external-service",\n "analyst-inference"\n ],\n "type": "string"\n },\n "confidence": {\n "enum": [\n "observed",\n "derived",\n "inferred"\n ],\n "type": "string"\n },\n "environment": {\n "anyOf": [\n {\n "additionalProperties": false,\n "properties": {\n "architecture": {\n "minLength": 1,\n "type": "string"\n },\n "id": {\n "minLength": 1,\n "type": "string"\n },\n "isolation": {\n "enum": [\n "none",\n "process",\n "container",\n "virtual-machine"\n ],\n "type": "string"\n },\n "platform": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "id",\n "platform",\n "architecture",\n "isolation"\n ],\n "type": "object"\n },\n {\n "type": "null"\n }\n ]\n },\n "evidence_id": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "evidence_links": {\n "items": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "type": "array"\n },\n "limitations": {\n "items": {\n "type": "string"\n },\n "type": "array"\n },\n "locations": {\n "items": {\n "oneOf": [\n {\n "additionalProperties": false,\n "properties": {\n "address": {\n "minLength": 1,\n "type": "string"\n },\n "kind": {\n "const": "address",\n "type": "string"\n }\n },\n "required": [\n "kind",\n "address"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "end": {\n "minLength": 1,\n "type": "string"\n },\n "kind": {\n "const": "address-range",\n "type": "string"\n },\n "start": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "kind",\n "start",\n "end"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "kind": {\n "const": "artifact-path",\n "type": "string"\n },\n "path": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "kind",\n "path"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "kind": {\n "const": "file-offset",\n "type": "string"\n },\n "offset": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "kind",\n "offset"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "end": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "kind": {\n "const": "file-offset-range",\n "type": "string"\n },\n "start": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "kind",\n "start",\n "end"\n ],\n "type": "object"\n }\n ]\n },\n "type": "array"\n },\n "normalized_result": {\n "$ref": "#/$defs/__schema0"\n },\n "operation": {\n "minLength": 1,\n "type": "string"\n },\n "parameters": {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n },\n "predicate_type": {\n "minLength": 1,\n "type": "string"\n },\n "provider": {\n "additionalProperties": false,\n "properties": {\n "id": {\n "minLength": 1,\n "type": "string"\n },\n "name": {\n "minLength": 1,\n "type": "string"\n },\n "version": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "id",\n "name",\n "version"\n ],\n "type": "object"\n },\n "raw_result": {\n "anyOf": [\n {\n "$ref": "#/$defs/__schema0"\n },\n {\n "type": "null"\n }\n ]\n },\n "subject": {\n "anyOf": [\n {\n "additionalProperties": false,\n "properties": {\n "architecture": {\n "anyOf": [\n {\n "enum": [\n "x86",\n "x86_64",\n "arm",\n "arm64"\n ],\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "digest": {\n "additionalProperties": false,\n "properties": {\n "sha256": {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n }\n },\n "required": [\n "sha256"\n ],\n "type": "object"\n },\n "format": {\n "enum": [\n "hopper",\n "analysis-database",\n "mach-o",\n "elf",\n "pe",\n "dos-mz",\n "dos-com",\n "zip",\n "ipa",\n "apk",\n "msix",\n "appx",\n "asar",\n "dmg",\n "pkg",\n "plist",\n "javascript",\n "source-map",\n "directory",\n "file",\n "unknown",\n "mach-o-universal",\n "javascript-bundle",\n "entitlements"\n ],\n "type": "string"\n },\n "local_path": {\n "type": "string"\n },\n "name": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "name",\n "digest",\n "format",\n "architecture",\n "local_path"\n ],\n "type": "object"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "evidence_id",\n "subject",\n "provider",\n "predicate_type",\n "operation",\n "parameters",\n "raw_result",\n "normalized_result",\n "confidence",\n "authority",\n "environment",\n "limitations",\n "locations",\n "evidence_links"\n ],\n "type": "object"\n },\n "evidence_id": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "result": {\n "oneOf": [\n {\n "additionalProperties": false,\n "properties": {\n "found": {\n "const": true,\n "type": "boolean"\n },\n "procedure": {\n "additionalProperties": false,\n "properties": {\n "address": {\n "type": "string"\n },\n "body": {\n "default": {\n "available": false,\n "reason": "The provider did not report complete function body ranges."\n },\n "oneOf": [\n {\n "additionalProperties": false,\n "properties": {\n "available": {\n "const": false,\n "type": "boolean"\n },\n "reason": {\n "type": "string"\n }\n },\n "required": [\n "available",\n "reason"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "available": {\n "const": true,\n "type": "boolean"\n },\n "contains_entry": {\n "type": "boolean"\n },\n "non_contiguous": {\n "type": "boolean"\n },\n "provenance": {\n "minLength": 1,\n "type": "string"\n },\n "ranges": {\n "items": {\n "additionalProperties": false,\n "properties": {\n "end": {\n "description": "Inclusive last address of this observed body range.",\n "type": "string"\n },\n "start": {\n "type": "string"\n }\n },\n "required": [\n "start",\n "end"\n ],\n "type": "object"\n },\n "type": "array"\n },\n "span_bytes": {\n "anyOf": [\n {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n {\n "type": "null"\n }\n ]\n },\n "total_bytes": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "available",\n "provenance",\n "ranges",\n "total_bytes",\n "span_bytes",\n "non_contiguous",\n "contains_entry"\n ],\n "type": "object"\n }\n ]\n },\n "classification": {\n "anyOf": [\n {\n "additionalProperties": false,\n "properties": {\n "external": {\n "type": "boolean"\n },\n "provenance": {\n "minLength": 1,\n "type": "string"\n },\n "thunk": {\n "type": "boolean"\n },\n "thunk_target": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "external",\n "thunk",\n "thunk_target",\n "provenance"\n ],\n "type": "object"\n },\n {\n "type": "null"\n }\n ],\n "default": null\n },\n "name": {\n "type": "string"\n }\n },\n "required": [\n "address",\n "name",\n "classification",\n "body"\n ],\n "type": "object"\n },\n "query_address": {\n "type": "string"\n }\n },\n "required": [\n "query_address",\n "found",\n "procedure"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "found": {\n "const": false,\n "type": "boolean"\n },\n "procedure": {\n "type": "null"\n },\n "query_address": {\n "type": "string"\n },\n "reason": {\n "enum": [\n "outside_segments",\n "not_in_procedure"\n ],\n "type": "string"\n }\n },\n "required": [\n "query_address",\n "found",\n "procedure",\n "reason"\n ],\n "type": "object"\n }\n ]\n }\n },\n "required": [\n "result",\n "evidence_id",\n "evidence"\n ],\n "type": "object"\n },\n "requiresSession": false,\n "title": "Resolve Containing Procedure"\n },\n {\n "analysisOperation": "search_procedures",\n "annotations": {\n "destructiveHint": false,\n "idempotentHint": true,\n "openWorldHint": false,\n "readOnlyHint": false\n },\n "description": "Search every analyzed procedure name using literal matching by default or regex when requested. Results are deterministic and complete.",\n "effects": {\n "accessesNetwork": false,\n "changesUiState": false,\n "idempotent": true,\n "launchesProcess": false,\n "mayDiscardData": false,\n "mutatesSession": true,\n "mutatesTarget": false,\n "writesFilesystem": false\n },\n "inputSchema": {\n "$schema": "https://json-schema.org/draft/2020-12/schema",\n "examples": [\n {\n "case_sensitive": false,\n "mode": "literal",\n "pattern": "main"\n }\n ],\n "properties": {\n "case_sensitive": {\n "default": false,\n "description": "Whether to match case",\n "type": "boolean"\n },\n "document": {\n "description": "The document name",\n "type": "string"\n },\n "mode": {\n "default": "literal",\n "description": "Operation mode that selects the requested behavior.",\n "enum": [\n "literal",\n "regex"\n ],\n "type": "string"\n },\n "pattern": {\n "description": "The literal text or regex pattern to search for",\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "pattern"\n ],\n "type": "object"\n },\n "kind": "official-proxy",\n "name": "search_procedures",\n "outputSchema": {\n "$defs": {\n "__schema0": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "number"\n },\n {\n "type": "boolean"\n },\n {\n "type": "null"\n },\n {\n "items": {\n "$ref": "#/$defs/__schema0"\n },\n "type": "array"\n },\n {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n }\n ]\n }\n },\n "$schema": "https://json-schema.org/draft/2020-12/schema",\n "additionalProperties": false,\n "properties": {\n "evidence": {\n "additionalProperties": false,\n "properties": {\n "analysis_profile": {\n "additionalProperties": false,\n "properties": {\n "digest": {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n },\n "parameters": {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n },\n "provider": {\n "additionalProperties": false,\n "properties": {\n "id": {\n "minLength": 1,\n "type": "string"\n },\n "name": {\n "minLength": 1,\n "type": "string"\n },\n "version": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "id",\n "name",\n "version"\n ],\n "type": "object"\n }\n },\n "required": [\n "provider",\n "parameters",\n "digest"\n ],\n "type": "object"\n },\n "authority": {\n "enum": [\n "shipped-artifact",\n "controlled-replay",\n "historical-reference",\n "external-service",\n "analyst-inference"\n ],\n "type": "string"\n },\n "confidence": {\n "enum": [\n "observed",\n "derived",\n "inferred"\n ],\n "type": "string"\n },\n "environment": {\n "anyOf": [\n {\n "additionalProperties": false,\n "properties": {\n "architecture": {\n "minLength": 1,\n "type": "string"\n },\n "id": {\n "minLength": 1,\n "type": "string"\n },\n "isolation": {\n "enum": [\n "none",\n "process",\n "container",\n "virtual-machine"\n ],\n "type": "string"\n },\n "platform": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "id",\n "platform",\n "architecture",\n "isolation"\n ],\n "type": "object"\n },\n {\n "type": "null"\n }\n ]\n },\n "evidence_id": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "evidence_links": {\n "items": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "type": "array"\n },\n "limitations": {\n "items": {\n "type": "string"\n },\n "type": "array"\n },\n "locations": {\n "items": {\n "oneOf": [\n {\n "additionalProperties": false,\n "properties": {\n "address": {\n "minLength": 1,\n "type": "string"\n },\n "kind": {\n "const": "address",\n "type": "string"\n }\n },\n "required": [\n "kind",\n "address"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "end": {\n "minLength": 1,\n "type": "string"\n },\n "kind": {\n "const": "address-range",\n "type": "string"\n },\n "start": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "kind",\n "start",\n "end"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "kind": {\n "const": "artifact-path",\n "type": "string"\n },\n "path": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "kind",\n "path"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "kind": {\n "const": "file-offset",\n "type": "string"\n },\n "offset": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "kind",\n "offset"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "end": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "kind": {\n "const": "file-offset-range",\n "type": "string"\n },\n "start": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "kind",\n "start",\n "end"\n ],\n "type": "object"\n }\n ]\n },\n "type": "array"\n },\n "normalized_result": {\n "$ref": "#/$defs/__schema0"\n },\n "operation": {\n "minLength": 1,\n "type": "string"\n },\n "parameters": {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n },\n "predicate_type": {\n "minLength": 1,\n "type": "string"\n },\n "provider": {\n "additionalProperties": false,\n "properties": {\n "id": {\n "minLength": 1,\n "type": "string"\n },\n "name": {\n "minLength": 1,\n "type": "string"\n },\n "version": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "id",\n "name",\n "version"\n ],\n "type": "object"\n },\n "raw_result": {\n "anyOf": [\n {\n "$ref": "#/$defs/__schema0"\n },\n {\n "type": "null"\n }\n ]\n },\n "subject": {\n "anyOf": [\n {\n "additionalProperties": false,\n "properties": {\n "architecture": {\n "anyOf": [\n {\n "enum": [\n "x86",\n "x86_64",\n "arm",\n "arm64"\n ],\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "digest": {\n "additionalProperties": false,\n "properties": {\n "sha256": {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n }\n },\n "required": [\n "sha256"\n ],\n "type": "object"\n },\n "format": {\n "enum": [\n "hopper",\n "analysis-database",\n "mach-o",\n "elf",\n "pe",\n "dos-mz",\n "dos-com",\n "zip",\n "ipa",\n "apk",\n "msix",\n "appx",\n "asar",\n "dmg",\n "pkg",\n "plist",\n "javascript",\n "source-map",\n "directory",\n "file",\n "unknown",\n "mach-o-universal",\n "javascript-bundle",\n "entitlements"\n ],\n "type": "string"\n },\n "local_path": {\n "type": "string"\n },\n "name": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "name",\n "digest",\n "format",\n "architecture",\n "local_path"\n ],\n "type": "object"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "evidence_id",\n "subject",\n "provider",\n "predicate_type",\n "operation",\n "parameters",\n "raw_result",\n "normalized_result",\n "confidence",\n "authority",\n "environment",\n "limitations",\n "locations",\n "evidence_links"\n ],\n "type": "object"\n },\n "evidence_id": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "result": {\n "items": {\n "additionalProperties": false,\n "properties": {\n "address": {\n "type": "string"\n },\n "value": {\n "type": "string"\n }\n },\n "required": [\n "address",\n "value"\n ],\n "type": "object"\n },\n "type": "array"\n }\n },\n "required": [\n "result",\n "evidence_id",\n "evidence"\n ],\n "type": "object"\n },\n "requiresSession": false,\n "title": "Search Procedures"\n },\n {\n "analysisOperation": "search_strings",\n "annotations": {\n "destructiveHint": false,\n "idempotentHint": true,\n "openWorldHint": false,\n "readOnlyHint": false\n },\n "description": "Search every analyzed string using literal matching by default or regex when requested. Results are deterministic and complete.",\n "effects": {\n "accessesNetwork": false,\n "changesUiState": false,\n "idempotent": true,\n "launchesProcess": false,\n "mayDiscardData": false,\n "mutatesSession": true,\n "mutatesTarget": false,\n "writesFilesystem": false\n },\n "inputSchema": {\n "$schema": "https://json-schema.org/draft/2020-12/schema",\n "examples": [\n {\n "case_sensitive": false,\n "mode": "literal",\n "pattern": "authorization failed"\n }\n ],\n "properties": {\n "case_sensitive": {\n "default": false,\n "description": "Whether to match case",\n "type": "boolean"\n },\n "document": {\n "description": "The document name",\n "type": "string"\n },\n "mode": {\n "default": "literal",\n "description": "Operation mode that selects the requested behavior.",\n "enum": [\n "literal",\n "regex"\n ],\n "type": "string"\n },\n "pattern": {\n "description": "The literal text or regex pattern to search for",\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "pattern"\n ],\n "type": "object"\n },\n "kind": "official-proxy",\n "name": "search_strings",\n "outputSchema": {\n "$defs": {\n "__schema0": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "number"\n },\n {\n "type": "boolean"\n },\n {\n "type": "null"\n },\n {\n "items": {\n "$ref": "#/$defs/__schema0"\n },\n "type": "array"\n },\n {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n }\n ]\n }\n },\n "$schema": "https://json-schema.org/draft/2020-12/schema",\n "additionalProperties": false,\n "properties": {\n "evidence": {\n "additionalProperties": false,\n "properties": {\n "analysis_profile": {\n "additionalProperties": false,\n "properties": {\n "digest": {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n },\n "parameters": {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n },\n "provider": {\n "additionalProperties": false,\n "properties": {\n "id": {\n "minLength": 1,\n "type": "string"\n },\n "name": {\n "minLength": 1,\n "type": "string"\n },\n "version": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "id",\n "name",\n "version"\n ],\n "type": "object"\n }\n },\n "required": [\n "provider",\n "parameters",\n "digest"\n ],\n "type": "object"\n },\n "authority": {\n "enum": [\n "shipped-artifact",\n "controlled-replay",\n "historical-reference",\n "external-service",\n "analyst-inference"\n ],\n "type": "string"\n },\n "confidence": {\n "enum": [\n "observed",\n "derived",\n "inferred"\n ],\n "type": "string"\n },\n "environment": {\n "anyOf": [\n {\n "additionalProperties": false,\n "properties": {\n "architecture": {\n "minLength": 1,\n "type": "string"\n },\n "id": {\n "minLength": 1,\n "type": "string"\n },\n "isolation": {\n "enum": [\n "none",\n "process",\n "container",\n "virtual-machine"\n ],\n "type": "string"\n },\n "platform": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "id",\n "platform",\n "architecture",\n "isolation"\n ],\n "type": "object"\n },\n {\n "type": "null"\n }\n ]\n },\n "evidence_id": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "evidence_links": {\n "items": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "type": "array"\n },\n "limitations": {\n "items": {\n "type": "string"\n },\n "type": "array"\n },\n "locations": {\n "items": {\n "oneOf": [\n {\n "additionalProperties": false,\n "properties": {\n "address": {\n "minLength": 1,\n "type": "string"\n },\n "kind": {\n "const": "address",\n "type": "string"\n }\n },\n "required": [\n "kind",\n "address"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "end": {\n "minLength": 1,\n "type": "string"\n },\n "kind": {\n "const": "address-range",\n "type": "string"\n },\n "start": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "kind",\n "start",\n "end"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "kind": {\n "const": "artifact-path",\n "type": "string"\n },\n "path": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "kind",\n "path"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "kind": {\n "const": "file-offset",\n "type": "string"\n },\n "offset": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "kind",\n "offset"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "end": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "kind": {\n "const": "file-offset-range",\n "type": "string"\n },\n "start": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "kind",\n "start",\n "end"\n ],\n "type": "object"\n }\n ]\n },\n "type": "array"\n },\n "normalized_result": {\n "$ref": "#/$defs/__schema0"\n },\n "operation": {\n "minLength": 1,\n "type": "string"\n },\n "parameters": {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n },\n "predicate_type": {\n "minLength": 1,\n "type": "string"\n },\n "provider": {\n "additionalProperties": false,\n "properties": {\n "id": {\n "minLength": 1,\n "type": "string"\n },\n "name": {\n "minLength": 1,\n "type": "string"\n },\n "version": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "id",\n "name",\n "version"\n ],\n "type": "object"\n },\n "raw_result": {\n "anyOf": [\n {\n "$ref": "#/$defs/__schema0"\n },\n {\n "type": "null"\n }\n ]\n },\n "subject": {\n "anyOf": [\n {\n "additionalProperties": false,\n "properties": {\n "architecture": {\n "anyOf": [\n {\n "enum": [\n "x86",\n "x86_64",\n "arm",\n "arm64"\n ],\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "digest": {\n "additionalProperties": false,\n "properties": {\n "sha256": {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n }\n },\n "required": [\n "sha256"\n ],\n "type": "object"\n },\n "format": {\n "enum": [\n "hopper",\n "analysis-database",\n "mach-o",\n "elf",\n "pe",\n "dos-mz",\n "dos-com",\n "zip",\n "ipa",\n "apk",\n "msix",\n "appx",\n "asar",\n "dmg",\n "pkg",\n "plist",\n "javascript",\n "source-map",\n "directory",\n "file",\n "unknown",\n "mach-o-universal",\n "javascript-bundle",\n "entitlements"\n ],\n "type": "string"\n },\n "local_path": {\n "type": "string"\n },\n "name": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "name",\n "digest",\n "format",\n "architecture",\n "local_path"\n ],\n "type": "object"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "evidence_id",\n "subject",\n "provider",\n "predicate_type",\n "operation",\n "parameters",\n "raw_result",\n "normalized_result",\n "confidence",\n "authority",\n "environment",\n "limitations",\n "locations",\n "evidence_links"\n ],\n "type": "object"\n },\n "evidence_id": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "result": {\n "items": {\n "additionalProperties": false,\n "properties": {\n "address": {\n "type": "string"\n },\n "value": {\n "type": "string"\n }\n },\n "required": [\n "address",\n "value"\n ],\n "type": "object"\n },\n "type": "array"\n }\n },\n "required": [\n "result",\n "evidence_id",\n "evidence"\n ],\n "type": "object"\n },\n "requiresSession": false,\n "title": "Search Strings"\n },\n {\n "analysisOperation": "set_address_name",\n "annotations": {\n "destructiveHint": false,\n "idempotentHint": true,\n "openWorldHint": false,\n "readOnlyHint": false\n },\n "description": "Assign an analyst name to one hexadecimal address and report Hopper\'s boolean result. This mutates analysis metadata.",\n "effects": {\n "accessesNetwork": false,\n "changesUiState": false,\n "idempotent": true,\n "launchesProcess": false,\n "mayDiscardData": false,\n "mutatesSession": true,\n "mutatesTarget": true,\n "writesFilesystem": false\n },\n "inputSchema": {\n "$schema": "https://json-schema.org/draft/2020-12/schema",\n "examples": [\n {\n "address": "0x1000",\n "name": "entry"\n }\n ],\n "properties": {\n "address": {\n "description": "A provider-normalized address; default memory uses 0x-prefixed hexadecimal",\n "type": "string"\n },\n "document": {\n "description": "The document name",\n "type": "string"\n },\n "name": {\n "description": "Exact name used by this operation.",\n "type": "string"\n }\n },\n "required": [\n "address",\n "name"\n ],\n "type": "object"\n },\n "kind": "official-proxy",\n "name": "set_address_name",\n "outputSchema": {\n "$defs": {\n "__schema0": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "number"\n },\n {\n "type": "boolean"\n },\n {\n "type": "null"\n },\n {\n "items": {\n "$ref": "#/$defs/__schema0"\n },\n "type": "array"\n },\n {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n }\n ]\n }\n },\n "$schema": "https://json-schema.org/draft/2020-12/schema",\n "additionalProperties": false,\n "properties": {\n "evidence": {\n "additionalProperties": false,\n "properties": {\n "analysis_profile": {\n "additionalProperties": false,\n "properties": {\n "digest": {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n },\n "parameters": {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n },\n "provider": {\n "additionalProperties": false,\n "properties": {\n "id": {\n "minLength": 1,\n "type": "string"\n },\n "name": {\n "minLength": 1,\n "type": "string"\n },\n "version": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "id",\n "name",\n "version"\n ],\n "type": "object"\n }\n },\n "required": [\n "provider",\n "parameters",\n "digest"\n ],\n "type": "object"\n },\n "authority": {\n "enum": [\n "shipped-artifact",\n "controlled-replay",\n "historical-reference",\n "external-service",\n "analyst-inference"\n ],\n "type": "string"\n },\n "confidence": {\n "enum": [\n "observed",\n "derived",\n "inferred"\n ],\n "type": "string"\n },\n "environment": {\n "anyOf": [\n {\n "additionalProperties": false,\n "properties": {\n "architecture": {\n "minLength": 1,\n "type": "string"\n },\n "id": {\n "minLength": 1,\n "type": "string"\n },\n "isolation": {\n "enum": [\n "none",\n "process",\n "container",\n "virtual-machine"\n ],\n "type": "string"\n },\n "platform": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "id",\n "platform",\n "architecture",\n "isolation"\n ],\n "type": "object"\n },\n {\n "type": "null"\n }\n ]\n },\n "evidence_id": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "evidence_links": {\n "items": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "type": "array"\n },\n "limitations": {\n "items": {\n "type": "string"\n },\n "type": "array"\n },\n "locations": {\n "items": {\n "oneOf": [\n {\n "additionalProperties": false,\n "properties": {\n "address": {\n "minLength": 1,\n "type": "string"\n },\n "kind": {\n "const": "address",\n "type": "string"\n }\n },\n "required": [\n "kind",\n "address"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "end": {\n "minLength": 1,\n "type": "string"\n },\n "kind": {\n "const": "address-range",\n "type": "string"\n },\n "start": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "kind",\n "start",\n "end"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "kind": {\n "const": "artifact-path",\n "type": "string"\n },\n "path": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "kind",\n "path"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "kind": {\n "const": "file-offset",\n "type": "string"\n },\n "offset": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "kind",\n "offset"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "end": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "kind": {\n "const": "file-offset-range",\n "type": "string"\n },\n "start": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "kind",\n "start",\n "end"\n ],\n "type": "object"\n }\n ]\n },\n "type": "array"\n },\n "normalized_result": {\n "$ref": "#/$defs/__schema0"\n },\n "operation": {\n "minLength": 1,\n "type": "string"\n },\n "parameters": {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n },\n "predicate_type": {\n "minLength": 1,\n "type": "string"\n },\n "provider": {\n "additionalProperties": false,\n "properties": {\n "id": {\n "minLength": 1,\n "type": "string"\n },\n "name": {\n "minLength": 1,\n "type": "string"\n },\n "version": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "id",\n "name",\n "version"\n ],\n "type": "object"\n },\n "raw_result": {\n "anyOf": [\n {\n "$ref": "#/$defs/__schema0"\n },\n {\n "type": "null"\n }\n ]\n },\n "subject": {\n "anyOf": [\n {\n "additionalProperties": false,\n "properties": {\n "architecture": {\n "anyOf": [\n {\n "enum": [\n "x86",\n "x86_64",\n "arm",\n "arm64"\n ],\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "digest": {\n "additionalProperties": false,\n "properties": {\n "sha256": {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n }\n },\n "required": [\n "sha256"\n ],\n "type": "object"\n },\n "format": {\n "enum": [\n "hopper",\n "analysis-database",\n "mach-o",\n "elf",\n "pe",\n "dos-mz",\n "dos-com",\n "zip",\n "ipa",\n "apk",\n "msix",\n "appx",\n "asar",\n "dmg",\n "pkg",\n "plist",\n "javascript",\n "source-map",\n "directory",\n "file",\n "unknown",\n "mach-o-universal",\n "javascript-bundle",\n "entitlements"\n ],\n "type": "string"\n },\n "local_path": {\n "type": "string"\n },\n "name": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "name",\n "digest",\n "format",\n "architecture",\n "local_path"\n ],\n "type": "object"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "evidence_id",\n "subject",\n "provider",\n "predicate_type",\n "operation",\n "parameters",\n "raw_result",\n "normalized_result",\n "confidence",\n "authority",\n "environment",\n "limitations",\n "locations",\n "evidence_links"\n ],\n "type": "object"\n },\n "evidence_id": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "result": {\n "type": "boolean"\n }\n },\n "required": [\n "result",\n "evidence_id",\n "evidence"\n ],\n "type": "object"\n },\n "requiresSession": false,\n "title": "Set Address Name"\n },\n {\n "analysisOperation": "set_addresses_names",\n "annotations": {\n "destructiveHint": false,\n "idempotentHint": true,\n "openWorldHint": false,\n "readOnlyHint": false\n },\n "description": "Assign analyst names to multiple addresses in one call and return per-address success booleans. This mutates analysis metadata; verify failures individually.",\n "effects": {\n "accessesNetwork": false,\n "changesUiState": false,\n "idempotent": true,\n "launchesProcess": false,\n "mayDiscardData": false,\n "mutatesSession": true,\n "mutatesTarget": true,\n "writesFilesystem": false\n },\n "inputSchema": {\n "$schema": "https://json-schema.org/draft/2020-12/schema",\n "examples": [\n {\n "names": {\n "0x1000": "entry"\n }\n }\n ],\n "properties": {\n "document": {\n "description": "The document name",\n "type": "string"\n },\n "names": {\n "additionalProperties": {\n "type": "string"\n },\n "description": "Value for names.",\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n }\n },\n "required": [\n "names"\n ],\n "type": "object"\n },\n "kind": "official-proxy",\n "name": "set_addresses_names",\n "outputSchema": {\n "$defs": {\n "__schema0": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "number"\n },\n {\n "type": "boolean"\n },\n {\n "type": "null"\n },\n {\n "items": {\n "$ref": "#/$defs/__schema0"\n },\n "type": "array"\n },\n {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n }\n ]\n }\n },\n "$schema": "https://json-schema.org/draft/2020-12/schema",\n "additionalProperties": false,\n "properties": {\n "evidence": {\n "additionalProperties": false,\n "properties": {\n "analysis_profile": {\n "additionalProperties": false,\n "properties": {\n "digest": {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n },\n "parameters": {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n },\n "provider": {\n "additionalProperties": false,\n "properties": {\n "id": {\n "minLength": 1,\n "type": "string"\n },\n "name": {\n "minLength": 1,\n "type": "string"\n },\n "version": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "id",\n "name",\n "version"\n ],\n "type": "object"\n }\n },\n "required": [\n "provider",\n "parameters",\n "digest"\n ],\n "type": "object"\n },\n "authority": {\n "enum": [\n "shipped-artifact",\n "controlled-replay",\n "historical-reference",\n "external-service",\n "analyst-inference"\n ],\n "type": "string"\n },\n "confidence": {\n "enum": [\n "observed",\n "derived",\n "inferred"\n ],\n "type": "string"\n },\n "environment": {\n "anyOf": [\n {\n "additionalProperties": false,\n "properties": {\n "architecture": {\n "minLength": 1,\n "type": "string"\n },\n "id": {\n "minLength": 1,\n "type": "string"\n },\n "isolation": {\n "enum": [\n "none",\n "process",\n "container",\n "virtual-machine"\n ],\n "type": "string"\n },\n "platform": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "id",\n "platform",\n "architecture",\n "isolation"\n ],\n "type": "object"\n },\n {\n "type": "null"\n }\n ]\n },\n "evidence_id": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "evidence_links": {\n "items": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "type": "array"\n },\n "limitations": {\n "items": {\n "type": "string"\n },\n "type": "array"\n },\n "locations": {\n "items": {\n "oneOf": [\n {\n "additionalProperties": false,\n "properties": {\n "address": {\n "minLength": 1,\n "type": "string"\n },\n "kind": {\n "const": "address",\n "type": "string"\n }\n },\n "required": [\n "kind",\n "address"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "end": {\n "minLength": 1,\n "type": "string"\n },\n "kind": {\n "const": "address-range",\n "type": "string"\n },\n "start": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "kind",\n "start",\n "end"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "kind": {\n "const": "artifact-path",\n "type": "string"\n },\n "path": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "kind",\n "path"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "kind": {\n "const": "file-offset",\n "type": "string"\n },\n "offset": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "kind",\n "offset"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "end": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "kind": {\n "const": "file-offset-range",\n "type": "string"\n },\n "start": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "kind",\n "start",\n "end"\n ],\n "type": "object"\n }\n ]\n },\n "type": "array"\n },\n "normalized_result": {\n "$ref": "#/$defs/__schema0"\n },\n "operation": {\n "minLength": 1,\n "type": "string"\n },\n "parameters": {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n },\n "predicate_type": {\n "minLength": 1,\n "type": "string"\n },\n "provider": {\n "additionalProperties": false,\n "properties": {\n "id": {\n "minLength": 1,\n "type": "string"\n },\n "name": {\n "minLength": 1,\n "type": "string"\n },\n "version": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "id",\n "name",\n "version"\n ],\n "type": "object"\n },\n "raw_result": {\n "anyOf": [\n {\n "$ref": "#/$defs/__schema0"\n },\n {\n "type": "null"\n }\n ]\n },\n "subject": {\n "anyOf": [\n {\n "additionalProperties": false,\n "properties": {\n "architecture": {\n "anyOf": [\n {\n "enum": [\n "x86",\n "x86_64",\n "arm",\n "arm64"\n ],\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "digest": {\n "additionalProperties": false,\n "properties": {\n "sha256": {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n }\n },\n "required": [\n "sha256"\n ],\n "type": "object"\n },\n "format": {\n "enum": [\n "hopper",\n "analysis-database",\n "mach-o",\n "elf",\n "pe",\n "dos-mz",\n "dos-com",\n "zip",\n "ipa",\n "apk",\n "msix",\n "appx",\n "asar",\n "dmg",\n "pkg",\n "plist",\n "javascript",\n "source-map",\n "directory",\n "file",\n "unknown",\n "mach-o-universal",\n "javascript-bundle",\n "entitlements"\n ],\n "type": "string"\n },\n "local_path": {\n "type": "string"\n },\n "name": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "name",\n "digest",\n "format",\n "architecture",\n "local_path"\n ],\n "type": "object"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "evidence_id",\n "subject",\n "provider",\n "predicate_type",\n "operation",\n "parameters",\n "raw_result",\n "normalized_result",\n "confidence",\n "authority",\n "environment",\n "limitations",\n "locations",\n "evidence_links"\n ],\n "type": "object"\n },\n "evidence_id": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "result": {\n "additionalProperties": {\n "type": "boolean"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n }\n },\n "required": [\n "result",\n "evidence_id",\n "evidence"\n ],\n "type": "object"\n },\n "requiresSession": false,\n "title": "Set Addresses Names"\n },\n {\n "analysisOperation": "set_bookmark",\n "annotations": {\n "destructiveHint": false,\n "idempotentHint": true,\n "openWorldHint": false,\n "readOnlyHint": false\n },\n "description": "Create or replace a bookmark at a hexadecimal address and report success. This mutates navigation metadata; bookmarks are analyst-authored navigation aids, not binary evidence.",\n "effects": {\n "accessesNetwork": false,\n "changesUiState": false,\n "idempotent": true,\n "launchesProcess": false,\n "mayDiscardData": false,\n "mutatesSession": true,\n "mutatesTarget": true,\n "writesFilesystem": false\n },\n "inputSchema": {\n "$schema": "https://json-schema.org/draft/2020-12/schema",\n "examples": [\n {\n "address": "0x1000"\n }\n ],\n "properties": {\n "address": {\n "description": "A provider-normalized address; default memory uses 0x-prefixed hexadecimal",\n "type": "string"\n },\n "document": {\n "description": "The document name",\n "type": "string"\n },\n "name": {\n "description": "Exact name used by this operation.",\n "type": "string"\n }\n },\n "required": [\n "address"\n ],\n "type": "object"\n },\n "kind": "official-proxy",\n "name": "set_bookmark",\n "outputSchema": {\n "$defs": {\n "__schema0": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "number"\n },\n {\n "type": "boolean"\n },\n {\n "type": "null"\n },\n {\n "items": {\n "$ref": "#/$defs/__schema0"\n },\n "type": "array"\n },\n {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n }\n ]\n }\n },\n "$schema": "https://json-schema.org/draft/2020-12/schema",\n "additionalProperties": false,\n "properties": {\n "evidence": {\n "additionalProperties": false,\n "properties": {\n "analysis_profile": {\n "additionalProperties": false,\n "properties": {\n "digest": {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n },\n "parameters": {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n },\n "provider": {\n "additionalProperties": false,\n "properties": {\n "id": {\n "minLength": 1,\n "type": "string"\n },\n "name": {\n "minLength": 1,\n "type": "string"\n },\n "version": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "id",\n "name",\n "version"\n ],\n "type": "object"\n }\n },\n "required": [\n "provider",\n "parameters",\n "digest"\n ],\n "type": "object"\n },\n "authority": {\n "enum": [\n "shipped-artifact",\n "controlled-replay",\n "historical-reference",\n "external-service",\n "analyst-inference"\n ],\n "type": "string"\n },\n "confidence": {\n "enum": [\n "observed",\n "derived",\n "inferred"\n ],\n "type": "string"\n },\n "environment": {\n "anyOf": [\n {\n "additionalProperties": false,\n "properties": {\n "architecture": {\n "minLength": 1,\n "type": "string"\n },\n "id": {\n "minLength": 1,\n "type": "string"\n },\n "isolation": {\n "enum": [\n "none",\n "process",\n "container",\n "virtual-machine"\n ],\n "type": "string"\n },\n "platform": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "id",\n "platform",\n "architecture",\n "isolation"\n ],\n "type": "object"\n },\n {\n "type": "null"\n }\n ]\n },\n "evidence_id": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "evidence_links": {\n "items": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "type": "array"\n },\n "limitations": {\n "items": {\n "type": "string"\n },\n "type": "array"\n },\n "locations": {\n "items": {\n "oneOf": [\n {\n "additionalProperties": false,\n "properties": {\n "address": {\n "minLength": 1,\n "type": "string"\n },\n "kind": {\n "const": "address",\n "type": "string"\n }\n },\n "required": [\n "kind",\n "address"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "end": {\n "minLength": 1,\n "type": "string"\n },\n "kind": {\n "const": "address-range",\n "type": "string"\n },\n "start": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "kind",\n "start",\n "end"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "kind": {\n "const": "artifact-path",\n "type": "string"\n },\n "path": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "kind",\n "path"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "kind": {\n "const": "file-offset",\n "type": "string"\n },\n "offset": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "kind",\n "offset"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "end": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "kind": {\n "const": "file-offset-range",\n "type": "string"\n },\n "start": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "kind",\n "start",\n "end"\n ],\n "type": "object"\n }\n ]\n },\n "type": "array"\n },\n "normalized_result": {\n "$ref": "#/$defs/__schema0"\n },\n "operation": {\n "minLength": 1,\n "type": "string"\n },\n "parameters": {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n },\n "predicate_type": {\n "minLength": 1,\n "type": "string"\n },\n "provider": {\n "additionalProperties": false,\n "properties": {\n "id": {\n "minLength": 1,\n "type": "string"\n },\n "name": {\n "minLength": 1,\n "type": "string"\n },\n "version": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "id",\n "name",\n "version"\n ],\n "type": "object"\n },\n "raw_result": {\n "anyOf": [\n {\n "$ref": "#/$defs/__schema0"\n },\n {\n "type": "null"\n }\n ]\n },\n "subject": {\n "anyOf": [\n {\n "additionalProperties": false,\n "properties": {\n "architecture": {\n "anyOf": [\n {\n "enum": [\n "x86",\n "x86_64",\n "arm",\n "arm64"\n ],\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "digest": {\n "additionalProperties": false,\n "properties": {\n "sha256": {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n }\n },\n "required": [\n "sha256"\n ],\n "type": "object"\n },\n "format": {\n "enum": [\n "hopper",\n "analysis-database",\n "mach-o",\n "elf",\n "pe",\n "dos-mz",\n "dos-com",\n "zip",\n "ipa",\n "apk",\n "msix",\n "appx",\n "asar",\n "dmg",\n "pkg",\n "plist",\n "javascript",\n "source-map",\n "directory",\n "file",\n "unknown",\n "mach-o-universal",\n "javascript-bundle",\n "entitlements"\n ],\n "type": "string"\n },\n "local_path": {\n "type": "string"\n },\n "name": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "name",\n "digest",\n "format",\n "architecture",\n "local_path"\n ],\n "type": "object"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "evidence_id",\n "subject",\n "provider",\n "predicate_type",\n "operation",\n "parameters",\n "raw_result",\n "normalized_result",\n "confidence",\n "authority",\n "environment",\n "limitations",\n "locations",\n "evidence_links"\n ],\n "type": "object"\n },\n "evidence_id": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "result": {\n "type": "boolean"\n }\n },\n "required": [\n "result",\n "evidence_id",\n "evidence"\n ],\n "type": "object"\n },\n "requiresSession": false,\n "title": "Set Bookmark"\n },\n {\n "analysisOperation": "set_comment",\n "annotations": {\n "destructiveHint": false,\n "idempotentHint": true,\n "openWorldHint": false,\n "readOnlyHint": false\n },\n "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.",\n "effects": {\n "accessesNetwork": false,\n "changesUiState": false,\n "idempotent": true,\n "launchesProcess": false,\n "mayDiscardData": false,\n "mutatesSession": true,\n "mutatesTarget": true,\n "writesFilesystem": false\n },\n "inputSchema": {\n "$schema": "https://json-schema.org/draft/2020-12/schema",\n "examples": [\n {\n "address": "0x1000",\n "comment": "validated entry point"\n }\n ],\n "properties": {\n "address": {\n "description": "A provider-normalized address; default memory uses 0x-prefixed hexadecimal",\n "type": "string"\n },\n "comment": {\n "description": "Exact analyst comment text to write.",\n "type": "string"\n },\n "document": {\n "description": "The document name",\n "type": "string"\n }\n },\n "required": [\n "address",\n "comment"\n ],\n "type": "object"\n },\n "kind": "official-proxy",\n "name": "set_comment",\n "outputSchema": {\n "$defs": {\n "__schema0": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "number"\n },\n {\n "type": "boolean"\n },\n {\n "type": "null"\n },\n {\n "items": {\n "$ref": "#/$defs/__schema0"\n },\n "type": "array"\n },\n {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n }\n ]\n }\n },\n "$schema": "https://json-schema.org/draft/2020-12/schema",\n "additionalProperties": false,\n "properties": {\n "evidence": {\n "additionalProperties": false,\n "properties": {\n "analysis_profile": {\n "additionalProperties": false,\n "properties": {\n "digest": {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n },\n "parameters": {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n },\n "provider": {\n "additionalProperties": false,\n "properties": {\n "id": {\n "minLength": 1,\n "type": "string"\n },\n "name": {\n "minLength": 1,\n "type": "string"\n },\n "version": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "id",\n "name",\n "version"\n ],\n "type": "object"\n }\n },\n "required": [\n "provider",\n "parameters",\n "digest"\n ],\n "type": "object"\n },\n "authority": {\n "enum": [\n "shipped-artifact",\n "controlled-replay",\n "historical-reference",\n "external-service",\n "analyst-inference"\n ],\n "type": "string"\n },\n "confidence": {\n "enum": [\n "observed",\n "derived",\n "inferred"\n ],\n "type": "string"\n },\n "environment": {\n "anyOf": [\n {\n "additionalProperties": false,\n "properties": {\n "architecture": {\n "minLength": 1,\n "type": "string"\n },\n "id": {\n "minLength": 1,\n "type": "string"\n },\n "isolation": {\n "enum": [\n "none",\n "process",\n "container",\n "virtual-machine"\n ],\n "type": "string"\n },\n "platform": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "id",\n "platform",\n "architecture",\n "isolation"\n ],\n "type": "object"\n },\n {\n "type": "null"\n }\n ]\n },\n "evidence_id": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "evidence_links": {\n "items": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "type": "array"\n },\n "limitations": {\n "items": {\n "type": "string"\n },\n "type": "array"\n },\n "locations": {\n "items": {\n "oneOf": [\n {\n "additionalProperties": false,\n "properties": {\n "address": {\n "minLength": 1,\n "type": "string"\n },\n "kind": {\n "const": "address",\n "type": "string"\n }\n },\n "required": [\n "kind",\n "address"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "end": {\n "minLength": 1,\n "type": "string"\n },\n "kind": {\n "const": "address-range",\n "type": "string"\n },\n "start": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "kind",\n "start",\n "end"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "kind": {\n "const": "artifact-path",\n "type": "string"\n },\n "path": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "kind",\n "path"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "kind": {\n "const": "file-offset",\n "type": "string"\n },\n "offset": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "kind",\n "offset"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "end": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "kind": {\n "const": "file-offset-range",\n "type": "string"\n },\n "start": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "kind",\n "start",\n "end"\n ],\n "type": "object"\n }\n ]\n },\n "type": "array"\n },\n "normalized_result": {\n "$ref": "#/$defs/__schema0"\n },\n "operation": {\n "minLength": 1,\n "type": "string"\n },\n "parameters": {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n },\n "predicate_type": {\n "minLength": 1,\n "type": "string"\n },\n "provider": {\n "additionalProperties": false,\n "properties": {\n "id": {\n "minLength": 1,\n "type": "string"\n },\n "name": {\n "minLength": 1,\n "type": "string"\n },\n "version": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "id",\n "name",\n "version"\n ],\n "type": "object"\n },\n "raw_result": {\n "anyOf": [\n {\n "$ref": "#/$defs/__schema0"\n },\n {\n "type": "null"\n }\n ]\n },\n "subject": {\n "anyOf": [\n {\n "additionalProperties": false,\n "properties": {\n "architecture": {\n "anyOf": [\n {\n "enum": [\n "x86",\n "x86_64",\n "arm",\n "arm64"\n ],\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "digest": {\n "additionalProperties": false,\n "properties": {\n "sha256": {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n }\n },\n "required": [\n "sha256"\n ],\n "type": "object"\n },\n "format": {\n "enum": [\n "hopper",\n "analysis-database",\n "mach-o",\n "elf",\n "pe",\n "dos-mz",\n "dos-com",\n "zip",\n "ipa",\n "apk",\n "msix",\n "appx",\n "asar",\n "dmg",\n "pkg",\n "plist",\n "javascript",\n "source-map",\n "directory",\n "file",\n "unknown",\n "mach-o-universal",\n "javascript-bundle",\n "entitlements"\n ],\n "type": "string"\n },\n "local_path": {\n "type": "string"\n },\n "name": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "name",\n "digest",\n "format",\n "architecture",\n "local_path"\n ],\n "type": "object"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "evidence_id",\n "subject",\n "provider",\n "predicate_type",\n "operation",\n "parameters",\n "raw_result",\n "normalized_result",\n "confidence",\n "authority",\n "environment",\n "limitations",\n "locations",\n "evidence_links"\n ],\n "type": "object"\n },\n "evidence_id": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "result": {\n "type": "boolean"\n }\n },\n "required": [\n "result",\n "evidence_id",\n "evidence"\n ],\n "type": "object"\n },\n "requiresSession": false,\n "title": "Set Comment"\n },\n {\n "analysisOperation": "set_current_document",\n "annotations": {\n "destructiveHint": false,\n "idempotentHint": true,\n "openWorldHint": false,\n "readOnlyHint": false\n },\n "description": "Select an already-open Hopper document by exact document name. This changes subsequent default-document routing; list_documents can supply names when needed, while explicit document inputs keep calls reproducible.",\n "effects": {\n "accessesNetwork": false,\n "changesUiState": true,\n "idempotent": true,\n "launchesProcess": false,\n "mayDiscardData": false,\n "mutatesSession": true,\n "mutatesTarget": false,\n "writesFilesystem": false\n },\n "inputSchema": {\n "$schema": "https://json-schema.org/draft/2020-12/schema",\n "examples": [\n {\n "document": "fixture"\n }\n ],\n "properties": {\n "document": {\n "description": "Exact provider document or program identity.",\n "type": "string"\n }\n },\n "required": [\n "document"\n ],\n "type": "object"\n },\n "kind": "official-proxy",\n "name": "set_current_document",\n "outputSchema": {\n "$defs": {\n "__schema0": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "number"\n },\n {\n "type": "boolean"\n },\n {\n "type": "null"\n },\n {\n "items": {\n "$ref": "#/$defs/__schema0"\n },\n "type": "array"\n },\n {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n }\n ]\n }\n },\n "$schema": "https://json-schema.org/draft/2020-12/schema",\n "additionalProperties": false,\n "properties": {\n "evidence": {\n "additionalProperties": false,\n "properties": {\n "analysis_profile": {\n "additionalProperties": false,\n "properties": {\n "digest": {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n },\n "parameters": {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n },\n "provider": {\n "additionalProperties": false,\n "properties": {\n "id": {\n "minLength": 1,\n "type": "string"\n },\n "name": {\n "minLength": 1,\n "type": "string"\n },\n "version": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "id",\n "name",\n "version"\n ],\n "type": "object"\n }\n },\n "required": [\n "provider",\n "parameters",\n "digest"\n ],\n "type": "object"\n },\n "authority": {\n "enum": [\n "shipped-artifact",\n "controlled-replay",\n "historical-reference",\n "external-service",\n "analyst-inference"\n ],\n "type": "string"\n },\n "confidence": {\n "enum": [\n "observed",\n "derived",\n "inferred"\n ],\n "type": "string"\n },\n "environment": {\n "anyOf": [\n {\n "additionalProperties": false,\n "properties": {\n "architecture": {\n "minLength": 1,\n "type": "string"\n },\n "id": {\n "minLength": 1,\n "type": "string"\n },\n "isolation": {\n "enum": [\n "none",\n "process",\n "container",\n "virtual-machine"\n ],\n "type": "string"\n },\n "platform": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "id",\n "platform",\n "architecture",\n "isolation"\n ],\n "type": "object"\n },\n {\n "type": "null"\n }\n ]\n },\n "evidence_id": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "evidence_links": {\n "items": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "type": "array"\n },\n "limitations": {\n "items": {\n "type": "string"\n },\n "type": "array"\n },\n "locations": {\n "items": {\n "oneOf": [\n {\n "additionalProperties": false,\n "properties": {\n "address": {\n "minLength": 1,\n "type": "string"\n },\n "kind": {\n "const": "address",\n "type": "string"\n }\n },\n "required": [\n "kind",\n "address"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "end": {\n "minLength": 1,\n "type": "string"\n },\n "kind": {\n "const": "address-range",\n "type": "string"\n },\n "start": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "kind",\n "start",\n "end"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "kind": {\n "const": "artifact-path",\n "type": "string"\n },\n "path": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "kind",\n "path"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "kind": {\n "const": "file-offset",\n "type": "string"\n },\n "offset": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "kind",\n "offset"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "end": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "kind": {\n "const": "file-offset-range",\n "type": "string"\n },\n "start": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "kind",\n "start",\n "end"\n ],\n "type": "object"\n }\n ]\n },\n "type": "array"\n },\n "normalized_result": {\n "$ref": "#/$defs/__schema0"\n },\n "operation": {\n "minLength": 1,\n "type": "string"\n },\n "parameters": {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n },\n "predicate_type": {\n "minLength": 1,\n "type": "string"\n },\n "provider": {\n "additionalProperties": false,\n "properties": {\n "id": {\n "minLength": 1,\n "type": "string"\n },\n "name": {\n "minLength": 1,\n "type": "string"\n },\n "version": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "id",\n "name",\n "version"\n ],\n "type": "object"\n },\n "raw_result": {\n "anyOf": [\n {\n "$ref": "#/$defs/__schema0"\n },\n {\n "type": "null"\n }\n ]\n },\n "subject": {\n "anyOf": [\n {\n "additionalProperties": false,\n "properties": {\n "architecture": {\n "anyOf": [\n {\n "enum": [\n "x86",\n "x86_64",\n "arm",\n "arm64"\n ],\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "digest": {\n "additionalProperties": false,\n "properties": {\n "sha256": {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n }\n },\n "required": [\n "sha256"\n ],\n "type": "object"\n },\n "format": {\n "enum": [\n "hopper",\n "analysis-database",\n "mach-o",\n "elf",\n "pe",\n "dos-mz",\n "dos-com",\n "zip",\n "ipa",\n "apk",\n "msix",\n "appx",\n "asar",\n "dmg",\n "pkg",\n "plist",\n "javascript",\n "source-map",\n "directory",\n "file",\n "unknown",\n "mach-o-universal",\n "javascript-bundle",\n "entitlements"\n ],\n "type": "string"\n },\n "local_path": {\n "type": "string"\n },\n "name": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "name",\n "digest",\n "format",\n "architecture",\n "local_path"\n ],\n "type": "object"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "evidence_id",\n "subject",\n "provider",\n "predicate_type",\n "operation",\n "parameters",\n "raw_result",\n "normalized_result",\n "confidence",\n "authority",\n "environment",\n "limitations",\n "locations",\n "evidence_links"\n ],\n "type": "object"\n },\n "evidence_id": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "result": {\n "type": "string"\n }\n },\n "required": [\n "result",\n "evidence_id",\n "evidence"\n ],\n "type": "object"\n },\n "requiresSession": false,\n "title": "Set Current Document"\n },\n {\n "analysisOperation": "set_inline_comment",\n "annotations": {\n "destructiveHint": false,\n "idempotentHint": true,\n "openWorldHint": false,\n "readOnlyHint": false\n },\n "description": "Write an inline instruction comment at a hexadecimal address and return whether readback matched. This mutates analysis metadata.",\n "effects": {\n "accessesNetwork": false,\n "changesUiState": false,\n "idempotent": true,\n "launchesProcess": false,\n "mayDiscardData": false,\n "mutatesSession": true,\n "mutatesTarget": true,\n "writesFilesystem": false\n },\n "inputSchema": {\n "$schema": "https://json-schema.org/draft/2020-12/schema",\n "examples": [\n {\n "address": "0x1000",\n "comment": "calls parser"\n }\n ],\n "properties": {\n "address": {\n "description": "A provider-normalized address; default memory uses 0x-prefixed hexadecimal",\n "type": "string"\n },\n "comment": {\n "description": "Exact analyst comment text to write.",\n "type": "string"\n },\n "document": {\n "description": "The document name",\n "type": "string"\n }\n },\n "required": [\n "address",\n "comment"\n ],\n "type": "object"\n },\n "kind": "official-proxy",\n "name": "set_inline_comment",\n "outputSchema": {\n "$defs": {\n "__schema0": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "number"\n },\n {\n "type": "boolean"\n },\n {\n "type": "null"\n },\n {\n "items": {\n "$ref": "#/$defs/__schema0"\n },\n "type": "array"\n },\n {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n }\n ]\n }\n },\n "$schema": "https://json-schema.org/draft/2020-12/schema",\n "additionalProperties": false,\n "properties": {\n "evidence": {\n "additionalProperties": false,\n "properties": {\n "analysis_profile": {\n "additionalProperties": false,\n "properties": {\n "digest": {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n },\n "parameters": {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n },\n "provider": {\n "additionalProperties": false,\n "properties": {\n "id": {\n "minLength": 1,\n "type": "string"\n },\n "name": {\n "minLength": 1,\n "type": "string"\n },\n "version": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "id",\n "name",\n "version"\n ],\n "type": "object"\n }\n },\n "required": [\n "provider",\n "parameters",\n "digest"\n ],\n "type": "object"\n },\n "authority": {\n "enum": [\n "shipped-artifact",\n "controlled-replay",\n "historical-reference",\n "external-service",\n "analyst-inference"\n ],\n "type": "string"\n },\n "confidence": {\n "enum": [\n "observed",\n "derived",\n "inferred"\n ],\n "type": "string"\n },\n "environment": {\n "anyOf": [\n {\n "additionalProperties": false,\n "properties": {\n "architecture": {\n "minLength": 1,\n "type": "string"\n },\n "id": {\n "minLength": 1,\n "type": "string"\n },\n "isolation": {\n "enum": [\n "none",\n "process",\n "container",\n "virtual-machine"\n ],\n "type": "string"\n },\n "platform": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "id",\n "platform",\n "architecture",\n "isolation"\n ],\n "type": "object"\n },\n {\n "type": "null"\n }\n ]\n },\n "evidence_id": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "evidence_links": {\n "items": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "type": "array"\n },\n "limitations": {\n "items": {\n "type": "string"\n },\n "type": "array"\n },\n "locations": {\n "items": {\n "oneOf": [\n {\n "additionalProperties": false,\n "properties": {\n "address": {\n "minLength": 1,\n "type": "string"\n },\n "kind": {\n "const": "address",\n "type": "string"\n }\n },\n "required": [\n "kind",\n "address"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "end": {\n "minLength": 1,\n "type": "string"\n },\n "kind": {\n "const": "address-range",\n "type": "string"\n },\n "start": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "kind",\n "start",\n "end"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "kind": {\n "const": "artifact-path",\n "type": "string"\n },\n "path": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "kind",\n "path"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "kind": {\n "const": "file-offset",\n "type": "string"\n },\n "offset": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "kind",\n "offset"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "end": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "kind": {\n "const": "file-offset-range",\n "type": "string"\n },\n "start": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "kind",\n "start",\n "end"\n ],\n "type": "object"\n }\n ]\n },\n "type": "array"\n },\n "normalized_result": {\n "$ref": "#/$defs/__schema0"\n },\n "operation": {\n "minLength": 1,\n "type": "string"\n },\n "parameters": {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n },\n "predicate_type": {\n "minLength": 1,\n "type": "string"\n },\n "provider": {\n "additionalProperties": false,\n "properties": {\n "id": {\n "minLength": 1,\n "type": "string"\n },\n "name": {\n "minLength": 1,\n "type": "string"\n },\n "version": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "id",\n "name",\n "version"\n ],\n "type": "object"\n },\n "raw_result": {\n "anyOf": [\n {\n "$ref": "#/$defs/__schema0"\n },\n {\n "type": "null"\n }\n ]\n },\n "subject": {\n "anyOf": [\n {\n "additionalProperties": false,\n "properties": {\n "architecture": {\n "anyOf": [\n {\n "enum": [\n "x86",\n "x86_64",\n "arm",\n "arm64"\n ],\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "digest": {\n "additionalProperties": false,\n "properties": {\n "sha256": {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n }\n },\n "required": [\n "sha256"\n ],\n "type": "object"\n },\n "format": {\n "enum": [\n "hopper",\n "analysis-database",\n "mach-o",\n "elf",\n "pe",\n "dos-mz",\n "dos-com",\n "zip",\n "ipa",\n "apk",\n "msix",\n "appx",\n "asar",\n "dmg",\n "pkg",\n "plist",\n "javascript",\n "source-map",\n "directory",\n "file",\n "unknown",\n "mach-o-universal",\n "javascript-bundle",\n "entitlements"\n ],\n "type": "string"\n },\n "local_path": {\n "type": "string"\n },\n "name": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "name",\n "digest",\n "format",\n "architecture",\n "local_path"\n ],\n "type": "object"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "evidence_id",\n "subject",\n "provider",\n "predicate_type",\n "operation",\n "parameters",\n "raw_result",\n "normalized_result",\n "confidence",\n "authority",\n "environment",\n "limitations",\n "locations",\n "evidence_links"\n ],\n "type": "object"\n },\n "evidence_id": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "result": {\n "type": "boolean"\n }\n },\n "required": [\n "result",\n "evidence_id",\n "evidence"\n ],\n "type": "object"\n },\n "requiresSession": false,\n "title": "Set Inline Comment"\n },\n {\n "analysisOperation": "unset_bookmark",\n "annotations": {\n "destructiveHint": true,\n "idempotentHint": true,\n "openWorldHint": false,\n "readOnlyHint": false\n },\n "description": "Remove the bookmark at a hexadecimal address and return whether it is absent. This mutates navigation metadata and does not alter binary bytes.",\n "effects": {\n "accessesNetwork": false,\n "changesUiState": false,\n "idempotent": true,\n "launchesProcess": false,\n "mayDiscardData": true,\n "mutatesSession": true,\n "mutatesTarget": true,\n "writesFilesystem": false\n },\n "inputSchema": {\n "$schema": "https://json-schema.org/draft/2020-12/schema",\n "examples": [\n {\n "address": "0x1000"\n }\n ],\n "properties": {\n "address": {\n "description": "A provider-normalized address; default memory uses 0x-prefixed hexadecimal",\n "type": "string"\n },\n "document": {\n "description": "The document name",\n "type": "string"\n }\n },\n "required": [\n "address"\n ],\n "type": "object"\n },\n "kind": "official-proxy",\n "name": "unset_bookmark",\n "outputSchema": {\n "$defs": {\n "__schema0": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "number"\n },\n {\n "type": "boolean"\n },\n {\n "type": "null"\n },\n {\n "items": {\n "$ref": "#/$defs/__schema0"\n },\n "type": "array"\n },\n {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n }\n ]\n }\n },\n "$schema": "https://json-schema.org/draft/2020-12/schema",\n "additionalProperties": false,\n "properties": {\n "evidence": {\n "additionalProperties": false,\n "properties": {\n "analysis_profile": {\n "additionalProperties": false,\n "properties": {\n "digest": {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n },\n "parameters": {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n },\n "provider": {\n "additionalProperties": false,\n "properties": {\n "id": {\n "minLength": 1,\n "type": "string"\n },\n "name": {\n "minLength": 1,\n "type": "string"\n },\n "version": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "id",\n "name",\n "version"\n ],\n "type": "object"\n }\n },\n "required": [\n "provider",\n "parameters",\n "digest"\n ],\n "type": "object"\n },\n "authority": {\n "enum": [\n "shipped-artifact",\n "controlled-replay",\n "historical-reference",\n "external-service",\n "analyst-inference"\n ],\n "type": "string"\n },\n "confidence": {\n "enum": [\n "observed",\n "derived",\n "inferred"\n ],\n "type": "string"\n },\n "environment": {\n "anyOf": [\n {\n "additionalProperties": false,\n "properties": {\n "architecture": {\n "minLength": 1,\n "type": "string"\n },\n "id": {\n "minLength": 1,\n "type": "string"\n },\n "isolation": {\n "enum": [\n "none",\n "process",\n "container",\n "virtual-machine"\n ],\n "type": "string"\n },\n "platform": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "id",\n "platform",\n "architecture",\n "isolation"\n ],\n "type": "object"\n },\n {\n "type": "null"\n }\n ]\n },\n "evidence_id": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "evidence_links": {\n "items": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "type": "array"\n },\n "limitations": {\n "items": {\n "type": "string"\n },\n "type": "array"\n },\n "locations": {\n "items": {\n "oneOf": [\n {\n "additionalProperties": false,\n "properties": {\n "address": {\n "minLength": 1,\n "type": "string"\n },\n "kind": {\n "const": "address",\n "type": "string"\n }\n },\n "required": [\n "kind",\n "address"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "end": {\n "minLength": 1,\n "type": "string"\n },\n "kind": {\n "const": "address-range",\n "type": "string"\n },\n "start": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "kind",\n "start",\n "end"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "kind": {\n "const": "artifact-path",\n "type": "string"\n },\n "path": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "kind",\n "path"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "kind": {\n "const": "file-offset",\n "type": "string"\n },\n "offset": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "kind",\n "offset"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "end": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "kind": {\n "const": "file-offset-range",\n "type": "string"\n },\n "start": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "kind",\n "start",\n "end"\n ],\n "type": "object"\n }\n ]\n },\n "type": "array"\n },\n "normalized_result": {\n "$ref": "#/$defs/__schema0"\n },\n "operation": {\n "minLength": 1,\n "type": "string"\n },\n "parameters": {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n },\n "predicate_type": {\n "minLength": 1,\n "type": "string"\n },\n "provider": {\n "additionalProperties": false,\n "properties": {\n "id": {\n "minLength": 1,\n "type": "string"\n },\n "name": {\n "minLength": 1,\n "type": "string"\n },\n "version": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "id",\n "name",\n "version"\n ],\n "type": "object"\n },\n "raw_result": {\n "anyOf": [\n {\n "$ref": "#/$defs/__schema0"\n },\n {\n "type": "null"\n }\n ]\n },\n "subject": {\n "anyOf": [\n {\n "additionalProperties": false,\n "properties": {\n "architecture": {\n "anyOf": [\n {\n "enum": [\n "x86",\n "x86_64",\n "arm",\n "arm64"\n ],\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "digest": {\n "additionalProperties": false,\n "properties": {\n "sha256": {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n }\n },\n "required": [\n "sha256"\n ],\n "type": "object"\n },\n "format": {\n "enum": [\n "hopper",\n "analysis-database",\n "mach-o",\n "elf",\n "pe",\n "dos-mz",\n "dos-com",\n "zip",\n "ipa",\n "apk",\n "msix",\n "appx",\n "asar",\n "dmg",\n "pkg",\n "plist",\n "javascript",\n "source-map",\n "directory",\n "file",\n "unknown",\n "mach-o-universal",\n "javascript-bundle",\n "entitlements"\n ],\n "type": "string"\n },\n "local_path": {\n "type": "string"\n },\n "name": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "name",\n "digest",\n "format",\n "architecture",\n "local_path"\n ],\n "type": "object"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "evidence_id",\n "subject",\n "provider",\n "predicate_type",\n "operation",\n "parameters",\n "raw_result",\n "normalized_result",\n "confidence",\n "authority",\n "environment",\n "limitations",\n "locations",\n "evidence_links"\n ],\n "type": "object"\n },\n "evidence_id": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "result": {\n "type": "boolean"\n }\n },\n "required": [\n "result",\n "evidence_id",\n "evidence"\n ],\n "type": "object"\n },\n "requiresSession": false,\n "title": "Unset Bookmark"\n },\n {\n "analysisOperation": "xrefs",\n "annotations": {\n "destructiveHint": false,\n "idempotentHint": true,\n "openWorldHint": false,\n "readOnlyHint": false\n },\n "description": "Return analyzed references to a code or data address. Hopper may default to its current cursor; headless providers such as Ghidra require an explicit address. Use to connect strings, globals, selectors, and functions; bare addresses are untyped and indirect references may be incomplete.",\n "effects": {\n "accessesNetwork": false,\n "changesUiState": false,\n "idempotent": true,\n "launchesProcess": false,\n "mayDiscardData": false,\n "mutatesSession": true,\n "mutatesTarget": false,\n "writesFilesystem": false\n },\n "inputSchema": {\n "$schema": "https://json-schema.org/draft/2020-12/schema",\n "examples": [\n {}\n ],\n "properties": {\n "address": {\n "description": "A provider-normalized address; default memory uses 0x-prefixed hexadecimal",\n "type": "string"\n },\n "document": {\n "description": "The document name",\n "type": "string"\n }\n },\n "type": "object"\n },\n "kind": "official-proxy",\n "name": "xrefs",\n "outputSchema": {\n "$defs": {\n "__schema0": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "number"\n },\n {\n "type": "boolean"\n },\n {\n "type": "null"\n },\n {\n "items": {\n "$ref": "#/$defs/__schema0"\n },\n "type": "array"\n },\n {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n }\n ]\n }\n },\n "$schema": "https://json-schema.org/draft/2020-12/schema",\n "additionalProperties": false,\n "properties": {\n "evidence": {\n "additionalProperties": false,\n "properties": {\n "analysis_profile": {\n "additionalProperties": false,\n "properties": {\n "digest": {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n },\n "parameters": {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n },\n "provider": {\n "additionalProperties": false,\n "properties": {\n "id": {\n "minLength": 1,\n "type": "string"\n },\n "name": {\n "minLength": 1,\n "type": "string"\n },\n "version": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "id",\n "name",\n "version"\n ],\n "type": "object"\n }\n },\n "required": [\n "provider",\n "parameters",\n "digest"\n ],\n "type": "object"\n },\n "authority": {\n "enum": [\n "shipped-artifact",\n "controlled-replay",\n "historical-reference",\n "external-service",\n "analyst-inference"\n ],\n "type": "string"\n },\n "confidence": {\n "enum": [\n "observed",\n "derived",\n "inferred"\n ],\n "type": "string"\n },\n "environment": {\n "anyOf": [\n {\n "additionalProperties": false,\n "properties": {\n "architecture": {\n "minLength": 1,\n "type": "string"\n },\n "id": {\n "minLength": 1,\n "type": "string"\n },\n "isolation": {\n "enum": [\n "none",\n "process",\n "container",\n "virtual-machine"\n ],\n "type": "string"\n },\n "platform": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "id",\n "platform",\n "architecture",\n "isolation"\n ],\n "type": "object"\n },\n {\n "type": "null"\n }\n ]\n },\n "evidence_id": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "evidence_links": {\n "items": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "type": "array"\n },\n "limitations": {\n "items": {\n "type": "string"\n },\n "type": "array"\n },\n "locations": {\n "items": {\n "oneOf": [\n {\n "additionalProperties": false,\n "properties": {\n "address": {\n "minLength": 1,\n "type": "string"\n },\n "kind": {\n "const": "address",\n "type": "string"\n }\n },\n "required": [\n "kind",\n "address"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "end": {\n "minLength": 1,\n "type": "string"\n },\n "kind": {\n "const": "address-range",\n "type": "string"\n },\n "start": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "kind",\n "start",\n "end"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "kind": {\n "const": "artifact-path",\n "type": "string"\n },\n "path": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "kind",\n "path"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "kind": {\n "const": "file-offset",\n "type": "string"\n },\n "offset": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "kind",\n "offset"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "end": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "kind": {\n "const": "file-offset-range",\n "type": "string"\n },\n "start": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "kind",\n "start",\n "end"\n ],\n "type": "object"\n }\n ]\n },\n "type": "array"\n },\n "normalized_result": {\n "$ref": "#/$defs/__schema0"\n },\n "operation": {\n "minLength": 1,\n "type": "string"\n },\n "parameters": {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n },\n "predicate_type": {\n "minLength": 1,\n "type": "string"\n },\n "provider": {\n "additionalProperties": false,\n "properties": {\n "id": {\n "minLength": 1,\n "type": "string"\n },\n "name": {\n "minLength": 1,\n "type": "string"\n },\n "version": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "id",\n "name",\n "version"\n ],\n "type": "object"\n },\n "raw_result": {\n "anyOf": [\n {\n "$ref": "#/$defs/__schema0"\n },\n {\n "type": "null"\n }\n ]\n },\n "subject": {\n "anyOf": [\n {\n "additionalProperties": false,\n "properties": {\n "architecture": {\n "anyOf": [\n {\n "enum": [\n "x86",\n "x86_64",\n "arm",\n "arm64"\n ],\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "digest": {\n "additionalProperties": false,\n "properties": {\n "sha256": {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n }\n },\n "required": [\n "sha256"\n ],\n "type": "object"\n },\n "format": {\n "enum": [\n "hopper",\n "analysis-database",\n "mach-o",\n "elf",\n "pe",\n "dos-mz",\n "dos-com",\n "zip",\n "ipa",\n "apk",\n "msix",\n "appx",\n "asar",\n "dmg",\n "pkg",\n "plist",\n "javascript",\n "source-map",\n "directory",\n "file",\n "unknown",\n "mach-o-universal",\n "javascript-bundle",\n "entitlements"\n ],\n "type": "string"\n },\n "local_path": {\n "type": "string"\n },\n "name": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "name",\n "digest",\n "format",\n "architecture",\n "local_path"\n ],\n "type": "object"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "evidence_id",\n "subject",\n "provider",\n "predicate_type",\n "operation",\n "parameters",\n "raw_result",\n "normalized_result",\n "confidence",\n "authority",\n "environment",\n "limitations",\n "locations",\n "evidence_links"\n ],\n "type": "object"\n },\n "evidence_id": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "result": {\n "items": {\n "type": "string"\n },\n "type": "array"\n }\n },\n "required": [\n "result",\n "evidence_id",\n "evidence"\n ],\n "type": "object"\n },\n "requiresSession": false,\n "title": "Xrefs"\n },\n {\n "analysisOperation": "inspect_native_dispatch_metadata",\n "annotations": {\n "destructiveHint": false,\n "idempotentHint": true,\n "openWorldHint": false,\n "readOnlyHint": false\n },\n "description": "Inspect the bound provider\'s name inventory for Objective-C class/method symbols and Swift mangled symbols, returning at most max_records decoded names. Includes target SHA-256 when available, provider identity/version, analysis-profile digest, facet coverage, and per-record Evidence. This is symbol-level evidence, not runtime metadata: ivar layouts, protocol conformances, witness/class tables, and relative pointers are explicitly marked unsupported unless a provider supplies those decoders. The provider controls how its name inventory is acquired.",\n "effects": {\n "accessesNetwork": false,\n "changesUiState": false,\n "idempotent": true,\n "launchesProcess": false,\n "mayDiscardData": false,\n "mutatesSession": true,\n "mutatesTarget": false,\n "writesFilesystem": false\n },\n "inputSchema": {\n "$schema": "https://json-schema.org/draft/2020-12/schema",\n "additionalProperties": false,\n "examples": [\n {\n "max_records": 5000\n }\n ],\n "properties": {\n "max_records": {\n "default": 5000,\n "description": "Maximum permitted records for this operation.",\n "maximum": 20000,\n "minimum": 1,\n "type": "integer"\n }\n },\n "type": "object"\n },\n "kind": "enhanced",\n "name": "inspect_native_dispatch_metadata",\n "outputSchema": {\n "$defs": {\n "__schema0": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "number"\n },\n {\n "type": "boolean"\n },\n {\n "type": "null"\n },\n {\n "items": {\n "$ref": "#/$defs/__schema0"\n },\n "type": "array"\n },\n {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n }\n ]\n }\n },\n "$schema": "https://json-schema.org/draft/2020-12/schema",\n "additionalProperties": false,\n "properties": {\n "evidence": {\n "additionalProperties": false,\n "properties": {\n "analysis_profile": {\n "additionalProperties": false,\n "properties": {\n "digest": {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n },\n "parameters": {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n },\n "provider": {\n "additionalProperties": false,\n "properties": {\n "id": {\n "minLength": 1,\n "type": "string"\n },\n "name": {\n "minLength": 1,\n "type": "string"\n },\n "version": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "id",\n "name",\n "version"\n ],\n "type": "object"\n }\n },\n "required": [\n "provider",\n "parameters",\n "digest"\n ],\n "type": "object"\n },\n "authority": {\n "enum": [\n "shipped-artifact",\n "controlled-replay",\n "historical-reference",\n "external-service",\n "analyst-inference"\n ],\n "type": "string"\n },\n "confidence": {\n "enum": [\n "observed",\n "derived",\n "inferred"\n ],\n "type": "string"\n },\n "environment": {\n "anyOf": [\n {\n "additionalProperties": false,\n "properties": {\n "architecture": {\n "minLength": 1,\n "type": "string"\n },\n "id": {\n "minLength": 1,\n "type": "string"\n },\n "isolation": {\n "enum": [\n "none",\n "process",\n "container",\n "virtual-machine"\n ],\n "type": "string"\n },\n "platform": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "id",\n "platform",\n "architecture",\n "isolation"\n ],\n "type": "object"\n },\n {\n "type": "null"\n }\n ]\n },\n "evidence_id": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "evidence_links": {\n "items": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "type": "array"\n },\n "limitations": {\n "items": {\n "type": "string"\n },\n "type": "array"\n },\n "locations": {\n "items": {\n "oneOf": [\n {\n "additionalProperties": false,\n "properties": {\n "address": {\n "minLength": 1,\n "type": "string"\n },\n "kind": {\n "const": "address",\n "type": "string"\n }\n },\n "required": [\n "kind",\n "address"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "end": {\n "minLength": 1,\n "type": "string"\n },\n "kind": {\n "const": "address-range",\n "type": "string"\n },\n "start": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "kind",\n "start",\n "end"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "kind": {\n "const": "artifact-path",\n "type": "string"\n },\n "path": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "kind",\n "path"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "kind": {\n "const": "file-offset",\n "type": "string"\n },\n "offset": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "kind",\n "offset"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "end": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "kind": {\n "const": "file-offset-range",\n "type": "string"\n },\n "start": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "kind",\n "start",\n "end"\n ],\n "type": "object"\n }\n ]\n },\n "type": "array"\n },\n "normalized_result": {\n "$ref": "#/$defs/__schema0"\n },\n "operation": {\n "minLength": 1,\n "type": "string"\n },\n "parameters": {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n },\n "predicate_type": {\n "minLength": 1,\n "type": "string"\n },\n "provider": {\n "additionalProperties": false,\n "properties": {\n "id": {\n "minLength": 1,\n "type": "string"\n },\n "name": {\n "minLength": 1,\n "type": "string"\n },\n "version": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "id",\n "name",\n "version"\n ],\n "type": "object"\n },\n "raw_result": {\n "anyOf": [\n {\n "$ref": "#/$defs/__schema0"\n },\n {\n "type": "null"\n }\n ]\n },\n "subject": {\n "anyOf": [\n {\n "additionalProperties": false,\n "properties": {\n "architecture": {\n "anyOf": [\n {\n "enum": [\n "x86",\n "x86_64",\n "arm",\n "arm64"\n ],\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "digest": {\n "additionalProperties": false,\n "properties": {\n "sha256": {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n }\n },\n "required": [\n "sha256"\n ],\n "type": "object"\n },\n "format": {\n "enum": [\n "hopper",\n "analysis-database",\n "mach-o",\n "elf",\n "pe",\n "dos-mz",\n "dos-com",\n "zip",\n "ipa",\n "apk",\n "msix",\n "appx",\n "asar",\n "dmg",\n "pkg",\n "plist",\n "javascript",\n "source-map",\n "directory",\n "file",\n "unknown",\n "mach-o-universal",\n "javascript-bundle",\n "entitlements"\n ],\n "type": "string"\n },\n "local_path": {\n "type": "string"\n },\n "name": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "name",\n "digest",\n "format",\n "architecture",\n "local_path"\n ],\n "type": "object"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "evidence_id",\n "subject",\n "provider",\n "predicate_type",\n "operation",\n "parameters",\n "raw_result",\n "normalized_result",\n "confidence",\n "authority",\n "environment",\n "limitations",\n "locations",\n "evidence_links"\n ],\n "type": "object"\n },\n "evidence_id": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "result": {\n "additionalProperties": false,\n "properties": {\n "analysis_profile_digest": {\n "anyOf": [\n {\n "minLength": 1,\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "provider": {\n "additionalProperties": false,\n "properties": {\n "id": {\n "minLength": 1,\n "type": "string"\n },\n "name": {\n "minLength": 1,\n "type": "string"\n },\n "version": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "id",\n "name",\n "version"\n ],\n "type": "object"\n },\n "result": {\n "additionalProperties": false,\n "properties": {\n "coverage": {\n "default": [],\n "items": {\n "additionalProperties": false,\n "properties": {\n "decoded": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "examined": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "facet": {\n "minLength": 1,\n "type": "string"\n },\n "reason": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "status": {\n "enum": [\n "complete",\n "partial",\n "unsupported",\n "not_requested"\n ],\n "type": "string"\n }\n },\n "required": [\n "facet",\n "status",\n "reason",\n "examined",\n "decoded"\n ],\n "type": "object"\n },\n "type": "array"\n },\n "db_save_result": {\n "anyOf": [\n {\n "additionalProperties": false,\n "properties": {\n "database_path": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "error": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "operation": {\n "enum": [\n "save",\n "readback",\n "open_database",\n "close_database",\n "export",\n "import"\n ],\n "type": "string"\n },\n "preserved_bookmarks": {\n "default": 0,\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "preserved_comments": {\n "default": 0,\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "preserved_names": {\n "default": 0,\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "succeeded": {\n "type": "boolean"\n }\n },\n "required": [\n "operation",\n "succeeded",\n "preserved_names",\n "preserved_comments",\n "preserved_bookmarks",\n "database_path",\n "error"\n ],\n "type": "object"\n },\n {\n "type": "null"\n }\n ]\n },\n "objc_classes": {\n "default": [],\n "items": {\n "additionalProperties": false,\n "properties": {\n "decode": {\n "additionalProperties": false,\n "properties": {\n "reason": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "status": {\n "enum": [\n "decoded",\n "partial",\n "unsupported",\n "invalid"\n ],\n "type": "string"\n }\n },\n "required": [\n "status",\n "reason"\n ],\n "type": "object"\n },\n "evidence": {\n "items": {\n "additionalProperties": false,\n "properties": {\n "artifact_path": {\n "type": "string"\n },\n "artifact_sha256": {\n "type": "string"\n },\n "description": {\n "type": "string"\n },\n "kind": {\n "const": "binary_metadata",\n "type": "string"\n },\n "location": {\n "additionalProperties": false,\n "properties": {\n "address": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "file_offset": {\n "anyOf": [\n {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "address",\n "file_offset"\n ],\n "type": "object"\n }\n },\n "required": [\n "kind",\n "description",\n "location",\n "artifact_path",\n "artifact_sha256"\n ],\n "type": "object"\n },\n "type": "array"\n },\n "instance_size": {\n "anyOf": [\n {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n {\n "type": "null"\n }\n ]\n },\n "is_meta_class": {\n "default": false,\n "type": "boolean"\n },\n "is_root_class": {\n "default": false,\n "type": "boolean"\n },\n "ivar_count": {\n "default": 0,\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "location": {\n "additionalProperties": false,\n "properties": {\n "address": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "file_offset": {\n "anyOf": [\n {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "address",\n "file_offset"\n ],\n "type": "object"\n },\n "metaclass_address": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "methods": {\n "default": [],\n "items": {\n "additionalProperties": false,\n "properties": {\n "address": {\n "anyOf": [\n {\n "maximum": 9007199254740991,\n "minimum": -9007199254740991,\n "type": "integer"\n },\n {\n "type": "null"\n }\n ]\n },\n "is_optional": {\n "default": false,\n "type": "boolean"\n },\n "is_required": {\n "default": false,\n "type": "boolean"\n },\n "method_type": {\n "enum": [\n "instance",\n "class",\n "ivar_getter",\n "ivar_setter"\n ],\n "type": "string"\n },\n "selector": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "selector",\n "method_type",\n "address",\n "is_required",\n "is_optional"\n ],\n "type": "object"\n },\n "type": "array"\n },\n "name": {\n "minLength": 1,\n "type": "string"\n },\n "properties": {\n "default": [],\n "items": {\n "additionalProperties": false,\n "properties": {\n "attributes": {\n "default": [],\n "items": {\n "additionalProperties": false,\n "properties": {\n "is_atomic": {\n "default": false,\n "type": "boolean"\n },\n "is_copy": {\n "default": false,\n "type": "boolean"\n },\n "is_strong": {\n "default": false,\n "type": "boolean"\n },\n "is_weak": {\n "default": false,\n "type": "boolean"\n },\n "name": {\n "minLength": 1,\n "type": "string"\n },\n "value": {\n "type": "string"\n }\n },\n "required": [\n "name",\n "value",\n "is_weak",\n "is_atomic",\n "is_copy",\n "is_strong"\n ],\n "type": "object"\n },\n "type": "array"\n },\n "getter": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "is_readonly": {\n "default": false,\n "type": "boolean"\n },\n "name": {\n "minLength": 1,\n "type": "string"\n },\n "setter": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "type_encoding": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "name",\n "type_encoding",\n "attributes",\n "is_readonly",\n "getter",\n "setter"\n ],\n "type": "object"\n },\n "type": "array"\n },\n "protocols": {\n "default": [],\n "items": {\n "type": "string"\n },\n "type": "array"\n },\n "super_class": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "superclass_address": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "name",\n "super_class",\n "is_meta_class",\n "is_root_class",\n "methods",\n "properties",\n "protocols",\n "ivar_count",\n "instance_size"\n ],\n "type": "object"\n },\n "type": "array"\n },\n "objc_dispatch_implementations": {\n "default": [],\n "items": {\n "additionalProperties": false,\n "properties": {\n "class_name": {\n "minLength": 1,\n "type": "string"\n },\n "decode": {\n "additionalProperties": false,\n "properties": {\n "reason": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "status": {\n "enum": [\n "decoded",\n "partial",\n "unsupported",\n "invalid"\n ],\n "type": "string"\n }\n },\n "required": [\n "status",\n "reason"\n ],\n "type": "object"\n },\n "evidence": {\n "items": {\n "additionalProperties": false,\n "properties": {\n "artifact_path": {\n "anyOf": [\n {\n "minLength": 1,\n "type": "string"\n },\n {\n "type": "null"\n }\n ],\n "default": null\n },\n "artifact_sha256": {\n "anyOf": [\n {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n },\n {\n "type": "null"\n }\n ],\n "default": null\n },\n "description": {\n "minLength": 1,\n "type": "string"\n },\n "kind": {\n "enum": [\n "binary_metadata",\n "interface_builder_resource",\n "symbol",\n "reference",\n "decompiler"\n ],\n "type": "string"\n },\n "location": {\n "additionalProperties": false,\n "properties": {\n "address": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "file_offset": {\n "anyOf": [\n {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "address",\n "file_offset"\n ],\n "type": "object"\n }\n },\n "required": [\n "kind",\n "description",\n "location",\n "artifact_path",\n "artifact_sha256"\n ],\n "type": "object"\n },\n "minItems": 1,\n "type": "array"\n },\n "implementation_address": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "location": {\n "additionalProperties": false,\n "properties": {\n "address": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "file_offset": {\n "anyOf": [\n {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "address",\n "file_offset"\n ],\n "type": "object"\n },\n "method_type": {\n "enum": [\n "instance",\n "class"\n ],\n "type": "string"\n },\n "selector": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "class_name",\n "selector",\n "method_type",\n "implementation_address",\n "location",\n "decode",\n "evidence"\n ],\n "type": "object"\n },\n "type": "array"\n },\n "objc_ivars": {\n "default": [],\n "items": {\n "additionalProperties": false,\n "properties": {\n "alignment": {\n "anyOf": [\n {\n "exclusiveMinimum": 0,\n "maximum": 9007199254740991,\n "type": "integer"\n },\n {\n "type": "null"\n }\n ],\n "default": null\n },\n "class_name": {\n "minLength": 1,\n "type": "string"\n },\n "decode": {\n "additionalProperties": false,\n "properties": {\n "reason": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "status": {\n "enum": [\n "decoded",\n "partial",\n "unsupported",\n "invalid"\n ],\n "type": "string"\n }\n },\n "required": [\n "status",\n "reason"\n ],\n "type": "object"\n },\n "evidence": {\n "items": {\n "additionalProperties": false,\n "properties": {\n "artifact_path": {\n "anyOf": [\n {\n "minLength": 1,\n "type": "string"\n },\n {\n "type": "null"\n }\n ],\n "default": null\n },\n "artifact_sha256": {\n "anyOf": [\n {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n },\n {\n "type": "null"\n }\n ],\n "default": null\n },\n "description": {\n "minLength": 1,\n "type": "string"\n },\n "kind": {\n "enum": [\n "binary_metadata",\n "interface_builder_resource",\n "symbol",\n "reference",\n "decompiler"\n ],\n "type": "string"\n },\n "location": {\n "additionalProperties": false,\n "properties": {\n "address": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "file_offset": {\n "anyOf": [\n {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "address",\n "file_offset"\n ],\n "type": "object"\n }\n },\n "required": [\n "kind",\n "description",\n "location",\n "artifact_path",\n "artifact_sha256"\n ],\n "type": "object"\n },\n "minItems": 1,\n "type": "array"\n },\n "location": {\n "additionalProperties": false,\n "properties": {\n "address": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "file_offset": {\n "anyOf": [\n {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "address",\n "file_offset"\n ],\n "type": "object"\n },\n "name": {\n "minLength": 1,\n "type": "string"\n },\n "offset": {\n "anyOf": [\n {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n {\n "type": "null"\n }\n ]\n },\n "size": {\n "anyOf": [\n {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n {\n "type": "null"\n }\n ],\n "default": null\n },\n "type_encoding": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "class_name",\n "name",\n "type_encoding",\n "offset",\n "size",\n "alignment",\n "location",\n "decode",\n "evidence"\n ],\n "type": "object"\n },\n "type": "array"\n },\n "objc_protocol_records": {\n "default": [],\n "items": {\n "additionalProperties": false,\n "properties": {\n "adopted_protocols": {\n "items": {\n "type": "string"\n },\n "type": "array"\n },\n "decode": {\n "additionalProperties": false,\n "properties": {\n "reason": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "status": {\n "enum": [\n "decoded",\n "partial",\n "unsupported",\n "invalid"\n ],\n "type": "string"\n }\n },\n "required": [\n "status",\n "reason"\n ],\n "type": "object"\n },\n "evidence": {\n "items": {\n "additionalProperties": false,\n "properties": {\n "artifact_path": {\n "anyOf": [\n {\n "minLength": 1,\n "type": "string"\n },\n {\n "type": "null"\n }\n ],\n "default": null\n },\n "artifact_sha256": {\n "anyOf": [\n {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n },\n {\n "type": "null"\n }\n ],\n "default": null\n },\n "description": {\n "minLength": 1,\n "type": "string"\n },\n "kind": {\n "enum": [\n "binary_metadata",\n "interface_builder_resource",\n "symbol",\n "reference",\n "decompiler"\n ],\n "type": "string"\n },\n "location": {\n "additionalProperties": false,\n "properties": {\n "address": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "file_offset": {\n "anyOf": [\n {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "address",\n "file_offset"\n ],\n "type": "object"\n }\n },\n "required": [\n "kind",\n "description",\n "location",\n "artifact_path",\n "artifact_sha256"\n ],\n "type": "object"\n },\n "minItems": 1,\n "type": "array"\n },\n "location": {\n "additionalProperties": false,\n "properties": {\n "address": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "file_offset": {\n "anyOf": [\n {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "address",\n "file_offset"\n ],\n "type": "object"\n },\n "methods": {\n "items": {\n "additionalProperties": false,\n "properties": {\n "address": {\n "anyOf": [\n {\n "maximum": 9007199254740991,\n "minimum": -9007199254740991,\n "type": "integer"\n },\n {\n "type": "null"\n }\n ]\n },\n "is_optional": {\n "default": false,\n "type": "boolean"\n },\n "is_required": {\n "default": false,\n "type": "boolean"\n },\n "method_type": {\n "enum": [\n "instance",\n "class",\n "ivar_getter",\n "ivar_setter"\n ],\n "type": "string"\n },\n "selector": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "selector",\n "method_type",\n "address",\n "is_required",\n "is_optional"\n ],\n "type": "object"\n },\n "type": "array"\n },\n "name": {\n "type": "string"\n },\n "optional_methods": {\n "items": {\n "additionalProperties": false,\n "properties": {\n "address": {\n "anyOf": [\n {\n "maximum": 9007199254740991,\n "minimum": -9007199254740991,\n "type": "integer"\n },\n {\n "type": "null"\n }\n ]\n },\n "is_optional": {\n "default": false,\n "type": "boolean"\n },\n "is_required": {\n "default": false,\n "type": "boolean"\n },\n "method_type": {\n "enum": [\n "instance",\n "class",\n "ivar_getter",\n "ivar_setter"\n ],\n "type": "string"\n },\n "selector": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "selector",\n "method_type",\n "address",\n "is_required",\n "is_optional"\n ],\n "type": "object"\n },\n "type": "array"\n }\n },\n "required": [\n "name",\n "adopted_protocols",\n "methods",\n "optional_methods",\n "location",\n "decode",\n "evidence"\n ],\n "type": "object"\n },\n "type": "array"\n },\n "objc_protocols": {\n "default": [],\n "items": {\n "additionalProperties": false,\n "properties": {\n "methods": {\n "default": [],\n "items": {\n "additionalProperties": false,\n "properties": {\n "address": {\n "anyOf": [\n {\n "maximum": 9007199254740991,\n "minimum": -9007199254740991,\n "type": "integer"\n },\n {\n "type": "null"\n }\n ]\n },\n "is_optional": {\n "default": false,\n "type": "boolean"\n },\n "is_required": {\n "default": false,\n "type": "boolean"\n },\n "method_type": {\n "enum": [\n "instance",\n "class",\n "ivar_getter",\n "ivar_setter"\n ],\n "type": "string"\n },\n "selector": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "selector",\n "method_type",\n "address",\n "is_required",\n "is_optional"\n ],\n "type": "object"\n },\n "type": "array"\n },\n "name": {\n "minLength": 1,\n "type": "string"\n },\n "optional_methods": {\n "default": [],\n "items": {\n "additionalProperties": false,\n "properties": {\n "address": {\n "anyOf": [\n {\n "maximum": 9007199254740991,\n "minimum": -9007199254740991,\n "type": "integer"\n },\n {\n "type": "null"\n }\n ]\n },\n "is_optional": {\n "default": false,\n "type": "boolean"\n },\n "is_required": {\n "default": false,\n "type": "boolean"\n },\n "method_type": {\n "enum": [\n "instance",\n "class",\n "ivar_getter",\n "ivar_setter"\n ],\n "type": "string"\n },\n "selector": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "selector",\n "method_type",\n "address",\n "is_required",\n "is_optional"\n ],\n "type": "object"\n },\n "type": "array"\n },\n "properties": {\n "default": [],\n "items": {\n "additionalProperties": false,\n "properties": {\n "attributes": {\n "default": [],\n "items": {\n "additionalProperties": false,\n "properties": {\n "is_atomic": {\n "default": false,\n "type": "boolean"\n },\n "is_copy": {\n "default": false,\n "type": "boolean"\n },\n "is_strong": {\n "default": false,\n "type": "boolean"\n },\n "is_weak": {\n "default": false,\n "type": "boolean"\n },\n "name": {\n "minLength": 1,\n "type": "string"\n },\n "value": {\n "type": "string"\n }\n },\n "required": [\n "name",\n "value",\n "is_weak",\n "is_atomic",\n "is_copy",\n "is_strong"\n ],\n "type": "object"\n },\n "type": "array"\n },\n "getter": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "is_readonly": {\n "default": false,\n "type": "boolean"\n },\n "name": {\n "minLength": 1,\n "type": "string"\n },\n "setter": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "type_encoding": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "name",\n "type_encoding",\n "attributes",\n "is_readonly",\n "getter",\n "setter"\n ],\n "type": "object"\n },\n "type": "array"\n }\n },\n "required": [\n "name",\n "methods",\n "optional_methods",\n "properties"\n ],\n "type": "object"\n },\n "type": "array"\n },\n "relative_pointers": {\n "default": [],\n "items": {\n "additionalProperties": false,\n "properties": {\n "decode": {\n "additionalProperties": false,\n "properties": {\n "reason": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "status": {\n "enum": [\n "decoded",\n "partial",\n "unsupported",\n "invalid"\n ],\n "type": "string"\n }\n },\n "required": [\n "status",\n "reason"\n ],\n "type": "object"\n },\n "displacement": {\n "maximum": 9007199254740991,\n "minimum": -9007199254740991,\n "type": "integer"\n },\n "evidence": {\n "items": {\n "additionalProperties": false,\n "properties": {\n "artifact_path": {\n "anyOf": [\n {\n "minLength": 1,\n "type": "string"\n },\n {\n "type": "null"\n }\n ],\n "default": null\n },\n "artifact_sha256": {\n "anyOf": [\n {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n },\n {\n "type": "null"\n }\n ],\n "default": null\n },\n "description": {\n "minLength": 1,\n "type": "string"\n },\n "kind": {\n "enum": [\n "binary_metadata",\n "interface_builder_resource",\n "symbol",\n "reference",\n "decompiler"\n ],\n "type": "string"\n },\n "location": {\n "additionalProperties": false,\n "properties": {\n "address": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "file_offset": {\n "anyOf": [\n {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "address",\n "file_offset"\n ],\n "type": "object"\n }\n },\n "required": [\n "kind",\n "description",\n "location",\n "artifact_path",\n "artifact_sha256"\n ],\n "type": "object"\n },\n "minItems": 1,\n "type": "array"\n },\n "field": {\n "additionalProperties": false,\n "properties": {\n "address": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "file_offset": {\n "anyOf": [\n {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "address",\n "file_offset"\n ],\n "type": "object"\n },\n "indirect": {\n "anyOf": [\n {\n "type": "boolean"\n },\n {\n "type": "null"\n }\n ]\n },\n "indirectable": {\n "type": "boolean"\n },\n "target": {\n "additionalProperties": false,\n "properties": {\n "address": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "file_offset": {\n "anyOf": [\n {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "address",\n "file_offset"\n ],\n "type": "object"\n }\n },\n "required": [\n "field",\n "target",\n "displacement",\n "indirectable",\n "indirect",\n "decode",\n "evidence"\n ],\n "type": "object"\n },\n "type": "array"\n },\n "swift_conformances": {\n "default": [],\n "items": {\n "additionalProperties": false,\n "properties": {\n "decode": {\n "additionalProperties": false,\n "properties": {\n "reason": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "status": {\n "enum": [\n "decoded",\n "partial",\n "unsupported",\n "invalid"\n ],\n "type": "string"\n }\n },\n "required": [\n "status",\n "reason"\n ],\n "type": "object"\n },\n "evidence": {\n "items": {\n "additionalProperties": false,\n "properties": {\n "artifact_path": {\n "anyOf": [\n {\n "minLength": 1,\n "type": "string"\n },\n {\n "type": "null"\n }\n ],\n "default": null\n },\n "artifact_sha256": {\n "anyOf": [\n {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n },\n {\n "type": "null"\n }\n ],\n "default": null\n },\n "description": {\n "minLength": 1,\n "type": "string"\n },\n "kind": {\n "enum": [\n "binary_metadata",\n "interface_builder_resource",\n "symbol",\n "reference",\n "decompiler"\n ],\n "type": "string"\n },\n "location": {\n "additionalProperties": false,\n "properties": {\n "address": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "file_offset": {\n "anyOf": [\n {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "address",\n "file_offset"\n ],\n "type": "object"\n }\n },\n "required": [\n "kind",\n "description",\n "location",\n "artifact_path",\n "artifact_sha256"\n ],\n "type": "object"\n },\n "minItems": 1,\n "type": "array"\n },\n "location": {\n "additionalProperties": false,\n "properties": {\n "address": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "file_offset": {\n "anyOf": [\n {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "address",\n "file_offset"\n ],\n "type": "object"\n },\n "module": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "protocol_name": {\n "minLength": 1,\n "type": "string"\n },\n "type_name": {\n "minLength": 1,\n "type": "string"\n },\n "witness_table": {\n "additionalProperties": false,\n "properties": {\n "address": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "file_offset": {\n "anyOf": [\n {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "address",\n "file_offset"\n ],\n "type": "object"\n }\n },\n "required": [\n "type_name",\n "protocol_name",\n "module",\n "witness_table",\n "location",\n "decode",\n "evidence"\n ],\n "type": "object"\n },\n "type": "array"\n },\n "swift_decls": {\n "default": [],\n "items": {\n "additionalProperties": false,\n "properties": {\n "access_level": {\n "default": "internal",\n "enum": [\n "private",\n "fileprivate",\n "internal",\n "public",\n "open"\n ],\n "type": "string"\n },\n "is_convenience_init": {\n "default": false,\n "type": "boolean"\n },\n "is_final": {\n "default": false,\n "type": "boolean"\n },\n "is_override": {\n "default": false,\n "type": "boolean"\n },\n "is_required": {\n "default": false,\n "type": "boolean"\n },\n "kind": {\n "enum": [\n "class",\n "struct",\n "enum",\n "protocol",\n "extension",\n "actor",\n "global_var",\n "global_func"\n ],\n "type": "string"\n },\n "module": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "name": {\n "minLength": 1,\n "type": "string"\n },\n "protocols": {\n "default": [],\n "items": {\n "type": "string"\n },\n "type": "array"\n },\n "super_class": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "kind",\n "name",\n "module",\n "access_level",\n "super_class",\n "protocols",\n "is_final",\n "is_required",\n "is_convenience_init",\n "is_override"\n ],\n "type": "object"\n },\n "type": "array"\n },\n "swift_dispatch_slots": {\n "default": [],\n "items": {\n "additionalProperties": false,\n "properties": {\n "decode": {\n "additionalProperties": false,\n "properties": {\n "reason": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "status": {\n "enum": [\n "decoded",\n "partial",\n "unsupported",\n "invalid"\n ],\n "type": "string"\n }\n },\n "required": [\n "status",\n "reason"\n ],\n "type": "object"\n },\n "evidence": {\n "items": {\n "additionalProperties": false,\n "properties": {\n "artifact_path": {\n "anyOf": [\n {\n "minLength": 1,\n "type": "string"\n },\n {\n "type": "null"\n }\n ],\n "default": null\n },\n "artifact_sha256": {\n "anyOf": [\n {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n },\n {\n "type": "null"\n }\n ],\n "default": null\n },\n "description": {\n "minLength": 1,\n "type": "string"\n },\n "kind": {\n "enum": [\n "binary_metadata",\n "interface_builder_resource",\n "symbol",\n "reference",\n "decompiler"\n ],\n "type": "string"\n },\n "location": {\n "additionalProperties": false,\n "properties": {\n "address": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "file_offset": {\n "anyOf": [\n {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "address",\n "file_offset"\n ],\n "type": "object"\n }\n },\n "required": [\n "kind",\n "description",\n "location",\n "artifact_path",\n "artifact_sha256"\n ],\n "type": "object"\n },\n "minItems": 1,\n "type": "array"\n },\n "implementation": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "implementation_address": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "location": {\n "additionalProperties": false,\n "properties": {\n "address": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "file_offset": {\n "anyOf": [\n {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "address",\n "file_offset"\n ],\n "type": "object"\n },\n "owner": {\n "minLength": 1,\n "type": "string"\n },\n "requirement": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "slot_index": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "table_kind": {\n "enum": [\n "witness_table",\n "class_vtable"\n ],\n "type": "string"\n },\n "thunk_address": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "owner",\n "table_kind",\n "slot_index",\n "requirement",\n "implementation",\n "implementation_address",\n "thunk_address",\n "location",\n "decode",\n "evidence"\n ],\n "type": "object"\n },\n "type": "array"\n },\n "swift_symbols": {\n "default": [],\n "items": {\n "additionalProperties": false,\n "properties": {\n "address": {\n "minLength": 1,\n "type": "string"\n },\n "decode": {\n "additionalProperties": false,\n "properties": {\n "reason": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "status": {\n "enum": [\n "decoded",\n "partial",\n "unsupported",\n "invalid"\n ],\n "type": "string"\n }\n },\n "required": [\n "status",\n "reason"\n ],\n "type": "object"\n },\n "evidence": {\n "items": {\n "additionalProperties": false,\n "properties": {\n "artifact_path": {\n "anyOf": [\n {\n "minLength": 1,\n "type": "string"\n },\n {\n "type": "null"\n }\n ],\n "default": null\n },\n "artifact_sha256": {\n "anyOf": [\n {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n },\n {\n "type": "null"\n }\n ],\n "default": null\n },\n "description": {\n "minLength": 1,\n "type": "string"\n },\n "kind": {\n "enum": [\n "binary_metadata",\n "interface_builder_resource",\n "symbol",\n "reference",\n "decompiler"\n ],\n "type": "string"\n },\n "location": {\n "additionalProperties": false,\n "properties": {\n "address": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "file_offset": {\n "anyOf": [\n {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "address",\n "file_offset"\n ],\n "type": "object"\n }\n },\n "required": [\n "kind",\n "description",\n "location",\n "artifact_path",\n "artifact_sha256"\n ],\n "type": "object"\n },\n "minItems": 1,\n "type": "array"\n },\n "mangled_name": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "mangled_name",\n "address",\n "decode",\n "evidence"\n ],\n "type": "object"\n },\n "type": "array"\n }\n },\n "required": [\n "objc_classes",\n "objc_protocols",\n "swift_decls",\n "objc_ivars",\n "objc_protocol_records",\n "objc_dispatch_implementations",\n "swift_conformances",\n "swift_dispatch_slots",\n "swift_symbols",\n "relative_pointers",\n "coverage",\n "db_save_result"\n ],\n "type": "object"\n },\n "target_sha256": {\n "anyOf": [\n {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "target_sha256",\n "provider",\n "analysis_profile_digest",\n "result"\n ],\n "type": "object"\n }\n },\n "required": [\n "result",\n "evidence_id",\n "evidence"\n ],\n "type": "object"\n },\n "requiresSession": false,\n "title": "Inspect Native Dispatch Metadata"\n },\n {\n "analysisOperation": "get_objc_classes",\n "annotations": {\n "destructiveHint": false,\n "idempotentHint": true,\n "openWorldHint": false,\n "readOnlyHint": false\n },\n "description": "Discover and deduplicate Objective-C class labels, optionally filtering by literal substring.",\n "effects": {\n "accessesNetwork": false,\n "changesUiState": false,\n "idempotent": true,\n "launchesProcess": false,\n "mayDiscardData": false,\n "mutatesSession": true,\n "mutatesTarget": false,\n "writesFilesystem": false\n },\n "inputSchema": {\n "$schema": "https://json-schema.org/draft/2020-12/schema",\n "additionalProperties": false,\n "examples": [\n {\n "pattern": ""\n }\n ],\n "properties": {\n "pattern": {\n "default": "",\n "description": "Literal text or regular expression used to filter matching results.",\n "type": "string"\n }\n },\n "type": "object"\n },\n "kind": "enhanced",\n "name": "get_objc_classes",\n "outputSchema": {\n "$defs": {\n "__schema0": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "number"\n },\n {\n "type": "boolean"\n },\n {\n "type": "null"\n },\n {\n "items": {\n "$ref": "#/$defs/__schema0"\n },\n "type": "array"\n },\n {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n }\n ]\n }\n },\n "$schema": "https://json-schema.org/draft/2020-12/schema",\n "additionalProperties": false,\n "properties": {\n "evidence": {\n "additionalProperties": false,\n "properties": {\n "analysis_profile": {\n "additionalProperties": false,\n "properties": {\n "digest": {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n },\n "parameters": {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n },\n "provider": {\n "additionalProperties": false,\n "properties": {\n "id": {\n "minLength": 1,\n "type": "string"\n },\n "name": {\n "minLength": 1,\n "type": "string"\n },\n "version": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "id",\n "name",\n "version"\n ],\n "type": "object"\n }\n },\n "required": [\n "provider",\n "parameters",\n "digest"\n ],\n "type": "object"\n },\n "authority": {\n "enum": [\n "shipped-artifact",\n "controlled-replay",\n "historical-reference",\n "external-service",\n "analyst-inference"\n ],\n "type": "string"\n },\n "confidence": {\n "enum": [\n "observed",\n "derived",\n "inferred"\n ],\n "type": "string"\n },\n "environment": {\n "anyOf": [\n {\n "additionalProperties": false,\n "properties": {\n "architecture": {\n "minLength": 1,\n "type": "string"\n },\n "id": {\n "minLength": 1,\n "type": "string"\n },\n "isolation": {\n "enum": [\n "none",\n "process",\n "container",\n "virtual-machine"\n ],\n "type": "string"\n },\n "platform": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "id",\n "platform",\n "architecture",\n "isolation"\n ],\n "type": "object"\n },\n {\n "type": "null"\n }\n ]\n },\n "evidence_id": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "evidence_links": {\n "items": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "type": "array"\n },\n "limitations": {\n "items": {\n "type": "string"\n },\n "type": "array"\n },\n "locations": {\n "items": {\n "oneOf": [\n {\n "additionalProperties": false,\n "properties": {\n "address": {\n "minLength": 1,\n "type": "string"\n },\n "kind": {\n "const": "address",\n "type": "string"\n }\n },\n "required": [\n "kind",\n "address"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "end": {\n "minLength": 1,\n "type": "string"\n },\n "kind": {\n "const": "address-range",\n "type": "string"\n },\n "start": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "kind",\n "start",\n "end"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "kind": {\n "const": "artifact-path",\n "type": "string"\n },\n "path": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "kind",\n "path"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "kind": {\n "const": "file-offset",\n "type": "string"\n },\n "offset": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "kind",\n "offset"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "end": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "kind": {\n "const": "file-offset-range",\n "type": "string"\n },\n "start": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "kind",\n "start",\n "end"\n ],\n "type": "object"\n }\n ]\n },\n "type": "array"\n },\n "normalized_result": {\n "$ref": "#/$defs/__schema0"\n },\n "operation": {\n "minLength": 1,\n "type": "string"\n },\n "parameters": {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n },\n "predicate_type": {\n "minLength": 1,\n "type": "string"\n },\n "provider": {\n "additionalProperties": false,\n "properties": {\n "id": {\n "minLength": 1,\n "type": "string"\n },\n "name": {\n "minLength": 1,\n "type": "string"\n },\n "version": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "id",\n "name",\n "version"\n ],\n "type": "object"\n },\n "raw_result": {\n "anyOf": [\n {\n "$ref": "#/$defs/__schema0"\n },\n {\n "type": "null"\n }\n ]\n },\n "subject": {\n "anyOf": [\n {\n "additionalProperties": false,\n "properties": {\n "architecture": {\n "anyOf": [\n {\n "enum": [\n "x86",\n "x86_64",\n "arm",\n "arm64"\n ],\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "digest": {\n "additionalProperties": false,\n "properties": {\n "sha256": {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n }\n },\n "required": [\n "sha256"\n ],\n "type": "object"\n },\n "format": {\n "enum": [\n "hopper",\n "analysis-database",\n "mach-o",\n "elf",\n "pe",\n "dos-mz",\n "dos-com",\n "zip",\n "ipa",\n "apk",\n "msix",\n "appx",\n "asar",\n "dmg",\n "pkg",\n "plist",\n "javascript",\n "source-map",\n "directory",\n "file",\n "unknown",\n "mach-o-universal",\n "javascript-bundle",\n "entitlements"\n ],\n "type": "string"\n },\n "local_path": {\n "type": "string"\n },\n "name": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "name",\n "digest",\n "format",\n "architecture",\n "local_path"\n ],\n "type": "object"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "evidence_id",\n "subject",\n "provider",\n "predicate_type",\n "operation",\n "parameters",\n "raw_result",\n "normalized_result",\n "confidence",\n "authority",\n "environment",\n "limitations",\n "locations",\n "evidence_links"\n ],\n "type": "object"\n },\n "evidence_id": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "result": {\n "additionalProperties": false,\n "properties": {\n "classes": {\n "items": {\n "additionalProperties": false,\n "properties": {\n "address": {\n "type": "string"\n },\n "name": {\n "type": "string"\n }\n },\n "required": [\n "address",\n "name"\n ],\n "type": "object"\n },\n "type": "array"\n },\n "count": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "count",\n "classes"\n ],\n "type": "object"\n }\n },\n "required": [\n "result",\n "evidence_id",\n "evidence"\n ],\n "type": "object"\n },\n "requiresSession": false,\n "title": "Get Objc Classes"\n },\n {\n "analysisOperation": "get_objc_protocols",\n "annotations": {\n "destructiveHint": false,\n "idempotentHint": true,\n "openWorldHint": false,\n "readOnlyHint": false\n },\n "description": "Discover and deduplicate Objective-C and Swift protocol labels.",\n "effects": {\n "accessesNetwork": false,\n "changesUiState": false,\n "idempotent": true,\n "launchesProcess": false,\n "mayDiscardData": false,\n "mutatesSession": true,\n "mutatesTarget": false,\n "writesFilesystem": false\n },\n "inputSchema": {\n "$schema": "https://json-schema.org/draft/2020-12/schema",\n "additionalProperties": false,\n "examples": [\n {}\n ],\n "properties": {},\n "type": "object"\n },\n "kind": "enhanced",\n "name": "get_objc_protocols",\n "outputSchema": {\n "$defs": {\n "__schema0": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "number"\n },\n {\n "type": "boolean"\n },\n {\n "type": "null"\n },\n {\n "items": {\n "$ref": "#/$defs/__schema0"\n },\n "type": "array"\n },\n {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n }\n ]\n }\n },\n "$schema": "https://json-schema.org/draft/2020-12/schema",\n "additionalProperties": false,\n "properties": {\n "evidence": {\n "additionalProperties": false,\n "properties": {\n "analysis_profile": {\n "additionalProperties": false,\n "properties": {\n "digest": {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n },\n "parameters": {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n },\n "provider": {\n "additionalProperties": false,\n "properties": {\n "id": {\n "minLength": 1,\n "type": "string"\n },\n "name": {\n "minLength": 1,\n "type": "string"\n },\n "version": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "id",\n "name",\n "version"\n ],\n "type": "object"\n }\n },\n "required": [\n "provider",\n "parameters",\n "digest"\n ],\n "type": "object"\n },\n "authority": {\n "enum": [\n "shipped-artifact",\n "controlled-replay",\n "historical-reference",\n "external-service",\n "analyst-inference"\n ],\n "type": "string"\n },\n "confidence": {\n "enum": [\n "observed",\n "derived",\n "inferred"\n ],\n "type": "string"\n },\n "environment": {\n "anyOf": [\n {\n "additionalProperties": false,\n "properties": {\n "architecture": {\n "minLength": 1,\n "type": "string"\n },\n "id": {\n "minLength": 1,\n "type": "string"\n },\n "isolation": {\n "enum": [\n "none",\n "process",\n "container",\n "virtual-machine"\n ],\n "type": "string"\n },\n "platform": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "id",\n "platform",\n "architecture",\n "isolation"\n ],\n "type": "object"\n },\n {\n "type": "null"\n }\n ]\n },\n "evidence_id": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "evidence_links": {\n "items": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "type": "array"\n },\n "limitations": {\n "items": {\n "type": "string"\n },\n "type": "array"\n },\n "locations": {\n "items": {\n "oneOf": [\n {\n "additionalProperties": false,\n "properties": {\n "address": {\n "minLength": 1,\n "type": "string"\n },\n "kind": {\n "const": "address",\n "type": "string"\n }\n },\n "required": [\n "kind",\n "address"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "end": {\n "minLength": 1,\n "type": "string"\n },\n "kind": {\n "const": "address-range",\n "type": "string"\n },\n "start": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "kind",\n "start",\n "end"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "kind": {\n "const": "artifact-path",\n "type": "string"\n },\n "path": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "kind",\n "path"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "kind": {\n "const": "file-offset",\n "type": "string"\n },\n "offset": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "kind",\n "offset"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "end": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "kind": {\n "const": "file-offset-range",\n "type": "string"\n },\n "start": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "kind",\n "start",\n "end"\n ],\n "type": "object"\n }\n ]\n },\n "type": "array"\n },\n "normalized_result": {\n "$ref": "#/$defs/__schema0"\n },\n "operation": {\n "minLength": 1,\n "type": "string"\n },\n "parameters": {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n },\n "predicate_type": {\n "minLength": 1,\n "type": "string"\n },\n "provider": {\n "additionalProperties": false,\n "properties": {\n "id": {\n "minLength": 1,\n "type": "string"\n },\n "name": {\n "minLength": 1,\n "type": "string"\n },\n "version": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "id",\n "name",\n "version"\n ],\n "type": "object"\n },\n "raw_result": {\n "anyOf": [\n {\n "$ref": "#/$defs/__schema0"\n },\n {\n "type": "null"\n }\n ]\n },\n "subject": {\n "anyOf": [\n {\n "additionalProperties": false,\n "properties": {\n "architecture": {\n "anyOf": [\n {\n "enum": [\n "x86",\n "x86_64",\n "arm",\n "arm64"\n ],\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "digest": {\n "additionalProperties": false,\n "properties": {\n "sha256": {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n }\n },\n "required": [\n "sha256"\n ],\n "type": "object"\n },\n "format": {\n "enum": [\n "hopper",\n "analysis-database",\n "mach-o",\n "elf",\n "pe",\n "dos-mz",\n "dos-com",\n "zip",\n "ipa",\n "apk",\n "msix",\n "appx",\n "asar",\n "dmg",\n "pkg",\n "plist",\n "javascript",\n "source-map",\n "directory",\n "file",\n "unknown",\n "mach-o-universal",\n "javascript-bundle",\n "entitlements"\n ],\n "type": "string"\n },\n "local_path": {\n "type": "string"\n },\n "name": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "name",\n "digest",\n "format",\n "architecture",\n "local_path"\n ],\n "type": "object"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "evidence_id",\n "subject",\n "provider",\n "predicate_type",\n "operation",\n "parameters",\n "raw_result",\n "normalized_result",\n "confidence",\n "authority",\n "environment",\n "limitations",\n "locations",\n "evidence_links"\n ],\n "type": "object"\n },\n "evidence_id": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "result": {\n "additionalProperties": false,\n "properties": {\n "count": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "protocols": {\n "items": {\n "additionalProperties": false,\n "properties": {\n "address": {\n "type": "string"\n },\n "name": {\n "type": "string"\n }\n },\n "required": [\n "address",\n "name"\n ],\n "type": "object"\n },\n "type": "array"\n }\n },\n "required": [\n "count",\n "protocols"\n ],\n "type": "object"\n }\n },\n "required": [\n "result",\n "evidence_id",\n "evidence"\n ],\n "type": "object"\n },\n "requiresSession": false,\n "title": "Get Objc Protocols"\n },\n {\n "analysisOperation": "batch_decompile",\n "annotations": {\n "destructiveHint": false,\n "idempotentHint": true,\n "openWorldHint": false,\n "readOnlyHint": false\n },\n "description": "Decompile each explicit procedure symbol or address concurrently. Returns ordered per-item success or error results and aggregate counts.",\n "effects": {\n "accessesNetwork": false,\n "changesUiState": false,\n "idempotent": true,\n "launchesProcess": false,\n "mayDiscardData": false,\n "mutatesSession": true,\n "mutatesTarget": false,\n "writesFilesystem": false\n },\n "inputSchema": {\n "$schema": "https://json-schema.org/draft/2020-12/schema",\n "additionalProperties": false,\n "examples": [\n {\n "addresses": []\n }\n ],\n "properties": {\n "addresses": {\n "default": [],\n "description": "Ordered provider-normalized procedure addresses to analyze.",\n "items": {\n "description": "A provider-normalized procedure address",\n "type": "string"\n },\n "type": "array"\n }\n },\n "type": "object"\n },\n "kind": "enhanced",\n "name": "batch_decompile",\n "outputSchema": {\n "$defs": {\n "__schema0": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "number"\n },\n {\n "type": "boolean"\n },\n {\n "type": "null"\n },\n {\n "items": {\n "$ref": "#/$defs/__schema0"\n },\n "type": "array"\n },\n {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n }\n ]\n },\n "__schema1": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "number"\n },\n {\n "type": "boolean"\n },\n {\n "type": "null"\n },\n {\n "items": {\n "$ref": "#/$defs/__schema1"\n },\n "type": "array"\n },\n {\n "additionalProperties": {\n "$ref": "#/$defs/__schema1"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n }\n ]\n }\n },\n "$schema": "https://json-schema.org/draft/2020-12/schema",\n "additionalProperties": false,\n "properties": {\n "evidence": {\n "additionalProperties": false,\n "properties": {\n "analysis_profile": {\n "additionalProperties": false,\n "properties": {\n "digest": {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n },\n "parameters": {\n "additionalProperties": {\n "$ref": "#/$defs/__schema1"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n },\n "provider": {\n "additionalProperties": false,\n "properties": {\n "id": {\n "minLength": 1,\n "type": "string"\n },\n "name": {\n "minLength": 1,\n "type": "string"\n },\n "version": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "id",\n "name",\n "version"\n ],\n "type": "object"\n }\n },\n "required": [\n "provider",\n "parameters",\n "digest"\n ],\n "type": "object"\n },\n "authority": {\n "enum": [\n "shipped-artifact",\n "controlled-replay",\n "historical-reference",\n "external-service",\n "analyst-inference"\n ],\n "type": "string"\n },\n "confidence": {\n "enum": [\n "observed",\n "derived",\n "inferred"\n ],\n "type": "string"\n },\n "environment": {\n "anyOf": [\n {\n "additionalProperties": false,\n "properties": {\n "architecture": {\n "minLength": 1,\n "type": "string"\n },\n "id": {\n "minLength": 1,\n "type": "string"\n },\n "isolation": {\n "enum": [\n "none",\n "process",\n "container",\n "virtual-machine"\n ],\n "type": "string"\n },\n "platform": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "id",\n "platform",\n "architecture",\n "isolation"\n ],\n "type": "object"\n },\n {\n "type": "null"\n }\n ]\n },\n "evidence_id": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "evidence_links": {\n "items": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "type": "array"\n },\n "limitations": {\n "items": {\n "type": "string"\n },\n "type": "array"\n },\n "locations": {\n "items": {\n "oneOf": [\n {\n "additionalProperties": false,\n "properties": {\n "address": {\n "minLength": 1,\n "type": "string"\n },\n "kind": {\n "const": "address",\n "type": "string"\n }\n },\n "required": [\n "kind",\n "address"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "end": {\n "minLength": 1,\n "type": "string"\n },\n "kind": {\n "const": "address-range",\n "type": "string"\n },\n "start": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "kind",\n "start",\n "end"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "kind": {\n "const": "artifact-path",\n "type": "string"\n },\n "path": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "kind",\n "path"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "kind": {\n "const": "file-offset",\n "type": "string"\n },\n "offset": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "kind",\n "offset"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "end": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "kind": {\n "const": "file-offset-range",\n "type": "string"\n },\n "start": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "kind",\n "start",\n "end"\n ],\n "type": "object"\n }\n ]\n },\n "type": "array"\n },\n "normalized_result": {\n "$ref": "#/$defs/__schema1"\n },\n "operation": {\n "minLength": 1,\n "type": "string"\n },\n "parameters": {\n "additionalProperties": {\n "$ref": "#/$defs/__schema1"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n },\n "predicate_type": {\n "minLength": 1,\n "type": "string"\n },\n "provider": {\n "additionalProperties": false,\n "properties": {\n "id": {\n "minLength": 1,\n "type": "string"\n },\n "name": {\n "minLength": 1,\n "type": "string"\n },\n "version": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "id",\n "name",\n "version"\n ],\n "type": "object"\n },\n "raw_result": {\n "anyOf": [\n {\n "$ref": "#/$defs/__schema1"\n },\n {\n "type": "null"\n }\n ]\n },\n "subject": {\n "anyOf": [\n {\n "additionalProperties": false,\n "properties": {\n "architecture": {\n "anyOf": [\n {\n "enum": [\n "x86",\n "x86_64",\n "arm",\n "arm64"\n ],\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "digest": {\n "additionalProperties": false,\n "properties": {\n "sha256": {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n }\n },\n "required": [\n "sha256"\n ],\n "type": "object"\n },\n "format": {\n "enum": [\n "hopper",\n "analysis-database",\n "mach-o",\n "elf",\n "pe",\n "dos-mz",\n "dos-com",\n "zip",\n "ipa",\n "apk",\n "msix",\n "appx",\n "asar",\n "dmg",\n "pkg",\n "plist",\n "javascript",\n "source-map",\n "directory",\n "file",\n "unknown",\n "mach-o-universal",\n "javascript-bundle",\n "entitlements"\n ],\n "type": "string"\n },\n "local_path": {\n "type": "string"\n },\n "name": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "name",\n "digest",\n "format",\n "architecture",\n "local_path"\n ],\n "type": "object"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "evidence_id",\n "subject",\n "provider",\n "predicate_type",\n "operation",\n "parameters",\n "raw_result",\n "normalized_result",\n "confidence",\n "authority",\n "environment",\n "limitations",\n "locations",\n "evidence_links"\n ],\n "type": "object"\n },\n "evidence_id": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "result": {\n "additionalProperties": false,\n "properties": {\n "failed": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "items": {\n "items": {\n "oneOf": [\n {\n "additionalProperties": false,\n "properties": {\n "address": {\n "type": "string"\n },\n "pseudocode": {\n "minLength": 1,\n "type": "string"\n },\n "status": {\n "const": "ok",\n "type": "string"\n }\n },\n "required": [\n "address",\n "status",\n "pseudocode"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "address": {\n "type": "string"\n },\n "error": {\n "oneOf": [\n {\n "additionalProperties": false,\n "properties": {\n "category": {\n "enum": [\n "invalid_input",\n "unsupported_provider",\n "integrity_mismatch",\n "truncated",\n "cancelled",\n "timeout",\n "unavailable",\n "execution_failure"\n ],\n "type": "string"\n },\n "code": {\n "const": "invalid_request",\n "type": "string"\n },\n "details": {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n },\n "message": {\n "minLength": 1,\n "type": "string"\n },\n "remediation": {\n "additionalProperties": false,\n "properties": {\n "action": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "action"\n ],\n "type": "object"\n },\n "retryable": {\n "type": "boolean"\n }\n },\n "required": [\n "code",\n "category",\n "message",\n "retryable",\n "remediation"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "category": {\n "enum": [\n "invalid_input",\n "unsupported_provider",\n "integrity_mismatch",\n "truncated",\n "cancelled",\n "timeout",\n "unavailable",\n "execution_failure"\n ],\n "type": "string"\n },\n "code": {\n "const": "unreadable_output",\n "type": "string"\n },\n "details": {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n },\n "message": {\n "minLength": 1,\n "type": "string"\n },\n "remediation": {\n "additionalProperties": false,\n "properties": {\n "action": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "action"\n ],\n "type": "object"\n },\n "retryable": {\n "type": "boolean"\n }\n },\n "required": [\n "code",\n "category",\n "message",\n "retryable",\n "remediation"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "category": {\n "enum": [\n "invalid_input",\n "unsupported_provider",\n "integrity_mismatch",\n "truncated",\n "cancelled",\n "timeout",\n "unavailable",\n "execution_failure"\n ],\n "type": "string"\n },\n "code": {\n "const": "capability_unavailable",\n "type": "string"\n },\n "details": {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n },\n "message": {\n "minLength": 1,\n "type": "string"\n },\n "remediation": {\n "additionalProperties": false,\n "properties": {\n "action": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "action"\n ],\n "type": "object"\n },\n "retryable": {\n "type": "boolean"\n }\n },\n "required": [\n "code",\n "category",\n "message",\n "retryable",\n "remediation"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "category": {\n "enum": [\n "invalid_input",\n "unsupported_provider",\n "integrity_mismatch",\n "truncated",\n "cancelled",\n "timeout",\n "unavailable",\n "execution_failure"\n ],\n "type": "string"\n },\n "code": {\n "const": "provider_unavailable",\n "type": "string"\n },\n "details": {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n },\n "message": {\n "minLength": 1,\n "type": "string"\n },\n "remediation": {\n "additionalProperties": false,\n "properties": {\n "action": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "action"\n ],\n "type": "object"\n },\n "retryable": {\n "type": "boolean"\n }\n },\n "required": [\n "code",\n "category",\n "message",\n "retryable",\n "remediation"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "category": {\n "enum": [\n "invalid_input",\n "unsupported_provider",\n "integrity_mismatch",\n "truncated",\n "cancelled",\n "timeout",\n "unavailable",\n "execution_failure"\n ],\n "type": "string"\n },\n "code": {\n "const": "provider_timeout",\n "type": "string"\n },\n "details": {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n },\n "message": {\n "minLength": 1,\n "type": "string"\n },\n "remediation": {\n "additionalProperties": false,\n "properties": {\n "action": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "action"\n ],\n "type": "object"\n },\n "retryable": {\n "type": "boolean"\n }\n },\n "required": [\n "code",\n "category",\n "message",\n "retryable",\n "remediation"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "category": {\n "enum": [\n "invalid_input",\n "unsupported_provider",\n "integrity_mismatch",\n "truncated",\n "cancelled",\n "timeout",\n "unavailable",\n "execution_failure"\n ],\n "type": "string"\n },\n "code": {\n "const": "cancelled",\n "type": "string"\n },\n "details": {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n },\n "message": {\n "minLength": 1,\n "type": "string"\n },\n "remediation": {\n "additionalProperties": false,\n "properties": {\n "action": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "action"\n ],\n "type": "object"\n },\n "retryable": {\n "type": "boolean"\n }\n },\n "required": [\n "code",\n "category",\n "message",\n "retryable",\n "remediation"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "category": {\n "enum": [\n "invalid_input",\n "unsupported_provider",\n "integrity_mismatch",\n "truncated",\n "cancelled",\n "timeout",\n "unavailable",\n "execution_failure"\n ],\n "type": "string"\n },\n "code": {\n "const": "artifact_integrity_mismatch",\n "type": "string"\n },\n "details": {\n "additionalProperties": false,\n "properties": {\n "calculated_sha256": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "declared_sha256": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "logical_path": {\n "type": "string"\n },\n "unpacked": {\n "type": "boolean"\n }\n },\n "required": [\n "logical_path",\n "declared_sha256",\n "calculated_sha256",\n "unpacked"\n ],\n "type": "object"\n },\n "message": {\n "minLength": 1,\n "type": "string"\n },\n "remediation": {\n "additionalProperties": false,\n "properties": {\n "action": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "action"\n ],\n "type": "object"\n },\n "retryable": {\n "type": "boolean"\n }\n },\n "required": [\n "code",\n "category",\n "message",\n "retryable",\n "remediation",\n "details"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "category": {\n "enum": [\n "invalid_input",\n "unsupported_provider",\n "integrity_mismatch",\n "truncated",\n "cancelled",\n "timeout",\n "unavailable",\n "execution_failure"\n ],\n "type": "string"\n },\n "code": {\n "const": "artifact_operation_failed",\n "type": "string"\n },\n "details": {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n },\n "message": {\n "minLength": 1,\n "type": "string"\n },\n "remediation": {\n "additionalProperties": false,\n "properties": {\n "action": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "action"\n ],\n "type": "object"\n },\n "retryable": {\n "type": "boolean"\n }\n },\n "required": [\n "code",\n "category",\n "message",\n "retryable",\n "remediation"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "category": {\n "enum": [\n "invalid_input",\n "unsupported_provider",\n "integrity_mismatch",\n "truncated",\n "cancelled",\n "timeout",\n "unavailable",\n "execution_failure"\n ],\n "type": "string"\n },\n "code": {\n "const": "evidence_integrity_mismatch",\n "type": "string"\n },\n "details": {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n },\n "message": {\n "minLength": 1,\n "type": "string"\n },\n "remediation": {\n "additionalProperties": false,\n "properties": {\n "action": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "action"\n ],\n "type": "object"\n },\n "retryable": {\n "type": "boolean"\n }\n },\n "required": [\n "code",\n "category",\n "message",\n "retryable",\n "remediation"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "category": {\n "enum": [\n "invalid_input",\n "unsupported_provider",\n "integrity_mismatch",\n "truncated",\n "cancelled",\n "timeout",\n "unavailable",\n "execution_failure"\n ],\n "type": "string"\n },\n "code": {\n "const": "truncated",\n "type": "string"\n },\n "details": {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n },\n "message": {\n "minLength": 1,\n "type": "string"\n },\n "remediation": {\n "additionalProperties": false,\n "properties": {\n "action": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "action"\n ],\n "type": "object"\n },\n "retryable": {\n "type": "boolean"\n }\n },\n "required": [\n "code",\n "category",\n "message",\n "retryable",\n "remediation"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "category": {\n "enum": [\n "invalid_input",\n "unsupported_provider",\n "integrity_mismatch",\n "truncated",\n "cancelled",\n "timeout",\n "unavailable",\n "execution_failure"\n ],\n "type": "string"\n },\n "code": {\n "const": "process_capture_failed",\n "type": "string"\n },\n "details": {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n },\n "message": {\n "minLength": 1,\n "type": "string"\n },\n "remediation": {\n "additionalProperties": false,\n "properties": {\n "action": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "action"\n ],\n "type": "object"\n },\n "retryable": {\n "type": "boolean"\n }\n },\n "required": [\n "code",\n "category",\n "message",\n "retryable",\n "remediation"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "category": {\n "enum": [\n "invalid_input",\n "unsupported_provider",\n "integrity_mismatch",\n "truncated",\n "cancelled",\n "timeout",\n "unavailable",\n "execution_failure"\n ],\n "type": "string"\n },\n "code": {\n "const": "cleanup_incomplete",\n "type": "string"\n },\n "details": {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n },\n "message": {\n "minLength": 1,\n "type": "string"\n },\n "remediation": {\n "additionalProperties": false,\n "properties": {\n "action": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "action"\n ],\n "type": "object"\n },\n "retryable": {\n "type": "boolean"\n }\n },\n "required": [\n "code",\n "category",\n "message",\n "retryable",\n "remediation"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "category": {\n "enum": [\n "invalid_input",\n "unsupported_provider",\n "integrity_mismatch",\n "truncated",\n "cancelled",\n "timeout",\n "unavailable",\n "execution_failure"\n ],\n "type": "string"\n },\n "code": {\n "const": "revision_conflict",\n "type": "string"\n },\n "details": {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n },\n "message": {\n "minLength": 1,\n "type": "string"\n },\n "remediation": {\n "additionalProperties": false,\n "properties": {\n "action": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "action"\n ],\n "type": "object"\n },\n "retryable": {\n "type": "boolean"\n }\n },\n "required": [\n "code",\n "category",\n "message",\n "retryable",\n "remediation"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "category": {\n "enum": [\n "invalid_input",\n "unsupported_provider",\n "integrity_mismatch",\n "truncated",\n "cancelled",\n "timeout",\n "unavailable",\n "execution_failure"\n ],\n "type": "string"\n },\n "code": {\n "const": "configuration_invalid",\n "type": "string"\n },\n "details": {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n },\n "message": {\n "minLength": 1,\n "type": "string"\n },\n "remediation": {\n "additionalProperties": false,\n "properties": {\n "action": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "action"\n ],\n "type": "object"\n },\n "retryable": {\n "type": "boolean"\n }\n },\n "required": [\n "code",\n "category",\n "message",\n "retryable",\n "remediation"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "category": {\n "enum": [\n "invalid_input",\n "unsupported_provider",\n "integrity_mismatch",\n "truncated",\n "cancelled",\n "timeout",\n "unavailable",\n "execution_failure"\n ],\n "type": "string"\n },\n "code": {\n "const": "target_unavailable",\n "type": "string"\n },\n "details": {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n },\n "message": {\n "minLength": 1,\n "type": "string"\n },\n "remediation": {\n "additionalProperties": false,\n "properties": {\n "action": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "action"\n ],\n "type": "object"\n },\n "retryable": {\n "type": "boolean"\n }\n },\n "required": [\n "code",\n "category",\n "message",\n "retryable",\n "remediation"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "category": {\n "enum": [\n "invalid_input",\n "unsupported_provider",\n "integrity_mismatch",\n "truncated",\n "cancelled",\n "timeout",\n "unavailable",\n "execution_failure"\n ],\n "type": "string"\n },\n "code": {\n "const": "execution_failure",\n "type": "string"\n },\n "details": {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n },\n "message": {\n "minLength": 1,\n "type": "string"\n },\n "remediation": {\n "additionalProperties": false,\n "properties": {\n "action": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "action"\n ],\n "type": "object"\n },\n "retryable": {\n "type": "boolean"\n }\n },\n "required": [\n "code",\n "category",\n "message",\n "retryable",\n "remediation"\n ],\n "type": "object"\n }\n ]\n },\n "status": {\n "const": "error",\n "type": "string"\n }\n },\n "required": [\n "address",\n "status",\n "error"\n ],\n "type": "object"\n }\n ]\n },\n "type": "array"\n },\n "succeeded": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "total": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "items",\n "total",\n "succeeded",\n "failed"\n ],\n "type": "object"\n }\n },\n "required": [\n "result",\n "evidence_id",\n "evidence"\n ],\n "type": "object"\n },\n "requiresSession": false,\n "title": "Batch Decompile"\n },\n {\n "analysisOperation": "get_call_graph",\n "annotations": {\n "destructiveHint": false,\n "idempotentHint": true,\n "openWorldHint": false,\n "readOnlyHint": false\n },\n "description": "Traverse the bound provider\'s caller or callee relationships from one symbol or address until the reachable graph is exhausted. 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.",\n "effects": {\n "accessesNetwork": false,\n "changesUiState": false,\n "idempotent": true,\n "launchesProcess": false,\n "mayDiscardData": false,\n "mutatesSession": true,\n "mutatesTarget": false,\n "writesFilesystem": false\n },\n "inputSchema": {\n "$schema": "https://json-schema.org/draft/2020-12/schema",\n "additionalProperties": false,\n "examples": [\n {\n "address": "0x1000",\n "direction": "forward"\n }\n ],\n "properties": {\n "address": {\n "description": "A provider-normalized procedure address",\n "type": "string"\n },\n "direction": {\n "default": "forward",\n "description": "Direction in which to traverse or compare relationships.",\n "enum": [\n "forward",\n "backward"\n ],\n "type": "string"\n }\n },\n "required": [\n "address"\n ],\n "type": "object"\n },\n "kind": "enhanced",\n "name": "get_call_graph",\n "outputSchema": {\n "$defs": {\n "__schema0": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "number"\n },\n {\n "type": "boolean"\n },\n {\n "type": "null"\n },\n {\n "items": {\n "$ref": "#/$defs/__schema0"\n },\n "type": "array"\n },\n {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n }\n ]\n },\n "__schema1": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "number"\n },\n {\n "type": "boolean"\n },\n {\n "type": "null"\n },\n {\n "items": {\n "$ref": "#/$defs/__schema1"\n },\n "type": "array"\n },\n {\n "additionalProperties": {\n "$ref": "#/$defs/__schema1"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n }\n ]\n }\n },\n "$schema": "https://json-schema.org/draft/2020-12/schema",\n "additionalProperties": false,\n "properties": {\n "evidence": {\n "additionalProperties": false,\n "properties": {\n "analysis_profile": {\n "additionalProperties": false,\n "properties": {\n "digest": {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n },\n "parameters": {\n "additionalProperties": {\n "$ref": "#/$defs/__schema1"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n },\n "provider": {\n "additionalProperties": false,\n "properties": {\n "id": {\n "minLength": 1,\n "type": "string"\n },\n "name": {\n "minLength": 1,\n "type": "string"\n },\n "version": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "id",\n "name",\n "version"\n ],\n "type": "object"\n }\n },\n "required": [\n "provider",\n "parameters",\n "digest"\n ],\n "type": "object"\n },\n "authority": {\n "enum": [\n "shipped-artifact",\n "controlled-replay",\n "historical-reference",\n "external-service",\n "analyst-inference"\n ],\n "type": "string"\n },\n "confidence": {\n "enum": [\n "observed",\n "derived",\n "inferred"\n ],\n "type": "string"\n },\n "environment": {\n "anyOf": [\n {\n "additionalProperties": false,\n "properties": {\n "architecture": {\n "minLength": 1,\n "type": "string"\n },\n "id": {\n "minLength": 1,\n "type": "string"\n },\n "isolation": {\n "enum": [\n "none",\n "process",\n "container",\n "virtual-machine"\n ],\n "type": "string"\n },\n "platform": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "id",\n "platform",\n "architecture",\n "isolation"\n ],\n "type": "object"\n },\n {\n "type": "null"\n }\n ]\n },\n "evidence_id": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "evidence_links": {\n "items": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "type": "array"\n },\n "limitations": {\n "items": {\n "type": "string"\n },\n "type": "array"\n },\n "locations": {\n "items": {\n "oneOf": [\n {\n "additionalProperties": false,\n "properties": {\n "address": {\n "minLength": 1,\n "type": "string"\n },\n "kind": {\n "const": "address",\n "type": "string"\n }\n },\n "required": [\n "kind",\n "address"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "end": {\n "minLength": 1,\n "type": "string"\n },\n "kind": {\n "const": "address-range",\n "type": "string"\n },\n "start": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "kind",\n "start",\n "end"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "kind": {\n "const": "artifact-path",\n "type": "string"\n },\n "path": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "kind",\n "path"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "kind": {\n "const": "file-offset",\n "type": "string"\n },\n "offset": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "kind",\n "offset"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "end": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "kind": {\n "const": "file-offset-range",\n "type": "string"\n },\n "start": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "kind",\n "start",\n "end"\n ],\n "type": "object"\n }\n ]\n },\n "type": "array"\n },\n "normalized_result": {\n "$ref": "#/$defs/__schema1"\n },\n "operation": {\n "minLength": 1,\n "type": "string"\n },\n "parameters": {\n "additionalProperties": {\n "$ref": "#/$defs/__schema1"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n },\n "predicate_type": {\n "minLength": 1,\n "type": "string"\n },\n "provider": {\n "additionalProperties": false,\n "properties": {\n "id": {\n "minLength": 1,\n "type": "string"\n },\n "name": {\n "minLength": 1,\n "type": "string"\n },\n "version": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "id",\n "name",\n "version"\n ],\n "type": "object"\n },\n "raw_result": {\n "anyOf": [\n {\n "$ref": "#/$defs/__schema1"\n },\n {\n "type": "null"\n }\n ]\n },\n "subject": {\n "anyOf": [\n {\n "additionalProperties": false,\n "properties": {\n "architecture": {\n "anyOf": [\n {\n "enum": [\n "x86",\n "x86_64",\n "arm",\n "arm64"\n ],\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "digest": {\n "additionalProperties": false,\n "properties": {\n "sha256": {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n }\n },\n "required": [\n "sha256"\n ],\n "type": "object"\n },\n "format": {\n "enum": [\n "hopper",\n "analysis-database",\n "mach-o",\n "elf",\n "pe",\n "dos-mz",\n "dos-com",\n "zip",\n "ipa",\n "apk",\n "msix",\n "appx",\n "asar",\n "dmg",\n "pkg",\n "plist",\n "javascript",\n "source-map",\n "directory",\n "file",\n "unknown",\n "mach-o-universal",\n "javascript-bundle",\n "entitlements"\n ],\n "type": "string"\n },\n "local_path": {\n "type": "string"\n },\n "name": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "name",\n "digest",\n "format",\n "architecture",\n "local_path"\n ],\n "type": "object"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "evidence_id",\n "subject",\n "provider",\n "predicate_type",\n "operation",\n "parameters",\n "raw_result",\n "normalized_result",\n "confidence",\n "authority",\n "environment",\n "limitations",\n "locations",\n "evidence_links"\n ],\n "type": "object"\n },\n "evidence_id": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "result": {\n "additionalProperties": {\n "items": {\n "oneOf": [\n {\n "additionalProperties": false,\n "properties": {\n "address": {\n "type": "string"\n },\n "calls": {\n "items": {\n "type": "string"\n },\n "type": "array"\n },\n "status": {\n "const": "ok",\n "type": "string"\n }\n },\n "required": [\n "address",\n "status",\n "calls"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "address": {\n "type": "string"\n },\n "error": {\n "oneOf": [\n {\n "additionalProperties": false,\n "properties": {\n "category": {\n "enum": [\n "invalid_input",\n "unsupported_provider",\n "integrity_mismatch",\n "truncated",\n "cancelled",\n "timeout",\n "unavailable",\n "execution_failure"\n ],\n "type": "string"\n },\n "code": {\n "const": "invalid_request",\n "type": "string"\n },\n "details": {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n },\n "message": {\n "minLength": 1,\n "type": "string"\n },\n "remediation": {\n "additionalProperties": false,\n "properties": {\n "action": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "action"\n ],\n "type": "object"\n },\n "retryable": {\n "type": "boolean"\n }\n },\n "required": [\n "code",\n "category",\n "message",\n "retryable",\n "remediation"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "category": {\n "enum": [\n "invalid_input",\n "unsupported_provider",\n "integrity_mismatch",\n "truncated",\n "cancelled",\n "timeout",\n "unavailable",\n "execution_failure"\n ],\n "type": "string"\n },\n "code": {\n "const": "unreadable_output",\n "type": "string"\n },\n "details": {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n },\n "message": {\n "minLength": 1,\n "type": "string"\n },\n "remediation": {\n "additionalProperties": false,\n "properties": {\n "action": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "action"\n ],\n "type": "object"\n },\n "retryable": {\n "type": "boolean"\n }\n },\n "required": [\n "code",\n "category",\n "message",\n "retryable",\n "remediation"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "category": {\n "enum": [\n "invalid_input",\n "unsupported_provider",\n "integrity_mismatch",\n "truncated",\n "cancelled",\n "timeout",\n "unavailable",\n "execution_failure"\n ],\n "type": "string"\n },\n "code": {\n "const": "capability_unavailable",\n "type": "string"\n },\n "details": {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n },\n "message": {\n "minLength": 1,\n "type": "string"\n },\n "remediation": {\n "additionalProperties": false,\n "properties": {\n "action": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "action"\n ],\n "type": "object"\n },\n "retryable": {\n "type": "boolean"\n }\n },\n "required": [\n "code",\n "category",\n "message",\n "retryable",\n "remediation"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "category": {\n "enum": [\n "invalid_input",\n "unsupported_provider",\n "integrity_mismatch",\n "truncated",\n "cancelled",\n "timeout",\n "unavailable",\n "execution_failure"\n ],\n "type": "string"\n },\n "code": {\n "const": "provider_unavailable",\n "type": "string"\n },\n "details": {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n },\n "message": {\n "minLength": 1,\n "type": "string"\n },\n "remediation": {\n "additionalProperties": false,\n "properties": {\n "action": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "action"\n ],\n "type": "object"\n },\n "retryable": {\n "type": "boolean"\n }\n },\n "required": [\n "code",\n "category",\n "message",\n "retryable",\n "remediation"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "category": {\n "enum": [\n "invalid_input",\n "unsupported_provider",\n "integrity_mismatch",\n "truncated",\n "cancelled",\n "timeout",\n "unavailable",\n "execution_failure"\n ],\n "type": "string"\n },\n "code": {\n "const": "provider_timeout",\n "type": "string"\n },\n "details": {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n },\n "message": {\n "minLength": 1,\n "type": "string"\n },\n "remediation": {\n "additionalProperties": false,\n "properties": {\n "action": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "action"\n ],\n "type": "object"\n },\n "retryable": {\n "type": "boolean"\n }\n },\n "required": [\n "code",\n "category",\n "message",\n "retryable",\n "remediation"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "category": {\n "enum": [\n "invalid_input",\n "unsupported_provider",\n "integrity_mismatch",\n "truncated",\n "cancelled",\n "timeout",\n "unavailable",\n "execution_failure"\n ],\n "type": "string"\n },\n "code": {\n "const": "cancelled",\n "type": "string"\n },\n "details": {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n },\n "message": {\n "minLength": 1,\n "type": "string"\n },\n "remediation": {\n "additionalProperties": false,\n "properties": {\n "action": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "action"\n ],\n "type": "object"\n },\n "retryable": {\n "type": "boolean"\n }\n },\n "required": [\n "code",\n "category",\n "message",\n "retryable",\n "remediation"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "category": {\n "enum": [\n "invalid_input",\n "unsupported_provider",\n "integrity_mismatch",\n "truncated",\n "cancelled",\n "timeout",\n "unavailable",\n "execution_failure"\n ],\n "type": "string"\n },\n "code": {\n "const": "artifact_integrity_mismatch",\n "type": "string"\n },\n "details": {\n "additionalProperties": false,\n "properties": {\n "calculated_sha256": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "declared_sha256": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "logical_path": {\n "type": "string"\n },\n "unpacked": {\n "type": "boolean"\n }\n },\n "required": [\n "logical_path",\n "declared_sha256",\n "calculated_sha256",\n "unpacked"\n ],\n "type": "object"\n },\n "message": {\n "minLength": 1,\n "type": "string"\n },\n "remediation": {\n "additionalProperties": false,\n "properties": {\n "action": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "action"\n ],\n "type": "object"\n },\n "retryable": {\n "type": "boolean"\n }\n },\n "required": [\n "code",\n "category",\n "message",\n "retryable",\n "remediation",\n "details"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "category": {\n "enum": [\n "invalid_input",\n "unsupported_provider",\n "integrity_mismatch",\n "truncated",\n "cancelled",\n "timeout",\n "unavailable",\n "execution_failure"\n ],\n "type": "string"\n },\n "code": {\n "const": "artifact_operation_failed",\n "type": "string"\n },\n "details": {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n },\n "message": {\n "minLength": 1,\n "type": "string"\n },\n "remediation": {\n "additionalProperties": false,\n "properties": {\n "action": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "action"\n ],\n "type": "object"\n },\n "retryable": {\n "type": "boolean"\n }\n },\n "required": [\n "code",\n "category",\n "message",\n "retryable",\n "remediation"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "category": {\n "enum": [\n "invalid_input",\n "unsupported_provider",\n "integrity_mismatch",\n "truncated",\n "cancelled",\n "timeout",\n "unavailable",\n "execution_failure"\n ],\n "type": "string"\n },\n "code": {\n "const": "evidence_integrity_mismatch",\n "type": "string"\n },\n "details": {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n },\n "message": {\n "minLength": 1,\n "type": "string"\n },\n "remediation": {\n "additionalProperties": false,\n "properties": {\n "action": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "action"\n ],\n "type": "object"\n },\n "retryable": {\n "type": "boolean"\n }\n },\n "required": [\n "code",\n "category",\n "message",\n "retryable",\n "remediation"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "category": {\n "enum": [\n "invalid_input",\n "unsupported_provider",\n "integrity_mismatch",\n "truncated",\n "cancelled",\n "timeout",\n "unavailable",\n "execution_failure"\n ],\n "type": "string"\n },\n "code": {\n "const": "truncated",\n "type": "string"\n },\n "details": {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n },\n "message": {\n "minLength": 1,\n "type": "string"\n },\n "remediation": {\n "additionalProperties": false,\n "properties": {\n "action": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "action"\n ],\n "type": "object"\n },\n "retryable": {\n "type": "boolean"\n }\n },\n "required": [\n "code",\n "category",\n "message",\n "retryable",\n "remediation"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "category": {\n "enum": [\n "invalid_input",\n "unsupported_provider",\n "integrity_mismatch",\n "truncated",\n "cancelled",\n "timeout",\n "unavailable",\n "execution_failure"\n ],\n "type": "string"\n },\n "code": {\n "const": "process_capture_failed",\n "type": "string"\n },\n "details": {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n },\n "message": {\n "minLength": 1,\n "type": "string"\n },\n "remediation": {\n "additionalProperties": false,\n "properties": {\n "action": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "action"\n ],\n "type": "object"\n },\n "retryable": {\n "type": "boolean"\n }\n },\n "required": [\n "code",\n "category",\n "message",\n "retryable",\n "remediation"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "category": {\n "enum": [\n "invalid_input",\n "unsupported_provider",\n "integrity_mismatch",\n "truncated",\n "cancelled",\n "timeout",\n "unavailable",\n "execution_failure"\n ],\n "type": "string"\n },\n "code": {\n "const": "cleanup_incomplete",\n "type": "string"\n },\n "details": {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n },\n "message": {\n "minLength": 1,\n "type": "string"\n },\n "remediation": {\n "additionalProperties": false,\n "properties": {\n "action": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "action"\n ],\n "type": "object"\n },\n "retryable": {\n "type": "boolean"\n }\n },\n "required": [\n "code",\n "category",\n "message",\n "retryable",\n "remediation"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "category": {\n "enum": [\n "invalid_input",\n "unsupported_provider",\n "integrity_mismatch",\n "truncated",\n "cancelled",\n "timeout",\n "unavailable",\n "execution_failure"\n ],\n "type": "string"\n },\n "code": {\n "const": "revision_conflict",\n "type": "string"\n },\n "details": {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n },\n "message": {\n "minLength": 1,\n "type": "string"\n },\n "remediation": {\n "additionalProperties": false,\n "properties": {\n "action": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "action"\n ],\n "type": "object"\n },\n "retryable": {\n "type": "boolean"\n }\n },\n "required": [\n "code",\n "category",\n "message",\n "retryable",\n "remediation"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "category": {\n "enum": [\n "invalid_input",\n "unsupported_provider",\n "integrity_mismatch",\n "truncated",\n "cancelled",\n "timeout",\n "unavailable",\n "execution_failure"\n ],\n "type": "string"\n },\n "code": {\n "const": "configuration_invalid",\n "type": "string"\n },\n "details": {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n },\n "message": {\n "minLength": 1,\n "type": "string"\n },\n "remediation": {\n "additionalProperties": false,\n "properties": {\n "action": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "action"\n ],\n "type": "object"\n },\n "retryable": {\n "type": "boolean"\n }\n },\n "required": [\n "code",\n "category",\n "message",\n "retryable",\n "remediation"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "category": {\n "enum": [\n "invalid_input",\n "unsupported_provider",\n "integrity_mismatch",\n "truncated",\n "cancelled",\n "timeout",\n "unavailable",\n "execution_failure"\n ],\n "type": "string"\n },\n "code": {\n "const": "target_unavailable",\n "type": "string"\n },\n "details": {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n },\n "message": {\n "minLength": 1,\n "type": "string"\n },\n "remediation": {\n "additionalProperties": false,\n "properties": {\n "action": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "action"\n ],\n "type": "object"\n },\n "retryable": {\n "type": "boolean"\n }\n },\n "required": [\n "code",\n "category",\n "message",\n "retryable",\n "remediation"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "category": {\n "enum": [\n "invalid_input",\n "unsupported_provider",\n "integrity_mismatch",\n "truncated",\n "cancelled",\n "timeout",\n "unavailable",\n "execution_failure"\n ],\n "type": "string"\n },\n "code": {\n "const": "execution_failure",\n "type": "string"\n },\n "details": {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n },\n "message": {\n "minLength": 1,\n "type": "string"\n },\n "remediation": {\n "additionalProperties": false,\n "properties": {\n "action": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "action"\n ],\n "type": "object"\n },\n "retryable": {\n "type": "boolean"\n }\n },\n "required": [\n "code",\n "category",\n "message",\n "retryable",\n "remediation"\n ],\n "type": "object"\n }\n ]\n },\n "status": {\n "const": "error",\n "type": "string"\n }\n },\n "required": [\n "address",\n "status",\n "error"\n ],\n "type": "object"\n }\n ]\n },\n "type": "array"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n }\n },\n "required": [\n "result",\n "evidence_id",\n "evidence"\n ],\n "type": "object"\n },\n "requiresSession": false,\n "title": "Get Call Graph"\n },\n {\n "analysisOperation": "analyze_swift_types",\n "annotations": {\n "destructiveHint": false,\n "idempotentHint": true,\n "openWorldHint": false,\n "readOnlyHint": false\n },\n "description": "Categorize analyzed procedure names into Swift classes, structs, enums, protocols, extensions, and other symbols. Returns deduplicated names grouped with counts. Optionally select one category and/or apply a case-sensitive literal name filter; for example, use {category: \\"classes\\", pattern: \\"Account\\"} to find matching class symbols.",\n "effects": {\n "accessesNetwork": false,\n "changesUiState": false,\n "idempotent": true,\n "launchesProcess": false,\n "mayDiscardData": false,\n "mutatesSession": true,\n "mutatesTarget": false,\n "writesFilesystem": false\n },\n "inputSchema": {\n "$schema": "https://json-schema.org/draft/2020-12/schema",\n "additionalProperties": false,\n "examples": [\n {\n "category": "classes",\n "pattern": "Account"\n }\n ],\n "properties": {\n "category": {\n "description": "Limit results to one Swift symbol category.",\n "enum": [\n "classes",\n "structs",\n "enums",\n "protocols",\n "extensions",\n "other"\n ],\n "type": "string"\n },\n "pattern": {\n "description": "Case-sensitive literal filter applied to mangled symbol names.",\n "type": "string"\n }\n },\n "type": "object"\n },\n "kind": "enhanced",\n "name": "analyze_swift_types",\n "outputSchema": {\n "$defs": {\n "__schema0": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "number"\n },\n {\n "type": "boolean"\n },\n {\n "type": "null"\n },\n {\n "items": {\n "$ref": "#/$defs/__schema0"\n },\n "type": "array"\n },\n {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n }\n ]\n }\n },\n "$schema": "https://json-schema.org/draft/2020-12/schema",\n "additionalProperties": false,\n "properties": {\n "evidence": {\n "additionalProperties": false,\n "properties": {\n "analysis_profile": {\n "additionalProperties": false,\n "properties": {\n "digest": {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n },\n "parameters": {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n },\n "provider": {\n "additionalProperties": false,\n "properties": {\n "id": {\n "minLength": 1,\n "type": "string"\n },\n "name": {\n "minLength": 1,\n "type": "string"\n },\n "version": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "id",\n "name",\n "version"\n ],\n "type": "object"\n }\n },\n "required": [\n "provider",\n "parameters",\n "digest"\n ],\n "type": "object"\n },\n "authority": {\n "enum": [\n "shipped-artifact",\n "controlled-replay",\n "historical-reference",\n "external-service",\n "analyst-inference"\n ],\n "type": "string"\n },\n "confidence": {\n "enum": [\n "observed",\n "derived",\n "inferred"\n ],\n "type": "string"\n },\n "environment": {\n "anyOf": [\n {\n "additionalProperties": false,\n "properties": {\n "architecture": {\n "minLength": 1,\n "type": "string"\n },\n "id": {\n "minLength": 1,\n "type": "string"\n },\n "isolation": {\n "enum": [\n "none",\n "process",\n "container",\n "virtual-machine"\n ],\n "type": "string"\n },\n "platform": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "id",\n "platform",\n "architecture",\n "isolation"\n ],\n "type": "object"\n },\n {\n "type": "null"\n }\n ]\n },\n "evidence_id": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "evidence_links": {\n "items": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "type": "array"\n },\n "limitations": {\n "items": {\n "type": "string"\n },\n "type": "array"\n },\n "locations": {\n "items": {\n "oneOf": [\n {\n "additionalProperties": false,\n "properties": {\n "address": {\n "minLength": 1,\n "type": "string"\n },\n "kind": {\n "const": "address",\n "type": "string"\n }\n },\n "required": [\n "kind",\n "address"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "end": {\n "minLength": 1,\n "type": "string"\n },\n "kind": {\n "const": "address-range",\n "type": "string"\n },\n "start": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "kind",\n "start",\n "end"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "kind": {\n "const": "artifact-path",\n "type": "string"\n },\n "path": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "kind",\n "path"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "kind": {\n "const": "file-offset",\n "type": "string"\n },\n "offset": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "kind",\n "offset"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "end": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "kind": {\n "const": "file-offset-range",\n "type": "string"\n },\n "start": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "kind",\n "start",\n "end"\n ],\n "type": "object"\n }\n ]\n },\n "type": "array"\n },\n "normalized_result": {\n "$ref": "#/$defs/__schema0"\n },\n "operation": {\n "minLength": 1,\n "type": "string"\n },\n "parameters": {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n },\n "predicate_type": {\n "minLength": 1,\n "type": "string"\n },\n "provider": {\n "additionalProperties": false,\n "properties": {\n "id": {\n "minLength": 1,\n "type": "string"\n },\n "name": {\n "minLength": 1,\n "type": "string"\n },\n "version": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "id",\n "name",\n "version"\n ],\n "type": "object"\n },\n "raw_result": {\n "anyOf": [\n {\n "$ref": "#/$defs/__schema0"\n },\n {\n "type": "null"\n }\n ]\n },\n "subject": {\n "anyOf": [\n {\n "additionalProperties": false,\n "properties": {\n "architecture": {\n "anyOf": [\n {\n "enum": [\n "x86",\n "x86_64",\n "arm",\n "arm64"\n ],\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "digest": {\n "additionalProperties": false,\n "properties": {\n "sha256": {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n }\n },\n "required": [\n "sha256"\n ],\n "type": "object"\n },\n "format": {\n "enum": [\n "hopper",\n "analysis-database",\n "mach-o",\n "elf",\n "pe",\n "dos-mz",\n "dos-com",\n "zip",\n "ipa",\n "apk",\n "msix",\n "appx",\n "asar",\n "dmg",\n "pkg",\n "plist",\n "javascript",\n "source-map",\n "directory",\n "file",\n "unknown",\n "mach-o-universal",\n "javascript-bundle",\n "entitlements"\n ],\n "type": "string"\n },\n "local_path": {\n "type": "string"\n },\n "name": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "name",\n "digest",\n "format",\n "architecture",\n "local_path"\n ],\n "type": "object"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "evidence_id",\n "subject",\n "provider",\n "predicate_type",\n "operation",\n "parameters",\n "raw_result",\n "normalized_result",\n "confidence",\n "authority",\n "environment",\n "limitations",\n "locations",\n "evidence_links"\n ],\n "type": "object"\n },\n "evidence_id": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "result": {\n "additionalProperties": false,\n "properties": {\n "categories": {\n "additionalProperties": {\n "additionalProperties": false,\n "properties": {\n "count": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "items": {\n "items": {\n "additionalProperties": false,\n "properties": {\n "address": {\n "type": "string"\n },\n "name": {\n "type": "string"\n }\n },\n "required": [\n "address",\n "name"\n ],\n "type": "object"\n },\n "type": "array"\n }\n },\n "required": [\n "count",\n "items"\n ],\n "type": "object"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n },\n "total": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "total",\n "categories"\n ],\n "type": "object"\n }\n },\n "required": [\n "result",\n "evidence_id",\n "evidence"\n ],\n "type": "object"\n },\n "requiresSession": false,\n "title": "Analyze Swift Types"\n },\n {\n "analysisOperation": "find_xrefs_to_name",\n "annotations": {\n "destructiveHint": false,\n "idempotentHint": true,\n "openWorldHint": false,\n "readOnlyHint": false\n },\n "description": "Resolve an exact name against the bound provider\'s name inventory and return a resolved or unresolved result. Unresolved names use the stable name_not_found reason; this xref workflow returns address-only projections.",\n "effects": {\n "accessesNetwork": false,\n "changesUiState": false,\n "idempotent": true,\n "launchesProcess": false,\n "mayDiscardData": false,\n "mutatesSession": true,\n "mutatesTarget": false,\n "writesFilesystem": false\n },\n "inputSchema": {\n "$schema": "https://json-schema.org/draft/2020-12/schema",\n "additionalProperties": false,\n "examples": [\n {\n "name": "malloc"\n }\n ],\n "properties": {\n "name": {\n "description": "Exact name used by this operation.",\n "type": "string"\n }\n },\n "required": [\n "name"\n ],\n "type": "object"\n },\n "kind": "enhanced",\n "name": "find_xrefs_to_name",\n "outputSchema": {\n "$defs": {\n "__schema0": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "number"\n },\n {\n "type": "boolean"\n },\n {\n "type": "null"\n },\n {\n "items": {\n "$ref": "#/$defs/__schema0"\n },\n "type": "array"\n },\n {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n }\n ]\n }\n },\n "$schema": "https://json-schema.org/draft/2020-12/schema",\n "additionalProperties": false,\n "properties": {\n "evidence": {\n "additionalProperties": false,\n "properties": {\n "analysis_profile": {\n "additionalProperties": false,\n "properties": {\n "digest": {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n },\n "parameters": {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n },\n "provider": {\n "additionalProperties": false,\n "properties": {\n "id": {\n "minLength": 1,\n "type": "string"\n },\n "name": {\n "minLength": 1,\n "type": "string"\n },\n "version": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "id",\n "name",\n "version"\n ],\n "type": "object"\n }\n },\n "required": [\n "provider",\n "parameters",\n "digest"\n ],\n "type": "object"\n },\n "authority": {\n "enum": [\n "shipped-artifact",\n "controlled-replay",\n "historical-reference",\n "external-service",\n "analyst-inference"\n ],\n "type": "string"\n },\n "confidence": {\n "enum": [\n "observed",\n "derived",\n "inferred"\n ],\n "type": "string"\n },\n "environment": {\n "anyOf": [\n {\n "additionalProperties": false,\n "properties": {\n "architecture": {\n "minLength": 1,\n "type": "string"\n },\n "id": {\n "minLength": 1,\n "type": "string"\n },\n "isolation": {\n "enum": [\n "none",\n "process",\n "container",\n "virtual-machine"\n ],\n "type": "string"\n },\n "platform": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "id",\n "platform",\n "architecture",\n "isolation"\n ],\n "type": "object"\n },\n {\n "type": "null"\n }\n ]\n },\n "evidence_id": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "evidence_links": {\n "items": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "type": "array"\n },\n "limitations": {\n "items": {\n "type": "string"\n },\n "type": "array"\n },\n "locations": {\n "items": {\n "oneOf": [\n {\n "additionalProperties": false,\n "properties": {\n "address": {\n "minLength": 1,\n "type": "string"\n },\n "kind": {\n "const": "address",\n "type": "string"\n }\n },\n "required": [\n "kind",\n "address"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "end": {\n "minLength": 1,\n "type": "string"\n },\n "kind": {\n "const": "address-range",\n "type": "string"\n },\n "start": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "kind",\n "start",\n "end"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "kind": {\n "const": "artifact-path",\n "type": "string"\n },\n "path": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "kind",\n "path"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "kind": {\n "const": "file-offset",\n "type": "string"\n },\n "offset": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "kind",\n "offset"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "end": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "kind": {\n "const": "file-offset-range",\n "type": "string"\n },\n "start": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "kind",\n "start",\n "end"\n ],\n "type": "object"\n }\n ]\n },\n "type": "array"\n },\n "normalized_result": {\n "$ref": "#/$defs/__schema0"\n },\n "operation": {\n "minLength": 1,\n "type": "string"\n },\n "parameters": {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n },\n "predicate_type": {\n "minLength": 1,\n "type": "string"\n },\n "provider": {\n "additionalProperties": false,\n "properties": {\n "id": {\n "minLength": 1,\n "type": "string"\n },\n "name": {\n "minLength": 1,\n "type": "string"\n },\n "version": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "id",\n "name",\n "version"\n ],\n "type": "object"\n },\n "raw_result": {\n "anyOf": [\n {\n "$ref": "#/$defs/__schema0"\n },\n {\n "type": "null"\n }\n ]\n },\n "subject": {\n "anyOf": [\n {\n "additionalProperties": false,\n "properties": {\n "architecture": {\n "anyOf": [\n {\n "enum": [\n "x86",\n "x86_64",\n "arm",\n "arm64"\n ],\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "digest": {\n "additionalProperties": false,\n "properties": {\n "sha256": {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n }\n },\n "required": [\n "sha256"\n ],\n "type": "object"\n },\n "format": {\n "enum": [\n "hopper",\n "analysis-database",\n "mach-o",\n "elf",\n "pe",\n "dos-mz",\n "dos-com",\n "zip",\n "ipa",\n "apk",\n "msix",\n "appx",\n "asar",\n "dmg",\n "pkg",\n "plist",\n "javascript",\n "source-map",\n "directory",\n "file",\n "unknown",\n "mach-o-universal",\n "javascript-bundle",\n "entitlements"\n ],\n "type": "string"\n },\n "local_path": {\n "type": "string"\n },\n "name": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "name",\n "digest",\n "format",\n "architecture",\n "local_path"\n ],\n "type": "object"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "evidence_id",\n "subject",\n "provider",\n "predicate_type",\n "operation",\n "parameters",\n "raw_result",\n "normalized_result",\n "confidence",\n "authority",\n "environment",\n "limitations",\n "locations",\n "evidence_links"\n ],\n "type": "object"\n },\n "evidence_id": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "result": {\n "oneOf": [\n {\n "additionalProperties": false,\n "properties": {\n "address": {\n "type": "string"\n },\n "name": {\n "type": "string"\n },\n "status": {\n "const": "resolved",\n "type": "string"\n },\n "xrefs": {\n "items": {\n "type": "string"\n },\n "type": "array"\n }\n },\n "required": [\n "status",\n "name",\n "address",\n "xrefs"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "name": {\n "type": "string"\n },\n "reason": {\n "const": "name_not_found",\n "type": "string"\n },\n "status": {\n "const": "unresolved",\n "type": "string"\n }\n },\n "required": [\n "status",\n "name",\n "reason"\n ],\n "type": "object"\n }\n ]\n }\n },\n "required": [\n "result",\n "evidence_id",\n "evidence"\n ],\n "type": "object"\n },\n "requiresSession": false,\n "title": "Find Xrefs To Name"\n },\n {\n "analysisOperation": "binary_overview",\n "annotations": {\n "destructiveHint": false,\n "idempotentHint": true,\n "openWorldHint": false,\n "readOnlyHint": false\n },\n "description": "Return native-binary metadata, every segment with its length, and exhaustive procedure/string counts. Use search_procedures, list_procedures, or analyze_function directly when you already know which procedure to inspect.",\n "effects": {\n "accessesNetwork": false,\n "changesUiState": false,\n "idempotent": true,\n "launchesProcess": false,\n "mayDiscardData": false,\n "mutatesSession": true,\n "mutatesTarget": false,\n "writesFilesystem": false\n },\n "inputSchema": {\n "$schema": "https://json-schema.org/draft/2020-12/schema",\n "additionalProperties": false,\n "examples": [\n {}\n ],\n "properties": {},\n "type": "object"\n },\n "kind": "enhanced",\n "name": "binary_overview",\n "outputSchema": {\n "$defs": {\n "__schema0": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "number"\n },\n {\n "type": "boolean"\n },\n {\n "type": "null"\n },\n {\n "items": {\n "$ref": "#/$defs/__schema0"\n },\n "type": "array"\n },\n {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n }\n ]\n }\n },\n "$schema": "https://json-schema.org/draft/2020-12/schema",\n "additionalProperties": false,\n "properties": {\n "evidence": {\n "additionalProperties": false,\n "properties": {\n "analysis_profile": {\n "additionalProperties": false,\n "properties": {\n "digest": {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n },\n "parameters": {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n },\n "provider": {\n "additionalProperties": false,\n "properties": {\n "id": {\n "minLength": 1,\n "type": "string"\n },\n "name": {\n "minLength": 1,\n "type": "string"\n },\n "version": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "id",\n "name",\n "version"\n ],\n "type": "object"\n }\n },\n "required": [\n "provider",\n "parameters",\n "digest"\n ],\n "type": "object"\n },\n "authority": {\n "enum": [\n "shipped-artifact",\n "controlled-replay",\n "historical-reference",\n "external-service",\n "analyst-inference"\n ],\n "type": "string"\n },\n "confidence": {\n "enum": [\n "observed",\n "derived",\n "inferred"\n ],\n "type": "string"\n },\n "environment": {\n "anyOf": [\n {\n "additionalProperties": false,\n "properties": {\n "architecture": {\n "minLength": 1,\n "type": "string"\n },\n "id": {\n "minLength": 1,\n "type": "string"\n },\n "isolation": {\n "enum": [\n "none",\n "process",\n "container",\n "virtual-machine"\n ],\n "type": "string"\n },\n "platform": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "id",\n "platform",\n "architecture",\n "isolation"\n ],\n "type": "object"\n },\n {\n "type": "null"\n }\n ]\n },\n "evidence_id": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "evidence_links": {\n "items": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "type": "array"\n },\n "limitations": {\n "items": {\n "type": "string"\n },\n "type": "array"\n },\n "locations": {\n "items": {\n "oneOf": [\n {\n "additionalProperties": false,\n "properties": {\n "address": {\n "minLength": 1,\n "type": "string"\n },\n "kind": {\n "const": "address",\n "type": "string"\n }\n },\n "required": [\n "kind",\n "address"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "end": {\n "minLength": 1,\n "type": "string"\n },\n "kind": {\n "const": "address-range",\n "type": "string"\n },\n "start": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "kind",\n "start",\n "end"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "kind": {\n "const": "artifact-path",\n "type": "string"\n },\n "path": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "kind",\n "path"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "kind": {\n "const": "file-offset",\n "type": "string"\n },\n "offset": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "kind",\n "offset"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "end": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "kind": {\n "const": "file-offset-range",\n "type": "string"\n },\n "start": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "kind",\n "start",\n "end"\n ],\n "type": "object"\n }\n ]\n },\n "type": "array"\n },\n "normalized_result": {\n "$ref": "#/$defs/__schema0"\n },\n "operation": {\n "minLength": 1,\n "type": "string"\n },\n "parameters": {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n },\n "predicate_type": {\n "minLength": 1,\n "type": "string"\n },\n "provider": {\n "additionalProperties": false,\n "properties": {\n "id": {\n "minLength": 1,\n "type": "string"\n },\n "name": {\n "minLength": 1,\n "type": "string"\n },\n "version": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "id",\n "name",\n "version"\n ],\n "type": "object"\n },\n "raw_result": {\n "anyOf": [\n {\n "$ref": "#/$defs/__schema0"\n },\n {\n "type": "null"\n }\n ]\n },\n "subject": {\n "anyOf": [\n {\n "additionalProperties": false,\n "properties": {\n "architecture": {\n "anyOf": [\n {\n "enum": [\n "x86",\n "x86_64",\n "arm",\n "arm64"\n ],\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "digest": {\n "additionalProperties": false,\n "properties": {\n "sha256": {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n }\n },\n "required": [\n "sha256"\n ],\n "type": "object"\n },\n "format": {\n "enum": [\n "hopper",\n "analysis-database",\n "mach-o",\n "elf",\n "pe",\n "dos-mz",\n "dos-com",\n "zip",\n "ipa",\n "apk",\n "msix",\n "appx",\n "asar",\n "dmg",\n "pkg",\n "plist",\n "javascript",\n "source-map",\n "directory",\n "file",\n "unknown",\n "mach-o-universal",\n "javascript-bundle",\n "entitlements"\n ],\n "type": "string"\n },\n "local_path": {\n "type": "string"\n },\n "name": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "name",\n "digest",\n "format",\n "architecture",\n "local_path"\n ],\n "type": "object"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "evidence_id",\n "subject",\n "provider",\n "predicate_type",\n "operation",\n "parameters",\n "raw_result",\n "normalized_result",\n "confidence",\n "authority",\n "environment",\n "limitations",\n "locations",\n "evidence_links"\n ],\n "type": "object"\n },\n "evidence_id": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "result": {\n "additionalProperties": false,\n "properties": {\n "document": {\n "type": "string"\n },\n "procedure_count": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "segment_count": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "segments": {\n "items": {\n "additionalProperties": false,\n "properties": {\n "end": {\n "type": "string"\n },\n "length": {\n "minimum": 0,\n "type": "number"\n },\n "name": {\n "type": "string"\n },\n "start": {\n "type": "string"\n }\n },\n "required": [\n "name",\n "start",\n "end",\n "length"\n ],\n "type": "object"\n },\n "type": "array"\n },\n "string_count": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "document",\n "segments",\n "segment_count",\n "procedure_count",\n "string_count"\n ],\n "type": "object"\n }\n },\n "required": [\n "result",\n "evidence_id",\n "evidence"\n ],\n "type": "object"\n },\n "requiresSession": false,\n "title": "Binary Overview"\n },\n {\n "analysisOperation": "analyze_function",\n "annotations": {\n "destructiveHint": false,\n "idempotentHint": true,\n "openWorldHint": false,\n "readOnlyHint": false\n },\n "description": "Build a dossier for one native function identified by symbol or provider-returned address. Returns identity with complete inclusive body ranges or explicit unknown, provider-specific pseudocode and assembly, comments, calls, references, referenced strings/names, local CFG blocks, and available native API boundary observations.",\n "effects": {\n "accessesNetwork": false,\n "changesUiState": false,\n "idempotent": true,\n "launchesProcess": false,\n "mayDiscardData": false,\n "mutatesSession": true,\n "mutatesTarget": false,\n "writesFilesystem": false\n },\n "inputSchema": {\n "$schema": "https://json-schema.org/draft/2020-12/schema",\n "additionalProperties": false,\n "examples": [\n {\n "procedure": "main"\n }\n ],\n "properties": {\n "procedure": {\n "description": "A procedure name or address",\n "type": "string"\n }\n },\n "required": [\n "procedure"\n ],\n "type": "object"\n },\n "kind": "enhanced",\n "name": "analyze_function",\n "outputSchema": {\n "$defs": {\n "__schema0": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "number"\n },\n {\n "type": "boolean"\n },\n {\n "type": "null"\n },\n {\n "items": {\n "$ref": "#/$defs/__schema0"\n },\n "type": "array"\n },\n {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n }\n ]\n }\n },\n "$schema": "https://json-schema.org/draft/2020-12/schema",\n "additionalProperties": false,\n "properties": {\n "evidence": {\n "additionalProperties": false,\n "properties": {\n "analysis_profile": {\n "additionalProperties": false,\n "properties": {\n "digest": {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n },\n "parameters": {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n },\n "provider": {\n "additionalProperties": false,\n "properties": {\n "id": {\n "minLength": 1,\n "type": "string"\n },\n "name": {\n "minLength": 1,\n "type": "string"\n },\n "version": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "id",\n "name",\n "version"\n ],\n "type": "object"\n }\n },\n "required": [\n "provider",\n "parameters",\n "digest"\n ],\n "type": "object"\n },\n "authority": {\n "enum": [\n "shipped-artifact",\n "controlled-replay",\n "historical-reference",\n "external-service",\n "analyst-inference"\n ],\n "type": "string"\n },\n "confidence": {\n "enum": [\n "observed",\n "derived",\n "inferred"\n ],\n "type": "string"\n },\n "environment": {\n "anyOf": [\n {\n "additionalProperties": false,\n "properties": {\n "architecture": {\n "minLength": 1,\n "type": "string"\n },\n "id": {\n "minLength": 1,\n "type": "string"\n },\n "isolation": {\n "enum": [\n "none",\n "process",\n "container",\n "virtual-machine"\n ],\n "type": "string"\n },\n "platform": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "id",\n "platform",\n "architecture",\n "isolation"\n ],\n "type": "object"\n },\n {\n "type": "null"\n }\n ]\n },\n "evidence_id": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "evidence_links": {\n "items": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "type": "array"\n },\n "limitations": {\n "items": {\n "type": "string"\n },\n "type": "array"\n },\n "locations": {\n "items": {\n "oneOf": [\n {\n "additionalProperties": false,\n "properties": {\n "address": {\n "minLength": 1,\n "type": "string"\n },\n "kind": {\n "const": "address",\n "type": "string"\n }\n },\n "required": [\n "kind",\n "address"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "end": {\n "minLength": 1,\n "type": "string"\n },\n "kind": {\n "const": "address-range",\n "type": "string"\n },\n "start": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "kind",\n "start",\n "end"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "kind": {\n "const": "artifact-path",\n "type": "string"\n },\n "path": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "kind",\n "path"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "kind": {\n "const": "file-offset",\n "type": "string"\n },\n "offset": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "kind",\n "offset"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "end": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "kind": {\n "const": "file-offset-range",\n "type": "string"\n },\n "start": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "kind",\n "start",\n "end"\n ],\n "type": "object"\n }\n ]\n },\n "type": "array"\n },\n "normalized_result": {\n "$ref": "#/$defs/__schema0"\n },\n "operation": {\n "minLength": 1,\n "type": "string"\n },\n "parameters": {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n },\n "predicate_type": {\n "minLength": 1,\n "type": "string"\n },\n "provider": {\n "additionalProperties": false,\n "properties": {\n "id": {\n "minLength": 1,\n "type": "string"\n },\n "name": {\n "minLength": 1,\n "type": "string"\n },\n "version": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "id",\n "name",\n "version"\n ],\n "type": "object"\n },\n "raw_result": {\n "anyOf": [\n {\n "$ref": "#/$defs/__schema0"\n },\n {\n "type": "null"\n }\n ]\n },\n "subject": {\n "anyOf": [\n {\n "additionalProperties": false,\n "properties": {\n "architecture": {\n "anyOf": [\n {\n "enum": [\n "x86",\n "x86_64",\n "arm",\n "arm64"\n ],\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "digest": {\n "additionalProperties": false,\n "properties": {\n "sha256": {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n }\n },\n "required": [\n "sha256"\n ],\n "type": "object"\n },\n "format": {\n "enum": [\n "hopper",\n "analysis-database",\n "mach-o",\n "elf",\n "pe",\n "dos-mz",\n "dos-com",\n "zip",\n "ipa",\n "apk",\n "msix",\n "appx",\n "asar",\n "dmg",\n "pkg",\n "plist",\n "javascript",\n "source-map",\n "directory",\n "file",\n "unknown",\n "mach-o-universal",\n "javascript-bundle",\n "entitlements"\n ],\n "type": "string"\n },\n "local_path": {\n "type": "string"\n },\n "name": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "name",\n "digest",\n "format",\n "architecture",\n "local_path"\n ],\n "type": "object"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "evidence_id",\n "subject",\n "provider",\n "predicate_type",\n "operation",\n "parameters",\n "raw_result",\n "normalized_result",\n "confidence",\n "authority",\n "environment",\n "limitations",\n "locations",\n "evidence_links"\n ],\n "type": "object"\n },\n "evidence_id": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "result": {\n "additionalProperties": false,\n "properties": {\n "assembly": {\n "items": {\n "type": "string"\n },\n "type": "array"\n },\n "basic_blocks": {\n "items": {\n "additionalProperties": false,\n "properties": {\n "end": {\n "type": "string"\n },\n "start": {\n "type": "string"\n },\n "successors": {\n "items": {\n "type": "string"\n },\n "type": "array"\n }\n },\n "required": [\n "start",\n "end",\n "successors"\n ],\n "type": "object"\n },\n "type": "array"\n },\n "callees": {\n "items": {\n "additionalProperties": false,\n "properties": {\n "address": {\n "type": "string"\n },\n "body": {\n "default": {\n "available": false,\n "reason": "The provider did not report complete function body ranges."\n },\n "oneOf": [\n {\n "additionalProperties": false,\n "properties": {\n "available": {\n "const": false,\n "type": "boolean"\n },\n "reason": {\n "type": "string"\n }\n },\n "required": [\n "available",\n "reason"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "available": {\n "const": true,\n "type": "boolean"\n },\n "contains_entry": {\n "type": "boolean"\n },\n "non_contiguous": {\n "type": "boolean"\n },\n "provenance": {\n "minLength": 1,\n "type": "string"\n },\n "ranges": {\n "items": {\n "additionalProperties": false,\n "properties": {\n "end": {\n "description": "Inclusive last address of this observed body range.",\n "type": "string"\n },\n "start": {\n "type": "string"\n }\n },\n "required": [\n "start",\n "end"\n ],\n "type": "object"\n },\n "type": "array"\n },\n "span_bytes": {\n "anyOf": [\n {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n {\n "type": "null"\n }\n ]\n },\n "total_bytes": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "available",\n "provenance",\n "ranges",\n "total_bytes",\n "span_bytes",\n "non_contiguous",\n "contains_entry"\n ],\n "type": "object"\n }\n ]\n },\n "classification": {\n "anyOf": [\n {\n "additionalProperties": false,\n "properties": {\n "external": {\n "type": "boolean"\n },\n "provenance": {\n "minLength": 1,\n "type": "string"\n },\n "thunk": {\n "type": "boolean"\n },\n "thunk_target": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "external",\n "thunk",\n "thunk_target",\n "provenance"\n ],\n "type": "object"\n },\n {\n "type": "null"\n }\n ],\n "default": null\n },\n "name": {\n "type": "string"\n }\n },\n "required": [\n "address",\n "name",\n "classification",\n "body"\n ],\n "type": "object"\n },\n "type": "array"\n },\n "callers": {\n "items": {\n "additionalProperties": false,\n "properties": {\n "address": {\n "type": "string"\n },\n "body": {\n "default": {\n "available": false,\n "reason": "The provider did not report complete function body ranges."\n },\n "oneOf": [\n {\n "additionalProperties": false,\n "properties": {\n "available": {\n "const": false,\n "type": "boolean"\n },\n "reason": {\n "type": "string"\n }\n },\n "required": [\n "available",\n "reason"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "available": {\n "const": true,\n "type": "boolean"\n },\n "contains_entry": {\n "type": "boolean"\n },\n "non_contiguous": {\n "type": "boolean"\n },\n "provenance": {\n "minLength": 1,\n "type": "string"\n },\n "ranges": {\n "items": {\n "additionalProperties": false,\n "properties": {\n "end": {\n "description": "Inclusive last address of this observed body range.",\n "type": "string"\n },\n "start": {\n "type": "string"\n }\n },\n "required": [\n "start",\n "end"\n ],\n "type": "object"\n },\n "type": "array"\n },\n "span_bytes": {\n "anyOf": [\n {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n {\n "type": "null"\n }\n ]\n },\n "total_bytes": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "available",\n "provenance",\n "ranges",\n "total_bytes",\n "span_bytes",\n "non_contiguous",\n "contains_entry"\n ],\n "type": "object"\n }\n ]\n },\n "classification": {\n "anyOf": [\n {\n "additionalProperties": false,\n "properties": {\n "external": {\n "type": "boolean"\n },\n "provenance": {\n "minLength": 1,\n "type": "string"\n },\n "thunk": {\n "type": "boolean"\n },\n "thunk_target": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "external",\n "thunk",\n "thunk_target",\n "provenance"\n ],\n "type": "object"\n },\n {\n "type": "null"\n }\n ],\n "default": null\n },\n "name": {\n "type": "string"\n }\n },\n "required": [\n "address",\n "name",\n "classification",\n "body"\n ],\n "type": "object"\n },\n "type": "array"\n },\n "comments": {\n "items": {\n "additionalProperties": false,\n "properties": {\n "address": {\n "type": "string"\n },\n "kind": {\n "enum": [\n "comment",\n "inline"\n ],\n "type": "string"\n },\n "text": {\n "type": "string"\n }\n },\n "required": [\n "address",\n "kind",\n "text"\n ],\n "type": "object"\n },\n "type": "array"\n },\n "incoming_references": {\n "items": {\n "additionalProperties": false,\n "properties": {\n "kind": {\n "oneOf": [\n {\n "additionalProperties": false,\n "properties": {\n "available": {\n "const": false,\n "type": "boolean"\n },\n "reason": {\n "type": "string"\n }\n },\n "required": [\n "available",\n "reason"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "available": {\n "const": true,\n "type": "boolean"\n },\n "call": {\n "type": "boolean"\n },\n "computed": {\n "type": "boolean"\n },\n "conditional": {\n "type": "boolean"\n },\n "data": {\n "type": "boolean"\n },\n "external": {\n "type": "boolean"\n },\n "flow": {\n "type": "boolean"\n },\n "indirect": {\n "type": "boolean"\n },\n "jump": {\n "type": "boolean"\n },\n "operand_index": {\n "maximum": 9007199254740991,\n "minimum": -9007199254740991,\n "type": "integer"\n },\n "primary": {\n "type": "boolean"\n },\n "provenance": {\n "minLength": 1,\n "type": "string"\n },\n "read": {\n "type": "boolean"\n },\n "terminal": {\n "type": "boolean"\n },\n "type": {\n "type": "string"\n },\n "write": {\n "type": "boolean"\n }\n },\n "required": [\n "available",\n "provenance",\n "type",\n "flow",\n "call",\n "jump",\n "data",\n "read",\n "write",\n "indirect",\n "computed",\n "conditional",\n "terminal",\n "primary",\n "operand_index",\n "external"\n ],\n "type": "object"\n }\n ]\n },\n "source_address": {\n "type": "string"\n },\n "source_procedure": {\n "anyOf": [\n {\n "additionalProperties": false,\n "properties": {\n "address": {\n "type": "string"\n },\n "body": {\n "default": {\n "available": false,\n "reason": "The provider did not report complete function body ranges."\n },\n "oneOf": [\n {\n "additionalProperties": false,\n "properties": {\n "available": {\n "const": false,\n "type": "boolean"\n },\n "reason": {\n "type": "string"\n }\n },\n "required": [\n "available",\n "reason"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "available": {\n "const": true,\n "type": "boolean"\n },\n "contains_entry": {\n "type": "boolean"\n },\n "non_contiguous": {\n "type": "boolean"\n },\n "provenance": {\n "minLength": 1,\n "type": "string"\n },\n "ranges": {\n "items": {\n "additionalProperties": false,\n "properties": {\n "end": {\n "description": "Inclusive last address of this observed body range.",\n "type": "string"\n },\n "start": {\n "type": "string"\n }\n },\n "required": [\n "start",\n "end"\n ],\n "type": "object"\n },\n "type": "array"\n },\n "span_bytes": {\n "anyOf": [\n {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n {\n "type": "null"\n }\n ]\n },\n "total_bytes": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "available",\n "provenance",\n "ranges",\n "total_bytes",\n "span_bytes",\n "non_contiguous",\n "contains_entry"\n ],\n "type": "object"\n }\n ]\n },\n "classification": {\n "anyOf": [\n {\n "additionalProperties": false,\n "properties": {\n "external": {\n "type": "boolean"\n },\n "provenance": {\n "minLength": 1,\n "type": "string"\n },\n "thunk": {\n "type": "boolean"\n },\n "thunk_target": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "external",\n "thunk",\n "thunk_target",\n "provenance"\n ],\n "type": "object"\n },\n {\n "type": "null"\n }\n ],\n "default": null\n },\n "name": {\n "type": "string"\n }\n },\n "required": [\n "address",\n "name",\n "classification",\n "body"\n ],\n "type": "object"\n },\n {\n "type": "null"\n }\n ]\n },\n "target_address": {\n "type": "string"\n },\n "target_procedure": {\n "anyOf": [\n {\n "additionalProperties": false,\n "properties": {\n "address": {\n "type": "string"\n },\n "body": {\n "default": {\n "available": false,\n "reason": "The provider did not report complete function body ranges."\n },\n "oneOf": [\n {\n "additionalProperties": false,\n "properties": {\n "available": {\n "const": false,\n "type": "boolean"\n },\n "reason": {\n "type": "string"\n }\n },\n "required": [\n "available",\n "reason"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "available": {\n "const": true,\n "type": "boolean"\n },\n "contains_entry": {\n "type": "boolean"\n },\n "non_contiguous": {\n "type": "boolean"\n },\n "provenance": {\n "minLength": 1,\n "type": "string"\n },\n "ranges": {\n "items": {\n "additionalProperties": false,\n "properties": {\n "end": {\n "description": "Inclusive last address of this observed body range.",\n "type": "string"\n },\n "start": {\n "type": "string"\n }\n },\n "required": [\n "start",\n "end"\n ],\n "type": "object"\n },\n "type": "array"\n },\n "span_bytes": {\n "anyOf": [\n {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n {\n "type": "null"\n }\n ]\n },\n "total_bytes": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "available",\n "provenance",\n "ranges",\n "total_bytes",\n "span_bytes",\n "non_contiguous",\n "contains_entry"\n ],\n "type": "object"\n }\n ]\n },\n "classification": {\n "anyOf": [\n {\n "additionalProperties": false,\n "properties": {\n "external": {\n "type": "boolean"\n },\n "provenance": {\n "minLength": 1,\n "type": "string"\n },\n "thunk": {\n "type": "boolean"\n },\n "thunk_target": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "external",\n "thunk",\n "thunk_target",\n "provenance"\n ],\n "type": "object"\n },\n {\n "type": "null"\n }\n ],\n "default": null\n },\n "name": {\n "type": "string"\n }\n },\n "required": [\n "address",\n "name",\n "classification",\n "body"\n ],\n "type": "object"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "source_address",\n "target_address",\n "source_procedure",\n "target_procedure",\n "kind"\n ],\n "type": "object"\n },\n "type": "array"\n },\n "limitations": {\n "default": [],\n "items": {\n "type": "string"\n },\n "type": "array"\n },\n "native_api": {\n "anyOf": [\n {\n "oneOf": [\n {\n "additionalProperties": false,\n "properties": {\n "available": {\n "const": false,\n "type": "boolean"\n },\n "reason": {\n "minLength": 1,\n "type": "string"\n },\n "residual_unknowns": {\n "items": {\n "minLength": 1,\n "type": "string"\n },\n "minItems": 1,\n "type": "array"\n }\n },\n "required": [\n "available",\n "reason",\n "residual_unknowns"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "available": {\n "const": true,\n "type": "boolean"\n },\n "calling_convention": {\n "minLength": 1,\n "type": "string"\n },\n "decompiler_artifacts": {\n "items": {\n "enum": [\n "recovered-signature",\n "register-and-stack-variables",\n "compiler-generated-control-flow",\n "pointer-arithmetic",\n "pseudocode"\n ],\n "type": "string"\n },\n "type": "array"\n },\n "jump_tables": {\n "items": {\n "additionalProperties": false,\n "properties": {\n "data_sources": {\n "items": {\n "additionalProperties": false,\n "properties": {\n "address": {\n "minLength": 1,\n "type": "string"\n },\n "confidence": {\n "enum": [\n "low",\n "medium",\n "high"\n ],\n "type": "string"\n },\n "entry_count": {\n "anyOf": [\n {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n {\n "type": "null"\n }\n ]\n },\n "entry_size_bytes": {\n "anyOf": [\n {\n "maximum": 9007199254740991,\n "minimum": 1,\n "type": "integer"\n },\n {\n "type": "null"\n }\n ]\n },\n "evidence": {\n "items": {\n "additionalProperties": false,\n "properties": {\n "detail": {\n "minLength": 1,\n "type": "string"\n },\n "kind": {\n "enum": [\n "signature-source",\n "decompiler-type",\n "type-lock",\n "calling-convention",\n "jump-table"\n ],\n "type": "string"\n },\n "source": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "kind",\n "source",\n "detail"\n ],\n "type": "object"\n },\n "minItems": 1,\n "type": "array"\n },\n "provenance": {\n "enum": [\n "ghidra-decompiler-load-table",\n "ghidra-dispatch-block-data-reference",\n "ghidra-aarch64-byte-table",\n "ghidra-aarch64-halfword-table"\n ],\n "type": "string"\n }\n },\n "required": [\n "address",\n "provenance",\n "entry_size_bytes",\n "entry_count",\n "confidence",\n "evidence"\n ],\n "type": "object"\n },\n "type": "array"\n },\n "default_targets": {\n "default": [],\n "items": {\n "additionalProperties": false,\n "properties": {\n "confidence": {\n "enum": [\n "low",\n "medium",\n "high"\n ],\n "type": "string"\n },\n "evidence": {\n "items": {\n "additionalProperties": false,\n "properties": {\n "detail": {\n "minLength": 1,\n "type": "string"\n },\n "kind": {\n "enum": [\n "signature-source",\n "decompiler-type",\n "type-lock",\n "calling-convention",\n "jump-table"\n ],\n "type": "string"\n },\n "source": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "kind",\n "source",\n "detail"\n ],\n "type": "object"\n },\n "minItems": 1,\n "type": "array"\n },\n "target_address": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "target_address",\n "confidence",\n "evidence"\n ],\n "type": "object"\n },\n "type": "array"\n },\n "dispatch_address": {\n "minLength": 1,\n "type": "string"\n },\n "limitations": {\n "items": {\n "type": "string"\n },\n "type": "array"\n },\n "mappings": {\n "items": {\n "additionalProperties": false,\n "properties": {\n "case_value": {\n "anyOf": [\n {\n "maximum": 9007199254740991,\n "minimum": -9007199254740991,\n "type": "integer"\n },\n {\n "type": "null"\n }\n ]\n },\n "confidence": {\n "enum": [\n "low",\n "medium",\n "high"\n ],\n "type": "string"\n },\n "evidence": {\n "items": {\n "additionalProperties": false,\n "properties": {\n "detail": {\n "minLength": 1,\n "type": "string"\n },\n "kind": {\n "enum": [\n "signature-source",\n "decompiler-type",\n "type-lock",\n "calling-convention",\n "jump-table"\n ],\n "type": "string"\n },\n "source": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "kind",\n "source",\n "detail"\n ],\n "type": "object"\n },\n "minItems": 1,\n "type": "array"\n },\n "target_address": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "case_value",\n "target_address",\n "confidence",\n "evidence"\n ],\n "type": "object"\n },\n "type": "array"\n }\n },\n "required": [\n "dispatch_address",\n "data_sources",\n "mappings",\n "default_targets",\n "limitations"\n ],\n "type": "object"\n },\n "type": "array"\n },\n "limitations": {\n "items": {\n "type": "string"\n },\n "type": "array"\n },\n "parameters": {\n "items": {\n "additionalProperties": false,\n "properties": {\n "confidence": {\n "enum": [\n "low",\n "medium",\n "high"\n ],\n "type": "string"\n },\n "data_type": {\n "minLength": 1,\n "type": "string"\n },\n "decompiler_artifacts": {\n "items": {\n "enum": [\n "recovered-signature",\n "register-or-stack-storage",\n "compiler-generated-variable"\n ],\n "type": "string"\n },\n "type": "array"\n },\n "evidence": {\n "items": {\n "additionalProperties": false,\n "properties": {\n "detail": {\n "minLength": 1,\n "type": "string"\n },\n "kind": {\n "enum": [\n "signature-source",\n "decompiler-type",\n "type-lock",\n "calling-convention",\n "jump-table"\n ],\n "type": "string"\n },\n "source": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "kind",\n "source",\n "detail"\n ],\n "type": "object"\n },\n "minItems": 1,\n "type": "array"\n },\n "name": {\n "anyOf": [\n {\n "minLength": 1,\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "ordinal": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "role": {\n "const": "parameter",\n "type": "string"\n },\n "size_bytes": {\n "anyOf": [\n {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n {\n "type": "null"\n }\n ]\n },\n "storage": {\n "anyOf": [\n {\n "minLength": 1,\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "ordinal",\n "name",\n "data_type",\n "size_bytes",\n "storage",\n "confidence",\n "evidence",\n "decompiler_artifacts",\n "role"\n ],\n "type": "object"\n },\n "type": "array"\n },\n "provenance": {\n "minLength": 1,\n "type": "string"\n },\n "pseudocode": {\n "additionalProperties": false,\n "properties": {\n "classification": {\n "const": "decompiler-generated-non-source",\n "type": "string"\n },\n "compilable": {\n "const": false,\n "type": "boolean"\n }\n },\n "required": [\n "classification",\n "compilable"\n ],\n "type": "object"\n },\n "return_type": {\n "additionalProperties": false,\n "properties": {\n "confidence": {\n "enum": [\n "low",\n "medium",\n "high"\n ],\n "type": "string"\n },\n "data_type": {\n "minLength": 1,\n "type": "string"\n },\n "decompiler_artifacts": {\n "items": {\n "enum": [\n "recovered-signature",\n "register-or-stack-storage",\n "compiler-generated-variable"\n ],\n "type": "string"\n },\n "type": "array"\n },\n "evidence": {\n "items": {\n "additionalProperties": false,\n "properties": {\n "detail": {\n "minLength": 1,\n "type": "string"\n },\n "kind": {\n "enum": [\n "signature-source",\n "decompiler-type",\n "type-lock",\n "calling-convention",\n "jump-table"\n ],\n "type": "string"\n },\n "source": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "kind",\n "source",\n "detail"\n ],\n "type": "object"\n },\n "minItems": 1,\n "type": "array"\n },\n "name": {\n "type": "null"\n },\n "ordinal": {\n "type": "null"\n },\n "role": {\n "const": "return",\n "type": "string"\n },\n "size_bytes": {\n "anyOf": [\n {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n {\n "type": "null"\n }\n ]\n },\n "storage": {\n "anyOf": [\n {\n "minLength": 1,\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "ordinal",\n "name",\n "data_type",\n "size_bytes",\n "storage",\n "confidence",\n "evidence",\n "decompiler_artifacts",\n "role"\n ],\n "type": "object"\n },\n "signature_source": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "available",\n "provenance",\n "signature_source",\n "calling_convention",\n "return_type",\n "parameters",\n "jump_tables",\n "pseudocode",\n "decompiler_artifacts",\n "limitations"\n ],\n "type": "object"\n }\n ]\n },\n {\n "type": "null"\n }\n ],\n "default": null\n },\n "native_value_flow": {\n "anyOf": [\n {\n "oneOf": [\n {\n "additionalProperties": false,\n "properties": {\n "available": {\n "const": true,\n "type": "boolean"\n },\n "def_use": {\n "items": {\n "additionalProperties": false,\n "properties": {\n "definition": {\n "minLength": 1,\n "type": "string"\n },\n "input_index": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "use": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "definition",\n "use",\n "input_index"\n ],\n "type": "object"\n },\n "type": "array"\n },\n "effects": {\n "items": {\n "additionalProperties": false,\n "properties": {\n "kind": {\n "enum": [\n "memory_read",\n "memory_write",\n "conditional_branch",\n "indirect_branch",\n "direct_call",\n "indirect_call"\n ],\n "type": "string"\n },\n "operand_input": {\n "anyOf": [\n {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n {\n "type": "null"\n }\n ]\n },\n "operation": {\n "minLength": 1,\n "type": "string"\n },\n "value_input": {\n "anyOf": [\n {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "operation",\n "kind",\n "operand_input",\n "value_input"\n ],\n "type": "object"\n },\n "type": "array"\n },\n "known_omitted_edges": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "known_omitted_inputs": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "limitations": {\n "items": {\n "minLength": 1,\n "type": "string"\n },\n "type": "array"\n },\n "omitted_operations_lower_bound": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "operations": {\n "items": {\n "additionalProperties": false,\n "properties": {\n "address": {\n "minLength": 1,\n "type": "string"\n },\n "block_membership": {\n "default": "unavailable",\n "enum": [\n "member",\n "detached",\n "unavailable"\n ],\n "type": "string"\n },\n "id": {\n "minLength": 1,\n "type": "string"\n },\n "inputs": {\n "items": {\n "additionalProperties": false,\n "properties": {\n "constant_hex": {\n "anyOf": [\n {\n "pattern": "^[0-9a-f]+$",\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "kind": {\n "enum": [\n "constant",\n "address",\n "register",\n "unique",\n "other"\n ],\n "type": "string"\n },\n "location": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "size_bytes": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "kind",\n "size_bytes",\n "location",\n "constant_hex"\n ],\n "type": "object"\n },\n "type": "array"\n },\n "is_dead": {\n "type": "boolean"\n },\n "opcode": {\n "minLength": 1,\n "type": "string"\n },\n "output": {\n "anyOf": [\n {\n "additionalProperties": false,\n "properties": {\n "constant_hex": {\n "anyOf": [\n {\n "pattern": "^[0-9a-f]+$",\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "kind": {\n "enum": [\n "constant",\n "address",\n "register",\n "unique",\n "other"\n ],\n "type": "string"\n },\n "location": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "size_bytes": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "kind",\n "size_bytes",\n "location",\n "constant_hex"\n ],\n "type": "object"\n },\n {\n "type": "null"\n }\n ]\n },\n "sequence": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "id",\n "address",\n "sequence",\n "opcode",\n "is_dead",\n "block_membership",\n "inputs",\n "output"\n ],\n "type": "object"\n },\n "type": "array"\n },\n "parameter_uses": {\n "default": [],\n "items": {\n "additionalProperties": false,\n "properties": {\n "input_index": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "ordinal": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "use": {\n "type": "string"\n }\n },\n "required": [\n "ordinal",\n "use",\n "input_index"\n ],\n "type": "object"\n },\n "type": "array"\n },\n "parameters": {\n "default": [],\n "items": {\n "additionalProperties": false,\n "properties": {\n "data_type": {\n "type": "string"\n },\n "name": {\n "type": "string"\n },\n "ordinal": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "ordinal",\n "name",\n "data_type"\n ],\n "type": "object"\n },\n "type": "array"\n },\n "provenance": {\n "const": "ghidra-high-pcode",\n "type": "string"\n },\n "truncated": {\n "type": "boolean"\n }\n },\n "required": [\n "available",\n "provenance",\n "operations",\n "def_use",\n "effects",\n "parameters",\n "parameter_uses",\n "truncated",\n "omitted_operations_lower_bound",\n "known_omitted_inputs",\n "known_omitted_edges",\n "limitations"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "available": {\n "const": false,\n "type": "boolean"\n },\n "limitations": {\n "items": {\n "minLength": 1,\n "type": "string"\n },\n "type": "array"\n },\n "reason": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "available",\n "reason",\n "limitations"\n ],\n "type": "object"\n }\n ]\n },\n {\n "type": "null"\n }\n ],\n "default": null\n },\n "outgoing_references": {\n "items": {\n "additionalProperties": false,\n "properties": {\n "kind": {\n "oneOf": [\n {\n "additionalProperties": false,\n "properties": {\n "available": {\n "const": false,\n "type": "boolean"\n },\n "reason": {\n "type": "string"\n }\n },\n "required": [\n "available",\n "reason"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "available": {\n "const": true,\n "type": "boolean"\n },\n "call": {\n "type": "boolean"\n },\n "computed": {\n "type": "boolean"\n },\n "conditional": {\n "type": "boolean"\n },\n "data": {\n "type": "boolean"\n },\n "external": {\n "type": "boolean"\n },\n "flow": {\n "type": "boolean"\n },\n "indirect": {\n "type": "boolean"\n },\n "jump": {\n "type": "boolean"\n },\n "operand_index": {\n "maximum": 9007199254740991,\n "minimum": -9007199254740991,\n "type": "integer"\n },\n "primary": {\n "type": "boolean"\n },\n "provenance": {\n "minLength": 1,\n "type": "string"\n },\n "read": {\n "type": "boolean"\n },\n "terminal": {\n "type": "boolean"\n },\n "type": {\n "type": "string"\n },\n "write": {\n "type": "boolean"\n }\n },\n "required": [\n "available",\n "provenance",\n "type",\n "flow",\n "call",\n "jump",\n "data",\n "read",\n "write",\n "indirect",\n "computed",\n "conditional",\n "terminal",\n "primary",\n "operand_index",\n "external"\n ],\n "type": "object"\n }\n ]\n },\n "source_address": {\n "type": "string"\n },\n "source_procedure": {\n "anyOf": [\n {\n "additionalProperties": false,\n "properties": {\n "address": {\n "type": "string"\n },\n "body": {\n "default": {\n "available": false,\n "reason": "The provider did not report complete function body ranges."\n },\n "oneOf": [\n {\n "additionalProperties": false,\n "properties": {\n "available": {\n "const": false,\n "type": "boolean"\n },\n "reason": {\n "type": "string"\n }\n },\n "required": [\n "available",\n "reason"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "available": {\n "const": true,\n "type": "boolean"\n },\n "contains_entry": {\n "type": "boolean"\n },\n "non_contiguous": {\n "type": "boolean"\n },\n "provenance": {\n "minLength": 1,\n "type": "string"\n },\n "ranges": {\n "items": {\n "additionalProperties": false,\n "properties": {\n "end": {\n "description": "Inclusive last address of this observed body range.",\n "type": "string"\n },\n "start": {\n "type": "string"\n }\n },\n "required": [\n "start",\n "end"\n ],\n "type": "object"\n },\n "type": "array"\n },\n "span_bytes": {\n "anyOf": [\n {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n {\n "type": "null"\n }\n ]\n },\n "total_bytes": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "available",\n "provenance",\n "ranges",\n "total_bytes",\n "span_bytes",\n "non_contiguous",\n "contains_entry"\n ],\n "type": "object"\n }\n ]\n },\n "classification": {\n "anyOf": [\n {\n "additionalProperties": false,\n "properties": {\n "external": {\n "type": "boolean"\n },\n "provenance": {\n "minLength": 1,\n "type": "string"\n },\n "thunk": {\n "type": "boolean"\n },\n "thunk_target": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "external",\n "thunk",\n "thunk_target",\n "provenance"\n ],\n "type": "object"\n },\n {\n "type": "null"\n }\n ],\n "default": null\n },\n "name": {\n "type": "string"\n }\n },\n "required": [\n "address",\n "name",\n "classification",\n "body"\n ],\n "type": "object"\n },\n {\n "type": "null"\n }\n ]\n },\n "target_address": {\n "type": "string"\n },\n "target_procedure": {\n "anyOf": [\n {\n "additionalProperties": false,\n "properties": {\n "address": {\n "type": "string"\n },\n "body": {\n "default": {\n "available": false,\n "reason": "The provider did not report complete function body ranges."\n },\n "oneOf": [\n {\n "additionalProperties": false,\n "properties": {\n "available": {\n "const": false,\n "type": "boolean"\n },\n "reason": {\n "type": "string"\n }\n },\n "required": [\n "available",\n "reason"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "available": {\n "const": true,\n "type": "boolean"\n },\n "contains_entry": {\n "type": "boolean"\n },\n "non_contiguous": {\n "type": "boolean"\n },\n "provenance": {\n "minLength": 1,\n "type": "string"\n },\n "ranges": {\n "items": {\n "additionalProperties": false,\n "properties": {\n "end": {\n "description": "Inclusive last address of this observed body range.",\n "type": "string"\n },\n "start": {\n "type": "string"\n }\n },\n "required": [\n "start",\n "end"\n ],\n "type": "object"\n },\n "type": "array"\n },\n "span_bytes": {\n "anyOf": [\n {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n {\n "type": "null"\n }\n ]\n },\n "total_bytes": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "available",\n "provenance",\n "ranges",\n "total_bytes",\n "span_bytes",\n "non_contiguous",\n "contains_entry"\n ],\n "type": "object"\n }\n ]\n },\n "classification": {\n "anyOf": [\n {\n "additionalProperties": false,\n "properties": {\n "external": {\n "type": "boolean"\n },\n "provenance": {\n "minLength": 1,\n "type": "string"\n },\n "thunk": {\n "type": "boolean"\n },\n "thunk_target": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "external",\n "thunk",\n "thunk_target",\n "provenance"\n ],\n "type": "object"\n },\n {\n "type": "null"\n }\n ],\n "default": null\n },\n "name": {\n "type": "string"\n }\n },\n "required": [\n "address",\n "name",\n "classification",\n "body"\n ],\n "type": "object"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "source_address",\n "target_address",\n "source_procedure",\n "target_procedure",\n "kind"\n ],\n "type": "object"\n },\n "type": "array"\n },\n "procedure": {\n "additionalProperties": false,\n "properties": {\n "address": {\n "type": "string"\n },\n "body": {\n "default": {\n "available": false,\n "reason": "The provider did not report complete function body ranges."\n },\n "oneOf": [\n {\n "additionalProperties": false,\n "properties": {\n "available": {\n "const": false,\n "type": "boolean"\n },\n "reason": {\n "type": "string"\n }\n },\n "required": [\n "available",\n "reason"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "available": {\n "const": true,\n "type": "boolean"\n },\n "contains_entry": {\n "type": "boolean"\n },\n "non_contiguous": {\n "type": "boolean"\n },\n "provenance": {\n "minLength": 1,\n "type": "string"\n },\n "ranges": {\n "items": {\n "additionalProperties": false,\n "properties": {\n "end": {\n "description": "Inclusive last address of this observed body range.",\n "type": "string"\n },\n "start": {\n "type": "string"\n }\n },\n "required": [\n "start",\n "end"\n ],\n "type": "object"\n },\n "type": "array"\n },\n "span_bytes": {\n "anyOf": [\n {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n {\n "type": "null"\n }\n ]\n },\n "total_bytes": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "available",\n "provenance",\n "ranges",\n "total_bytes",\n "span_bytes",\n "non_contiguous",\n "contains_entry"\n ],\n "type": "object"\n }\n ]\n },\n "classification": {\n "anyOf": [\n {\n "additionalProperties": false,\n "properties": {\n "external": {\n "type": "boolean"\n },\n "provenance": {\n "minLength": 1,\n "type": "string"\n },\n "thunk": {\n "type": "boolean"\n },\n "thunk_target": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "external",\n "thunk",\n "thunk_target",\n "provenance"\n ],\n "type": "object"\n },\n {\n "type": "null"\n }\n ],\n "default": null\n },\n "locals": {\n "items": {\n "additionalProperties": false,\n "properties": {\n "description": {\n "type": "string"\n },\n "provenance": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "description",\n "provenance"\n ],\n "type": "object"\n },\n "type": "array"\n },\n "name": {\n "type": "string"\n },\n "signature": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "address",\n "name",\n "classification",\n "body",\n "signature",\n "locals"\n ],\n "type": "object"\n },\n "pseudocode": {\n "type": "string"\n },\n "referenced_names": {\n "items": {\n "additionalProperties": false,\n "properties": {\n "address": {\n "type": "string"\n },\n "source_address": {\n "type": "string"\n },\n "value": {\n "type": "string"\n }\n },\n "required": [\n "address",\n "value",\n "source_address"\n ],\n "type": "object"\n },\n "type": "array"\n },\n "referenced_strings": {\n "items": {\n "additionalProperties": false,\n "properties": {\n "address": {\n "type": "string"\n },\n "source_address": {\n "type": "string"\n },\n "value": {\n "type": "string"\n }\n },\n "required": [\n "address",\n "value",\n "source_address"\n ],\n "type": "object"\n },\n "type": "array"\n }\n },\n "required": [\n "procedure",\n "pseudocode",\n "assembly",\n "comments",\n "callers",\n "callees",\n "incoming_references",\n "outgoing_references",\n "referenced_strings",\n "referenced_names",\n "basic_blocks",\n "native_api",\n "native_value_flow",\n "limitations"\n ],\n "type": "object"\n }\n },\n "required": [\n "result",\n "evidence_id",\n "evidence"\n ],\n "type": "object"\n },\n "requiresSession": false,\n "title": "Analyze Function"\n },\n {\n "analysisOperation": "inspect_native_api",\n "annotations": {\n "destructiveHint": false,\n "idempotentHint": false,\n "openWorldHint": false,\n "readOnlyHint": false\n },\n "description": "Analyze a native API boundary in one function identified by symbol or provider-returned address. Returns confidence, evidence, jump-table dispatch/data/case mappings, separately evidenced default targets, unsupported branches, and residual unknowns. Null case values mean unresolved cases, never a known default.",\n "effects": {\n "accessesNetwork": false,\n "changesUiState": false,\n "idempotent": false,\n "launchesProcess": false,\n "mayDiscardData": false,\n "mutatesSession": true,\n "mutatesTarget": false,\n "writesFilesystem": false\n },\n "inputSchema": {\n "$schema": "https://json-schema.org/draft/2020-12/schema",\n "additionalProperties": false,\n "examples": [\n {\n "procedure": "main"\n }\n ],\n "properties": {\n "procedure": {\n "description": "A procedure name or address",\n "type": "string"\n }\n },\n "required": [\n "procedure"\n ],\n "type": "object"\n },\n "kind": "enhanced",\n "name": "inspect_native_api",\n "outputSchema": {\n "$defs": {\n "__schema0": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "number"\n },\n {\n "type": "boolean"\n },\n {\n "type": "null"\n },\n {\n "items": {\n "$ref": "#/$defs/__schema0"\n },\n "type": "array"\n },\n {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n }\n ]\n }\n },\n "$schema": "https://json-schema.org/draft/2020-12/schema",\n "additionalProperties": false,\n "properties": {\n "evidence": {\n "additionalProperties": false,\n "properties": {\n "analysis_profile": {\n "additionalProperties": false,\n "properties": {\n "digest": {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n },\n "parameters": {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n },\n "provider": {\n "additionalProperties": false,\n "properties": {\n "id": {\n "minLength": 1,\n "type": "string"\n },\n "name": {\n "minLength": 1,\n "type": "string"\n },\n "version": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "id",\n "name",\n "version"\n ],\n "type": "object"\n }\n },\n "required": [\n "provider",\n "parameters",\n "digest"\n ],\n "type": "object"\n },\n "authority": {\n "enum": [\n "shipped-artifact",\n "controlled-replay",\n "historical-reference",\n "external-service",\n "analyst-inference"\n ],\n "type": "string"\n },\n "confidence": {\n "enum": [\n "observed",\n "derived",\n "inferred"\n ],\n "type": "string"\n },\n "environment": {\n "anyOf": [\n {\n "additionalProperties": false,\n "properties": {\n "architecture": {\n "minLength": 1,\n "type": "string"\n },\n "id": {\n "minLength": 1,\n "type": "string"\n },\n "isolation": {\n "enum": [\n "none",\n "process",\n "container",\n "virtual-machine"\n ],\n "type": "string"\n },\n "platform": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "id",\n "platform",\n "architecture",\n "isolation"\n ],\n "type": "object"\n },\n {\n "type": "null"\n }\n ]\n },\n "evidence_id": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "evidence_links": {\n "items": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "type": "array"\n },\n "limitations": {\n "items": {\n "type": "string"\n },\n "type": "array"\n },\n "locations": {\n "items": {\n "oneOf": [\n {\n "additionalProperties": false,\n "properties": {\n "address": {\n "minLength": 1,\n "type": "string"\n },\n "kind": {\n "const": "address",\n "type": "string"\n }\n },\n "required": [\n "kind",\n "address"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "end": {\n "minLength": 1,\n "type": "string"\n },\n "kind": {\n "const": "address-range",\n "type": "string"\n },\n "start": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "kind",\n "start",\n "end"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "kind": {\n "const": "artifact-path",\n "type": "string"\n },\n "path": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "kind",\n "path"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "kind": {\n "const": "file-offset",\n "type": "string"\n },\n "offset": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "kind",\n "offset"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "end": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "kind": {\n "const": "file-offset-range",\n "type": "string"\n },\n "start": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "kind",\n "start",\n "end"\n ],\n "type": "object"\n }\n ]\n },\n "type": "array"\n },\n "normalized_result": {\n "$ref": "#/$defs/__schema0"\n },\n "operation": {\n "minLength": 1,\n "type": "string"\n },\n "parameters": {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n },\n "predicate_type": {\n "minLength": 1,\n "type": "string"\n },\n "provider": {\n "additionalProperties": false,\n "properties": {\n "id": {\n "minLength": 1,\n "type": "string"\n },\n "name": {\n "minLength": 1,\n "type": "string"\n },\n "version": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "id",\n "name",\n "version"\n ],\n "type": "object"\n },\n "raw_result": {\n "anyOf": [\n {\n "$ref": "#/$defs/__schema0"\n },\n {\n "type": "null"\n }\n ]\n },\n "subject": {\n "anyOf": [\n {\n "additionalProperties": false,\n "properties": {\n "architecture": {\n "anyOf": [\n {\n "enum": [\n "x86",\n "x86_64",\n "arm",\n "arm64"\n ],\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "digest": {\n "additionalProperties": false,\n "properties": {\n "sha256": {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n }\n },\n "required": [\n "sha256"\n ],\n "type": "object"\n },\n "format": {\n "enum": [\n "hopper",\n "analysis-database",\n "mach-o",\n "elf",\n "pe",\n "dos-mz",\n "dos-com",\n "zip",\n "ipa",\n "apk",\n "msix",\n "appx",\n "asar",\n "dmg",\n "pkg",\n "plist",\n "javascript",\n "source-map",\n "directory",\n "file",\n "unknown",\n "mach-o-universal",\n "javascript-bundle",\n "entitlements"\n ],\n "type": "string"\n },\n "local_path": {\n "type": "string"\n },\n "name": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "name",\n "digest",\n "format",\n "architecture",\n "local_path"\n ],\n "type": "object"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "evidence_id",\n "subject",\n "provider",\n "predicate_type",\n "operation",\n "parameters",\n "raw_result",\n "normalized_result",\n "confidence",\n "authority",\n "environment",\n "limitations",\n "locations",\n "evidence_links"\n ],\n "type": "object"\n },\n "evidence_id": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "result": {\n "additionalProperties": false,\n "properties": {\n "boundary": {\n "oneOf": [\n {\n "additionalProperties": false,\n "properties": {\n "available": {\n "const": false,\n "type": "boolean"\n },\n "reason": {\n "minLength": 1,\n "type": "string"\n },\n "residual_unknowns": {\n "items": {\n "minLength": 1,\n "type": "string"\n },\n "minItems": 1,\n "type": "array"\n }\n },\n "required": [\n "available",\n "reason",\n "residual_unknowns"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "available": {\n "const": true,\n "type": "boolean"\n },\n "calling_convention": {\n "minLength": 1,\n "type": "string"\n },\n "decompiler_artifacts": {\n "items": {\n "enum": [\n "recovered-signature",\n "register-and-stack-variables",\n "compiler-generated-control-flow",\n "pointer-arithmetic",\n "pseudocode"\n ],\n "type": "string"\n },\n "type": "array"\n },\n "jump_tables": {\n "items": {\n "additionalProperties": false,\n "properties": {\n "data_sources": {\n "items": {\n "additionalProperties": false,\n "properties": {\n "address": {\n "minLength": 1,\n "type": "string"\n },\n "confidence": {\n "enum": [\n "low",\n "medium",\n "high"\n ],\n "type": "string"\n },\n "entry_count": {\n "anyOf": [\n {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n {\n "type": "null"\n }\n ]\n },\n "entry_size_bytes": {\n "anyOf": [\n {\n "maximum": 9007199254740991,\n "minimum": 1,\n "type": "integer"\n },\n {\n "type": "null"\n }\n ]\n },\n "evidence": {\n "items": {\n "additionalProperties": false,\n "properties": {\n "detail": {\n "minLength": 1,\n "type": "string"\n },\n "kind": {\n "enum": [\n "signature-source",\n "decompiler-type",\n "type-lock",\n "calling-convention",\n "jump-table"\n ],\n "type": "string"\n },\n "source": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "kind",\n "source",\n "detail"\n ],\n "type": "object"\n },\n "minItems": 1,\n "type": "array"\n },\n "provenance": {\n "enum": [\n "ghidra-decompiler-load-table",\n "ghidra-dispatch-block-data-reference",\n "ghidra-aarch64-byte-table",\n "ghidra-aarch64-halfword-table"\n ],\n "type": "string"\n }\n },\n "required": [\n "address",\n "provenance",\n "entry_size_bytes",\n "entry_count",\n "confidence",\n "evidence"\n ],\n "type": "object"\n },\n "type": "array"\n },\n "default_targets": {\n "default": [],\n "items": {\n "additionalProperties": false,\n "properties": {\n "confidence": {\n "enum": [\n "low",\n "medium",\n "high"\n ],\n "type": "string"\n },\n "evidence": {\n "items": {\n "additionalProperties": false,\n "properties": {\n "detail": {\n "minLength": 1,\n "type": "string"\n },\n "kind": {\n "enum": [\n "signature-source",\n "decompiler-type",\n "type-lock",\n "calling-convention",\n "jump-table"\n ],\n "type": "string"\n },\n "source": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "kind",\n "source",\n "detail"\n ],\n "type": "object"\n },\n "minItems": 1,\n "type": "array"\n },\n "target_address": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "target_address",\n "confidence",\n "evidence"\n ],\n "type": "object"\n },\n "type": "array"\n },\n "dispatch_address": {\n "minLength": 1,\n "type": "string"\n },\n "limitations": {\n "items": {\n "type": "string"\n },\n "type": "array"\n },\n "mappings": {\n "items": {\n "additionalProperties": false,\n "properties": {\n "case_value": {\n "anyOf": [\n {\n "maximum": 9007199254740991,\n "minimum": -9007199254740991,\n "type": "integer"\n },\n {\n "type": "null"\n }\n ]\n },\n "confidence": {\n "enum": [\n "low",\n "medium",\n "high"\n ],\n "type": "string"\n },\n "evidence": {\n "items": {\n "additionalProperties": false,\n "properties": {\n "detail": {\n "minLength": 1,\n "type": "string"\n },\n "kind": {\n "enum": [\n "signature-source",\n "decompiler-type",\n "type-lock",\n "calling-convention",\n "jump-table"\n ],\n "type": "string"\n },\n "source": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "kind",\n "source",\n "detail"\n ],\n "type": "object"\n },\n "minItems": 1,\n "type": "array"\n },\n "target_address": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "case_value",\n "target_address",\n "confidence",\n "evidence"\n ],\n "type": "object"\n },\n "type": "array"\n }\n },\n "required": [\n "dispatch_address",\n "data_sources",\n "mappings",\n "default_targets",\n "limitations"\n ],\n "type": "object"\n },\n "type": "array"\n },\n "limitations": {\n "items": {\n "type": "string"\n },\n "type": "array"\n },\n "parameters": {\n "items": {\n "additionalProperties": false,\n "properties": {\n "confidence": {\n "enum": [\n "low",\n "medium",\n "high"\n ],\n "type": "string"\n },\n "data_type": {\n "minLength": 1,\n "type": "string"\n },\n "decompiler_artifacts": {\n "items": {\n "enum": [\n "recovered-signature",\n "register-or-stack-storage",\n "compiler-generated-variable"\n ],\n "type": "string"\n },\n "type": "array"\n },\n "evidence": {\n "items": {\n "additionalProperties": false,\n "properties": {\n "detail": {\n "minLength": 1,\n "type": "string"\n },\n "kind": {\n "enum": [\n "signature-source",\n "decompiler-type",\n "type-lock",\n "calling-convention",\n "jump-table"\n ],\n "type": "string"\n },\n "source": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "kind",\n "source",\n "detail"\n ],\n "type": "object"\n },\n "minItems": 1,\n "type": "array"\n },\n "name": {\n "anyOf": [\n {\n "minLength": 1,\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "ordinal": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "role": {\n "const": "parameter",\n "type": "string"\n },\n "size_bytes": {\n "anyOf": [\n {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n {\n "type": "null"\n }\n ]\n },\n "storage": {\n "anyOf": [\n {\n "minLength": 1,\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "ordinal",\n "name",\n "data_type",\n "size_bytes",\n "storage",\n "confidence",\n "evidence",\n "decompiler_artifacts",\n "role"\n ],\n "type": "object"\n },\n "type": "array"\n },\n "provenance": {\n "minLength": 1,\n "type": "string"\n },\n "pseudocode": {\n "additionalProperties": false,\n "properties": {\n "classification": {\n "const": "decompiler-generated-non-source",\n "type": "string"\n },\n "compilable": {\n "const": false,\n "type": "boolean"\n }\n },\n "required": [\n "classification",\n "compilable"\n ],\n "type": "object"\n },\n "return_type": {\n "additionalProperties": false,\n "properties": {\n "confidence": {\n "enum": [\n "low",\n "medium",\n "high"\n ],\n "type": "string"\n },\n "data_type": {\n "minLength": 1,\n "type": "string"\n },\n "decompiler_artifacts": {\n "items": {\n "enum": [\n "recovered-signature",\n "register-or-stack-storage",\n "compiler-generated-variable"\n ],\n "type": "string"\n },\n "type": "array"\n },\n "evidence": {\n "items": {\n "additionalProperties": false,\n "properties": {\n "detail": {\n "minLength": 1,\n "type": "string"\n },\n "kind": {\n "enum": [\n "signature-source",\n "decompiler-type",\n "type-lock",\n "calling-convention",\n "jump-table"\n ],\n "type": "string"\n },\n "source": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "kind",\n "source",\n "detail"\n ],\n "type": "object"\n },\n "minItems": 1,\n "type": "array"\n },\n "name": {\n "type": "null"\n },\n "ordinal": {\n "type": "null"\n },\n "role": {\n "const": "return",\n "type": "string"\n },\n "size_bytes": {\n "anyOf": [\n {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n {\n "type": "null"\n }\n ]\n },\n "storage": {\n "anyOf": [\n {\n "minLength": 1,\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "ordinal",\n "name",\n "data_type",\n "size_bytes",\n "storage",\n "confidence",\n "evidence",\n "decompiler_artifacts",\n "role"\n ],\n "type": "object"\n },\n "signature_source": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "available",\n "provenance",\n "signature_source",\n "calling_convention",\n "return_type",\n "parameters",\n "jump_tables",\n "pseudocode",\n "decompiler_artifacts",\n "limitations"\n ],\n "type": "object"\n }\n ]\n },\n "procedure": {\n "additionalProperties": false,\n "properties": {\n "address": {\n "minLength": 1,\n "type": "string"\n },\n "name": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "address",\n "name"\n ],\n "type": "object"\n },\n "residual_unknowns": {\n "items": {\n "minLength": 1,\n "type": "string"\n },\n "type": "array"\n },\n "substeps": {\n "items": {\n "additionalProperties": false,\n "properties": {\n "observations": {\n "items": {\n "minLength": 1,\n "type": "string"\n },\n "type": "array"\n },\n "operation": {\n "enum": [\n "analyze_function",\n "project_native_api_boundary",\n "preserve_residual_unknowns"\n ],\n "type": "string"\n },\n "status": {\n "enum": [\n "completed",\n "unsupported"\n ],\n "type": "string"\n }\n },\n "required": [\n "operation",\n "status",\n "observations"\n ],\n "type": "object"\n },\n "maxItems": 3,\n "minItems": 3,\n "type": "array"\n },\n "unsupported_branches": {\n "items": {\n "minLength": 1,\n "type": "string"\n },\n "type": "array"\n }\n },\n "required": [\n "procedure",\n "boundary",\n "substeps",\n "unsupported_branches",\n "residual_unknowns"\n ],\n "type": "object"\n }\n },\n "required": [\n "result",\n "evidence_id",\n "evidence"\n ],\n "type": "object"\n },\n "requiresSession": false,\n "title": "Inspect Native Api"\n },\n {\n "analysisOperation": "trace_feature",\n "annotations": {\n "destructiveHint": false,\n "idempotentHint": false,\n "openWorldHint": false,\n "readOnlyHint": false\n },\n "description": "Trace a literal feature query through every matching string and procedure, their xrefs, and truthful containing-procedure resolution. Returns observations, operation count, and residual unknowns without inferring reference kinds.",\n "effects": {\n "accessesNetwork": false,\n "changesUiState": false,\n "idempotent": false,\n "launchesProcess": false,\n "mayDiscardData": false,\n "mutatesSession": true,\n "mutatesTarget": false,\n "writesFilesystem": false\n },\n "inputSchema": {\n "$schema": "https://json-schema.org/draft/2020-12/schema",\n "additionalProperties": false,\n "examples": [\n {\n "case_sensitive": false,\n "query": "license"\n }\n ],\n "properties": {\n "case_sensitive": {\n "default": false,\n "description": "Whether text matching distinguishes uppercase and lowercase.",\n "type": "boolean"\n },\n "query": {\n "description": "Non-empty feature or text query to investigate.",\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "query"\n ],\n "type": "object"\n },\n "kind": "enhanced",\n "name": "trace_feature",\n "outputSchema": {\n "$defs": {\n "__schema0": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "number"\n },\n {\n "type": "boolean"\n },\n {\n "type": "null"\n },\n {\n "items": {\n "$ref": "#/$defs/__schema0"\n },\n "type": "array"\n },\n {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n }\n ]\n }\n },\n "$schema": "https://json-schema.org/draft/2020-12/schema",\n "additionalProperties": false,\n "properties": {\n "evidence": {\n "additionalProperties": false,\n "properties": {\n "analysis_profile": {\n "additionalProperties": false,\n "properties": {\n "digest": {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n },\n "parameters": {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n },\n "provider": {\n "additionalProperties": false,\n "properties": {\n "id": {\n "minLength": 1,\n "type": "string"\n },\n "name": {\n "minLength": 1,\n "type": "string"\n },\n "version": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "id",\n "name",\n "version"\n ],\n "type": "object"\n }\n },\n "required": [\n "provider",\n "parameters",\n "digest"\n ],\n "type": "object"\n },\n "authority": {\n "enum": [\n "shipped-artifact",\n "controlled-replay",\n "historical-reference",\n "external-service",\n "analyst-inference"\n ],\n "type": "string"\n },\n "confidence": {\n "enum": [\n "observed",\n "derived",\n "inferred"\n ],\n "type": "string"\n },\n "environment": {\n "anyOf": [\n {\n "additionalProperties": false,\n "properties": {\n "architecture": {\n "minLength": 1,\n "type": "string"\n },\n "id": {\n "minLength": 1,\n "type": "string"\n },\n "isolation": {\n "enum": [\n "none",\n "process",\n "container",\n "virtual-machine"\n ],\n "type": "string"\n },\n "platform": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "id",\n "platform",\n "architecture",\n "isolation"\n ],\n "type": "object"\n },\n {\n "type": "null"\n }\n ]\n },\n "evidence_id": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "evidence_links": {\n "items": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "type": "array"\n },\n "limitations": {\n "items": {\n "type": "string"\n },\n "type": "array"\n },\n "locations": {\n "items": {\n "oneOf": [\n {\n "additionalProperties": false,\n "properties": {\n "address": {\n "minLength": 1,\n "type": "string"\n },\n "kind": {\n "const": "address",\n "type": "string"\n }\n },\n "required": [\n "kind",\n "address"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "end": {\n "minLength": 1,\n "type": "string"\n },\n "kind": {\n "const": "address-range",\n "type": "string"\n },\n "start": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "kind",\n "start",\n "end"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "kind": {\n "const": "artifact-path",\n "type": "string"\n },\n "path": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "kind",\n "path"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "kind": {\n "const": "file-offset",\n "type": "string"\n },\n "offset": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "kind",\n "offset"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "end": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "kind": {\n "const": "file-offset-range",\n "type": "string"\n },\n "start": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "kind",\n "start",\n "end"\n ],\n "type": "object"\n }\n ]\n },\n "type": "array"\n },\n "normalized_result": {\n "$ref": "#/$defs/__schema0"\n },\n "operation": {\n "minLength": 1,\n "type": "string"\n },\n "parameters": {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n },\n "predicate_type": {\n "minLength": 1,\n "type": "string"\n },\n "provider": {\n "additionalProperties": false,\n "properties": {\n "id": {\n "minLength": 1,\n "type": "string"\n },\n "name": {\n "minLength": 1,\n "type": "string"\n },\n "version": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "id",\n "name",\n "version"\n ],\n "type": "object"\n },\n "raw_result": {\n "anyOf": [\n {\n "$ref": "#/$defs/__schema0"\n },\n {\n "type": "null"\n }\n ]\n },\n "subject": {\n "anyOf": [\n {\n "additionalProperties": false,\n "properties": {\n "architecture": {\n "anyOf": [\n {\n "enum": [\n "x86",\n "x86_64",\n "arm",\n "arm64"\n ],\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "digest": {\n "additionalProperties": false,\n "properties": {\n "sha256": {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n }\n },\n "required": [\n "sha256"\n ],\n "type": "object"\n },\n "format": {\n "enum": [\n "hopper",\n "analysis-database",\n "mach-o",\n "elf",\n "pe",\n "dos-mz",\n "dos-com",\n "zip",\n "ipa",\n "apk",\n "msix",\n "appx",\n "asar",\n "dmg",\n "pkg",\n "plist",\n "javascript",\n "source-map",\n "directory",\n "file",\n "unknown",\n "mach-o-universal",\n "javascript-bundle",\n "entitlements"\n ],\n "type": "string"\n },\n "local_path": {\n "type": "string"\n },\n "name": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "name",\n "digest",\n "format",\n "architecture",\n "local_path"\n ],\n "type": "object"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "evidence_id",\n "subject",\n "provider",\n "predicate_type",\n "operation",\n "parameters",\n "raw_result",\n "normalized_result",\n "confidence",\n "authority",\n "environment",\n "limitations",\n "locations",\n "evidence_links"\n ],\n "type": "object"\n },\n "evidence_id": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "result": {\n "additionalProperties": false,\n "properties": {\n "matches": {\n "items": {\n "additionalProperties": false,\n "properties": {\n "address": {\n "type": "string"\n },\n "type": {\n "enum": [\n "string",\n "procedure"\n ],\n "type": "string"\n },\n "value": {\n "type": "string"\n }\n },\n "required": [\n "type",\n "address",\n "value"\n ],\n "type": "object"\n },\n "type": "array"\n },\n "query": {\n "type": "string"\n },\n "references": {\n "items": {\n "additionalProperties": false,\n "properties": {\n "containing_procedure": {\n "oneOf": [\n {\n "additionalProperties": false,\n "properties": {\n "found": {\n "const": true,\n "type": "boolean"\n },\n "procedure": {\n "additionalProperties": false,\n "properties": {\n "address": {\n "type": "string"\n },\n "body": {\n "default": {\n "available": false,\n "reason": "The provider did not report complete function body ranges."\n },\n "oneOf": [\n {\n "additionalProperties": false,\n "properties": {\n "available": {\n "const": false,\n "type": "boolean"\n },\n "reason": {\n "type": "string"\n }\n },\n "required": [\n "available",\n "reason"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "available": {\n "const": true,\n "type": "boolean"\n },\n "contains_entry": {\n "type": "boolean"\n },\n "non_contiguous": {\n "type": "boolean"\n },\n "provenance": {\n "minLength": 1,\n "type": "string"\n },\n "ranges": {\n "items": {\n "additionalProperties": false,\n "properties": {\n "end": {\n "description": "Inclusive last address of this observed body range.",\n "type": "string"\n },\n "start": {\n "type": "string"\n }\n },\n "required": [\n "start",\n "end"\n ],\n "type": "object"\n },\n "type": "array"\n },\n "span_bytes": {\n "anyOf": [\n {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n {\n "type": "null"\n }\n ]\n },\n "total_bytes": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "available",\n "provenance",\n "ranges",\n "total_bytes",\n "span_bytes",\n "non_contiguous",\n "contains_entry"\n ],\n "type": "object"\n }\n ]\n },\n "classification": {\n "anyOf": [\n {\n "additionalProperties": false,\n "properties": {\n "external": {\n "type": "boolean"\n },\n "provenance": {\n "minLength": 1,\n "type": "string"\n },\n "thunk": {\n "type": "boolean"\n },\n "thunk_target": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "external",\n "thunk",\n "thunk_target",\n "provenance"\n ],\n "type": "object"\n },\n {\n "type": "null"\n }\n ],\n "default": null\n },\n "name": {\n "type": "string"\n }\n },\n "required": [\n "address",\n "name",\n "classification",\n "body"\n ],\n "type": "object"\n },\n "query_address": {\n "type": "string"\n }\n },\n "required": [\n "query_address",\n "found",\n "procedure"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "found": {\n "const": false,\n "type": "boolean"\n },\n "procedure": {\n "type": "null"\n },\n "query_address": {\n "type": "string"\n },\n "reason": {\n "enum": [\n "outside_segments",\n "not_in_procedure"\n ],\n "type": "string"\n }\n },\n "required": [\n "query_address",\n "found",\n "procedure",\n "reason"\n ],\n "type": "object"\n }\n ]\n },\n "source_address": {\n "type": "string"\n },\n "target_address": {\n "type": "string"\n }\n },\n "required": [\n "target_address",\n "source_address",\n "containing_procedure"\n ],\n "type": "object"\n },\n "type": "array"\n },\n "residual_unknowns": {\n "items": {\n "type": "string"\n },\n "type": "array"\n },\n "search_mode": {\n "const": "literal",\n "type": "string"\n },\n "truncated": {\n "type": "boolean"\n }\n },\n "required": [\n "query",\n "search_mode",\n "matches",\n "references",\n "truncated",\n "residual_unknowns"\n ],\n "type": "object"\n }\n },\n "required": [\n "result",\n "evidence_id",\n "evidence"\n ],\n "type": "object"\n },\n "requiresSession": false,\n "title": "Trace Feature"\n },\n {\n "analysisOperation": "trace_call_path",\n "annotations": {\n "destructiveHint": false,\n "idempotentHint": false,\n "openWorldHint": false,\n "readOnlyHint": false\n },\n "description": "Trace direct callers or callees from one exact procedure address until the graph is exhausted or the optional goal is reached. Returns visited nodes, direct-call edges, a shortest traversal path, provider failures, and residual unknowns; unresolved indirect calls remain unknown.",\n "effects": {\n "accessesNetwork": false,\n "changesUiState": false,\n "idempotent": false,\n "launchesProcess": false,\n "mayDiscardData": false,\n "mutatesSession": true,\n "mutatesTarget": false,\n "writesFilesystem": false\n },\n "inputSchema": {\n "$schema": "https://json-schema.org/draft/2020-12/schema",\n "additionalProperties": false,\n "examples": [\n {\n "direction": "forward",\n "goal": "0x1100",\n "start": "0x1000"\n }\n ],\n "properties": {\n "direction": {\n "default": "forward",\n "description": "Direction in which to traverse or compare relationships.",\n "enum": [\n "forward",\n "backward"\n ],\n "type": "string"\n },\n "goal": {\n "description": "An optional provider-normalized destination address",\n "type": "string"\n },\n "start": {\n "description": "A provider-normalized procedure address",\n "type": "string"\n }\n },\n "required": [\n "start"\n ],\n "type": "object"\n },\n "kind": "enhanced",\n "name": "trace_call_path",\n "outputSchema": {\n "$defs": {\n "__schema0": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "number"\n },\n {\n "type": "boolean"\n },\n {\n "type": "null"\n },\n {\n "items": {\n "$ref": "#/$defs/__schema0"\n },\n "type": "array"\n },\n {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n }\n ]\n },\n "__schema1": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "number"\n },\n {\n "type": "boolean"\n },\n {\n "type": "null"\n },\n {\n "items": {\n "$ref": "#/$defs/__schema1"\n },\n "type": "array"\n },\n {\n "additionalProperties": {\n "$ref": "#/$defs/__schema1"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n }\n ]\n }\n },\n "$schema": "https://json-schema.org/draft/2020-12/schema",\n "additionalProperties": false,\n "properties": {\n "evidence": {\n "additionalProperties": false,\n "properties": {\n "analysis_profile": {\n "additionalProperties": false,\n "properties": {\n "digest": {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n },\n "parameters": {\n "additionalProperties": {\n "$ref": "#/$defs/__schema1"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n },\n "provider": {\n "additionalProperties": false,\n "properties": {\n "id": {\n "minLength": 1,\n "type": "string"\n },\n "name": {\n "minLength": 1,\n "type": "string"\n },\n "version": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "id",\n "name",\n "version"\n ],\n "type": "object"\n }\n },\n "required": [\n "provider",\n "parameters",\n "digest"\n ],\n "type": "object"\n },\n "authority": {\n "enum": [\n "shipped-artifact",\n "controlled-replay",\n "historical-reference",\n "external-service",\n "analyst-inference"\n ],\n "type": "string"\n },\n "confidence": {\n "enum": [\n "observed",\n "derived",\n "inferred"\n ],\n "type": "string"\n },\n "environment": {\n "anyOf": [\n {\n "additionalProperties": false,\n "properties": {\n "architecture": {\n "minLength": 1,\n "type": "string"\n },\n "id": {\n "minLength": 1,\n "type": "string"\n },\n "isolation": {\n "enum": [\n "none",\n "process",\n "container",\n "virtual-machine"\n ],\n "type": "string"\n },\n "platform": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "id",\n "platform",\n "architecture",\n "isolation"\n ],\n "type": "object"\n },\n {\n "type": "null"\n }\n ]\n },\n "evidence_id": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "evidence_links": {\n "items": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "type": "array"\n },\n "limitations": {\n "items": {\n "type": "string"\n },\n "type": "array"\n },\n "locations": {\n "items": {\n "oneOf": [\n {\n "additionalProperties": false,\n "properties": {\n "address": {\n "minLength": 1,\n "type": "string"\n },\n "kind": {\n "const": "address",\n "type": "string"\n }\n },\n "required": [\n "kind",\n "address"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "end": {\n "minLength": 1,\n "type": "string"\n },\n "kind": {\n "const": "address-range",\n "type": "string"\n },\n "start": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "kind",\n "start",\n "end"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "kind": {\n "const": "artifact-path",\n "type": "string"\n },\n "path": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "kind",\n "path"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "kind": {\n "const": "file-offset",\n "type": "string"\n },\n "offset": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "kind",\n "offset"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "end": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "kind": {\n "const": "file-offset-range",\n "type": "string"\n },\n "start": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "kind",\n "start",\n "end"\n ],\n "type": "object"\n }\n ]\n },\n "type": "array"\n },\n "normalized_result": {\n "$ref": "#/$defs/__schema1"\n },\n "operation": {\n "minLength": 1,\n "type": "string"\n },\n "parameters": {\n "additionalProperties": {\n "$ref": "#/$defs/__schema1"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n },\n "predicate_type": {\n "minLength": 1,\n "type": "string"\n },\n "provider": {\n "additionalProperties": false,\n "properties": {\n "id": {\n "minLength": 1,\n "type": "string"\n },\n "name": {\n "minLength": 1,\n "type": "string"\n },\n "version": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "id",\n "name",\n "version"\n ],\n "type": "object"\n },\n "raw_result": {\n "anyOf": [\n {\n "$ref": "#/$defs/__schema1"\n },\n {\n "type": "null"\n }\n ]\n },\n "subject": {\n "anyOf": [\n {\n "additionalProperties": false,\n "properties": {\n "architecture": {\n "anyOf": [\n {\n "enum": [\n "x86",\n "x86_64",\n "arm",\n "arm64"\n ],\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "digest": {\n "additionalProperties": false,\n "properties": {\n "sha256": {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n }\n },\n "required": [\n "sha256"\n ],\n "type": "object"\n },\n "format": {\n "enum": [\n "hopper",\n "analysis-database",\n "mach-o",\n "elf",\n "pe",\n "dos-mz",\n "dos-com",\n "zip",\n "ipa",\n "apk",\n "msix",\n "appx",\n "asar",\n "dmg",\n "pkg",\n "plist",\n "javascript",\n "source-map",\n "directory",\n "file",\n "unknown",\n "mach-o-universal",\n "javascript-bundle",\n "entitlements"\n ],\n "type": "string"\n },\n "local_path": {\n "type": "string"\n },\n "name": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "name",\n "digest",\n "format",\n "architecture",\n "local_path"\n ],\n "type": "object"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "evidence_id",\n "subject",\n "provider",\n "predicate_type",\n "operation",\n "parameters",\n "raw_result",\n "normalized_result",\n "confidence",\n "authority",\n "environment",\n "limitations",\n "locations",\n "evidence_links"\n ],\n "type": "object"\n },\n "evidence_id": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "result": {\n "additionalProperties": false,\n "properties": {\n "direction": {\n "enum": [\n "forward",\n "backward"\n ],\n "type": "string"\n },\n "edges": {\n "items": {\n "additionalProperties": false,\n "properties": {\n "discovery_depth": {\n "maximum": 9007199254740991,\n "minimum": 1,\n "type": "integer"\n },\n "source_address": {\n "type": "string"\n },\n "target_address": {\n "type": "string"\n }\n },\n "required": [\n "source_address",\n "target_address",\n "discovery_depth"\n ],\n "type": "object"\n },\n "type": "array"\n },\n "failures": {\n "items": {\n "additionalProperties": false,\n "properties": {\n "address": {\n "type": "string"\n },\n "error": {\n "oneOf": [\n {\n "additionalProperties": false,\n "properties": {\n "category": {\n "enum": [\n "invalid_input",\n "unsupported_provider",\n "integrity_mismatch",\n "truncated",\n "cancelled",\n "timeout",\n "unavailable",\n "execution_failure"\n ],\n "type": "string"\n },\n "code": {\n "const": "invalid_request",\n "type": "string"\n },\n "details": {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n },\n "message": {\n "minLength": 1,\n "type": "string"\n },\n "remediation": {\n "additionalProperties": false,\n "properties": {\n "action": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "action"\n ],\n "type": "object"\n },\n "retryable": {\n "type": "boolean"\n }\n },\n "required": [\n "code",\n "category",\n "message",\n "retryable",\n "remediation"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "category": {\n "enum": [\n "invalid_input",\n "unsupported_provider",\n "integrity_mismatch",\n "truncated",\n "cancelled",\n "timeout",\n "unavailable",\n "execution_failure"\n ],\n "type": "string"\n },\n "code": {\n "const": "unreadable_output",\n "type": "string"\n },\n "details": {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n },\n "message": {\n "minLength": 1,\n "type": "string"\n },\n "remediation": {\n "additionalProperties": false,\n "properties": {\n "action": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "action"\n ],\n "type": "object"\n },\n "retryable": {\n "type": "boolean"\n }\n },\n "required": [\n "code",\n "category",\n "message",\n "retryable",\n "remediation"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "category": {\n "enum": [\n "invalid_input",\n "unsupported_provider",\n "integrity_mismatch",\n "truncated",\n "cancelled",\n "timeout",\n "unavailable",\n "execution_failure"\n ],\n "type": "string"\n },\n "code": {\n "const": "capability_unavailable",\n "type": "string"\n },\n "details": {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n },\n "message": {\n "minLength": 1,\n "type": "string"\n },\n "remediation": {\n "additionalProperties": false,\n "properties": {\n "action": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "action"\n ],\n "type": "object"\n },\n "retryable": {\n "type": "boolean"\n }\n },\n "required": [\n "code",\n "category",\n "message",\n "retryable",\n "remediation"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "category": {\n "enum": [\n "invalid_input",\n "unsupported_provider",\n "integrity_mismatch",\n "truncated",\n "cancelled",\n "timeout",\n "unavailable",\n "execution_failure"\n ],\n "type": "string"\n },\n "code": {\n "const": "provider_unavailable",\n "type": "string"\n },\n "details": {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n },\n "message": {\n "minLength": 1,\n "type": "string"\n },\n "remediation": {\n "additionalProperties": false,\n "properties": {\n "action": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "action"\n ],\n "type": "object"\n },\n "retryable": {\n "type": "boolean"\n }\n },\n "required": [\n "code",\n "category",\n "message",\n "retryable",\n "remediation"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "category": {\n "enum": [\n "invalid_input",\n "unsupported_provider",\n "integrity_mismatch",\n "truncated",\n "cancelled",\n "timeout",\n "unavailable",\n "execution_failure"\n ],\n "type": "string"\n },\n "code": {\n "const": "provider_timeout",\n "type": "string"\n },\n "details": {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n },\n "message": {\n "minLength": 1,\n "type": "string"\n },\n "remediation": {\n "additionalProperties": false,\n "properties": {\n "action": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "action"\n ],\n "type": "object"\n },\n "retryable": {\n "type": "boolean"\n }\n },\n "required": [\n "code",\n "category",\n "message",\n "retryable",\n "remediation"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "category": {\n "enum": [\n "invalid_input",\n "unsupported_provider",\n "integrity_mismatch",\n "truncated",\n "cancelled",\n "timeout",\n "unavailable",\n "execution_failure"\n ],\n "type": "string"\n },\n "code": {\n "const": "cancelled",\n "type": "string"\n },\n "details": {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n },\n "message": {\n "minLength": 1,\n "type": "string"\n },\n "remediation": {\n "additionalProperties": false,\n "properties": {\n "action": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "action"\n ],\n "type": "object"\n },\n "retryable": {\n "type": "boolean"\n }\n },\n "required": [\n "code",\n "category",\n "message",\n "retryable",\n "remediation"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "category": {\n "enum": [\n "invalid_input",\n "unsupported_provider",\n "integrity_mismatch",\n "truncated",\n "cancelled",\n "timeout",\n "unavailable",\n "execution_failure"\n ],\n "type": "string"\n },\n "code": {\n "const": "artifact_integrity_mismatch",\n "type": "string"\n },\n "details": {\n "additionalProperties": false,\n "properties": {\n "calculated_sha256": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "declared_sha256": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "logical_path": {\n "type": "string"\n },\n "unpacked": {\n "type": "boolean"\n }\n },\n "required": [\n "logical_path",\n "declared_sha256",\n "calculated_sha256",\n "unpacked"\n ],\n "type": "object"\n },\n "message": {\n "minLength": 1,\n "type": "string"\n },\n "remediation": {\n "additionalProperties": false,\n "properties": {\n "action": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "action"\n ],\n "type": "object"\n },\n "retryable": {\n "type": "boolean"\n }\n },\n "required": [\n "code",\n "category",\n "message",\n "retryable",\n "remediation",\n "details"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "category": {\n "enum": [\n "invalid_input",\n "unsupported_provider",\n "integrity_mismatch",\n "truncated",\n "cancelled",\n "timeout",\n "unavailable",\n "execution_failure"\n ],\n "type": "string"\n },\n "code": {\n "const": "artifact_operation_failed",\n "type": "string"\n },\n "details": {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n },\n "message": {\n "minLength": 1,\n "type": "string"\n },\n "remediation": {\n "additionalProperties": false,\n "properties": {\n "action": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "action"\n ],\n "type": "object"\n },\n "retryable": {\n "type": "boolean"\n }\n },\n "required": [\n "code",\n "category",\n "message",\n "retryable",\n "remediation"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "category": {\n "enum": [\n "invalid_input",\n "unsupported_provider",\n "integrity_mismatch",\n "truncated",\n "cancelled",\n "timeout",\n "unavailable",\n "execution_failure"\n ],\n "type": "string"\n },\n "code": {\n "const": "evidence_integrity_mismatch",\n "type": "string"\n },\n "details": {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n },\n "message": {\n "minLength": 1,\n "type": "string"\n },\n "remediation": {\n "additionalProperties": false,\n "properties": {\n "action": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "action"\n ],\n "type": "object"\n },\n "retryable": {\n "type": "boolean"\n }\n },\n "required": [\n "code",\n "category",\n "message",\n "retryable",\n "remediation"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "category": {\n "enum": [\n "invalid_input",\n "unsupported_provider",\n "integrity_mismatch",\n "truncated",\n "cancelled",\n "timeout",\n "unavailable",\n "execution_failure"\n ],\n "type": "string"\n },\n "code": {\n "const": "truncated",\n "type": "string"\n },\n "details": {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n },\n "message": {\n "minLength": 1,\n "type": "string"\n },\n "remediation": {\n "additionalProperties": false,\n "properties": {\n "action": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "action"\n ],\n "type": "object"\n },\n "retryable": {\n "type": "boolean"\n }\n },\n "required": [\n "code",\n "category",\n "message",\n "retryable",\n "remediation"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "category": {\n "enum": [\n "invalid_input",\n "unsupported_provider",\n "integrity_mismatch",\n "truncated",\n "cancelled",\n "timeout",\n "unavailable",\n "execution_failure"\n ],\n "type": "string"\n },\n "code": {\n "const": "process_capture_failed",\n "type": "string"\n },\n "details": {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n },\n "message": {\n "minLength": 1,\n "type": "string"\n },\n "remediation": {\n "additionalProperties": false,\n "properties": {\n "action": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "action"\n ],\n "type": "object"\n },\n "retryable": {\n "type": "boolean"\n }\n },\n "required": [\n "code",\n "category",\n "message",\n "retryable",\n "remediation"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "category": {\n "enum": [\n "invalid_input",\n "unsupported_provider",\n "integrity_mismatch",\n "truncated",\n "cancelled",\n "timeout",\n "unavailable",\n "execution_failure"\n ],\n "type": "string"\n },\n "code": {\n "const": "cleanup_incomplete",\n "type": "string"\n },\n "details": {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n },\n "message": {\n "minLength": 1,\n "type": "string"\n },\n "remediation": {\n "additionalProperties": false,\n "properties": {\n "action": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "action"\n ],\n "type": "object"\n },\n "retryable": {\n "type": "boolean"\n }\n },\n "required": [\n "code",\n "category",\n "message",\n "retryable",\n "remediation"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "category": {\n "enum": [\n "invalid_input",\n "unsupported_provider",\n "integrity_mismatch",\n "truncated",\n "cancelled",\n "timeout",\n "unavailable",\n "execution_failure"\n ],\n "type": "string"\n },\n "code": {\n "const": "revision_conflict",\n "type": "string"\n },\n "details": {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n },\n "message": {\n "minLength": 1,\n "type": "string"\n },\n "remediation": {\n "additionalProperties": false,\n "properties": {\n "action": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "action"\n ],\n "type": "object"\n },\n "retryable": {\n "type": "boolean"\n }\n },\n "required": [\n "code",\n "category",\n "message",\n "retryable",\n "remediation"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "category": {\n "enum": [\n "invalid_input",\n "unsupported_provider",\n "integrity_mismatch",\n "truncated",\n "cancelled",\n "timeout",\n "unavailable",\n "execution_failure"\n ],\n "type": "string"\n },\n "code": {\n "const": "configuration_invalid",\n "type": "string"\n },\n "details": {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n },\n "message": {\n "minLength": 1,\n "type": "string"\n },\n "remediation": {\n "additionalProperties": false,\n "properties": {\n "action": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "action"\n ],\n "type": "object"\n },\n "retryable": {\n "type": "boolean"\n }\n },\n "required": [\n "code",\n "category",\n "message",\n "retryable",\n "remediation"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "category": {\n "enum": [\n "invalid_input",\n "unsupported_provider",\n "integrity_mismatch",\n "truncated",\n "cancelled",\n "timeout",\n "unavailable",\n "execution_failure"\n ],\n "type": "string"\n },\n "code": {\n "const": "target_unavailable",\n "type": "string"\n },\n "details": {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n },\n "message": {\n "minLength": 1,\n "type": "string"\n },\n "remediation": {\n "additionalProperties": false,\n "properties": {\n "action": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "action"\n ],\n "type": "object"\n },\n "retryable": {\n "type": "boolean"\n }\n },\n "required": [\n "code",\n "category",\n "message",\n "retryable",\n "remediation"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "category": {\n "enum": [\n "invalid_input",\n "unsupported_provider",\n "integrity_mismatch",\n "truncated",\n "cancelled",\n "timeout",\n "unavailable",\n "execution_failure"\n ],\n "type": "string"\n },\n "code": {\n "const": "execution_failure",\n "type": "string"\n },\n "details": {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n },\n "message": {\n "minLength": 1,\n "type": "string"\n },\n "remediation": {\n "additionalProperties": false,\n "properties": {\n "action": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "action"\n ],\n "type": "object"\n },\n "retryable": {\n "type": "boolean"\n }\n },\n "required": [\n "code",\n "category",\n "message",\n "retryable",\n "remediation"\n ],\n "type": "object"\n }\n ]\n }\n },\n "required": [\n "address",\n "error"\n ],\n "type": "object"\n },\n "type": "array"\n },\n "goal": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "goal_status": {\n "enum": [\n "not_requested",\n "reached",\n "not_reached"\n ],\n "type": "string"\n },\n "limitations": {\n "items": {\n "type": "string"\n },\n "type": "array"\n },\n "nodes": {\n "items": {\n "additionalProperties": false,\n "properties": {\n "address": {\n "type": "string"\n },\n "depth": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "address",\n "depth"\n ],\n "type": "object"\n },\n "type": "array"\n },\n "residual_unknowns": {\n "items": {\n "type": "string"\n },\n "type": "array"\n },\n "start": {\n "type": "string"\n },\n "traversal": {\n "additionalProperties": false,\n "properties": {\n "nodes_visited": {\n "maximum": 9007199254740991,\n "minimum": 1,\n "type": "integer"\n }\n },\n "required": [\n "nodes_visited"\n ],\n "type": "object"\n },\n "traversal_path": {\n "items": {\n "type": "string"\n },\n "type": "array"\n },\n "truncated": {\n "type": "boolean"\n }\n },\n "required": [\n "start",\n "goal",\n "direction",\n "goal_status",\n "nodes",\n "edges",\n "traversal_path",\n "failures",\n "traversal",\n "truncated",\n "residual_unknowns",\n "limitations"\n ],\n "type": "object"\n }\n },\n "required": [\n "result",\n "evidence_id",\n "evidence"\n ],\n "type": "object"\n },\n "requiresSession": false,\n "title": "Trace Call Path"\n },\n {\n "analysisOperation": "trace_native_ui_action",\n "annotations": {\n "destructiveHint": false,\n "idempotentHint": true,\n "openWorldHint": false,\n "readOnlyHint": false\n },\n "description": "Trace one unique compiled UI action, object ID, native symbol or exact function address through authored connections, encoded or symbolized Objective-C handlers, and bounded static call references. Typed direct and resolved indirect calls, ambiguous candidates, inferred untyped provider callees, and targetless sites remain distinct. Runtime reachability is unknown; use trace_native_values for recovered value dependencies.",\n "effects": {\n "accessesNetwork": false,\n "changesUiState": false,\n "idempotent": true,\n "launchesProcess": false,\n "mayDiscardData": false,\n "mutatesSession": true,\n "mutatesTarget": false,\n "writesFilesystem": false\n },\n "inputSchema": {\n "$schema": "https://json-schema.org/draft/2020-12/schema",\n "additionalProperties": false,\n "examples": [\n {\n "action": "buildTapped:",\n "max_depth": 8,\n "max_edges": 500,\n "max_nodes": 250\n }\n ],\n "properties": {\n "action": {\n "description": "A unique compiled UI action selector, interface object ID, native symbol or exact function address",\n "minLength": 1,\n "type": "string"\n },\n "max_depth": {\n "default": 8,\n "description": "Maximum permitted depth for this operation.",\n "maximum": 32,\n "minimum": 0,\n "type": "integer"\n },\n "max_edges": {\n "default": 500,\n "description": "Maximum permitted edges for this operation.",\n "maximum": 5000,\n "minimum": 1,\n "type": "integer"\n },\n "max_nodes": {\n "default": 250,\n "description": "Maximum permitted nodes for this operation.",\n "maximum": 2000,\n "minimum": 1,\n "type": "integer"\n }\n },\n "required": [\n "action"\n ],\n "type": "object"\n },\n "kind": "enhanced",\n "name": "trace_native_ui_action",\n "outputSchema": {\n "$defs": {\n "__schema0": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "number"\n },\n {\n "type": "boolean"\n },\n {\n "type": "null"\n },\n {\n "items": {\n "$ref": "#/$defs/__schema0"\n },\n "type": "array"\n },\n {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n }\n ]\n }\n },\n "$schema": "https://json-schema.org/draft/2020-12/schema",\n "additionalProperties": false,\n "properties": {\n "evidence": {\n "additionalProperties": false,\n "properties": {\n "analysis_profile": {\n "additionalProperties": false,\n "properties": {\n "digest": {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n },\n "parameters": {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n },\n "provider": {\n "additionalProperties": false,\n "properties": {\n "id": {\n "minLength": 1,\n "type": "string"\n },\n "name": {\n "minLength": 1,\n "type": "string"\n },\n "version": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "id",\n "name",\n "version"\n ],\n "type": "object"\n }\n },\n "required": [\n "provider",\n "parameters",\n "digest"\n ],\n "type": "object"\n },\n "authority": {\n "enum": [\n "shipped-artifact",\n "controlled-replay",\n "historical-reference",\n "external-service",\n "analyst-inference"\n ],\n "type": "string"\n },\n "confidence": {\n "enum": [\n "observed",\n "derived",\n "inferred"\n ],\n "type": "string"\n },\n "environment": {\n "anyOf": [\n {\n "additionalProperties": false,\n "properties": {\n "architecture": {\n "minLength": 1,\n "type": "string"\n },\n "id": {\n "minLength": 1,\n "type": "string"\n },\n "isolation": {\n "enum": [\n "none",\n "process",\n "container",\n "virtual-machine"\n ],\n "type": "string"\n },\n "platform": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "id",\n "platform",\n "architecture",\n "isolation"\n ],\n "type": "object"\n },\n {\n "type": "null"\n }\n ]\n },\n "evidence_id": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "evidence_links": {\n "items": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "type": "array"\n },\n "limitations": {\n "items": {\n "type": "string"\n },\n "type": "array"\n },\n "locations": {\n "items": {\n "oneOf": [\n {\n "additionalProperties": false,\n "properties": {\n "address": {\n "minLength": 1,\n "type": "string"\n },\n "kind": {\n "const": "address",\n "type": "string"\n }\n },\n "required": [\n "kind",\n "address"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "end": {\n "minLength": 1,\n "type": "string"\n },\n "kind": {\n "const": "address-range",\n "type": "string"\n },\n "start": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "kind",\n "start",\n "end"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "kind": {\n "const": "artifact-path",\n "type": "string"\n },\n "path": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "kind",\n "path"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "kind": {\n "const": "file-offset",\n "type": "string"\n },\n "offset": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "kind",\n "offset"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "end": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "kind": {\n "const": "file-offset-range",\n "type": "string"\n },\n "start": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "kind",\n "start",\n "end"\n ],\n "type": "object"\n }\n ]\n },\n "type": "array"\n },\n "normalized_result": {\n "$ref": "#/$defs/__schema0"\n },\n "operation": {\n "minLength": 1,\n "type": "string"\n },\n "parameters": {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n },\n "predicate_type": {\n "minLength": 1,\n "type": "string"\n },\n "provider": {\n "additionalProperties": false,\n "properties": {\n "id": {\n "minLength": 1,\n "type": "string"\n },\n "name": {\n "minLength": 1,\n "type": "string"\n },\n "version": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "id",\n "name",\n "version"\n ],\n "type": "object"\n },\n "raw_result": {\n "anyOf": [\n {\n "$ref": "#/$defs/__schema0"\n },\n {\n "type": "null"\n }\n ]\n },\n "subject": {\n "anyOf": [\n {\n "additionalProperties": false,\n "properties": {\n "architecture": {\n "anyOf": [\n {\n "enum": [\n "x86",\n "x86_64",\n "arm",\n "arm64"\n ],\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "digest": {\n "additionalProperties": false,\n "properties": {\n "sha256": {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n }\n },\n "required": [\n "sha256"\n ],\n "type": "object"\n },\n "format": {\n "enum": [\n "hopper",\n "analysis-database",\n "mach-o",\n "elf",\n "pe",\n "dos-mz",\n "dos-com",\n "zip",\n "ipa",\n "apk",\n "msix",\n "appx",\n "asar",\n "dmg",\n "pkg",\n "plist",\n "javascript",\n "source-map",\n "directory",\n "file",\n "unknown",\n "mach-o-universal",\n "javascript-bundle",\n "entitlements"\n ],\n "type": "string"\n },\n "local_path": {\n "type": "string"\n },\n "name": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "name",\n "digest",\n "format",\n "architecture",\n "local_path"\n ],\n "type": "object"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "evidence_id",\n "subject",\n "provider",\n "predicate_type",\n "operation",\n "parameters",\n "raw_result",\n "normalized_result",\n "confidence",\n "authority",\n "environment",\n "limitations",\n "locations",\n "evidence_links"\n ],\n "type": "object"\n },\n "evidence_id": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "result": {\n "additionalProperties": false,\n "properties": {\n "coverage": {\n "items": {\n "additionalProperties": false,\n "properties": {\n "examined": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "facet": {\n "minLength": 1,\n "type": "string"\n },\n "omitted": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "reason": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "status": {\n "enum": [\n "complete",\n "partial",\n "unsupported",\n "not_requested"\n ],\n "type": "string"\n }\n },\n "required": [\n "facet",\n "status",\n "reason",\n "examined",\n "omitted"\n ],\n "type": "object"\n },\n "type": "array"\n },\n "direction": {\n "enum": [\n "forward",\n "backward"\n ],\n "type": "string"\n },\n "edges": {\n "items": {\n "oneOf": [\n {\n "additionalProperties": false,\n "properties": {\n "evidence": {\n "items": {\n "additionalProperties": false,\n "properties": {\n "artifact_path": {\n "anyOf": [\n {\n "minLength": 1,\n "type": "string"\n },\n {\n "type": "null"\n }\n ],\n "default": null\n },\n "artifact_sha256": {\n "anyOf": [\n {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n },\n {\n "type": "null"\n }\n ],\n "default": null\n },\n "description": {\n "minLength": 1,\n "type": "string"\n },\n "kind": {\n "enum": [\n "binary_metadata",\n "interface_builder_resource",\n "symbol",\n "reference",\n "decompiler"\n ],\n "type": "string"\n },\n "location": {\n "additionalProperties": false,\n "properties": {\n "address": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "file_offset": {\n "anyOf": [\n {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "address",\n "file_offset"\n ],\n "type": "object"\n }\n },\n "required": [\n "kind",\n "description",\n "location",\n "artifact_path",\n "artifact_sha256"\n ],\n "type": "object"\n },\n "minItems": 1,\n "type": "array"\n },\n "from": {\n "minLength": 1,\n "type": "string"\n },\n "id": {\n "minLength": 1,\n "type": "string"\n },\n "limitations": {\n "items": {\n "type": "string"\n },\n "type": "array"\n },\n "relation": {\n "enum": [\n "contains",\n "outlet_to",\n "target_action",\n "segue_to",\n "objc_dispatch",\n "swift_witness_dispatch",\n "swift_vtable_dispatch",\n "thunk_to",\n "direct_call",\n "indirect_call",\n "provider_call",\n "reads",\n "writes",\n "flows_to",\n "controls"\n ],\n "type": "string"\n },\n "resolution": {\n "enum": [\n "observed",\n "inferred",\n "resolved",\n "ambiguous"\n ],\n "type": "string"\n },\n "to": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "id",\n "from",\n "to",\n "relation",\n "resolution",\n "evidence",\n "limitations"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "evidence": {\n "items": {\n "additionalProperties": false,\n "properties": {\n "artifact_path": {\n "anyOf": [\n {\n "minLength": 1,\n "type": "string"\n },\n {\n "type": "null"\n }\n ],\n "default": null\n },\n "artifact_sha256": {\n "anyOf": [\n {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n },\n {\n "type": "null"\n }\n ],\n "default": null\n },\n "description": {\n "minLength": 1,\n "type": "string"\n },\n "kind": {\n "enum": [\n "binary_metadata",\n "interface_builder_resource",\n "symbol",\n "reference",\n "decompiler"\n ],\n "type": "string"\n },\n "location": {\n "additionalProperties": false,\n "properties": {\n "address": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "file_offset": {\n "anyOf": [\n {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "address",\n "file_offset"\n ],\n "type": "object"\n }\n },\n "required": [\n "kind",\n "description",\n "location",\n "artifact_path",\n "artifact_sha256"\n ],\n "type": "object"\n },\n "type": "array"\n },\n "from": {\n "minLength": 1,\n "type": "string"\n },\n "id": {\n "minLength": 1,\n "type": "string"\n },\n "limitations": {\n "items": {\n "type": "string"\n },\n "type": "array"\n },\n "reason": {\n "minLength": 1,\n "type": "string"\n },\n "relation": {\n "enum": [\n "contains",\n "outlet_to",\n "target_action",\n "segue_to",\n "objc_dispatch",\n "swift_witness_dispatch",\n "swift_vtable_dispatch",\n "thunk_to",\n "direct_call",\n "indirect_call",\n "provider_call",\n "reads",\n "writes",\n "flows_to",\n "controls"\n ],\n "type": "string"\n },\n "resolution": {\n "const": "unresolved",\n "type": "string"\n },\n "to": {\n "type": "null"\n }\n },\n "required": [\n "id",\n "from",\n "to",\n "relation",\n "resolution",\n "reason",\n "evidence",\n "limitations"\n ],\n "type": "object"\n }\n ]\n },\n "type": "array"\n },\n "limitations": {\n "items": {\n "minLength": 1,\n "type": "string"\n },\n "type": "array"\n },\n "nodes": {\n "items": {\n "additionalProperties": false,\n "properties": {\n "attributes": {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n },\n "evidence": {\n "items": {\n "additionalProperties": false,\n "properties": {\n "artifact_path": {\n "anyOf": [\n {\n "minLength": 1,\n "type": "string"\n },\n {\n "type": "null"\n }\n ],\n "default": null\n },\n "artifact_sha256": {\n "anyOf": [\n {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n },\n {\n "type": "null"\n }\n ],\n "default": null\n },\n "description": {\n "minLength": 1,\n "type": "string"\n },\n "kind": {\n "enum": [\n "binary_metadata",\n "interface_builder_resource",\n "symbol",\n "reference",\n "decompiler"\n ],\n "type": "string"\n },\n "location": {\n "additionalProperties": false,\n "properties": {\n "address": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "file_offset": {\n "anyOf": [\n {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "address",\n "file_offset"\n ],\n "type": "object"\n }\n },\n "required": [\n "kind",\n "description",\n "location",\n "artifact_path",\n "artifact_sha256"\n ],\n "type": "object"\n },\n "type": "array"\n },\n "id": {\n "minLength": 1,\n "type": "string"\n },\n "kind": {\n "enum": [\n "storyboard",\n "scene",\n "view_controller",\n "view",\n "control",\n "constraint",\n "layout_guide",\n "resource",\n "placeholder",\n "external_object",\n "outlet",\n "action",\n "segue",\n "objc_class",\n "objc_selector",\n "swift_declaration",\n "swift_requirement",\n "dispatch_table",\n "dispatch_slot",\n "thunk",\n "function",\n "state_value",\n "global_value",\n "field",\n "branch_condition",\n "sink",\n "unknown"\n ],\n "type": "string"\n },\n "location": {\n "anyOf": [\n {\n "additionalProperties": false,\n "properties": {\n "address": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "file_offset": {\n "anyOf": [\n {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "address",\n "file_offset"\n ],\n "type": "object"\n },\n {\n "type": "null"\n }\n ]\n },\n "name": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "id",\n "kind",\n "name",\n "location",\n "attributes",\n "evidence"\n ],\n "type": "object"\n },\n "type": "array"\n },\n "provider": {\n "additionalProperties": false,\n "properties": {\n "id": {\n "minLength": 1,\n "type": "string"\n },\n "tool_version": {\n "minLength": 1,\n "type": "string"\n },\n "version": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "id",\n "version",\n "tool_version"\n ],\n "type": "object"\n },\n "reached_depth": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "reason": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "start": {\n "minLength": 1,\n "type": "string"\n },\n "target_sha256": {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n },\n "truncated": {\n "type": "boolean"\n },\n "unresolved": {\n "items": {\n "oneOf": [\n {\n "additionalProperties": false,\n "properties": {\n "evidence": {\n "items": {\n "additionalProperties": false,\n "properties": {\n "artifact_path": {\n "anyOf": [\n {\n "minLength": 1,\n "type": "string"\n },\n {\n "type": "null"\n }\n ],\n "default": null\n },\n "artifact_sha256": {\n "anyOf": [\n {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n },\n {\n "type": "null"\n }\n ],\n "default": null\n },\n "description": {\n "minLength": 1,\n "type": "string"\n },\n "kind": {\n "enum": [\n "binary_metadata",\n "interface_builder_resource",\n "symbol",\n "reference",\n "decompiler"\n ],\n "type": "string"\n },\n "location": {\n "additionalProperties": false,\n "properties": {\n "address": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "file_offset": {\n "anyOf": [\n {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "address",\n "file_offset"\n ],\n "type": "object"\n }\n },\n "required": [\n "kind",\n "description",\n "location",\n "artifact_path",\n "artifact_sha256"\n ],\n "type": "object"\n },\n "minItems": 1,\n "type": "array"\n },\n "from": {\n "minLength": 1,\n "type": "string"\n },\n "id": {\n "minLength": 1,\n "type": "string"\n },\n "limitations": {\n "items": {\n "type": "string"\n },\n "type": "array"\n },\n "relation": {\n "enum": [\n "contains",\n "outlet_to",\n "target_action",\n "segue_to",\n "objc_dispatch",\n "swift_witness_dispatch",\n "swift_vtable_dispatch",\n "thunk_to",\n "direct_call",\n "indirect_call",\n "provider_call",\n "reads",\n "writes",\n "flows_to",\n "controls"\n ],\n "type": "string"\n },\n "resolution": {\n "enum": [\n "observed",\n "inferred",\n "resolved",\n "ambiguous"\n ],\n "type": "string"\n },\n "to": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "id",\n "from",\n "to",\n "relation",\n "resolution",\n "evidence",\n "limitations"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "evidence": {\n "items": {\n "additionalProperties": false,\n "properties": {\n "artifact_path": {\n "anyOf": [\n {\n "minLength": 1,\n "type": "string"\n },\n {\n "type": "null"\n }\n ],\n "default": null\n },\n "artifact_sha256": {\n "anyOf": [\n {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n },\n {\n "type": "null"\n }\n ],\n "default": null\n },\n "description": {\n "minLength": 1,\n "type": "string"\n },\n "kind": {\n "enum": [\n "binary_metadata",\n "interface_builder_resource",\n "symbol",\n "reference",\n "decompiler"\n ],\n "type": "string"\n },\n "location": {\n "additionalProperties": false,\n "properties": {\n "address": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "file_offset": {\n "anyOf": [\n {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "address",\n "file_offset"\n ],\n "type": "object"\n }\n },\n "required": [\n "kind",\n "description",\n "location",\n "artifact_path",\n "artifact_sha256"\n ],\n "type": "object"\n },\n "type": "array"\n },\n "from": {\n "minLength": 1,\n "type": "string"\n },\n "id": {\n "minLength": 1,\n "type": "string"\n },\n "limitations": {\n "items": {\n "type": "string"\n },\n "type": "array"\n },\n "reason": {\n "minLength": 1,\n "type": "string"\n },\n "relation": {\n "enum": [\n "contains",\n "outlet_to",\n "target_action",\n "segue_to",\n "objc_dispatch",\n "swift_witness_dispatch",\n "swift_vtable_dispatch",\n "thunk_to",\n "direct_call",\n "indirect_call",\n "provider_call",\n "reads",\n "writes",\n "flows_to",\n "controls"\n ],\n "type": "string"\n },\n "resolution": {\n "const": "unresolved",\n "type": "string"\n },\n "to": {\n "type": "null"\n }\n },\n "required": [\n "id",\n "from",\n "to",\n "relation",\n "resolution",\n "reason",\n "evidence",\n "limitations"\n ],\n "type": "object"\n }\n ]\n },\n "type": "array"\n }\n },\n "required": [\n "target_sha256",\n "provider",\n "start",\n "direction",\n "nodes",\n "edges",\n "unresolved",\n "reached_depth",\n "truncated",\n "reason",\n "coverage",\n "limitations"\n ],\n "type": "object"\n }\n },\n "required": [\n "result",\n "evidence_id",\n "evidence"\n ],\n "type": "object"\n },\n "requiresSession": false,\n "title": "Trace Native Ui Action"\n },\n {\n "analysisOperation": "trace_native_values",\n "annotations": {\n "destructiveHint": false,\n "idempotentHint": true,\n "openWorldHint": false,\n "readOnlyHint": false\n },\n "description": "Trace a bounded static dependency graph from one explicit native procedure. Includes high-p-code def-use, constants, operators, memory and branch operations, resolved call edges, and derived argument/parameter and return/output bindings. Missing bindings, alias semantics, persistent state and RNG roles remain unknown. Budgets bound depth, decompilations, graph size and payloads; nodes are paginated.",\n "effects": {\n "accessesNetwork": false,\n "changesUiState": false,\n "idempotent": true,\n "launchesProcess": false,\n "mayDiscardData": false,\n "mutatesSession": true,\n "mutatesTarget": false,\n "writesFilesystem": false\n },\n "inputSchema": {\n "$schema": "https://json-schema.org/draft/2020-12/schema",\n "additionalProperties": false,\n "examples": [\n {\n "limit": 1000,\n "max_call_sites": 256,\n "max_depth": 3,\n "max_edges": 10000,\n "max_functions": 16,\n "max_nodes": 5000,\n "offset": 0,\n "procedure": "0x1000"\n }\n ],\n "properties": {\n "limit": {\n "default": 1000,\n "description": "Value for limit.",\n "maximum": 5000,\n "minimum": 1,\n "type": "integer"\n },\n "max_call_sites": {\n "default": 256,\n "description": "Maximum permitted call sites for this operation.",\n "maximum": 4096,\n "minimum": 1,\n "type": "integer"\n },\n "max_depth": {\n "default": 3,\n "description": "Maximum permitted depth for this operation.",\n "maximum": 16,\n "minimum": 0,\n "type": "integer"\n },\n "max_edges": {\n "default": 10000,\n "description": "Maximum permitted edges for this operation.",\n "maximum": 40000,\n "minimum": 1,\n "type": "integer"\n },\n "max_functions": {\n "default": 16,\n "description": "Maximum permitted functions for this operation.",\n "maximum": 64,\n "minimum": 1,\n "type": "integer"\n },\n "max_nodes": {\n "default": 5000,\n "description": "Maximum permitted nodes for this operation.",\n "maximum": 20000,\n "minimum": 1,\n "type": "integer"\n },\n "offset": {\n "default": 0,\n "description": "Value for offset.",\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "procedure": {\n "description": "Value for procedure.",\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "procedure"\n ],\n "type": "object"\n },\n "kind": "enhanced",\n "name": "trace_native_values",\n "outputSchema": {\n "$defs": {\n "__schema0": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "number"\n },\n {\n "type": "boolean"\n },\n {\n "type": "null"\n },\n {\n "items": {\n "$ref": "#/$defs/__schema0"\n },\n "type": "array"\n },\n {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n }\n ]\n }\n },\n "$schema": "https://json-schema.org/draft/2020-12/schema",\n "additionalProperties": false,\n "properties": {\n "evidence": {\n "additionalProperties": false,\n "properties": {\n "analysis_profile": {\n "additionalProperties": false,\n "properties": {\n "digest": {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n },\n "parameters": {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n },\n "provider": {\n "additionalProperties": false,\n "properties": {\n "id": {\n "minLength": 1,\n "type": "string"\n },\n "name": {\n "minLength": 1,\n "type": "string"\n },\n "version": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "id",\n "name",\n "version"\n ],\n "type": "object"\n }\n },\n "required": [\n "provider",\n "parameters",\n "digest"\n ],\n "type": "object"\n },\n "authority": {\n "enum": [\n "shipped-artifact",\n "controlled-replay",\n "historical-reference",\n "external-service",\n "analyst-inference"\n ],\n "type": "string"\n },\n "confidence": {\n "enum": [\n "observed",\n "derived",\n "inferred"\n ],\n "type": "string"\n },\n "environment": {\n "anyOf": [\n {\n "additionalProperties": false,\n "properties": {\n "architecture": {\n "minLength": 1,\n "type": "string"\n },\n "id": {\n "minLength": 1,\n "type": "string"\n },\n "isolation": {\n "enum": [\n "none",\n "process",\n "container",\n "virtual-machine"\n ],\n "type": "string"\n },\n "platform": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "id",\n "platform",\n "architecture",\n "isolation"\n ],\n "type": "object"\n },\n {\n "type": "null"\n }\n ]\n },\n "evidence_id": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "evidence_links": {\n "items": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "type": "array"\n },\n "limitations": {\n "items": {\n "type": "string"\n },\n "type": "array"\n },\n "locations": {\n "items": {\n "oneOf": [\n {\n "additionalProperties": false,\n "properties": {\n "address": {\n "minLength": 1,\n "type": "string"\n },\n "kind": {\n "const": "address",\n "type": "string"\n }\n },\n "required": [\n "kind",\n "address"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "end": {\n "minLength": 1,\n "type": "string"\n },\n "kind": {\n "const": "address-range",\n "type": "string"\n },\n "start": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "kind",\n "start",\n "end"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "kind": {\n "const": "artifact-path",\n "type": "string"\n },\n "path": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "kind",\n "path"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "kind": {\n "const": "file-offset",\n "type": "string"\n },\n "offset": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "kind",\n "offset"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "end": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "kind": {\n "const": "file-offset-range",\n "type": "string"\n },\n "start": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "kind",\n "start",\n "end"\n ],\n "type": "object"\n }\n ]\n },\n "type": "array"\n },\n "normalized_result": {\n "$ref": "#/$defs/__schema0"\n },\n "operation": {\n "minLength": 1,\n "type": "string"\n },\n "parameters": {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n },\n "predicate_type": {\n "minLength": 1,\n "type": "string"\n },\n "provider": {\n "additionalProperties": false,\n "properties": {\n "id": {\n "minLength": 1,\n "type": "string"\n },\n "name": {\n "minLength": 1,\n "type": "string"\n },\n "version": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "id",\n "name",\n "version"\n ],\n "type": "object"\n },\n "raw_result": {\n "anyOf": [\n {\n "$ref": "#/$defs/__schema0"\n },\n {\n "type": "null"\n }\n ]\n },\n "subject": {\n "anyOf": [\n {\n "additionalProperties": false,\n "properties": {\n "architecture": {\n "anyOf": [\n {\n "enum": [\n "x86",\n "x86_64",\n "arm",\n "arm64"\n ],\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "digest": {\n "additionalProperties": false,\n "properties": {\n "sha256": {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n }\n },\n "required": [\n "sha256"\n ],\n "type": "object"\n },\n "format": {\n "enum": [\n "hopper",\n "analysis-database",\n "mach-o",\n "elf",\n "pe",\n "dos-mz",\n "dos-com",\n "zip",\n "ipa",\n "apk",\n "msix",\n "appx",\n "asar",\n "dmg",\n "pkg",\n "plist",\n "javascript",\n "source-map",\n "directory",\n "file",\n "unknown",\n "mach-o-universal",\n "javascript-bundle",\n "entitlements"\n ],\n "type": "string"\n },\n "local_path": {\n "type": "string"\n },\n "name": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "name",\n "digest",\n "format",\n "architecture",\n "local_path"\n ],\n "type": "object"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "evidence_id",\n "subject",\n "provider",\n "predicate_type",\n "operation",\n "parameters",\n "raw_result",\n "normalized_result",\n "confidence",\n "authority",\n "environment",\n "limitations",\n "locations",\n "evidence_links"\n ],\n "type": "object"\n },\n "evidence_id": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "result": {\n "additionalProperties": false,\n "properties": {\n "decompilations": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "edges": {\n "items": {\n "additionalProperties": false,\n "properties": {\n "evidence_id": {\n "type": "string"\n },\n "input_index": {\n "anyOf": [\n {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n {\n "type": "null"\n }\n ]\n },\n "kind": {\n "enum": [\n "def-use",\n "call",\n "parameter-use",\n "argument-binding",\n "return-binding"\n ],\n "type": "string"\n },\n "source": {\n "type": "string"\n },\n "status": {\n "enum": [\n "derived",\n "direct",\n "resolved-indirect",\n "candidate"\n ],\n "type": "string"\n },\n "target": {\n "type": "string"\n }\n },\n "required": [\n "source",\n "target",\n "input_index",\n "kind",\n "status",\n "evidence_id"\n ],\n "type": "object"\n },\n "type": "array"\n },\n "limitations": {\n "items": {\n "type": "string"\n },\n "type": "array"\n },\n "next_offset": {\n "anyOf": [\n {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n {\n "type": "null"\n }\n ]\n },\n "nodes": {\n "items": {\n "additionalProperties": false,\n "properties": {\n "evidence_id": {\n "type": "string"\n },\n "id": {\n "type": "string"\n },\n "kind": {\n "enum": [\n "operation",\n "parameter"\n ],\n "type": "string"\n },\n "operation": {\n "anyOf": [\n {\n "additionalProperties": false,\n "properties": {\n "address": {\n "minLength": 1,\n "type": "string"\n },\n "block_membership": {\n "default": "unavailable",\n "enum": [\n "member",\n "detached",\n "unavailable"\n ],\n "type": "string"\n },\n "id": {\n "minLength": 1,\n "type": "string"\n },\n "inputs": {\n "items": {\n "additionalProperties": false,\n "properties": {\n "constant_hex": {\n "anyOf": [\n {\n "pattern": "^[0-9a-f]+$",\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "kind": {\n "enum": [\n "constant",\n "address",\n "register",\n "unique",\n "other"\n ],\n "type": "string"\n },\n "location": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "size_bytes": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "kind",\n "size_bytes",\n "location",\n "constant_hex"\n ],\n "type": "object"\n },\n "type": "array"\n },\n "is_dead": {\n "type": "boolean"\n },\n "opcode": {\n "minLength": 1,\n "type": "string"\n },\n "output": {\n "anyOf": [\n {\n "additionalProperties": false,\n "properties": {\n "constant_hex": {\n "anyOf": [\n {\n "pattern": "^[0-9a-f]+$",\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "kind": {\n "enum": [\n "constant",\n "address",\n "register",\n "unique",\n "other"\n ],\n "type": "string"\n },\n "location": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "size_bytes": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "kind",\n "size_bytes",\n "location",\n "constant_hex"\n ],\n "type": "object"\n },\n {\n "type": "null"\n }\n ]\n },\n "sequence": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "id",\n "address",\n "sequence",\n "opcode",\n "is_dead",\n "block_membership",\n "inputs",\n "output"\n ],\n "type": "object"\n },\n {\n "type": "null"\n }\n ]\n },\n "parameter": {\n "anyOf": [\n {\n "additionalProperties": false,\n "properties": {\n "data_type": {\n "type": "string"\n },\n "name": {\n "type": "string"\n },\n "ordinal": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "ordinal",\n "name",\n "data_type"\n ],\n "type": "object"\n },\n {\n "type": "null"\n }\n ]\n },\n "procedure": {\n "type": "string"\n }\n },\n "required": [\n "id",\n "procedure",\n "evidence_id",\n "kind",\n "operation",\n "parameter"\n ],\n "type": "object"\n },\n "type": "array"\n },\n "procedures": {\n "items": {\n "additionalProperties": false,\n "properties": {\n "address": {\n "type": "string"\n },\n "analysis_profile_digest": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "depth": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "evidence_id": {\n "type": "string"\n },\n "provider": {\n "type": "string"\n }\n },\n "required": [\n "address",\n "depth",\n "evidence_id",\n "provider",\n "analysis_profile_digest"\n ],\n "type": "object"\n },\n "type": "array"\n },\n "seed": {\n "type": "string"\n },\n "target_sha256": {\n "type": "string"\n },\n "total_edges": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "total_nodes": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "truncated": {\n "type": "boolean"\n },\n "unknowns": {\n "items": {\n "additionalProperties": false,\n "properties": {\n "address": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "procedure": {\n "type": "string"\n },\n "reason": {\n "type": "string"\n }\n },\n "required": [\n "procedure",\n "address",\n "reason"\n ],\n "type": "object"\n },\n "type": "array"\n }\n },\n "required": [\n "seed",\n "target_sha256",\n "nodes",\n "edges",\n "procedures",\n "unknowns",\n "total_nodes",\n "total_edges",\n "decompilations",\n "next_offset",\n "truncated",\n "limitations"\n ],\n "type": "object"\n }\n },\n "required": [\n "result",\n "evidence_id",\n "evidence"\n ],\n "type": "object"\n },\n "requiresSession": false,\n "title": "Trace Native Values"\n },\n {\n "analysisOperation": "observe_native_ui",\n "annotations": {\n "destructiveHint": false,\n "idempotentHint": true,\n "openWorldHint": true,\n "readOnlyHint": false\n },\n "description": "Observe an already-running native app by PID and window ID, bound to the active Mach-O target. Captures a bounded accessibility tree and selected-window screenshot; OS permission denial fails without broad capture or target launch.",\n "effects": {\n "accessesNetwork": false,\n "changesUiState": false,\n "idempotent": true,\n "launchesProcess": true,\n "mayDiscardData": false,\n "mutatesSession": true,\n "mutatesTarget": false,\n "writesFilesystem": true\n },\n "inputSchema": {\n "$schema": "https://json-schema.org/draft/2020-12/schema",\n "additionalProperties": false,\n "examples": [\n {\n "pid": 123,\n "window_id": 456\n }\n ],\n "properties": {\n "accessibility": {\n "default": true,\n "description": "Value for accessibility.",\n "type": "boolean"\n },\n "max_nodes": {\n "default": 500,\n "description": "Maximum accessibility nodes per capture; increase for large windows.",\n "exclusiveMinimum": 0,\n "maximum": 9007199254740991,\n "type": "integer"\n },\n "pid": {\n "description": "Value for pid.",\n "exclusiveMinimum": 0,\n "maximum": 9007199254740991,\n "type": "integer"\n },\n "screenshot": {\n "default": true,\n "description": "Value for screenshot.",\n "type": "boolean"\n },\n "window_id": {\n "description": "Value for window id.",\n "exclusiveMinimum": 0,\n "maximum": 9007199254740991,\n "type": "integer"\n }\n },\n "required": [\n "pid",\n "window_id"\n ],\n "type": "object"\n },\n "kind": "native-provider",\n "name": "observe_native_ui",\n "outputSchema": {\n "$defs": {\n "__schema0": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "number"\n },\n {\n "type": "boolean"\n },\n {\n "type": "null"\n },\n {\n "items": {\n "$ref": "#/$defs/__schema0"\n },\n "type": "array"\n },\n {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n }\n ]\n }\n },\n "$schema": "https://json-schema.org/draft/2020-12/schema",\n "additionalProperties": false,\n "properties": {\n "evidence": {\n "additionalProperties": false,\n "properties": {\n "analysis_profile": {\n "additionalProperties": false,\n "properties": {\n "digest": {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n },\n "parameters": {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n },\n "provider": {\n "additionalProperties": false,\n "properties": {\n "id": {\n "minLength": 1,\n "type": "string"\n },\n "name": {\n "minLength": 1,\n "type": "string"\n },\n "version": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "id",\n "name",\n "version"\n ],\n "type": "object"\n }\n },\n "required": [\n "provider",\n "parameters",\n "digest"\n ],\n "type": "object"\n },\n "authority": {\n "enum": [\n "shipped-artifact",\n "controlled-replay",\n "historical-reference",\n "external-service",\n "analyst-inference"\n ],\n "type": "string"\n },\n "confidence": {\n "enum": [\n "observed",\n "derived",\n "inferred"\n ],\n "type": "string"\n },\n "environment": {\n "anyOf": [\n {\n "additionalProperties": false,\n "properties": {\n "architecture": {\n "minLength": 1,\n "type": "string"\n },\n "id": {\n "minLength": 1,\n "type": "string"\n },\n "isolation": {\n "enum": [\n "none",\n "process",\n "container",\n "virtual-machine"\n ],\n "type": "string"\n },\n "platform": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "id",\n "platform",\n "architecture",\n "isolation"\n ],\n "type": "object"\n },\n {\n "type": "null"\n }\n ]\n },\n "evidence_id": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "evidence_links": {\n "items": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "type": "array"\n },\n "limitations": {\n "items": {\n "type": "string"\n },\n "type": "array"\n },\n "locations": {\n "items": {\n "oneOf": [\n {\n "additionalProperties": false,\n "properties": {\n "address": {\n "minLength": 1,\n "type": "string"\n },\n "kind": {\n "const": "address",\n "type": "string"\n }\n },\n "required": [\n "kind",\n "address"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "end": {\n "minLength": 1,\n "type": "string"\n },\n "kind": {\n "const": "address-range",\n "type": "string"\n },\n "start": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "kind",\n "start",\n "end"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "kind": {\n "const": "artifact-path",\n "type": "string"\n },\n "path": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "kind",\n "path"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "kind": {\n "const": "file-offset",\n "type": "string"\n },\n "offset": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "kind",\n "offset"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "end": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "kind": {\n "const": "file-offset-range",\n "type": "string"\n },\n "start": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "kind",\n "start",\n "end"\n ],\n "type": "object"\n }\n ]\n },\n "type": "array"\n },\n "normalized_result": {\n "$ref": "#/$defs/__schema0"\n },\n "operation": {\n "minLength": 1,\n "type": "string"\n },\n "parameters": {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n },\n "predicate_type": {\n "minLength": 1,\n "type": "string"\n },\n "provider": {\n "additionalProperties": false,\n "properties": {\n "id": {\n "minLength": 1,\n "type": "string"\n },\n "name": {\n "minLength": 1,\n "type": "string"\n },\n "version": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "id",\n "name",\n "version"\n ],\n "type": "object"\n },\n "raw_result": {\n "anyOf": [\n {\n "$ref": "#/$defs/__schema0"\n },\n {\n "type": "null"\n }\n ]\n },\n "subject": {\n "anyOf": [\n {\n "additionalProperties": false,\n "properties": {\n "architecture": {\n "anyOf": [\n {\n "enum": [\n "x86",\n "x86_64",\n "arm",\n "arm64"\n ],\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "digest": {\n "additionalProperties": false,\n "properties": {\n "sha256": {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n }\n },\n "required": [\n "sha256"\n ],\n "type": "object"\n },\n "format": {\n "enum": [\n "hopper",\n "analysis-database",\n "mach-o",\n "elf",\n "pe",\n "dos-mz",\n "dos-com",\n "zip",\n "ipa",\n "apk",\n "msix",\n "appx",\n "asar",\n "dmg",\n "pkg",\n "plist",\n "javascript",\n "source-map",\n "directory",\n "file",\n "unknown",\n "mach-o-universal",\n "javascript-bundle",\n "entitlements"\n ],\n "type": "string"\n },\n "local_path": {\n "type": "string"\n },\n "name": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "name",\n "digest",\n "format",\n "architecture",\n "local_path"\n ],\n "type": "object"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "evidence_id",\n "subject",\n "provider",\n "predicate_type",\n "operation",\n "parameters",\n "raw_result",\n "normalized_result",\n "confidence",\n "authority",\n "environment",\n "limitations",\n "locations",\n "evidence_links"\n ],\n "type": "object"\n },\n "evidence_id": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "result": {\n "additionalProperties": false,\n "properties": {\n "initial": {\n "additionalProperties": false,\n "properties": {\n "gaps": {\n "items": {\n "type": "string"\n },\n "type": "array"\n },\n "nodes": {\n "items": {\n "additionalProperties": false,\n "properties": {\n "actions": {\n "items": {\n "type": "string"\n },\n "type": "array"\n },\n "children_count": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "path": {\n "items": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "type": "array"\n },\n "role": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "title": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "value": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "path",\n "role",\n "title",\n "value",\n "actions",\n "children_count"\n ],\n "type": "object"\n },\n "type": "array"\n },\n "screenshot": {\n "anyOf": [\n {\n "additionalProperties": false,\n "properties": {\n "base64": {\n "minLength": 4,\n "type": "string"\n },\n "height": {\n "exclusiveMinimum": 0,\n "maximum": 9007199254740991,\n "type": "integer"\n },\n "mime_type": {\n "const": "image/png",\n "type": "string"\n },\n "sha256": {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n },\n "width": {\n "exclusiveMinimum": 0,\n "maximum": 9007199254740991,\n "type": "integer"\n }\n },\n "required": [\n "mime_type",\n "base64",\n "sha256",\n "width",\n "height"\n ],\n "type": "object"\n },\n {\n "type": "null"\n }\n ]\n },\n "truncated": {\n "type": "boolean"\n },\n "window": {\n "additionalProperties": false,\n "properties": {\n "executable": {\n "type": "string"\n },\n "launch_time": {\n "type": "number"\n },\n "pid": {\n "exclusiveMinimum": 0,\n "maximum": 9007199254740991,\n "type": "integer"\n },\n "title": {\n "type": "string"\n },\n "window_id": {\n "exclusiveMinimum": 0,\n "maximum": 9007199254740991,\n "type": "integer"\n }\n },\n "required": [\n "pid",\n "window_id",\n "executable",\n "launch_time",\n "title"\n ],\n "type": "object"\n }\n },\n "required": [\n "window",\n "nodes",\n "truncated",\n "screenshot",\n "gaps"\n ],\n "type": "object"\n },\n "limitations": {\n "items": {\n "type": "string"\n },\n "type": "array"\n },\n "restore": {\n "const": "leave-as-is",\n "type": "string"\n },\n "steps": {\n "items": {\n "additionalProperties": false,\n "properties": {\n "after": {\n "anyOf": [\n {\n "additionalProperties": false,\n "properties": {\n "gaps": {\n "items": {\n "type": "string"\n },\n "type": "array"\n },\n "nodes": {\n "items": {\n "additionalProperties": false,\n "properties": {\n "actions": {\n "items": {\n "type": "string"\n },\n "type": "array"\n },\n "children_count": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "path": {\n "items": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "type": "array"\n },\n "role": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "title": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "value": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "path",\n "role",\n "title",\n "value",\n "actions",\n "children_count"\n ],\n "type": "object"\n },\n "type": "array"\n },\n "screenshot": {\n "anyOf": [\n {\n "additionalProperties": false,\n "properties": {\n "base64": {\n "minLength": 4,\n "type": "string"\n },\n "height": {\n "exclusiveMinimum": 0,\n "maximum": 9007199254740991,\n "type": "integer"\n },\n "mime_type": {\n "const": "image/png",\n "type": "string"\n },\n "sha256": {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n },\n "width": {\n "exclusiveMinimum": 0,\n "maximum": 9007199254740991,\n "type": "integer"\n }\n },\n "required": [\n "mime_type",\n "base64",\n "sha256",\n "width",\n "height"\n ],\n "type": "object"\n },\n {\n "type": "null"\n }\n ]\n },\n "truncated": {\n "type": "boolean"\n },\n "window": {\n "additionalProperties": false,\n "properties": {\n "executable": {\n "type": "string"\n },\n "launch_time": {\n "type": "number"\n },\n "pid": {\n "exclusiveMinimum": 0,\n "maximum": 9007199254740991,\n "type": "integer"\n },\n "title": {\n "type": "string"\n },\n "window_id": {\n "exclusiveMinimum": 0,\n "maximum": 9007199254740991,\n "type": "integer"\n }\n },\n "required": [\n "pid",\n "window_id",\n "executable",\n "launch_time",\n "title"\n ],\n "type": "object"\n }\n },\n "required": [\n "window",\n "nodes",\n "truncated",\n "screenshot",\n "gaps"\n ],\n "type": "object"\n },\n {\n "type": "null"\n }\n ]\n },\n "before": {\n "additionalProperties": false,\n "properties": {\n "gaps": {\n "items": {\n "type": "string"\n },\n "type": "array"\n },\n "nodes": {\n "items": {\n "additionalProperties": false,\n "properties": {\n "actions": {\n "items": {\n "type": "string"\n },\n "type": "array"\n },\n "children_count": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "path": {\n "items": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "type": "array"\n },\n "role": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "title": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "value": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "path",\n "role",\n "title",\n "value",\n "actions",\n "children_count"\n ],\n "type": "object"\n },\n "type": "array"\n },\n "screenshot": {\n "anyOf": [\n {\n "additionalProperties": false,\n "properties": {\n "base64": {\n "minLength": 4,\n "type": "string"\n },\n "height": {\n "exclusiveMinimum": 0,\n "maximum": 9007199254740991,\n "type": "integer"\n },\n "mime_type": {\n "const": "image/png",\n "type": "string"\n },\n "sha256": {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n },\n "width": {\n "exclusiveMinimum": 0,\n "maximum": 9007199254740991,\n "type": "integer"\n }\n },\n "required": [\n "mime_type",\n "base64",\n "sha256",\n "width",\n "height"\n ],\n "type": "object"\n },\n {\n "type": "null"\n }\n ]\n },\n "truncated": {\n "type": "boolean"\n },\n "window": {\n "additionalProperties": false,\n "properties": {\n "executable": {\n "type": "string"\n },\n "launch_time": {\n "type": "number"\n },\n "pid": {\n "exclusiveMinimum": 0,\n "maximum": 9007199254740991,\n "type": "integer"\n },\n "title": {\n "type": "string"\n },\n "window_id": {\n "exclusiveMinimum": 0,\n "maximum": 9007199254740991,\n "type": "integer"\n }\n },\n "required": [\n "pid",\n "window_id",\n "executable",\n "launch_time",\n "title"\n ],\n "type": "object"\n }\n },\n "required": [\n "window",\n "nodes",\n "truncated",\n "screenshot",\n "gaps"\n ],\n "type": "object"\n },\n "index": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "kind": {\n "type": "string"\n },\n "outcome": {\n "enum": [\n "completed",\n "failed",\n "cancelled"\n ],\n "type": "string"\n },\n "reason": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "index",\n "kind",\n "before",\n "after",\n "outcome",\n "reason"\n ],\n "type": "object"\n },\n "type": "array"\n },\n "target_sha256": {\n "type": "string"\n }\n },\n "required": [\n "target_sha256",\n "initial",\n "steps",\n "restore",\n "limitations"\n ],\n "type": "object"\n }\n },\n "required": [\n "result",\n "evidence_id",\n "evidence"\n ],\n "type": "object"\n },\n "requiresSession": false,\n "title": "Observe Native Ui"\n },\n {\n "analysisOperation": "capture_native_ui_scenario",\n "annotations": {\n "destructiveHint": true,\n "idempotentHint": false,\n "openWorldHint": true,\n "readOnlyHint": false\n },\n "description": "Run selected-element press, increment/decrement scroll, AXValue text entry and bounded wait steps in one exact native app window. Returns ordered before/after captures and action/capture failures. Actions can change app data, network activity and persistent state; application state is left as-is and restoration is not attempted.",\n "effects": {\n "accessesNetwork": true,\n "changesUiState": true,\n "idempotent": false,\n "launchesProcess": true,\n "mayDiscardData": true,\n "mutatesSession": true,\n "mutatesTarget": true,\n "writesFilesystem": true\n },\n "inputSchema": {\n "$schema": "https://json-schema.org/draft/2020-12/schema",\n "additionalProperties": false,\n "examples": [\n {\n "pid": 123,\n "steps": [\n {\n "kind": "wait",\n "milliseconds": 100\n }\n ],\n "window_id": 456\n }\n ],\n "properties": {\n "accessibility": {\n "default": true,\n "description": "Value for accessibility.",\n "type": "boolean"\n },\n "max_nodes": {\n "default": 500,\n "description": "Maximum accessibility nodes per capture; increase for large windows.",\n "exclusiveMinimum": 0,\n "maximum": 9007199254740991,\n "type": "integer"\n },\n "pid": {\n "description": "Value for pid.",\n "exclusiveMinimum": 0,\n "maximum": 9007199254740991,\n "type": "integer"\n },\n "screenshot": {\n "default": true,\n "description": "Value for screenshot.",\n "type": "boolean"\n },\n "steps": {\n "description": "Value for steps.",\n "items": {\n "oneOf": [\n {\n "additionalProperties": false,\n "properties": {\n "kind": {\n "const": "click",\n "description": "Value for kind.",\n "type": "string"\n },\n "path": {\n "description": "Local filesystem path used by this operation.",\n "items": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "maxItems": 32,\n "type": "array"\n }\n },\n "required": [\n "kind",\n "path"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "direction": {\n "description": "Direction in which to traverse or compare relationships.",\n "enum": [\n "increment",\n "decrement"\n ],\n "type": "string"\n },\n "kind": {\n "const": "scroll",\n "description": "Value for kind.",\n "type": "string"\n },\n "path": {\n "description": "Local filesystem path used by this operation.",\n "items": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "maxItems": 32,\n "type": "array"\n }\n },\n "required": [\n "kind",\n "path",\n "direction"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "kind": {\n "const": "key-entry",\n "description": "Value for kind.",\n "type": "string"\n },\n "path": {\n "description": "Local filesystem path used by this operation.",\n "items": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "maxItems": 32,\n "type": "array"\n },\n "text": {\n "description": "Value for text.",\n "type": "string"\n }\n },\n "required": [\n "kind",\n "path",\n "text"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "kind": {\n "const": "wait",\n "description": "Value for kind.",\n "type": "string"\n },\n "milliseconds": {\n "description": "Wait duration in milliseconds, within the 180-second operation deadline.",\n "maximum": 180000,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "kind",\n "milliseconds"\n ],\n "type": "object"\n }\n ]\n },\n "minItems": 1,\n "type": "array"\n },\n "window_id": {\n "description": "Value for window id.",\n "exclusiveMinimum": 0,\n "maximum": 9007199254740991,\n "type": "integer"\n }\n },\n "required": [\n "pid",\n "window_id",\n "steps"\n ],\n "type": "object"\n },\n "kind": "native-provider",\n "name": "capture_native_ui_scenario",\n "outputSchema": {\n "$defs": {\n "__schema0": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "number"\n },\n {\n "type": "boolean"\n },\n {\n "type": "null"\n },\n {\n "items": {\n "$ref": "#/$defs/__schema0"\n },\n "type": "array"\n },\n {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n }\n ]\n }\n },\n "$schema": "https://json-schema.org/draft/2020-12/schema",\n "additionalProperties": false,\n "properties": {\n "evidence": {\n "additionalProperties": false,\n "properties": {\n "analysis_profile": {\n "additionalProperties": false,\n "properties": {\n "digest": {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n },\n "parameters": {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n },\n "provider": {\n "additionalProperties": false,\n "properties": {\n "id": {\n "minLength": 1,\n "type": "string"\n },\n "name": {\n "minLength": 1,\n "type": "string"\n },\n "version": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "id",\n "name",\n "version"\n ],\n "type": "object"\n }\n },\n "required": [\n "provider",\n "parameters",\n "digest"\n ],\n "type": "object"\n },\n "authority": {\n "enum": [\n "shipped-artifact",\n "controlled-replay",\n "historical-reference",\n "external-service",\n "analyst-inference"\n ],\n "type": "string"\n },\n "confidence": {\n "enum": [\n "observed",\n "derived",\n "inferred"\n ],\n "type": "string"\n },\n "environment": {\n "anyOf": [\n {\n "additionalProperties": false,\n "properties": {\n "architecture": {\n "minLength": 1,\n "type": "string"\n },\n "id": {\n "minLength": 1,\n "type": "string"\n },\n "isolation": {\n "enum": [\n "none",\n "process",\n "container",\n "virtual-machine"\n ],\n "type": "string"\n },\n "platform": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "id",\n "platform",\n "architecture",\n "isolation"\n ],\n "type": "object"\n },\n {\n "type": "null"\n }\n ]\n },\n "evidence_id": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "evidence_links": {\n "items": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "type": "array"\n },\n "limitations": {\n "items": {\n "type": "string"\n },\n "type": "array"\n },\n "locations": {\n "items": {\n "oneOf": [\n {\n "additionalProperties": false,\n "properties": {\n "address": {\n "minLength": 1,\n "type": "string"\n },\n "kind": {\n "const": "address",\n "type": "string"\n }\n },\n "required": [\n "kind",\n "address"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "end": {\n "minLength": 1,\n "type": "string"\n },\n "kind": {\n "const": "address-range",\n "type": "string"\n },\n "start": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "kind",\n "start",\n "end"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "kind": {\n "const": "artifact-path",\n "type": "string"\n },\n "path": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "kind",\n "path"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "kind": {\n "const": "file-offset",\n "type": "string"\n },\n "offset": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "kind",\n "offset"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "end": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "kind": {\n "const": "file-offset-range",\n "type": "string"\n },\n "start": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "kind",\n "start",\n "end"\n ],\n "type": "object"\n }\n ]\n },\n "type": "array"\n },\n "normalized_result": {\n "$ref": "#/$defs/__schema0"\n },\n "operation": {\n "minLength": 1,\n "type": "string"\n },\n "parameters": {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n },\n "predicate_type": {\n "minLength": 1,\n "type": "string"\n },\n "provider": {\n "additionalProperties": false,\n "properties": {\n "id": {\n "minLength": 1,\n "type": "string"\n },\n "name": {\n "minLength": 1,\n "type": "string"\n },\n "version": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "id",\n "name",\n "version"\n ],\n "type": "object"\n },\n "raw_result": {\n "anyOf": [\n {\n "$ref": "#/$defs/__schema0"\n },\n {\n "type": "null"\n }\n ]\n },\n "subject": {\n "anyOf": [\n {\n "additionalProperties": false,\n "properties": {\n "architecture": {\n "anyOf": [\n {\n "enum": [\n "x86",\n "x86_64",\n "arm",\n "arm64"\n ],\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "digest": {\n "additionalProperties": false,\n "properties": {\n "sha256": {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n }\n },\n "required": [\n "sha256"\n ],\n "type": "object"\n },\n "format": {\n "enum": [\n "hopper",\n "analysis-database",\n "mach-o",\n "elf",\n "pe",\n "dos-mz",\n "dos-com",\n "zip",\n "ipa",\n "apk",\n "msix",\n "appx",\n "asar",\n "dmg",\n "pkg",\n "plist",\n "javascript",\n "source-map",\n "directory",\n "file",\n "unknown",\n "mach-o-universal",\n "javascript-bundle",\n "entitlements"\n ],\n "type": "string"\n },\n "local_path": {\n "type": "string"\n },\n "name": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "name",\n "digest",\n "format",\n "architecture",\n "local_path"\n ],\n "type": "object"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "evidence_id",\n "subject",\n "provider",\n "predicate_type",\n "operation",\n "parameters",\n "raw_result",\n "normalized_result",\n "confidence",\n "authority",\n "environment",\n "limitations",\n "locations",\n "evidence_links"\n ],\n "type": "object"\n },\n "evidence_id": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "result": {\n "additionalProperties": false,\n "properties": {\n "initial": {\n "additionalProperties": false,\n "properties": {\n "gaps": {\n "items": {\n "type": "string"\n },\n "type": "array"\n },\n "nodes": {\n "items": {\n "additionalProperties": false,\n "properties": {\n "actions": {\n "items": {\n "type": "string"\n },\n "type": "array"\n },\n "children_count": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "path": {\n "items": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "type": "array"\n },\n "role": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "title": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "value": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "path",\n "role",\n "title",\n "value",\n "actions",\n "children_count"\n ],\n "type": "object"\n },\n "type": "array"\n },\n "screenshot": {\n "anyOf": [\n {\n "additionalProperties": false,\n "properties": {\n "base64": {\n "minLength": 4,\n "type": "string"\n },\n "height": {\n "exclusiveMinimum": 0,\n "maximum": 9007199254740991,\n "type": "integer"\n },\n "mime_type": {\n "const": "image/png",\n "type": "string"\n },\n "sha256": {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n },\n "width": {\n "exclusiveMinimum": 0,\n "maximum": 9007199254740991,\n "type": "integer"\n }\n },\n "required": [\n "mime_type",\n "base64",\n "sha256",\n "width",\n "height"\n ],\n "type": "object"\n },\n {\n "type": "null"\n }\n ]\n },\n "truncated": {\n "type": "boolean"\n },\n "window": {\n "additionalProperties": false,\n "properties": {\n "executable": {\n "type": "string"\n },\n "launch_time": {\n "type": "number"\n },\n "pid": {\n "exclusiveMinimum": 0,\n "maximum": 9007199254740991,\n "type": "integer"\n },\n "title": {\n "type": "string"\n },\n "window_id": {\n "exclusiveMinimum": 0,\n "maximum": 9007199254740991,\n "type": "integer"\n }\n },\n "required": [\n "pid",\n "window_id",\n "executable",\n "launch_time",\n "title"\n ],\n "type": "object"\n }\n },\n "required": [\n "window",\n "nodes",\n "truncated",\n "screenshot",\n "gaps"\n ],\n "type": "object"\n },\n "limitations": {\n "items": {\n "type": "string"\n },\n "type": "array"\n },\n "restore": {\n "const": "leave-as-is",\n "type": "string"\n },\n "steps": {\n "items": {\n "additionalProperties": false,\n "properties": {\n "after": {\n "anyOf": [\n {\n "additionalProperties": false,\n "properties": {\n "gaps": {\n "items": {\n "type": "string"\n },\n "type": "array"\n },\n "nodes": {\n "items": {\n "additionalProperties": false,\n "properties": {\n "actions": {\n "items": {\n "type": "string"\n },\n "type": "array"\n },\n "children_count": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "path": {\n "items": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "type": "array"\n },\n "role": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "title": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "value": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "path",\n "role",\n "title",\n "value",\n "actions",\n "children_count"\n ],\n "type": "object"\n },\n "type": "array"\n },\n "screenshot": {\n "anyOf": [\n {\n "additionalProperties": false,\n "properties": {\n "base64": {\n "minLength": 4,\n "type": "string"\n },\n "height": {\n "exclusiveMinimum": 0,\n "maximum": 9007199254740991,\n "type": "integer"\n },\n "mime_type": {\n "const": "image/png",\n "type": "string"\n },\n "sha256": {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n },\n "width": {\n "exclusiveMinimum": 0,\n "maximum": 9007199254740991,\n "type": "integer"\n }\n },\n "required": [\n "mime_type",\n "base64",\n "sha256",\n "width",\n "height"\n ],\n "type": "object"\n },\n {\n "type": "null"\n }\n ]\n },\n "truncated": {\n "type": "boolean"\n },\n "window": {\n "additionalProperties": false,\n "properties": {\n "executable": {\n "type": "string"\n },\n "launch_time": {\n "type": "number"\n },\n "pid": {\n "exclusiveMinimum": 0,\n "maximum": 9007199254740991,\n "type": "integer"\n },\n "title": {\n "type": "string"\n },\n "window_id": {\n "exclusiveMinimum": 0,\n "maximum": 9007199254740991,\n "type": "integer"\n }\n },\n "required": [\n "pid",\n "window_id",\n "executable",\n "launch_time",\n "title"\n ],\n "type": "object"\n }\n },\n "required": [\n "window",\n "nodes",\n "truncated",\n "screenshot",\n "gaps"\n ],\n "type": "object"\n },\n {\n "type": "null"\n }\n ]\n },\n "before": {\n "additionalProperties": false,\n "properties": {\n "gaps": {\n "items": {\n "type": "string"\n },\n "type": "array"\n },\n "nodes": {\n "items": {\n "additionalProperties": false,\n "properties": {\n "actions": {\n "items": {\n "type": "string"\n },\n "type": "array"\n },\n "children_count": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "path": {\n "items": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "type": "array"\n },\n "role": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "title": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "value": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "path",\n "role",\n "title",\n "value",\n "actions",\n "children_count"\n ],\n "type": "object"\n },\n "type": "array"\n },\n "screenshot": {\n "anyOf": [\n {\n "additionalProperties": false,\n "properties": {\n "base64": {\n "minLength": 4,\n "type": "string"\n },\n "height": {\n "exclusiveMinimum": 0,\n "maximum": 9007199254740991,\n "type": "integer"\n },\n "mime_type": {\n "const": "image/png",\n "type": "string"\n },\n "sha256": {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n },\n "width": {\n "exclusiveMinimum": 0,\n "maximum": 9007199254740991,\n "type": "integer"\n }\n },\n "required": [\n "mime_type",\n "base64",\n "sha256",\n "width",\n "height"\n ],\n "type": "object"\n },\n {\n "type": "null"\n }\n ]\n },\n "truncated": {\n "type": "boolean"\n },\n "window": {\n "additionalProperties": false,\n "properties": {\n "executable": {\n "type": "string"\n },\n "launch_time": {\n "type": "number"\n },\n "pid": {\n "exclusiveMinimum": 0,\n "maximum": 9007199254740991,\n "type": "integer"\n },\n "title": {\n "type": "string"\n },\n "window_id": {\n "exclusiveMinimum": 0,\n "maximum": 9007199254740991,\n "type": "integer"\n }\n },\n "required": [\n "pid",\n "window_id",\n "executable",\n "launch_time",\n "title"\n ],\n "type": "object"\n }\n },\n "required": [\n "window",\n "nodes",\n "truncated",\n "screenshot",\n "gaps"\n ],\n "type": "object"\n },\n "index": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "kind": {\n "type": "string"\n },\n "outcome": {\n "enum": [\n "completed",\n "failed",\n "cancelled"\n ],\n "type": "string"\n },\n "reason": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "index",\n "kind",\n "before",\n "after",\n "outcome",\n "reason"\n ],\n "type": "object"\n },\n "type": "array"\n },\n "target_sha256": {\n "type": "string"\n }\n },\n "required": [\n "target_sha256",\n "initial",\n "steps",\n "restore",\n "limitations"\n ],\n "type": "object"\n }\n },\n "required": [\n "result",\n "evidence_id",\n "evidence"\n ],\n "type": "object"\n },\n "requiresSession": false,\n "title": "Capture Native Ui Scenario"\n },\n {\n "analysisOperation": "inspect_macho",\n "annotations": {\n "destructiveHint": false,\n "idempotentHint": true,\n "openWorldHint": true,\n "readOnlyHint": false\n },\n "description": "Inspect Mach-O slices, load commands, imports, exports, dependencies, build metadata, segments, sections, permissions, and exact command provenance without launching Hopper.",\n "effects": {\n "accessesNetwork": false,\n "changesUiState": false,\n "idempotent": true,\n "launchesProcess": true,\n "mayDiscardData": false,\n "mutatesSession": true,\n "mutatesTarget": false,\n "writesFilesystem": false\n },\n "inputSchema": {\n "$schema": "https://json-schema.org/draft/2020-12/schema",\n "examples": [\n {}\n ],\n "properties": {},\n "type": "object"\n },\n "kind": "native-provider",\n "name": "inspect_macho",\n "outputSchema": {\n "$defs": {\n "__schema0": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "number"\n },\n {\n "type": "boolean"\n },\n {\n "type": "null"\n },\n {\n "items": {\n "$ref": "#/$defs/__schema0"\n },\n "type": "array"\n },\n {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n }\n ]\n }\n },\n "$schema": "https://json-schema.org/draft/2020-12/schema",\n "additionalProperties": false,\n "properties": {\n "evidence": {\n "additionalProperties": false,\n "properties": {\n "analysis_profile": {\n "additionalProperties": false,\n "properties": {\n "digest": {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n },\n "parameters": {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n },\n "provider": {\n "additionalProperties": false,\n "properties": {\n "id": {\n "minLength": 1,\n "type": "string"\n },\n "name": {\n "minLength": 1,\n "type": "string"\n },\n "version": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "id",\n "name",\n "version"\n ],\n "type": "object"\n }\n },\n "required": [\n "provider",\n "parameters",\n "digest"\n ],\n "type": "object"\n },\n "authority": {\n "enum": [\n "shipped-artifact",\n "controlled-replay",\n "historical-reference",\n "external-service",\n "analyst-inference"\n ],\n "type": "string"\n },\n "confidence": {\n "enum": [\n "observed",\n "derived",\n "inferred"\n ],\n "type": "string"\n },\n "environment": {\n "anyOf": [\n {\n "additionalProperties": false,\n "properties": {\n "architecture": {\n "minLength": 1,\n "type": "string"\n },\n "id": {\n "minLength": 1,\n "type": "string"\n },\n "isolation": {\n "enum": [\n "none",\n "process",\n "container",\n "virtual-machine"\n ],\n "type": "string"\n },\n "platform": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "id",\n "platform",\n "architecture",\n "isolation"\n ],\n "type": "object"\n },\n {\n "type": "null"\n }\n ]\n },\n "evidence_id": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "evidence_links": {\n "items": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "type": "array"\n },\n "limitations": {\n "items": {\n "type": "string"\n },\n "type": "array"\n },\n "locations": {\n "items": {\n "oneOf": [\n {\n "additionalProperties": false,\n "properties": {\n "address": {\n "minLength": 1,\n "type": "string"\n },\n "kind": {\n "const": "address",\n "type": "string"\n }\n },\n "required": [\n "kind",\n "address"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "end": {\n "minLength": 1,\n "type": "string"\n },\n "kind": {\n "const": "address-range",\n "type": "string"\n },\n "start": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "kind",\n "start",\n "end"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "kind": {\n "const": "artifact-path",\n "type": "string"\n },\n "path": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "kind",\n "path"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "kind": {\n "const": "file-offset",\n "type": "string"\n },\n "offset": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "kind",\n "offset"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "end": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "kind": {\n "const": "file-offset-range",\n "type": "string"\n },\n "start": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "kind",\n "start",\n "end"\n ],\n "type": "object"\n }\n ]\n },\n "type": "array"\n },\n "normalized_result": {\n "$ref": "#/$defs/__schema0"\n },\n "operation": {\n "minLength": 1,\n "type": "string"\n },\n "parameters": {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n },\n "predicate_type": {\n "minLength": 1,\n "type": "string"\n },\n "provider": {\n "additionalProperties": false,\n "properties": {\n "id": {\n "minLength": 1,\n "type": "string"\n },\n "name": {\n "minLength": 1,\n "type": "string"\n },\n "version": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "id",\n "name",\n "version"\n ],\n "type": "object"\n },\n "raw_result": {\n "anyOf": [\n {\n "$ref": "#/$defs/__schema0"\n },\n {\n "type": "null"\n }\n ]\n },\n "subject": {\n "anyOf": [\n {\n "additionalProperties": false,\n "properties": {\n "architecture": {\n "anyOf": [\n {\n "enum": [\n "x86",\n "x86_64",\n "arm",\n "arm64"\n ],\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "digest": {\n "additionalProperties": false,\n "properties": {\n "sha256": {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n }\n },\n "required": [\n "sha256"\n ],\n "type": "object"\n },\n "format": {\n "enum": [\n "hopper",\n "analysis-database",\n "mach-o",\n "elf",\n "pe",\n "dos-mz",\n "dos-com",\n "zip",\n "ipa",\n "apk",\n "msix",\n "appx",\n "asar",\n "dmg",\n "pkg",\n "plist",\n "javascript",\n "source-map",\n "directory",\n "file",\n "unknown",\n "mach-o-universal",\n "javascript-bundle",\n "entitlements"\n ],\n "type": "string"\n },\n "local_path": {\n "type": "string"\n },\n "name": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "name",\n "digest",\n "format",\n "architecture",\n "local_path"\n ],\n "type": "object"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "evidence_id",\n "subject",\n "provider",\n "predicate_type",\n "operation",\n "parameters",\n "raw_result",\n "normalized_result",\n "confidence",\n "authority",\n "environment",\n "limitations",\n "locations",\n "evidence_links"\n ],\n "type": "object"\n },\n "evidence_id": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "result": {\n "additionalProperties": false,\n "properties": {\n "architectures": {\n "additionalProperties": false,\n "properties": {\n "exhaustive": {\n "type": "boolean"\n },\n "items": {\n "items": {\n "additionalProperties": false,\n "properties": {\n "alignment": {\n "anyOf": [\n {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n {\n "type": "null"\n }\n ]\n },\n "cpu_subtype": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "cpu_type": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "file_offset": {\n "anyOf": [\n {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n {\n "type": "null"\n }\n ]\n },\n "name": {\n "type": "string"\n },\n "size": {\n "anyOf": [\n {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "name",\n "cpu_type",\n "cpu_subtype",\n "file_offset",\n "size",\n "alignment"\n ],\n "type": "object"\n },\n "type": "array"\n },\n "limitations": {\n "items": {\n "type": "string"\n },\n "type": "array"\n },\n "total": {\n "anyOf": [\n {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "items",\n "total",\n "exhaustive",\n "limitations"\n ],\n "type": "object"\n },\n "build_metadata": {\n "additionalProperties": false,\n "properties": {\n "exhaustive": {\n "type": "boolean"\n },\n "items": {\n "items": {\n "additionalProperties": false,\n "properties": {\n "minimum_os": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "platform": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "sdk": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "tools": {\n "items": {\n "additionalProperties": false,\n "properties": {\n "name": {\n "type": "string"\n },\n "version": {\n "type": "string"\n }\n },\n "required": [\n "name",\n "version"\n ],\n "type": "object"\n },\n "type": "array"\n }\n },\n "required": [\n "platform",\n "minimum_os",\n "sdk",\n "tools"\n ],\n "type": "object"\n },\n "type": "array"\n },\n "limitations": {\n "items": {\n "type": "string"\n },\n "type": "array"\n },\n "total": {\n "anyOf": [\n {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "items",\n "total",\n "exhaustive",\n "limitations"\n ],\n "type": "object"\n },\n "dependencies": {\n "additionalProperties": false,\n "properties": {\n "exhaustive": {\n "type": "boolean"\n },\n "items": {\n "items": {\n "additionalProperties": false,\n "properties": {\n "compatibility_version": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "current_version": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "kind": {\n "type": "string"\n },\n "path": {\n "type": "string"\n }\n },\n "required": [\n "path",\n "kind",\n "current_version",\n "compatibility_version"\n ],\n "type": "object"\n },\n "type": "array"\n },\n "limitations": {\n "items": {\n "type": "string"\n },\n "type": "array"\n },\n "total": {\n "anyOf": [\n {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "items",\n "total",\n "exhaustive",\n "limitations"\n ],\n "type": "object"\n },\n "endian": {\n "anyOf": [\n {\n "enum": [\n "little",\n "big"\n ],\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "entrypoints": {\n "additionalProperties": false,\n "properties": {\n "exhaustive": {\n "type": "boolean"\n },\n "items": {\n "items": {\n "additionalProperties": false,\n "properties": {\n "file_offset": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "file_offset"\n ],\n "type": "object"\n },\n "type": "array"\n },\n "limitations": {\n "items": {\n "type": "string"\n },\n "type": "array"\n },\n "total": {\n "anyOf": [\n {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "items",\n "total",\n "exhaustive",\n "limitations"\n ],\n "type": "object"\n },\n "exports": {\n "additionalProperties": false,\n "properties": {\n "exhaustive": {\n "type": "boolean"\n },\n "items": {\n "items": {\n "additionalProperties": false,\n "properties": {\n "address": {\n "anyOf": [\n {\n "pattern": "^0x[a-fA-F0-9]+$",\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "name": {\n "type": "string"\n },\n "reexport": {\n "anyOf": [\n {\n "type": "boolean"\n },\n {\n "type": "null"\n }\n ]\n },\n "source": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "weak": {\n "anyOf": [\n {\n "type": "boolean"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "name",\n "address",\n "weak",\n "reexport",\n "source"\n ],\n "type": "object"\n },\n "type": "array"\n },\n "limitations": {\n "items": {\n "type": "string"\n },\n "type": "array"\n },\n "total": {\n "anyOf": [\n {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "items",\n "total",\n "exhaustive",\n "limitations"\n ],\n "type": "object"\n },\n "file_type": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "flags": {\n "items": {\n "type": "string"\n },\n "type": "array"\n },\n "format": {\n "const": "mach-o",\n "type": "string"\n },\n "imports": {\n "additionalProperties": false,\n "properties": {\n "exhaustive": {\n "type": "boolean"\n },\n "items": {\n "items": {\n "additionalProperties": false,\n "properties": {\n "address": {\n "anyOf": [\n {\n "pattern": "^0x[a-fA-F0-9]+$",\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "name": {\n "type": "string"\n },\n "reexport": {\n "anyOf": [\n {\n "type": "boolean"\n },\n {\n "type": "null"\n }\n ]\n },\n "source": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "weak": {\n "anyOf": [\n {\n "type": "boolean"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "name",\n "address",\n "weak",\n "reexport",\n "source"\n ],\n "type": "object"\n },\n "type": "array"\n },\n "limitations": {\n "items": {\n "type": "string"\n },\n "type": "array"\n },\n "total": {\n "anyOf": [\n {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "items",\n "total",\n "exhaustive",\n "limitations"\n ],\n "type": "object"\n },\n "limitations": {\n "items": {\n "type": "string"\n },\n "type": "array"\n },\n "load_commands": {\n "additionalProperties": false,\n "properties": {\n "exhaustive": {\n "type": "boolean"\n },\n "items": {\n "items": {\n "additionalProperties": false,\n "properties": {\n "fields": {\n "additionalProperties": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "number"\n },\n {\n "type": "null"\n }\n ]\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n },\n "index": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "kind": {\n "type": "string"\n }\n },\n "required": [\n "index",\n "kind",\n "fields"\n ],\n "type": "object"\n },\n "type": "array"\n },\n "limitations": {\n "items": {\n "type": "string"\n },\n "type": "array"\n },\n "total": {\n "anyOf": [\n {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "items",\n "total",\n "exhaustive",\n "limitations"\n ],\n "type": "object"\n },\n "provenance": {\n "items": {\n "additionalProperties": false,\n "properties": {\n "command": {\n "items": {\n "type": "string"\n },\n "type": "array"\n },\n "executable_sha256": {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n },\n "exit": {\n "additionalProperties": false,\n "properties": {\n "code": {\n "anyOf": [\n {\n "maximum": 9007199254740991,\n "minimum": -9007199254740991,\n "type": "integer"\n },\n {\n "type": "null"\n }\n ]\n },\n "signal": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "code",\n "signal"\n ],\n "type": "object"\n },\n "stderr_bytes": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "stdout_bytes": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "tool": {\n "minLength": 1,\n "type": "string"\n },\n "tool_version": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "version_reason": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "tool",\n "command",\n "tool_version",\n "version_reason",\n "executable_sha256",\n "exit",\n "stdout_bytes",\n "stderr_bytes"\n ],\n "type": "object"\n },\n "type": "array"\n },\n "segments": {\n "additionalProperties": false,\n "properties": {\n "exhaustive": {\n "type": "boolean"\n },\n "items": {\n "items": {\n "additionalProperties": false,\n "properties": {\n "file_offset": {\n "anyOf": [\n {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n {\n "type": "null"\n }\n ]\n },\n "file_size": {\n "anyOf": [\n {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n {\n "type": "null"\n }\n ]\n },\n "initial_permissions": {\n "additionalProperties": false,\n "properties": {\n "execute": {\n "anyOf": [\n {\n "type": "boolean"\n },\n {\n "type": "null"\n }\n ]\n },\n "raw": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "read": {\n "anyOf": [\n {\n "type": "boolean"\n },\n {\n "type": "null"\n }\n ]\n },\n "write": {\n "anyOf": [\n {\n "type": "boolean"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "read",\n "write",\n "execute",\n "raw"\n ],\n "type": "object"\n },\n "maximum_permissions": {\n "additionalProperties": false,\n "properties": {\n "execute": {\n "anyOf": [\n {\n "type": "boolean"\n },\n {\n "type": "null"\n }\n ]\n },\n "raw": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "read": {\n "anyOf": [\n {\n "type": "boolean"\n },\n {\n "type": "null"\n }\n ]\n },\n "write": {\n "anyOf": [\n {\n "type": "boolean"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "read",\n "write",\n "execute",\n "raw"\n ],\n "type": "object"\n },\n "name": {\n "type": "string"\n },\n "sections": {\n "additionalProperties": false,\n "properties": {\n "exhaustive": {\n "type": "boolean"\n },\n "items": {\n "items": {\n "additionalProperties": false,\n "properties": {\n "address": {\n "anyOf": [\n {\n "pattern": "^0x[a-fA-F0-9]+$",\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "alignment": {\n "anyOf": [\n {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n {\n "type": "null"\n }\n ]\n },\n "file_offset": {\n "anyOf": [\n {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n {\n "type": "null"\n }\n ]\n },\n "flags": {\n "items": {\n "type": "string"\n },\n "type": "array"\n },\n "name": {\n "type": "string"\n },\n "segment": {\n "type": "string"\n },\n "size": {\n "anyOf": [\n {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "segment",\n "name",\n "address",\n "size",\n "file_offset",\n "alignment",\n "flags"\n ],\n "type": "object"\n },\n "type": "array"\n },\n "limitations": {\n "items": {\n "type": "string"\n },\n "type": "array"\n },\n "total": {\n "anyOf": [\n {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "items",\n "total",\n "exhaustive",\n "limitations"\n ],\n "type": "object"\n },\n "vm_address": {\n "anyOf": [\n {\n "pattern": "^0x[a-fA-F0-9]+$",\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "vm_size": {\n "anyOf": [\n {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "name",\n "vm_address",\n "vm_size",\n "file_offset",\n "file_size",\n "maximum_permissions",\n "initial_permissions",\n "sections"\n ],\n "type": "object"\n },\n "type": "array"\n },\n "limitations": {\n "items": {\n "type": "string"\n },\n "type": "array"\n },\n "total": {\n "anyOf": [\n {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "items",\n "total",\n "exhaustive",\n "limitations"\n ],\n "type": "object"\n },\n "uuid": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "word_size": {\n "anyOf": [\n {\n "anyOf": [\n {\n "const": 32,\n "type": "number"\n },\n {\n "const": 64,\n "type": "number"\n }\n ]\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "format",\n "endian",\n "word_size",\n "file_type",\n "flags",\n "uuid",\n "entrypoints",\n "architectures",\n "build_metadata",\n "load_commands",\n "dependencies",\n "imports",\n "exports",\n "segments",\n "provenance",\n "limitations"\n ],\n "type": "object"\n }\n },\n "required": [\n "result",\n "evidence_id",\n "evidence"\n ],\n "type": "object"\n },\n "requiresSession": false,\n "title": "Inspect Macho"\n },\n {\n "analysisOperation": "inspect_signature",\n "annotations": {\n "destructiveHint": false,\n "idempotentHint": true,\n "openWorldHint": true,\n "readOnlyHint": false\n },\n "description": "Inspect the active artifact\'s code-signing identity, hashes, authorities, requirements, entitlements, hardened-runtime state, and exact command provenance.",\n "effects": {\n "accessesNetwork": false,\n "changesUiState": false,\n "idempotent": true,\n "launchesProcess": true,\n "mayDiscardData": false,\n "mutatesSession": true,\n "mutatesTarget": false,\n "writesFilesystem": false\n },\n "inputSchema": {\n "$schema": "https://json-schema.org/draft/2020-12/schema",\n "examples": [\n {}\n ],\n "properties": {},\n "type": "object"\n },\n "kind": "native-provider",\n "name": "inspect_signature",\n "outputSchema": {\n "$defs": {\n "__schema0": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "number"\n },\n {\n "type": "boolean"\n },\n {\n "type": "null"\n },\n {\n "items": {\n "$ref": "#/$defs/__schema0"\n },\n "type": "array"\n },\n {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n }\n ]\n }\n },\n "$schema": "https://json-schema.org/draft/2020-12/schema",\n "additionalProperties": false,\n "properties": {\n "evidence": {\n "additionalProperties": false,\n "properties": {\n "analysis_profile": {\n "additionalProperties": false,\n "properties": {\n "digest": {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n },\n "parameters": {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n },\n "provider": {\n "additionalProperties": false,\n "properties": {\n "id": {\n "minLength": 1,\n "type": "string"\n },\n "name": {\n "minLength": 1,\n "type": "string"\n },\n "version": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "id",\n "name",\n "version"\n ],\n "type": "object"\n }\n },\n "required": [\n "provider",\n "parameters",\n "digest"\n ],\n "type": "object"\n },\n "authority": {\n "enum": [\n "shipped-artifact",\n "controlled-replay",\n "historical-reference",\n "external-service",\n "analyst-inference"\n ],\n "type": "string"\n },\n "confidence": {\n "enum": [\n "observed",\n "derived",\n "inferred"\n ],\n "type": "string"\n },\n "environment": {\n "anyOf": [\n {\n "additionalProperties": false,\n "properties": {\n "architecture": {\n "minLength": 1,\n "type": "string"\n },\n "id": {\n "minLength": 1,\n "type": "string"\n },\n "isolation": {\n "enum": [\n "none",\n "process",\n "container",\n "virtual-machine"\n ],\n "type": "string"\n },\n "platform": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "id",\n "platform",\n "architecture",\n "isolation"\n ],\n "type": "object"\n },\n {\n "type": "null"\n }\n ]\n },\n "evidence_id": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "evidence_links": {\n "items": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "type": "array"\n },\n "limitations": {\n "items": {\n "type": "string"\n },\n "type": "array"\n },\n "locations": {\n "items": {\n "oneOf": [\n {\n "additionalProperties": false,\n "properties": {\n "address": {\n "minLength": 1,\n "type": "string"\n },\n "kind": {\n "const": "address",\n "type": "string"\n }\n },\n "required": [\n "kind",\n "address"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "end": {\n "minLength": 1,\n "type": "string"\n },\n "kind": {\n "const": "address-range",\n "type": "string"\n },\n "start": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "kind",\n "start",\n "end"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "kind": {\n "const": "artifact-path",\n "type": "string"\n },\n "path": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "kind",\n "path"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "kind": {\n "const": "file-offset",\n "type": "string"\n },\n "offset": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "kind",\n "offset"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "end": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "kind": {\n "const": "file-offset-range",\n "type": "string"\n },\n "start": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "kind",\n "start",\n "end"\n ],\n "type": "object"\n }\n ]\n },\n "type": "array"\n },\n "normalized_result": {\n "$ref": "#/$defs/__schema0"\n },\n "operation": {\n "minLength": 1,\n "type": "string"\n },\n "parameters": {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n },\n "predicate_type": {\n "minLength": 1,\n "type": "string"\n },\n "provider": {\n "additionalProperties": false,\n "properties": {\n "id": {\n "minLength": 1,\n "type": "string"\n },\n "name": {\n "minLength": 1,\n "type": "string"\n },\n "version": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "id",\n "name",\n "version"\n ],\n "type": "object"\n },\n "raw_result": {\n "anyOf": [\n {\n "$ref": "#/$defs/__schema0"\n },\n {\n "type": "null"\n }\n ]\n },\n "subject": {\n "anyOf": [\n {\n "additionalProperties": false,\n "properties": {\n "architecture": {\n "anyOf": [\n {\n "enum": [\n "x86",\n "x86_64",\n "arm",\n "arm64"\n ],\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "digest": {\n "additionalProperties": false,\n "properties": {\n "sha256": {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n }\n },\n "required": [\n "sha256"\n ],\n "type": "object"\n },\n "format": {\n "enum": [\n "hopper",\n "analysis-database",\n "mach-o",\n "elf",\n "pe",\n "dos-mz",\n "dos-com",\n "zip",\n "ipa",\n "apk",\n "msix",\n "appx",\n "asar",\n "dmg",\n "pkg",\n "plist",\n "javascript",\n "source-map",\n "directory",\n "file",\n "unknown",\n "mach-o-universal",\n "javascript-bundle",\n "entitlements"\n ],\n "type": "string"\n },\n "local_path": {\n "type": "string"\n },\n "name": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "name",\n "digest",\n "format",\n "architecture",\n "local_path"\n ],\n "type": "object"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "evidence_id",\n "subject",\n "provider",\n "predicate_type",\n "operation",\n "parameters",\n "raw_result",\n "normalized_result",\n "confidence",\n "authority",\n "environment",\n "limitations",\n "locations",\n "evidence_links"\n ],\n "type": "object"\n },\n "evidence_id": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "result": {\n "additionalProperties": false,\n "properties": {\n "authorities": {\n "items": {\n "type": "string"\n },\n "type": "array"\n },\n "cdhashes": {\n "items": {\n "type": "string"\n },\n "type": "array"\n },\n "designated_requirement": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "entitlements": {\n "anyOf": [\n {\n "$ref": "#/$defs/__schema0"\n },\n {\n "type": "null"\n }\n ]\n },\n "format": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "hardened_runtime": {\n "anyOf": [\n {\n "type": "boolean"\n },\n {\n "type": "null"\n }\n ]\n },\n "hash_algorithms": {\n "items": {\n "type": "string"\n },\n "type": "array"\n },\n "identifier": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "limitations": {\n "items": {\n "type": "string"\n },\n "type": "array"\n },\n "provenance": {\n "items": {\n "additionalProperties": false,\n "properties": {\n "command": {\n "items": {\n "type": "string"\n },\n "type": "array"\n },\n "executable_sha256": {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n },\n "exit": {\n "additionalProperties": false,\n "properties": {\n "code": {\n "anyOf": [\n {\n "maximum": 9007199254740991,\n "minimum": -9007199254740991,\n "type": "integer"\n },\n {\n "type": "null"\n }\n ]\n },\n "signal": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "code",\n "signal"\n ],\n "type": "object"\n },\n "stderr_bytes": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "stdout_bytes": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "tool": {\n "minLength": 1,\n "type": "string"\n },\n "tool_version": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "version_reason": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "tool",\n "command",\n "tool_version",\n "version_reason",\n "executable_sha256",\n "exit",\n "stdout_bytes",\n "stderr_bytes"\n ],\n "type": "object"\n },\n "type": "array"\n },\n "signed": {\n "type": "boolean"\n },\n "team_identifier": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "timestamp": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "signed",\n "identifier",\n "team_identifier",\n "format",\n "cdhashes",\n "hash_algorithms",\n "authorities",\n "designated_requirement",\n "entitlements",\n "timestamp",\n "hardened_runtime",\n "provenance",\n "limitations"\n ],\n "type": "object"\n }\n },\n "required": [\n "result",\n "evidence_id",\n "evidence"\n ],\n "type": "object"\n },\n "requiresSession": false,\n "title": "Inspect Signature"\n },\n {\n "analysisOperation": "inspect_plist",\n "annotations": {\n "destructiveHint": false,\n "idempotentHint": true,\n "openWorldHint": true,\n "readOnlyHint": false\n },\n "description": "Parse Info.plist from the active artifact by default, or pass any local plist path. Returns normalized JSON rather than plutil text.",\n "effects": {\n "accessesNetwork": false,\n "changesUiState": false,\n "idempotent": true,\n "launchesProcess": true,\n "mayDiscardData": false,\n "mutatesSession": true,\n "mutatesTarget": false,\n "writesFilesystem": false\n },\n "inputSchema": {\n "$schema": "https://json-schema.org/draft/2020-12/schema",\n "examples": [\n {\n "path": "/Applications/Example.app/Contents/Info.plist"\n }\n ],\n "properties": {\n "path": {\n "description": "Local filesystem path used by this operation.",\n "minLength": 1,\n "type": "string"\n }\n },\n "type": "object"\n },\n "kind": "native-provider",\n "name": "inspect_plist",\n "outputSchema": {\n "$defs": {\n "__schema0": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "number"\n },\n {\n "type": "boolean"\n },\n {\n "type": "null"\n },\n {\n "items": {\n "$ref": "#/$defs/__schema0"\n },\n "type": "array"\n },\n {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n }\n ]\n }\n },\n "$schema": "https://json-schema.org/draft/2020-12/schema",\n "additionalProperties": false,\n "properties": {\n "evidence": {\n "additionalProperties": false,\n "properties": {\n "analysis_profile": {\n "additionalProperties": false,\n "properties": {\n "digest": {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n },\n "parameters": {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n },\n "provider": {\n "additionalProperties": false,\n "properties": {\n "id": {\n "minLength": 1,\n "type": "string"\n },\n "name": {\n "minLength": 1,\n "type": "string"\n },\n "version": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "id",\n "name",\n "version"\n ],\n "type": "object"\n }\n },\n "required": [\n "provider",\n "parameters",\n "digest"\n ],\n "type": "object"\n },\n "authority": {\n "enum": [\n "shipped-artifact",\n "controlled-replay",\n "historical-reference",\n "external-service",\n "analyst-inference"\n ],\n "type": "string"\n },\n "confidence": {\n "enum": [\n "observed",\n "derived",\n "inferred"\n ],\n "type": "string"\n },\n "environment": {\n "anyOf": [\n {\n "additionalProperties": false,\n "properties": {\n "architecture": {\n "minLength": 1,\n "type": "string"\n },\n "id": {\n "minLength": 1,\n "type": "string"\n },\n "isolation": {\n "enum": [\n "none",\n "process",\n "container",\n "virtual-machine"\n ],\n "type": "string"\n },\n "platform": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "id",\n "platform",\n "architecture",\n "isolation"\n ],\n "type": "object"\n },\n {\n "type": "null"\n }\n ]\n },\n "evidence_id": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "evidence_links": {\n "items": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "type": "array"\n },\n "limitations": {\n "items": {\n "type": "string"\n },\n "type": "array"\n },\n "locations": {\n "items": {\n "oneOf": [\n {\n "additionalProperties": false,\n "properties": {\n "address": {\n "minLength": 1,\n "type": "string"\n },\n "kind": {\n "const": "address",\n "type": "string"\n }\n },\n "required": [\n "kind",\n "address"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "end": {\n "minLength": 1,\n "type": "string"\n },\n "kind": {\n "const": "address-range",\n "type": "string"\n },\n "start": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "kind",\n "start",\n "end"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "kind": {\n "const": "artifact-path",\n "type": "string"\n },\n "path": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "kind",\n "path"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "kind": {\n "const": "file-offset",\n "type": "string"\n },\n "offset": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "kind",\n "offset"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "end": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "kind": {\n "const": "file-offset-range",\n "type": "string"\n },\n "start": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "kind",\n "start",\n "end"\n ],\n "type": "object"\n }\n ]\n },\n "type": "array"\n },\n "normalized_result": {\n "$ref": "#/$defs/__schema0"\n },\n "operation": {\n "minLength": 1,\n "type": "string"\n },\n "parameters": {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n },\n "predicate_type": {\n "minLength": 1,\n "type": "string"\n },\n "provider": {\n "additionalProperties": false,\n "properties": {\n "id": {\n "minLength": 1,\n "type": "string"\n },\n "name": {\n "minLength": 1,\n "type": "string"\n },\n "version": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "id",\n "name",\n "version"\n ],\n "type": "object"\n },\n "raw_result": {\n "anyOf": [\n {\n "$ref": "#/$defs/__schema0"\n },\n {\n "type": "null"\n }\n ]\n },\n "subject": {\n "anyOf": [\n {\n "additionalProperties": false,\n "properties": {\n "architecture": {\n "anyOf": [\n {\n "enum": [\n "x86",\n "x86_64",\n "arm",\n "arm64"\n ],\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "digest": {\n "additionalProperties": false,\n "properties": {\n "sha256": {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n }\n },\n "required": [\n "sha256"\n ],\n "type": "object"\n },\n "format": {\n "enum": [\n "hopper",\n "analysis-database",\n "mach-o",\n "elf",\n "pe",\n "dos-mz",\n "dos-com",\n "zip",\n "ipa",\n "apk",\n "msix",\n "appx",\n "asar",\n "dmg",\n "pkg",\n "plist",\n "javascript",\n "source-map",\n "directory",\n "file",\n "unknown",\n "mach-o-universal",\n "javascript-bundle",\n "entitlements"\n ],\n "type": "string"\n },\n "local_path": {\n "type": "string"\n },\n "name": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "name",\n "digest",\n "format",\n "architecture",\n "local_path"\n ],\n "type": "object"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "evidence_id",\n "subject",\n "provider",\n "predicate_type",\n "operation",\n "parameters",\n "raw_result",\n "normalized_result",\n "confidence",\n "authority",\n "environment",\n "limitations",\n "locations",\n "evidence_links"\n ],\n "type": "object"\n },\n "evidence_id": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "result": {\n "additionalProperties": false,\n "properties": {\n "bundle": {\n "additionalProperties": false,\n "properties": {\n "executable": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "identifier": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "name": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "short_version": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "version": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "identifier",\n "executable",\n "name",\n "version",\n "short_version"\n ],\n "type": "object"\n },\n "format": {\n "enum": [\n "xml",\n "binary",\n "json",\n "unknown"\n ],\n "type": "string"\n },\n "limitations": {\n "items": {\n "type": "string"\n },\n "type": "array"\n },\n "provenance": {\n "items": {\n "additionalProperties": false,\n "properties": {\n "command": {\n "items": {\n "type": "string"\n },\n "type": "array"\n },\n "executable_sha256": {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n },\n "exit": {\n "additionalProperties": false,\n "properties": {\n "code": {\n "anyOf": [\n {\n "maximum": 9007199254740991,\n "minimum": -9007199254740991,\n "type": "integer"\n },\n {\n "type": "null"\n }\n ]\n },\n "signal": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "code",\n "signal"\n ],\n "type": "object"\n },\n "stderr_bytes": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "stdout_bytes": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "tool": {\n "minLength": 1,\n "type": "string"\n },\n "tool_version": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "version_reason": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "tool",\n "command",\n "tool_version",\n "version_reason",\n "executable_sha256",\n "exit",\n "stdout_bytes",\n "stderr_bytes"\n ],\n "type": "object"\n },\n "type": "array"\n },\n "source_path": {\n "type": "string"\n },\n "value": {\n "$ref": "#/$defs/__schema0"\n }\n },\n "required": [\n "format",\n "value",\n "bundle",\n "source_path",\n "provenance",\n "limitations"\n ],\n "type": "object"\n }\n },\n "required": [\n "result",\n "evidence_id",\n "evidence"\n ],\n "type": "object"\n },\n "requiresSession": false,\n "title": "Inspect Plist"\n },\n {\n "analysisOperation": "list_architectures",\n "annotations": {\n "destructiveHint": false,\n "idempotentHint": true,\n "openWorldHint": true,\n "readOnlyHint": false\n },\n "description": "List thin or universal Mach-O slices with offsets, sizes, alignment, explicit coverage, and native-tool provenance.",\n "effects": {\n "accessesNetwork": false,\n "changesUiState": false,\n "idempotent": true,\n "launchesProcess": true,\n "mayDiscardData": false,\n "mutatesSession": true,\n "mutatesTarget": false,\n "writesFilesystem": false\n },\n "inputSchema": {\n "$schema": "https://json-schema.org/draft/2020-12/schema",\n "examples": [\n {}\n ],\n "properties": {},\n "type": "object"\n },\n "kind": "native-provider",\n "name": "list_architectures",\n "outputSchema": {\n "$defs": {\n "__schema0": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "number"\n },\n {\n "type": "boolean"\n },\n {\n "type": "null"\n },\n {\n "items": {\n "$ref": "#/$defs/__schema0"\n },\n "type": "array"\n },\n {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n }\n ]\n }\n },\n "$schema": "https://json-schema.org/draft/2020-12/schema",\n "additionalProperties": false,\n "properties": {\n "evidence": {\n "additionalProperties": false,\n "properties": {\n "analysis_profile": {\n "additionalProperties": false,\n "properties": {\n "digest": {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n },\n "parameters": {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n },\n "provider": {\n "additionalProperties": false,\n "properties": {\n "id": {\n "minLength": 1,\n "type": "string"\n },\n "name": {\n "minLength": 1,\n "type": "string"\n },\n "version": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "id",\n "name",\n "version"\n ],\n "type": "object"\n }\n },\n "required": [\n "provider",\n "parameters",\n "digest"\n ],\n "type": "object"\n },\n "authority": {\n "enum": [\n "shipped-artifact",\n "controlled-replay",\n "historical-reference",\n "external-service",\n "analyst-inference"\n ],\n "type": "string"\n },\n "confidence": {\n "enum": [\n "observed",\n "derived",\n "inferred"\n ],\n "type": "string"\n },\n "environment": {\n "anyOf": [\n {\n "additionalProperties": false,\n "properties": {\n "architecture": {\n "minLength": 1,\n "type": "string"\n },\n "id": {\n "minLength": 1,\n "type": "string"\n },\n "isolation": {\n "enum": [\n "none",\n "process",\n "container",\n "virtual-machine"\n ],\n "type": "string"\n },\n "platform": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "id",\n "platform",\n "architecture",\n "isolation"\n ],\n "type": "object"\n },\n {\n "type": "null"\n }\n ]\n },\n "evidence_id": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "evidence_links": {\n "items": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "type": "array"\n },\n "limitations": {\n "items": {\n "type": "string"\n },\n "type": "array"\n },\n "locations": {\n "items": {\n "oneOf": [\n {\n "additionalProperties": false,\n "properties": {\n "address": {\n "minLength": 1,\n "type": "string"\n },\n "kind": {\n "const": "address",\n "type": "string"\n }\n },\n "required": [\n "kind",\n "address"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "end": {\n "minLength": 1,\n "type": "string"\n },\n "kind": {\n "const": "address-range",\n "type": "string"\n },\n "start": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "kind",\n "start",\n "end"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "kind": {\n "const": "artifact-path",\n "type": "string"\n },\n "path": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "kind",\n "path"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "kind": {\n "const": "file-offset",\n "type": "string"\n },\n "offset": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "kind",\n "offset"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "end": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "kind": {\n "const": "file-offset-range",\n "type": "string"\n },\n "start": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "kind",\n "start",\n "end"\n ],\n "type": "object"\n }\n ]\n },\n "type": "array"\n },\n "normalized_result": {\n "$ref": "#/$defs/__schema0"\n },\n "operation": {\n "minLength": 1,\n "type": "string"\n },\n "parameters": {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n },\n "predicate_type": {\n "minLength": 1,\n "type": "string"\n },\n "provider": {\n "additionalProperties": false,\n "properties": {\n "id": {\n "minLength": 1,\n "type": "string"\n },\n "name": {\n "minLength": 1,\n "type": "string"\n },\n "version": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "id",\n "name",\n "version"\n ],\n "type": "object"\n },\n "raw_result": {\n "anyOf": [\n {\n "$ref": "#/$defs/__schema0"\n },\n {\n "type": "null"\n }\n ]\n },\n "subject": {\n "anyOf": [\n {\n "additionalProperties": false,\n "properties": {\n "architecture": {\n "anyOf": [\n {\n "enum": [\n "x86",\n "x86_64",\n "arm",\n "arm64"\n ],\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "digest": {\n "additionalProperties": false,\n "properties": {\n "sha256": {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n }\n },\n "required": [\n "sha256"\n ],\n "type": "object"\n },\n "format": {\n "enum": [\n "hopper",\n "analysis-database",\n "mach-o",\n "elf",\n "pe",\n "dos-mz",\n "dos-com",\n "zip",\n "ipa",\n "apk",\n "msix",\n "appx",\n "asar",\n "dmg",\n "pkg",\n "plist",\n "javascript",\n "source-map",\n "directory",\n "file",\n "unknown",\n "mach-o-universal",\n "javascript-bundle",\n "entitlements"\n ],\n "type": "string"\n },\n "local_path": {\n "type": "string"\n },\n "name": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "name",\n "digest",\n "format",\n "architecture",\n "local_path"\n ],\n "type": "object"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "evidence_id",\n "subject",\n "provider",\n "predicate_type",\n "operation",\n "parameters",\n "raw_result",\n "normalized_result",\n "confidence",\n "authority",\n "environment",\n "limitations",\n "locations",\n "evidence_links"\n ],\n "type": "object"\n },\n "evidence_id": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "result": {\n "additionalProperties": false,\n "properties": {\n "architectures": {\n "additionalProperties": false,\n "properties": {\n "exhaustive": {\n "type": "boolean"\n },\n "items": {\n "items": {\n "additionalProperties": false,\n "properties": {\n "alignment": {\n "anyOf": [\n {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n {\n "type": "null"\n }\n ]\n },\n "cpu_subtype": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "cpu_type": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "file_offset": {\n "anyOf": [\n {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n {\n "type": "null"\n }\n ]\n },\n "name": {\n "type": "string"\n },\n "size": {\n "anyOf": [\n {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "name",\n "cpu_type",\n "cpu_subtype",\n "file_offset",\n "size",\n "alignment"\n ],\n "type": "object"\n },\n "type": "array"\n },\n "limitations": {\n "items": {\n "type": "string"\n },\n "type": "array"\n },\n "total": {\n "anyOf": [\n {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "items",\n "total",\n "exhaustive",\n "limitations"\n ],\n "type": "object"\n },\n "limitations": {\n "items": {\n "type": "string"\n },\n "type": "array"\n },\n "provenance": {\n "items": {\n "additionalProperties": false,\n "properties": {\n "command": {\n "items": {\n "type": "string"\n },\n "type": "array"\n },\n "executable_sha256": {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n },\n "exit": {\n "additionalProperties": false,\n "properties": {\n "code": {\n "anyOf": [\n {\n "maximum": 9007199254740991,\n "minimum": -9007199254740991,\n "type": "integer"\n },\n {\n "type": "null"\n }\n ]\n },\n "signal": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "code",\n "signal"\n ],\n "type": "object"\n },\n "stderr_bytes": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "stdout_bytes": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "tool": {\n "minLength": 1,\n "type": "string"\n },\n "tool_version": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "version_reason": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "tool",\n "command",\n "tool_version",\n "version_reason",\n "executable_sha256",\n "exit",\n "stdout_bytes",\n "stderr_bytes"\n ],\n "type": "object"\n },\n "type": "array"\n }\n },\n "required": [\n "architectures",\n "provenance",\n "limitations"\n ],\n "type": "object"\n }\n },\n "required": [\n "result",\n "evidence_id",\n "evidence"\n ],\n "type": "object"\n },\n "requiresSession": false,\n "title": "List Architectures"\n },\n {\n "analysisOperation": "demangle_swift",\n "annotations": {\n "destructiveHint": false,\n "idempotentHint": true,\n "openWorldHint": true,\n "readOnlyHint": false\n },\n "description": "Demangle an ordered list of single-line Swift symbols without requiring Hopper. Each input returns demangled, unchanged, or invalid status.",\n "effects": {\n "accessesNetwork": false,\n "changesUiState": false,\n "idempotent": true,\n "launchesProcess": true,\n "mayDiscardData": false,\n "mutatesSession": true,\n "mutatesTarget": false,\n "writesFilesystem": false\n },\n "inputSchema": {\n "$schema": "https://json-schema.org/draft/2020-12/schema",\n "examples": [\n {\n "symbols": [\n "$s4Test3fooyyF"\n ]\n }\n ],\n "properties": {\n "symbols": {\n "description": "Ordered Swift symbols to demangle.",\n "items": {\n "minLength": 1,\n "pattern": "^[^\\\\n]*$",\n "type": "string"\n },\n "minItems": 1,\n "type": "array"\n }\n },\n "required": [\n "symbols"\n ],\n "type": "object"\n },\n "kind": "native-provider",\n "name": "demangle_swift",\n "outputSchema": {\n "$defs": {\n "__schema0": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "number"\n },\n {\n "type": "boolean"\n },\n {\n "type": "null"\n },\n {\n "items": {\n "$ref": "#/$defs/__schema0"\n },\n "type": "array"\n },\n {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n }\n ]\n }\n },\n "$schema": "https://json-schema.org/draft/2020-12/schema",\n "additionalProperties": false,\n "properties": {\n "evidence": {\n "additionalProperties": false,\n "properties": {\n "analysis_profile": {\n "additionalProperties": false,\n "properties": {\n "digest": {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n },\n "parameters": {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n },\n "provider": {\n "additionalProperties": false,\n "properties": {\n "id": {\n "minLength": 1,\n "type": "string"\n },\n "name": {\n "minLength": 1,\n "type": "string"\n },\n "version": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "id",\n "name",\n "version"\n ],\n "type": "object"\n }\n },\n "required": [\n "provider",\n "parameters",\n "digest"\n ],\n "type": "object"\n },\n "authority": {\n "enum": [\n "shipped-artifact",\n "controlled-replay",\n "historical-reference",\n "external-service",\n "analyst-inference"\n ],\n "type": "string"\n },\n "confidence": {\n "enum": [\n "observed",\n "derived",\n "inferred"\n ],\n "type": "string"\n },\n "environment": {\n "anyOf": [\n {\n "additionalProperties": false,\n "properties": {\n "architecture": {\n "minLength": 1,\n "type": "string"\n },\n "id": {\n "minLength": 1,\n "type": "string"\n },\n "isolation": {\n "enum": [\n "none",\n "process",\n "container",\n "virtual-machine"\n ],\n "type": "string"\n },\n "platform": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "id",\n "platform",\n "architecture",\n "isolation"\n ],\n "type": "object"\n },\n {\n "type": "null"\n }\n ]\n },\n "evidence_id": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "evidence_links": {\n "items": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "type": "array"\n },\n "limitations": {\n "items": {\n "type": "string"\n },\n "type": "array"\n },\n "locations": {\n "items": {\n "oneOf": [\n {\n "additionalProperties": false,\n "properties": {\n "address": {\n "minLength": 1,\n "type": "string"\n },\n "kind": {\n "const": "address",\n "type": "string"\n }\n },\n "required": [\n "kind",\n "address"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "end": {\n "minLength": 1,\n "type": "string"\n },\n "kind": {\n "const": "address-range",\n "type": "string"\n },\n "start": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "kind",\n "start",\n "end"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "kind": {\n "const": "artifact-path",\n "type": "string"\n },\n "path": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "kind",\n "path"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "kind": {\n "const": "file-offset",\n "type": "string"\n },\n "offset": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "kind",\n "offset"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "end": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "kind": {\n "const": "file-offset-range",\n "type": "string"\n },\n "start": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "kind",\n "start",\n "end"\n ],\n "type": "object"\n }\n ]\n },\n "type": "array"\n },\n "normalized_result": {\n "$ref": "#/$defs/__schema0"\n },\n "operation": {\n "minLength": 1,\n "type": "string"\n },\n "parameters": {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n },\n "predicate_type": {\n "minLength": 1,\n "type": "string"\n },\n "provider": {\n "additionalProperties": false,\n "properties": {\n "id": {\n "minLength": 1,\n "type": "string"\n },\n "name": {\n "minLength": 1,\n "type": "string"\n },\n "version": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "id",\n "name",\n "version"\n ],\n "type": "object"\n },\n "raw_result": {\n "anyOf": [\n {\n "$ref": "#/$defs/__schema0"\n },\n {\n "type": "null"\n }\n ]\n },\n "subject": {\n "anyOf": [\n {\n "additionalProperties": false,\n "properties": {\n "architecture": {\n "anyOf": [\n {\n "enum": [\n "x86",\n "x86_64",\n "arm",\n "arm64"\n ],\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "digest": {\n "additionalProperties": false,\n "properties": {\n "sha256": {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n }\n },\n "required": [\n "sha256"\n ],\n "type": "object"\n },\n "format": {\n "enum": [\n "hopper",\n "analysis-database",\n "mach-o",\n "elf",\n "pe",\n "dos-mz",\n "dos-com",\n "zip",\n "ipa",\n "apk",\n "msix",\n "appx",\n "asar",\n "dmg",\n "pkg",\n "plist",\n "javascript",\n "source-map",\n "directory",\n "file",\n "unknown",\n "mach-o-universal",\n "javascript-bundle",\n "entitlements"\n ],\n "type": "string"\n },\n "local_path": {\n "type": "string"\n },\n "name": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "name",\n "digest",\n "format",\n "architecture",\n "local_path"\n ],\n "type": "object"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "evidence_id",\n "subject",\n "provider",\n "predicate_type",\n "operation",\n "parameters",\n "raw_result",\n "normalized_result",\n "confidence",\n "authority",\n "environment",\n "limitations",\n "locations",\n "evidence_links"\n ],\n "type": "object"\n },\n "evidence_id": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "result": {\n "additionalProperties": false,\n "properties": {\n "limitations": {\n "items": {\n "type": "string"\n },\n "type": "array"\n },\n "provenance": {\n "items": {\n "additionalProperties": false,\n "properties": {\n "command": {\n "items": {\n "type": "string"\n },\n "type": "array"\n },\n "executable_sha256": {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n },\n "exit": {\n "additionalProperties": false,\n "properties": {\n "code": {\n "anyOf": [\n {\n "maximum": 9007199254740991,\n "minimum": -9007199254740991,\n "type": "integer"\n },\n {\n "type": "null"\n }\n ]\n },\n "signal": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "code",\n "signal"\n ],\n "type": "object"\n },\n "stderr_bytes": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "stdout_bytes": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "tool": {\n "minLength": 1,\n "type": "string"\n },\n "tool_version": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "version_reason": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "tool",\n "command",\n "tool_version",\n "version_reason",\n "executable_sha256",\n "exit",\n "stdout_bytes",\n "stderr_bytes"\n ],\n "type": "object"\n },\n "type": "array"\n },\n "symbols": {\n "items": {\n "additionalProperties": false,\n "properties": {\n "input": {\n "type": "string"\n },\n "output": {\n "type": "string"\n },\n "status": {\n "enum": [\n "demangled",\n "unchanged",\n "invalid"\n ],\n "type": "string"\n }\n },\n "required": [\n "input",\n "output",\n "status"\n ],\n "type": "object"\n },\n "type": "array"\n }\n },\n "required": [\n "symbols",\n "provenance",\n "limitations"\n ],\n "type": "object"\n }\n },\n "required": [\n "result",\n "evidence_id",\n "evidence"\n ],\n "type": "object"\n },\n "requiresSession": false,\n "title": "Demangle Swift"\n },\n {\n "analysisOperation": "inspect_artifact",\n "annotations": {\n "destructiveHint": false,\n "idempotentHint": true,\n "openWorldHint": true,\n "readOnlyHint": false\n },\n "description": "Inspect an active archive or application package in one call. Returns the complete content-addressed artifact graph, source Evidence, observations, relationships, integrity contradictions, hypotheses, unexplored branches, limitations, and next probes inline. Read-only DMG mounting is used automatically on supported macOS hosts. Integrity mismatches fail by default; record-and-continue keeps mismatches explicitly untrusted. It does not extract files; use extract_artifact to materialize its regular contents.",\n "effects": {\n "accessesNetwork": false,\n "changesUiState": false,\n "idempotent": true,\n "launchesProcess": true,\n "mayDiscardData": false,\n "mutatesSession": true,\n "mutatesTarget": false,\n "writesFilesystem": true\n },\n "inputSchema": {\n "$schema": "https://json-schema.org/draft/2020-12/schema",\n "additionalProperties": false,\n "examples": [\n {}\n ],\n "properties": {\n "integrity_policy": {\n "default": "fail",\n "description": "Value for integrity policy.",\n "enum": [\n "fail",\n "record-and-continue"\n ],\n "type": "string"\n }\n },\n "type": "object"\n },\n "kind": "artifact-provider",\n "name": "inspect_artifact",\n "outputSchema": {\n "$defs": {\n "__schema0": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "number"\n },\n {\n "type": "boolean"\n },\n {\n "type": "null"\n },\n {\n "items": {\n "$ref": "#/$defs/__schema0"\n },\n "type": "array"\n },\n {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n }\n ]\n }\n },\n "$schema": "https://json-schema.org/draft/2020-12/schema",\n "additionalProperties": false,\n "properties": {\n "evidence": {\n "additionalProperties": false,\n "properties": {\n "analysis_profile": {\n "additionalProperties": false,\n "properties": {\n "digest": {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n },\n "parameters": {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n },\n "provider": {\n "additionalProperties": false,\n "properties": {\n "id": {\n "minLength": 1,\n "type": "string"\n },\n "name": {\n "minLength": 1,\n "type": "string"\n },\n "version": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "id",\n "name",\n "version"\n ],\n "type": "object"\n }\n },\n "required": [\n "provider",\n "parameters",\n "digest"\n ],\n "type": "object"\n },\n "authority": {\n "enum": [\n "shipped-artifact",\n "controlled-replay",\n "historical-reference",\n "external-service",\n "analyst-inference"\n ],\n "type": "string"\n },\n "confidence": {\n "enum": [\n "observed",\n "derived",\n "inferred"\n ],\n "type": "string"\n },\n "environment": {\n "anyOf": [\n {\n "additionalProperties": false,\n "properties": {\n "architecture": {\n "minLength": 1,\n "type": "string"\n },\n "id": {\n "minLength": 1,\n "type": "string"\n },\n "isolation": {\n "enum": [\n "none",\n "process",\n "container",\n "virtual-machine"\n ],\n "type": "string"\n },\n "platform": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "id",\n "platform",\n "architecture",\n "isolation"\n ],\n "type": "object"\n },\n {\n "type": "null"\n }\n ]\n },\n "evidence_id": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "evidence_links": {\n "items": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "type": "array"\n },\n "limitations": {\n "items": {\n "type": "string"\n },\n "type": "array"\n },\n "locations": {\n "items": {\n "oneOf": [\n {\n "additionalProperties": false,\n "properties": {\n "address": {\n "minLength": 1,\n "type": "string"\n },\n "kind": {\n "const": "address",\n "type": "string"\n }\n },\n "required": [\n "kind",\n "address"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "end": {\n "minLength": 1,\n "type": "string"\n },\n "kind": {\n "const": "address-range",\n "type": "string"\n },\n "start": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "kind",\n "start",\n "end"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "kind": {\n "const": "artifact-path",\n "type": "string"\n },\n "path": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "kind",\n "path"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "kind": {\n "const": "file-offset",\n "type": "string"\n },\n "offset": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "kind",\n "offset"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "end": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "kind": {\n "const": "file-offset-range",\n "type": "string"\n },\n "start": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "kind",\n "start",\n "end"\n ],\n "type": "object"\n }\n ]\n },\n "type": "array"\n },\n "normalized_result": {\n "$ref": "#/$defs/__schema0"\n },\n "operation": {\n "minLength": 1,\n "type": "string"\n },\n "parameters": {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n },\n "predicate_type": {\n "minLength": 1,\n "type": "string"\n },\n "provider": {\n "additionalProperties": false,\n "properties": {\n "id": {\n "minLength": 1,\n "type": "string"\n },\n "name": {\n "minLength": 1,\n "type": "string"\n },\n "version": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "id",\n "name",\n "version"\n ],\n "type": "object"\n },\n "raw_result": {\n "anyOf": [\n {\n "$ref": "#/$defs/__schema0"\n },\n {\n "type": "null"\n }\n ]\n },\n "subject": {\n "anyOf": [\n {\n "additionalProperties": false,\n "properties": {\n "architecture": {\n "anyOf": [\n {\n "enum": [\n "x86",\n "x86_64",\n "arm",\n "arm64"\n ],\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "digest": {\n "additionalProperties": false,\n "properties": {\n "sha256": {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n }\n },\n "required": [\n "sha256"\n ],\n "type": "object"\n },\n "format": {\n "enum": [\n "hopper",\n "analysis-database",\n "mach-o",\n "elf",\n "pe",\n "dos-mz",\n "dos-com",\n "zip",\n "ipa",\n "apk",\n "msix",\n "appx",\n "asar",\n "dmg",\n "pkg",\n "plist",\n "javascript",\n "source-map",\n "directory",\n "file",\n "unknown",\n "mach-o-universal",\n "javascript-bundle",\n "entitlements"\n ],\n "type": "string"\n },\n "local_path": {\n "type": "string"\n },\n "name": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "name",\n "digest",\n "format",\n "architecture",\n "local_path"\n ],\n "type": "object"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "evidence_id",\n "subject",\n "provider",\n "predicate_type",\n "operation",\n "parameters",\n "raw_result",\n "normalized_result",\n "confidence",\n "authority",\n "environment",\n "limitations",\n "locations",\n "evidence_links"\n ],\n "type": "object"\n },\n "evidence_id": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "result": {\n "additionalProperties": false,\n "properties": {\n "contradictions": {\n "items": {\n "additionalProperties": false,\n "properties": {\n "contradiction_id": {\n "pattern": "^aic_[a-f0-9]{64}$",\n "type": "string"\n },\n "declared_sha256": {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n },\n "evidence_id": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "observed_sha256": {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n },\n "occurrence_id": {\n "pattern": "^occ_[a-f0-9]{64}$",\n "type": "string"\n },\n "statement": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "contradiction_id",\n "statement",\n "occurrence_id",\n "declared_sha256",\n "observed_sha256",\n "evidence_id"\n ],\n "type": "object"\n },\n "type": "array"\n },\n "coverage": {\n "additionalProperties": false,\n "properties": {\n "hypotheses_omitted": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "hypotheses_retained": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "next_probes_omitted": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "next_probes_retained": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "observations_omitted": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "observations_retained": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "relationships_omitted": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "relationships_retained": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "status": {\n "enum": [\n "complete-within-substeps",\n "partial",\n "truncated"\n ],\n "type": "string"\n },\n "substeps_completed": {\n "const": 1,\n "type": "number"\n },\n "unexplored_branches_omitted": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "unexplored_branches_retained": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "status",\n "substeps_completed",\n "observations_retained",\n "observations_omitted",\n "relationships_retained",\n "relationships_omitted",\n "hypotheses_retained",\n "hypotheses_omitted",\n "unexplored_branches_retained",\n "unexplored_branches_omitted",\n "next_probes_retained",\n "next_probes_omitted"\n ],\n "type": "object"\n },\n "derived_relationships": {\n "items": {\n "additionalProperties": false,\n "properties": {\n "evidence_id": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "logical_path": {\n "anyOf": [\n {\n "minLength": 1,\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "occurrence_id": {\n "pattern": "^occ_[a-f0-9]{64}$",\n "type": "string"\n },\n "relation": {\n "enum": [\n "contains",\n "extracts",\n "slice-of",\n "embeds",\n "loads",\n "maps-source",\n "derived-from"\n ],\n "type": "string"\n },\n "relationship_id": {\n "pattern": "^air_[a-f0-9]{64}$",\n "type": "string"\n },\n "source_artifact_id": {\n "pattern": "^art_[a-f0-9]{64}$",\n "type": "string"\n },\n "target_artifact_id": {\n "pattern": "^art_[a-f0-9]{64}$",\n "type": "string"\n }\n },\n "required": [\n "relationship_id",\n "relation",\n "source_artifact_id",\n "target_artifact_id",\n "occurrence_id",\n "logical_path",\n "evidence_id"\n ],\n "type": "object"\n },\n "type": "array"\n },\n "evidence_links": {\n "items": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "minItems": 1,\n "type": "array"\n },\n "hypotheses": {\n "items": {\n "additionalProperties": false,\n "properties": {\n "basis_evidence_ids": {\n "items": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "minItems": 1,\n "type": "array"\n },\n "confidence": {\n "enum": [\n "medium",\n "low"\n ],\n "type": "string"\n },\n "hypothesis_id": {\n "pattern": "^aih_[a-f0-9]{64}$",\n "type": "string"\n },\n "limitation": {\n "minLength": 1,\n "type": "string"\n },\n "statement": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "hypothesis_id",\n "statement",\n "confidence",\n "basis_evidence_ids",\n "limitation"\n ],\n "type": "object"\n },\n "type": "array"\n },\n "inspection_id": {\n "pattern": "^ai_[a-f0-9]{64}$",\n "type": "string"\n },\n "limitations": {\n "items": {\n "minLength": 1,\n "type": "string"\n },\n "type": "array"\n },\n "next_probes": {\n "items": {\n "additionalProperties": false,\n "properties": {\n "authority": {\n "enum": [\n "artifact-bytes",\n "managed-static-analysis",\n "native-analysis-provider",\n "ast-static-analysis"\n ],\n "type": "string"\n },\n "operation": {\n "minLength": 1,\n "type": "string"\n },\n "rationale": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "operation",\n "rationale",\n "authority"\n ],\n "type": "object"\n },\n "type": "array"\n },\n "observations": {\n "items": {\n "additionalProperties": false,\n "properties": {\n "evidence_id": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "kind": {\n "enum": [\n "root-manifest",\n "artifact",\n "occurrence",\n "integrity"\n ],\n "type": "string"\n },\n "observation_id": {\n "pattern": "^aio_[a-f0-9]{64}$",\n "type": "string"\n },\n "subject": {\n "minLength": 1,\n "type": "string"\n },\n "value": {\n "$ref": "#/$defs/__schema0"\n }\n },\n "required": [\n "observation_id",\n "kind",\n "subject",\n "value",\n "evidence_id"\n ],\n "type": "object"\n },\n "type": "array"\n },\n "subject": {\n "additionalProperties": false,\n "properties": {\n "manifest_id": {\n "pattern": "^agm_[a-f0-9]{64}$",\n "type": "string"\n },\n "root_artifact_id": {\n "pattern": "^art_[a-f0-9]{64}$",\n "type": "string"\n },\n "root_format": {\n "minLength": 1,\n "type": "string"\n },\n "root_sha256": {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n }\n },\n "required": [\n "manifest_id",\n "root_artifact_id",\n "root_sha256",\n "root_format"\n ],\n "type": "object"\n },\n "substeps": {\n "items": {\n "additionalProperties": false,\n "properties": {\n "evidence": {\n "additionalProperties": false,\n "properties": {\n "analysis_profile": {\n "additionalProperties": false,\n "properties": {\n "digest": {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n },\n "parameters": {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n },\n "provider": {\n "additionalProperties": false,\n "properties": {\n "id": {\n "minLength": 1,\n "type": "string"\n },\n "name": {\n "minLength": 1,\n "type": "string"\n },\n "version": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "id",\n "name",\n "version"\n ],\n "type": "object"\n }\n },\n "required": [\n "provider",\n "parameters",\n "digest"\n ],\n "type": "object"\n },\n "authority": {\n "enum": [\n "shipped-artifact",\n "controlled-replay",\n "historical-reference",\n "external-service",\n "analyst-inference"\n ],\n "type": "string"\n },\n "confidence": {\n "enum": [\n "observed",\n "derived",\n "inferred"\n ],\n "type": "string"\n },\n "environment": {\n "anyOf": [\n {\n "additionalProperties": false,\n "properties": {\n "architecture": {\n "minLength": 1,\n "type": "string"\n },\n "id": {\n "minLength": 1,\n "type": "string"\n },\n "isolation": {\n "enum": [\n "none",\n "process",\n "container",\n "virtual-machine"\n ],\n "type": "string"\n },\n "platform": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "id",\n "platform",\n "architecture",\n "isolation"\n ],\n "type": "object"\n },\n {\n "type": "null"\n }\n ]\n },\n "evidence_id": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "evidence_links": {\n "items": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "type": "array"\n },\n "limitations": {\n "items": {\n "type": "string"\n },\n "type": "array"\n },\n "locations": {\n "items": {\n "oneOf": [\n {\n "additionalProperties": false,\n "properties": {\n "address": {\n "minLength": 1,\n "type": "string"\n },\n "kind": {\n "const": "address",\n "type": "string"\n }\n },\n "required": [\n "kind",\n "address"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "end": {\n "minLength": 1,\n "type": "string"\n },\n "kind": {\n "const": "address-range",\n "type": "string"\n },\n "start": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "kind",\n "start",\n "end"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "kind": {\n "const": "artifact-path",\n "type": "string"\n },\n "path": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "kind",\n "path"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "kind": {\n "const": "file-offset",\n "type": "string"\n },\n "offset": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "kind",\n "offset"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "end": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "kind": {\n "const": "file-offset-range",\n "type": "string"\n },\n "start": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "kind",\n "start",\n "end"\n ],\n "type": "object"\n }\n ]\n },\n "type": "array"\n },\n "normalized_result": {\n "$ref": "#/$defs/__schema0"\n },\n "operation": {\n "minLength": 1,\n "type": "string"\n },\n "parameters": {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n },\n "predicate_type": {\n "minLength": 1,\n "type": "string"\n },\n "provider": {\n "additionalProperties": false,\n "properties": {\n "id": {\n "minLength": 1,\n "type": "string"\n },\n "name": {\n "minLength": 1,\n "type": "string"\n },\n "version": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "id",\n "name",\n "version"\n ],\n "type": "object"\n },\n "raw_result": {\n "anyOf": [\n {\n "$ref": "#/$defs/__schema0"\n },\n {\n "type": "null"\n }\n ]\n },\n "subject": {\n "anyOf": [\n {\n "additionalProperties": false,\n "properties": {\n "architecture": {\n "anyOf": [\n {\n "enum": [\n "x86",\n "x86_64",\n "arm",\n "arm64"\n ],\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "digest": {\n "additionalProperties": false,\n "properties": {\n "sha256": {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n }\n },\n "required": [\n "sha256"\n ],\n "type": "object"\n },\n "format": {\n "enum": [\n "hopper",\n "analysis-database",\n "mach-o",\n "elf",\n "pe",\n "dos-mz",\n "dos-com",\n "zip",\n "ipa",\n "apk",\n "msix",\n "appx",\n "asar",\n "dmg",\n "pkg",\n "plist",\n "javascript",\n "source-map",\n "directory",\n "file",\n "unknown",\n "mach-o-universal",\n "javascript-bundle",\n "entitlements"\n ],\n "type": "string"\n },\n "local_path": {\n "type": "string"\n },\n "name": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "name",\n "digest",\n "format",\n "architecture",\n "local_path"\n ],\n "type": "object"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "evidence_id",\n "subject",\n "provider",\n "predicate_type",\n "operation",\n "parameters",\n "raw_result",\n "normalized_result",\n "confidence",\n "authority",\n "environment",\n "limitations",\n "locations",\n "evidence_links"\n ],\n "type": "object"\n },\n "evidence_id": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "operation": {\n "const": "inventory_artifact",\n "type": "string"\n },\n "status": {\n "const": "completed",\n "type": "string"\n },\n "substep_id": {\n "pattern": "^ais_[a-f0-9]{64}$",\n "type": "string"\n }\n },\n "required": [\n "substep_id",\n "operation",\n "status",\n "evidence_id",\n "evidence"\n ],\n "type": "object"\n },\n "minItems": 1,\n "type": "array"\n },\n "unexplored_branches": {\n "items": {\n "additionalProperties": false,\n "properties": {\n "branch_id": {\n "pattern": "^aib_[a-f0-9]{64}$",\n "type": "string"\n },\n "detail": {\n "minLength": 1,\n "type": "string"\n },\n "evidence_id": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "next_probe": {\n "anyOf": [\n {\n "additionalProperties": false,\n "properties": {\n "authority": {\n "enum": [\n "artifact-bytes",\n "managed-static-analysis",\n "native-analysis-provider",\n "ast-static-analysis"\n ],\n "type": "string"\n },\n "operation": {\n "minLength": 1,\n "type": "string"\n },\n "rationale": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "operation",\n "rationale",\n "authority"\n ],\n "type": "object"\n },\n {\n "type": "null"\n }\n ]\n },\n "reason": {\n "enum": [\n "format-specific-analysis-required",\n "unknown-format"\n ],\n "type": "string"\n }\n },\n "required": [\n "branch_id",\n "reason",\n "detail",\n "next_probe",\n "evidence_id"\n ],\n "type": "object"\n },\n "type": "array"\n }\n },\n "required": [\n "inspection_id",\n "subject",\n "substeps",\n "observations",\n "derived_relationships",\n "hypotheses",\n "contradictions",\n "unexplored_branches",\n "next_probes",\n "coverage",\n "evidence_links",\n "limitations"\n ],\n "type": "object"\n }\n },\n "required": [\n "result",\n "evidence_id",\n "evidence"\n ],\n "type": "object"\n },\n "requiresSession": false,\n "title": "Inspect Artifact"\n },\n {\n "analysisOperation": "extract_artifact",\n "annotations": {\n "destructiveHint": false,\n "idempotentHint": false,\n "openWorldHint": true,\n "readOnlyHint": false\n },\n "description": "Extract all regular files from the active archive or application package into a fresh temporary directory chosen by REA. The result includes its location. Rejects traversal and symlink escapes, never overwrites, enforces archive integrity checks, and verifies cleanup. Integrity mismatches fail by default; record-and-continue extracts the observed bytes and reports each mismatch as an untrusted integrity contradiction.",\n "effects": {\n "accessesNetwork": false,\n "changesUiState": false,\n "idempotent": false,\n "launchesProcess": true,\n "mayDiscardData": false,\n "mutatesSession": true,\n "mutatesTarget": false,\n "writesFilesystem": true\n },\n "inputSchema": {\n "$schema": "https://json-schema.org/draft/2020-12/schema",\n "additionalProperties": false,\n "examples": [\n {}\n ],\n "properties": {\n "integrity_policy": {\n "default": "fail",\n "description": "Value for integrity policy.",\n "enum": [\n "fail",\n "record-and-continue"\n ],\n "type": "string"\n }\n },\n "type": "object"\n },\n "kind": "artifact-provider",\n "name": "extract_artifact",\n "outputSchema": {\n "$defs": {\n "__schema0": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "number"\n },\n {\n "type": "boolean"\n },\n {\n "type": "null"\n },\n {\n "items": {\n "$ref": "#/$defs/__schema0"\n },\n "type": "array"\n },\n {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n }\n ]\n }\n },\n "$schema": "https://json-schema.org/draft/2020-12/schema",\n "additionalProperties": false,\n "properties": {\n "evidence": {\n "additionalProperties": false,\n "properties": {\n "analysis_profile": {\n "additionalProperties": false,\n "properties": {\n "digest": {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n },\n "parameters": {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n },\n "provider": {\n "additionalProperties": false,\n "properties": {\n "id": {\n "minLength": 1,\n "type": "string"\n },\n "name": {\n "minLength": 1,\n "type": "string"\n },\n "version": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "id",\n "name",\n "version"\n ],\n "type": "object"\n }\n },\n "required": [\n "provider",\n "parameters",\n "digest"\n ],\n "type": "object"\n },\n "authority": {\n "enum": [\n "shipped-artifact",\n "controlled-replay",\n "historical-reference",\n "external-service",\n "analyst-inference"\n ],\n "type": "string"\n },\n "confidence": {\n "enum": [\n "observed",\n "derived",\n "inferred"\n ],\n "type": "string"\n },\n "environment": {\n "anyOf": [\n {\n "additionalProperties": false,\n "properties": {\n "architecture": {\n "minLength": 1,\n "type": "string"\n },\n "id": {\n "minLength": 1,\n "type": "string"\n },\n "isolation": {\n "enum": [\n "none",\n "process",\n "container",\n "virtual-machine"\n ],\n "type": "string"\n },\n "platform": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "id",\n "platform",\n "architecture",\n "isolation"\n ],\n "type": "object"\n },\n {\n "type": "null"\n }\n ]\n },\n "evidence_id": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "evidence_links": {\n "items": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "type": "array"\n },\n "limitations": {\n "items": {\n "type": "string"\n },\n "type": "array"\n },\n "locations": {\n "items": {\n "oneOf": [\n {\n "additionalProperties": false,\n "properties": {\n "address": {\n "minLength": 1,\n "type": "string"\n },\n "kind": {\n "const": "address",\n "type": "string"\n }\n },\n "required": [\n "kind",\n "address"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "end": {\n "minLength": 1,\n "type": "string"\n },\n "kind": {\n "const": "address-range",\n "type": "string"\n },\n "start": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "kind",\n "start",\n "end"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "kind": {\n "const": "artifact-path",\n "type": "string"\n },\n "path": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "kind",\n "path"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "kind": {\n "const": "file-offset",\n "type": "string"\n },\n "offset": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "kind",\n "offset"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "end": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "kind": {\n "const": "file-offset-range",\n "type": "string"\n },\n "start": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "kind",\n "start",\n "end"\n ],\n "type": "object"\n }\n ]\n },\n "type": "array"\n },\n "normalized_result": {\n "$ref": "#/$defs/__schema0"\n },\n "operation": {\n "minLength": 1,\n "type": "string"\n },\n "parameters": {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n },\n "predicate_type": {\n "minLength": 1,\n "type": "string"\n },\n "provider": {\n "additionalProperties": false,\n "properties": {\n "id": {\n "minLength": 1,\n "type": "string"\n },\n "name": {\n "minLength": 1,\n "type": "string"\n },\n "version": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "id",\n "name",\n "version"\n ],\n "type": "object"\n },\n "raw_result": {\n "anyOf": [\n {\n "$ref": "#/$defs/__schema0"\n },\n {\n "type": "null"\n }\n ]\n },\n "subject": {\n "anyOf": [\n {\n "additionalProperties": false,\n "properties": {\n "architecture": {\n "anyOf": [\n {\n "enum": [\n "x86",\n "x86_64",\n "arm",\n "arm64"\n ],\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "digest": {\n "additionalProperties": false,\n "properties": {\n "sha256": {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n }\n },\n "required": [\n "sha256"\n ],\n "type": "object"\n },\n "format": {\n "enum": [\n "hopper",\n "analysis-database",\n "mach-o",\n "elf",\n "pe",\n "dos-mz",\n "dos-com",\n "zip",\n "ipa",\n "apk",\n "msix",\n "appx",\n "asar",\n "dmg",\n "pkg",\n "plist",\n "javascript",\n "source-map",\n "directory",\n "file",\n "unknown",\n "mach-o-universal",\n "javascript-bundle",\n "entitlements"\n ],\n "type": "string"\n },\n "local_path": {\n "type": "string"\n },\n "name": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "name",\n "digest",\n "format",\n "architecture",\n "local_path"\n ],\n "type": "object"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "evidence_id",\n "subject",\n "provider",\n "predicate_type",\n "operation",\n "parameters",\n "raw_result",\n "normalized_result",\n "confidence",\n "authority",\n "environment",\n "limitations",\n "locations",\n "evidence_links"\n ],\n "type": "object"\n },\n "evidence_id": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "result": {\n "additionalProperties": false,\n "properties": {\n "artifacts": {\n "items": {\n "additionalProperties": false,\n "properties": {\n "artifact_id": {\n "pattern": "^art_[a-f0-9]{64}$",\n "type": "string"\n },\n "bytes_written": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "created": {\n "type": "boolean"\n },\n "relative_path": {\n "minLength": 1,\n "type": "string"\n },\n "sha256": {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n }\n },\n "required": [\n "artifact_id",\n "relative_path",\n "sha256",\n "bytes_written",\n "created"\n ],\n "type": "object"\n },\n "type": "array"\n },\n "cleanup": {\n "additionalProperties": false,\n "properties": {\n "attempted": {\n "type": "boolean"\n },\n "residual_paths": {\n "items": {\n "minLength": 1,\n "type": "string"\n },\n "type": "array"\n },\n "verified": {\n "type": "boolean"\n }\n },\n "required": [\n "attempted",\n "verified",\n "residual_paths"\n ],\n "type": "object"\n },\n "containment_verified": {\n "type": "boolean"\n },\n "extraction_manifest": {\n "additionalProperties": false,\n "properties": {\n "extraction_id": {\n "pattern": "^aex_[a-f0-9]{64}$",\n "type": "string"\n },\n "files_sha256": {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n },\n "output_root_alias": {\n "const": "$OUTPUT_ROOT",\n "type": "string"\n },\n "selected_occurrence_ids": {\n "items": {\n "pattern": "^occ_[a-f0-9]{64}$",\n "type": "string"\n },\n "minItems": 1,\n "type": "array"\n },\n "source_manifest_id": {\n "pattern": "^agm_[a-f0-9]{64}$",\n "type": "string"\n }\n },\n "required": [\n "extraction_id",\n "source_manifest_id",\n "selected_occurrence_ids",\n "files_sha256",\n "output_root_alias"\n ],\n "type": "object"\n },\n "integrity_contradictions": {\n "default": [],\n "items": {\n "additionalProperties": false,\n "properties": {\n "contradiction_id": {\n "pattern": "^ic_[a-f0-9]{64}$",\n "type": "string"\n },\n "declared_sha256": {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n },\n "entry_kind": {\n "enum": [\n "file",\n "slice"\n ],\n "type": "string"\n },\n "limitations": {\n "items": {\n "type": "string"\n },\n "minItems": 1,\n "type": "array"\n },\n "logical_path": {\n "minLength": 1,\n "type": "string"\n },\n "observed_sha256": {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n },\n "occurrence_id": {\n "pattern": "^occ_[a-f0-9]{64}$",\n "type": "string"\n },\n "parent_artifact_id": {\n "pattern": "^art_[a-f0-9]{64}$",\n "type": "string"\n },\n "provenance": {\n "const": "container-integrity-metadata-versus-observed-bytes",\n "type": "string"\n },\n "trust": {\n "const": "observed-untrusted",\n "type": "string"\n },\n "unpacked": {\n "type": "boolean"\n }\n },\n "required": [\n "contradiction_id",\n "occurrence_id",\n "parent_artifact_id",\n "logical_path",\n "declared_sha256",\n "observed_sha256",\n "entry_kind",\n "unpacked",\n "trust",\n "provenance",\n "limitations"\n ],\n "type": "object"\n },\n "type": "array"\n },\n "limitations": {\n "items": {\n "type": "string"\n },\n "type": "array"\n },\n "manifest": {\n "additionalProperties": false,\n "properties": {\n "edge_count": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "graph_sha256": {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n },\n "manifest_id": {\n "pattern": "^agm_[a-f0-9]{64}$",\n "type": "string"\n },\n "node_count": {\n "maximum": 9007199254740991,\n "minimum": 1,\n "type": "integer"\n },\n "occurrence_count": {\n "maximum": 9007199254740991,\n "minimum": 1,\n "type": "integer"\n },\n "root_artifact_id": {\n "pattern": "^art_[a-f0-9]{64}$",\n "type": "string"\n },\n "root_format": {\n "enum": [\n "dmg",\n "zip",\n "pkg",\n "asar",\n "javascript-bundle",\n "source-map",\n "mach-o-universal",\n "mach-o",\n "elf",\n "pe",\n "dos-mz",\n "dos-com",\n "hopper",\n "analysis-database",\n "ipa",\n "apk",\n "msix",\n "appx",\n "plist",\n "entitlements",\n "directory",\n "file",\n "unknown"\n ],\n "type": "string"\n },\n "root_sha256": {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n }\n },\n "required": [\n "manifest_id",\n "root_artifact_id",\n "root_sha256",\n "root_format",\n "graph_sha256",\n "node_count",\n "occurrence_count",\n "edge_count"\n ],\n "type": "object"\n },\n "output_root": {\n "minLength": 1,\n "type": "string"\n },\n "provenance": {\n "items": {\n "additionalProperties": false,\n "properties": {\n "arguments": {\n "items": {\n "type": "string"\n },\n "type": "array"\n },\n "effects": {\n "items": {\n "enum": [\n "read",\n "write",\n "mount"\n ],\n "type": "string"\n },\n "type": "array"\n },\n "executable_sha256": {\n "anyOf": [\n {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "exit_code": {\n "anyOf": [\n {\n "maximum": 9007199254740991,\n "minimum": -9007199254740991,\n "type": "integer"\n },\n {\n "type": "null"\n }\n ]\n },\n "tool": {\n "minLength": 1,\n "type": "string"\n },\n "tool_version": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "tool",\n "arguments",\n "tool_version",\n "executable_sha256",\n "exit_code",\n "effects"\n ],\n "type": "object"\n },\n "type": "array"\n }\n },\n "required": [\n "manifest",\n "extraction_manifest",\n "output_root",\n "artifacts",\n "containment_verified",\n "cleanup",\n "provenance",\n "integrity_contradictions",\n "limitations"\n ],\n "type": "object"\n }\n },\n "required": [\n "result",\n "evidence_id",\n "evidence"\n ],\n "type": "object"\n },\n "requiresSession": false,\n "title": "Extract Artifact"\n },\n {\n "analysisOperation": "decode_interface_builder",\n "annotations": {\n "destructiveHint": false,\n "idempotentHint": true,\n "openWorldHint": false,\n "readOnlyHint": false\n },\n "description": "Decode compiled storyboard and nib archives inside the active Apple app bundle, including keyed property lists and NIBArchive object tables, into a bounded object, hierarchy, and connection graph. This is static archive parsing; unrecognized archive classes and unresolved code handlers remain explicit unknowns.",\n "effects": {\n "accessesNetwork": false,\n "changesUiState": false,\n "idempotent": true,\n "launchesProcess": false,\n "mayDiscardData": false,\n "mutatesSession": true,\n "mutatesTarget": false,\n "writesFilesystem": false\n },\n "inputSchema": {\n "$schema": "https://json-schema.org/draft/2020-12/schema",\n "additionalProperties": false,\n "examples": [\n {}\n ],\n "properties": {\n "max_connections": {\n "default": 40000,\n "description": "Maximum permitted connections for this operation.",\n "maximum": 40000,\n "minimum": 1,\n "type": "integer"\n },\n "max_documents": {\n "default": 64,\n "description": "Maximum permitted documents for this operation.",\n "maximum": 64,\n "minimum": 1,\n "type": "integer"\n },\n "max_objects": {\n "default": 20000,\n "description": "Maximum permitted objects for this operation.",\n "maximum": 20000,\n "minimum": 1,\n "type": "integer"\n }\n },\n "type": "object"\n },\n "kind": "artifact-provider",\n "name": "decode_interface_builder",\n "outputSchema": {\n "$defs": {\n "__schema0": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "number"\n },\n {\n "type": "boolean"\n },\n {\n "type": "null"\n },\n {\n "items": {\n "$ref": "#/$defs/__schema0"\n },\n "type": "array"\n },\n {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n }\n ]\n }\n },\n "$schema": "https://json-schema.org/draft/2020-12/schema",\n "additionalProperties": false,\n "properties": {\n "evidence": {\n "additionalProperties": false,\n "properties": {\n "analysis_profile": {\n "additionalProperties": false,\n "properties": {\n "digest": {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n },\n "parameters": {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n },\n "provider": {\n "additionalProperties": false,\n "properties": {\n "id": {\n "minLength": 1,\n "type": "string"\n },\n "name": {\n "minLength": 1,\n "type": "string"\n },\n "version": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "id",\n "name",\n "version"\n ],\n "type": "object"\n }\n },\n "required": [\n "provider",\n "parameters",\n "digest"\n ],\n "type": "object"\n },\n "authority": {\n "enum": [\n "shipped-artifact",\n "controlled-replay",\n "historical-reference",\n "external-service",\n "analyst-inference"\n ],\n "type": "string"\n },\n "confidence": {\n "enum": [\n "observed",\n "derived",\n "inferred"\n ],\n "type": "string"\n },\n "environment": {\n "anyOf": [\n {\n "additionalProperties": false,\n "properties": {\n "architecture": {\n "minLength": 1,\n "type": "string"\n },\n "id": {\n "minLength": 1,\n "type": "string"\n },\n "isolation": {\n "enum": [\n "none",\n "process",\n "container",\n "virtual-machine"\n ],\n "type": "string"\n },\n "platform": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "id",\n "platform",\n "architecture",\n "isolation"\n ],\n "type": "object"\n },\n {\n "type": "null"\n }\n ]\n },\n "evidence_id": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "evidence_links": {\n "items": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "type": "array"\n },\n "limitations": {\n "items": {\n "type": "string"\n },\n "type": "array"\n },\n "locations": {\n "items": {\n "oneOf": [\n {\n "additionalProperties": false,\n "properties": {\n "address": {\n "minLength": 1,\n "type": "string"\n },\n "kind": {\n "const": "address",\n "type": "string"\n }\n },\n "required": [\n "kind",\n "address"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "end": {\n "minLength": 1,\n "type": "string"\n },\n "kind": {\n "const": "address-range",\n "type": "string"\n },\n "start": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "kind",\n "start",\n "end"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "kind": {\n "const": "artifact-path",\n "type": "string"\n },\n "path": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "kind",\n "path"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "kind": {\n "const": "file-offset",\n "type": "string"\n },\n "offset": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "kind",\n "offset"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "end": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "kind": {\n "const": "file-offset-range",\n "type": "string"\n },\n "start": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "kind",\n "start",\n "end"\n ],\n "type": "object"\n }\n ]\n },\n "type": "array"\n },\n "normalized_result": {\n "$ref": "#/$defs/__schema0"\n },\n "operation": {\n "minLength": 1,\n "type": "string"\n },\n "parameters": {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n },\n "predicate_type": {\n "minLength": 1,\n "type": "string"\n },\n "provider": {\n "additionalProperties": false,\n "properties": {\n "id": {\n "minLength": 1,\n "type": "string"\n },\n "name": {\n "minLength": 1,\n "type": "string"\n },\n "version": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "id",\n "name",\n "version"\n ],\n "type": "object"\n },\n "raw_result": {\n "anyOf": [\n {\n "$ref": "#/$defs/__schema0"\n },\n {\n "type": "null"\n }\n ]\n },\n "subject": {\n "anyOf": [\n {\n "additionalProperties": false,\n "properties": {\n "architecture": {\n "anyOf": [\n {\n "enum": [\n "x86",\n "x86_64",\n "arm",\n "arm64"\n ],\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "digest": {\n "additionalProperties": false,\n "properties": {\n "sha256": {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n }\n },\n "required": [\n "sha256"\n ],\n "type": "object"\n },\n "format": {\n "enum": [\n "hopper",\n "analysis-database",\n "mach-o",\n "elf",\n "pe",\n "dos-mz",\n "dos-com",\n "zip",\n "ipa",\n "apk",\n "msix",\n "appx",\n "asar",\n "dmg",\n "pkg",\n "plist",\n "javascript",\n "source-map",\n "directory",\n "file",\n "unknown",\n "mach-o-universal",\n "javascript-bundle",\n "entitlements"\n ],\n "type": "string"\n },\n "local_path": {\n "type": "string"\n },\n "name": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "name",\n "digest",\n "format",\n "architecture",\n "local_path"\n ],\n "type": "object"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "evidence_id",\n "subject",\n "provider",\n "predicate_type",\n "operation",\n "parameters",\n "raw_result",\n "normalized_result",\n "confidence",\n "authority",\n "environment",\n "limitations",\n "locations",\n "evidence_links"\n ],\n "type": "object"\n },\n "evidence_id": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "result": {\n "additionalProperties": false,\n "properties": {\n "documents": {\n "items": {\n "additionalProperties": false,\n "properties": {\n "archive_sha256": {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n },\n "connection_count": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "document_kind": {\n "enum": [\n "nib",\n "storyboard_scene"\n ],\n "type": "string"\n },\n "hierarchy_complete": {\n "type": "boolean"\n },\n "object_count": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "relative_path": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "relative_path",\n "archive_sha256",\n "document_kind",\n "object_count",\n "connection_count",\n "hierarchy_complete"\n ],\n "type": "object"\n },\n "maxItems": 64,\n "type": "array"\n },\n "graph": {\n "additionalProperties": false,\n "properties": {\n "coverage": {\n "items": {\n "additionalProperties": false,\n "properties": {\n "examined": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "facet": {\n "minLength": 1,\n "type": "string"\n },\n "omitted": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "reason": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "status": {\n "enum": [\n "complete",\n "partial",\n "unsupported",\n "not_requested"\n ],\n "type": "string"\n }\n },\n "required": [\n "facet",\n "status",\n "reason",\n "examined",\n "omitted"\n ],\n "type": "object"\n },\n "type": "array"\n },\n "edges": {\n "items": {\n "oneOf": [\n {\n "additionalProperties": false,\n "properties": {\n "evidence": {\n "items": {\n "additionalProperties": false,\n "properties": {\n "artifact_path": {\n "anyOf": [\n {\n "minLength": 1,\n "type": "string"\n },\n {\n "type": "null"\n }\n ],\n "default": null\n },\n "artifact_sha256": {\n "anyOf": [\n {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n },\n {\n "type": "null"\n }\n ],\n "default": null\n },\n "description": {\n "minLength": 1,\n "type": "string"\n },\n "kind": {\n "enum": [\n "binary_metadata",\n "interface_builder_resource",\n "symbol",\n "reference",\n "decompiler"\n ],\n "type": "string"\n },\n "location": {\n "additionalProperties": false,\n "properties": {\n "address": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "file_offset": {\n "anyOf": [\n {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "address",\n "file_offset"\n ],\n "type": "object"\n }\n },\n "required": [\n "kind",\n "description",\n "location",\n "artifact_path",\n "artifact_sha256"\n ],\n "type": "object"\n },\n "minItems": 1,\n "type": "array"\n },\n "from": {\n "minLength": 1,\n "type": "string"\n },\n "id": {\n "minLength": 1,\n "type": "string"\n },\n "limitations": {\n "items": {\n "type": "string"\n },\n "type": "array"\n },\n "relation": {\n "enum": [\n "contains",\n "outlet_to",\n "target_action",\n "segue_to",\n "objc_dispatch",\n "swift_witness_dispatch",\n "swift_vtable_dispatch",\n "thunk_to",\n "direct_call",\n "indirect_call",\n "provider_call",\n "reads",\n "writes",\n "flows_to",\n "controls"\n ],\n "type": "string"\n },\n "resolution": {\n "enum": [\n "observed",\n "inferred",\n "resolved",\n "ambiguous"\n ],\n "type": "string"\n },\n "to": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "id",\n "from",\n "to",\n "relation",\n "resolution",\n "evidence",\n "limitations"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "evidence": {\n "items": {\n "additionalProperties": false,\n "properties": {\n "artifact_path": {\n "anyOf": [\n {\n "minLength": 1,\n "type": "string"\n },\n {\n "type": "null"\n }\n ],\n "default": null\n },\n "artifact_sha256": {\n "anyOf": [\n {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n },\n {\n "type": "null"\n }\n ],\n "default": null\n },\n "description": {\n "minLength": 1,\n "type": "string"\n },\n "kind": {\n "enum": [\n "binary_metadata",\n "interface_builder_resource",\n "symbol",\n "reference",\n "decompiler"\n ],\n "type": "string"\n },\n "location": {\n "additionalProperties": false,\n "properties": {\n "address": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "file_offset": {\n "anyOf": [\n {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "address",\n "file_offset"\n ],\n "type": "object"\n }\n },\n "required": [\n "kind",\n "description",\n "location",\n "artifact_path",\n "artifact_sha256"\n ],\n "type": "object"\n },\n "type": "array"\n },\n "from": {\n "minLength": 1,\n "type": "string"\n },\n "id": {\n "minLength": 1,\n "type": "string"\n },\n "limitations": {\n "items": {\n "type": "string"\n },\n "type": "array"\n },\n "reason": {\n "minLength": 1,\n "type": "string"\n },\n "relation": {\n "enum": [\n "contains",\n "outlet_to",\n "target_action",\n "segue_to",\n "objc_dispatch",\n "swift_witness_dispatch",\n "swift_vtable_dispatch",\n "thunk_to",\n "direct_call",\n "indirect_call",\n "provider_call",\n "reads",\n "writes",\n "flows_to",\n "controls"\n ],\n "type": "string"\n },\n "resolution": {\n "const": "unresolved",\n "type": "string"\n },\n "to": {\n "type": "null"\n }\n },\n "required": [\n "id",\n "from",\n "to",\n "relation",\n "resolution",\n "reason",\n "evidence",\n "limitations"\n ],\n "type": "object"\n }\n ]\n },\n "type": "array"\n },\n "nodes": {\n "items": {\n "additionalProperties": false,\n "properties": {\n "attributes": {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n },\n "evidence": {\n "items": {\n "additionalProperties": false,\n "properties": {\n "artifact_path": {\n "anyOf": [\n {\n "minLength": 1,\n "type": "string"\n },\n {\n "type": "null"\n }\n ],\n "default": null\n },\n "artifact_sha256": {\n "anyOf": [\n {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n },\n {\n "type": "null"\n }\n ],\n "default": null\n },\n "description": {\n "minLength": 1,\n "type": "string"\n },\n "kind": {\n "enum": [\n "binary_metadata",\n "interface_builder_resource",\n "symbol",\n "reference",\n "decompiler"\n ],\n "type": "string"\n },\n "location": {\n "additionalProperties": false,\n "properties": {\n "address": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "file_offset": {\n "anyOf": [\n {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "address",\n "file_offset"\n ],\n "type": "object"\n }\n },\n "required": [\n "kind",\n "description",\n "location",\n "artifact_path",\n "artifact_sha256"\n ],\n "type": "object"\n },\n "type": "array"\n },\n "id": {\n "minLength": 1,\n "type": "string"\n },\n "kind": {\n "enum": [\n "storyboard",\n "scene",\n "view_controller",\n "view",\n "control",\n "constraint",\n "layout_guide",\n "resource",\n "placeholder",\n "external_object",\n "outlet",\n "action",\n "segue",\n "objc_class",\n "objc_selector",\n "swift_declaration",\n "swift_requirement",\n "dispatch_table",\n "dispatch_slot",\n "thunk",\n "function",\n "state_value",\n "global_value",\n "field",\n "branch_condition",\n "sink",\n "unknown"\n ],\n "type": "string"\n },\n "location": {\n "anyOf": [\n {\n "additionalProperties": false,\n "properties": {\n "address": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "file_offset": {\n "anyOf": [\n {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "address",\n "file_offset"\n ],\n "type": "object"\n },\n {\n "type": "null"\n }\n ]\n },\n "name": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "id",\n "kind",\n "name",\n "location",\n "attributes",\n "evidence"\n ],\n "type": "object"\n },\n "type": "array"\n },\n "provider": {\n "additionalProperties": false,\n "properties": {\n "id": {\n "minLength": 1,\n "type": "string"\n },\n "tool_version": {\n "minLength": 1,\n "type": "string"\n },\n "version": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "id",\n "version",\n "tool_version"\n ],\n "type": "object"\n },\n "target_sha256": {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n },\n "truncated": {\n "type": "boolean"\n }\n },\n "required": [\n "target_sha256",\n "provider",\n "nodes",\n "edges",\n "coverage",\n "truncated"\n ],\n "type": "object"\n },\n "limitations": {\n "items": {\n "type": "string"\n },\n "type": "array"\n },\n "target_sha256": {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n }\n },\n "required": [\n "target_sha256",\n "documents",\n "graph",\n "limitations"\n ],\n "type": "object"\n }\n },\n "required": [\n "result",\n "evidence_id",\n "evidence"\n ],\n "type": "object"\n },\n "requiresSession": false,\n "title": "Decode Interface Builder"\n },\n {\n "analysisOperation": "inspect_keyed_archive",\n "annotations": {\n "destructiveHint": false,\n "idempotentHint": true,\n "openWorldHint": false,\n "readOnlyHint": false\n },\n "description": "Inspect one Foundation NSKeyedArchiver plist in the active app bundle as original object-table nodes, class descriptors, named roots, and UID edges. Preserves shared and cyclic references without instantiating classes. The path is relative to the bundle; root selection and object pagination preserve original identities.",\n "effects": {\n "accessesNetwork": false,\n "changesUiState": false,\n "idempotent": true,\n "launchesProcess": false,\n "mayDiscardData": false,\n "mutatesSession": true,\n "mutatesTarget": false,\n "writesFilesystem": false\n },\n "inputSchema": {\n "$schema": "https://json-schema.org/draft/2020-12/schema",\n "additionalProperties": false,\n "examples": [\n {\n "path": "Contents/Resources/Model.plist"\n }\n ],\n "properties": {\n "limit": {\n "default": 20000,\n "description": "Value for limit.",\n "maximum": 20000,\n "minimum": 1,\n "type": "integer"\n },\n "offset": {\n "default": 0,\n "description": "Value for offset.",\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "path": {\n "default": ".",\n "description": "Local filesystem path used by this operation.",\n "minLength": 1,\n "type": "string"\n },\n "root": {\n "description": "Value for root.",\n "type": "string"\n }\n },\n "type": "object"\n },\n "kind": "artifact-provider",\n "name": "inspect_keyed_archive",\n "outputSchema": {\n "$defs": {\n "__schema0": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "number"\n },\n {\n "type": "boolean"\n },\n {\n "type": "null"\n },\n {\n "items": {\n "$ref": "#/$defs/__schema0"\n },\n "type": "array"\n },\n {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n }\n ]\n }\n },\n "$schema": "https://json-schema.org/draft/2020-12/schema",\n "additionalProperties": false,\n "properties": {\n "evidence": {\n "additionalProperties": false,\n "properties": {\n "analysis_profile": {\n "additionalProperties": false,\n "properties": {\n "digest": {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n },\n "parameters": {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n },\n "provider": {\n "additionalProperties": false,\n "properties": {\n "id": {\n "minLength": 1,\n "type": "string"\n },\n "name": {\n "minLength": 1,\n "type": "string"\n },\n "version": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "id",\n "name",\n "version"\n ],\n "type": "object"\n }\n },\n "required": [\n "provider",\n "parameters",\n "digest"\n ],\n "type": "object"\n },\n "authority": {\n "enum": [\n "shipped-artifact",\n "controlled-replay",\n "historical-reference",\n "external-service",\n "analyst-inference"\n ],\n "type": "string"\n },\n "confidence": {\n "enum": [\n "observed",\n "derived",\n "inferred"\n ],\n "type": "string"\n },\n "environment": {\n "anyOf": [\n {\n "additionalProperties": false,\n "properties": {\n "architecture": {\n "minLength": 1,\n "type": "string"\n },\n "id": {\n "minLength": 1,\n "type": "string"\n },\n "isolation": {\n "enum": [\n "none",\n "process",\n "container",\n "virtual-machine"\n ],\n "type": "string"\n },\n "platform": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "id",\n "platform",\n "architecture",\n "isolation"\n ],\n "type": "object"\n },\n {\n "type": "null"\n }\n ]\n },\n "evidence_id": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "evidence_links": {\n "items": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "type": "array"\n },\n "limitations": {\n "items": {\n "type": "string"\n },\n "type": "array"\n },\n "locations": {\n "items": {\n "oneOf": [\n {\n "additionalProperties": false,\n "properties": {\n "address": {\n "minLength": 1,\n "type": "string"\n },\n "kind": {\n "const": "address",\n "type": "string"\n }\n },\n "required": [\n "kind",\n "address"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "end": {\n "minLength": 1,\n "type": "string"\n },\n "kind": {\n "const": "address-range",\n "type": "string"\n },\n "start": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "kind",\n "start",\n "end"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "kind": {\n "const": "artifact-path",\n "type": "string"\n },\n "path": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "kind",\n "path"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "kind": {\n "const": "file-offset",\n "type": "string"\n },\n "offset": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "kind",\n "offset"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "end": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "kind": {\n "const": "file-offset-range",\n "type": "string"\n },\n "start": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "kind",\n "start",\n "end"\n ],\n "type": "object"\n }\n ]\n },\n "type": "array"\n },\n "normalized_result": {\n "$ref": "#/$defs/__schema0"\n },\n "operation": {\n "minLength": 1,\n "type": "string"\n },\n "parameters": {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n },\n "predicate_type": {\n "minLength": 1,\n "type": "string"\n },\n "provider": {\n "additionalProperties": false,\n "properties": {\n "id": {\n "minLength": 1,\n "type": "string"\n },\n "name": {\n "minLength": 1,\n "type": "string"\n },\n "version": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "id",\n "name",\n "version"\n ],\n "type": "object"\n },\n "raw_result": {\n "anyOf": [\n {\n "$ref": "#/$defs/__schema0"\n },\n {\n "type": "null"\n }\n ]\n },\n "subject": {\n "anyOf": [\n {\n "additionalProperties": false,\n "properties": {\n "architecture": {\n "anyOf": [\n {\n "enum": [\n "x86",\n "x86_64",\n "arm",\n "arm64"\n ],\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "digest": {\n "additionalProperties": false,\n "properties": {\n "sha256": {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n }\n },\n "required": [\n "sha256"\n ],\n "type": "object"\n },\n "format": {\n "enum": [\n "hopper",\n "analysis-database",\n "mach-o",\n "elf",\n "pe",\n "dos-mz",\n "dos-com",\n "zip",\n "ipa",\n "apk",\n "msix",\n "appx",\n "asar",\n "dmg",\n "pkg",\n "plist",\n "javascript",\n "source-map",\n "directory",\n "file",\n "unknown",\n "mach-o-universal",\n "javascript-bundle",\n "entitlements"\n ],\n "type": "string"\n },\n "local_path": {\n "type": "string"\n },\n "name": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "name",\n "digest",\n "format",\n "architecture",\n "local_path"\n ],\n "type": "object"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "evidence_id",\n "subject",\n "provider",\n "predicate_type",\n "operation",\n "parameters",\n "raw_result",\n "normalized_result",\n "confidence",\n "authority",\n "environment",\n "limitations",\n "locations",\n "evidence_links"\n ],\n "type": "object"\n },\n "evidence_id": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "result": {\n "additionalProperties": false,\n "properties": {\n "archive_format": {\n "enum": [\n "binary-plist",\n "xml-plist"\n ],\n "type": "string"\n },\n "archive_path": {\n "type": "string"\n },\n "archive_sha256": {\n "type": "string"\n },\n "limitations": {\n "items": {\n "type": "string"\n },\n "type": "array"\n },\n "next_offset": {\n "anyOf": [\n {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n {\n "type": "null"\n }\n ]\n },\n "objects": {\n "items": {\n "additionalProperties": false,\n "properties": {\n "class_id": {\n "anyOf": [\n {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n {\n "type": "null"\n }\n ]\n },\n "class_name": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "id": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "kind": {\n "enum": [\n "nil",\n "scalar",\n "array",\n "dictionary",\n "class-descriptor",\n "archived-object"\n ],\n "type": "string"\n },\n "status": {\n "enum": [\n "observed",\n "unknown-class",\n "unresolved-class",\n "nil"\n ],\n "type": "string"\n },\n "value": {\n "$ref": "#/$defs/__schema0"\n }\n },\n "required": [\n "id",\n "kind",\n "class_id",\n "class_name",\n "status",\n "value"\n ],\n "type": "object"\n },\n "type": "array"\n },\n "offset": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "references": {\n "items": {\n "additionalProperties": false,\n "properties": {\n "path": {\n "items": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n ]\n },\n "type": "array"\n },\n "raw": {\n "$ref": "#/$defs/__schema0"\n },\n "source": {\n "anyOf": [\n {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n {\n "type": "null"\n }\n ]\n },\n "status": {\n "enum": [\n "resolved",\n "nil",\n "unresolved",\n "malformed"\n ],\n "type": "string"\n },\n "target": {\n "anyOf": [\n {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "source",\n "path",\n "target",\n "status",\n "raw"\n ],\n "type": "object"\n },\n "type": "array"\n },\n "roots": {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n },\n "target_sha256": {\n "type": "string"\n },\n "total_objects": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "total_references": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "truncated": {\n "type": "boolean"\n }\n },\n "required": [\n "target_sha256",\n "archive_path",\n "archive_sha256",\n "archive_format",\n "roots",\n "objects",\n "references",\n "total_objects",\n "total_references",\n "offset",\n "next_offset",\n "truncated",\n "limitations"\n ],\n "type": "object"\n }\n },\n "required": [\n "result",\n "evidence_id",\n "evidence"\n ],\n "type": "object"\n },\n "requiresSession": false,\n "title": "Inspect Keyed Archive"\n },\n {\n "analysisOperation": "inspect_asset_catalog",\n "annotations": {\n "destructiveHint": false,\n "idempotentHint": true,\n "openWorldHint": true,\n "readOnlyHint": false\n },\n "description": "Inspect compiled Assets.car metadata in an active Apple app bundle. Returns stable paginated catalog and rendition records with raw assetutil metadata and catalog digests; rendition bytes are not extracted.",\n "effects": {\n "accessesNetwork": false,\n "changesUiState": false,\n "idempotent": true,\n "launchesProcess": true,\n "mayDiscardData": false,\n "mutatesSession": true,\n "mutatesTarget": false,\n "writesFilesystem": false\n },\n "inputSchema": {\n "$schema": "https://json-schema.org/draft/2020-12/schema",\n "additionalProperties": false,\n "examples": [\n {\n "limit": 1000,\n "offset": 0\n }\n ],\n "properties": {\n "limit": {\n "default": 1000,\n "description": "Value for limit.",\n "maximum": 10000,\n "minimum": 1,\n "type": "integer"\n },\n "offset": {\n "default": 0,\n "description": "Value for offset.",\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "type": "object"\n },\n "kind": "artifact-provider",\n "name": "inspect_asset_catalog",\n "outputSchema": {\n "$defs": {\n "__schema0": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "number"\n },\n {\n "type": "boolean"\n },\n {\n "type": "null"\n },\n {\n "items": {\n "$ref": "#/$defs/__schema0"\n },\n "type": "array"\n },\n {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n }\n ]\n }\n },\n "$schema": "https://json-schema.org/draft/2020-12/schema",\n "additionalProperties": false,\n "properties": {\n "evidence": {\n "additionalProperties": false,\n "properties": {\n "analysis_profile": {\n "additionalProperties": false,\n "properties": {\n "digest": {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n },\n "parameters": {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n },\n "provider": {\n "additionalProperties": false,\n "properties": {\n "id": {\n "minLength": 1,\n "type": "string"\n },\n "name": {\n "minLength": 1,\n "type": "string"\n },\n "version": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "id",\n "name",\n "version"\n ],\n "type": "object"\n }\n },\n "required": [\n "provider",\n "parameters",\n "digest"\n ],\n "type": "object"\n },\n "authority": {\n "enum": [\n "shipped-artifact",\n "controlled-replay",\n "historical-reference",\n "external-service",\n "analyst-inference"\n ],\n "type": "string"\n },\n "confidence": {\n "enum": [\n "observed",\n "derived",\n "inferred"\n ],\n "type": "string"\n },\n "environment": {\n "anyOf": [\n {\n "additionalProperties": false,\n "properties": {\n "architecture": {\n "minLength": 1,\n "type": "string"\n },\n "id": {\n "minLength": 1,\n "type": "string"\n },\n "isolation": {\n "enum": [\n "none",\n "process",\n "container",\n "virtual-machine"\n ],\n "type": "string"\n },\n "platform": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "id",\n "platform",\n "architecture",\n "isolation"\n ],\n "type": "object"\n },\n {\n "type": "null"\n }\n ]\n },\n "evidence_id": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "evidence_links": {\n "items": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "type": "array"\n },\n "limitations": {\n "items": {\n "type": "string"\n },\n "type": "array"\n },\n "locations": {\n "items": {\n "oneOf": [\n {\n "additionalProperties": false,\n "properties": {\n "address": {\n "minLength": 1,\n "type": "string"\n },\n "kind": {\n "const": "address",\n "type": "string"\n }\n },\n "required": [\n "kind",\n "address"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "end": {\n "minLength": 1,\n "type": "string"\n },\n "kind": {\n "const": "address-range",\n "type": "string"\n },\n "start": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "kind",\n "start",\n "end"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "kind": {\n "const": "artifact-path",\n "type": "string"\n },\n "path": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "kind",\n "path"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "kind": {\n "const": "file-offset",\n "type": "string"\n },\n "offset": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "kind",\n "offset"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "end": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "kind": {\n "const": "file-offset-range",\n "type": "string"\n },\n "start": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "kind",\n "start",\n "end"\n ],\n "type": "object"\n }\n ]\n },\n "type": "array"\n },\n "normalized_result": {\n "$ref": "#/$defs/__schema0"\n },\n "operation": {\n "minLength": 1,\n "type": "string"\n },\n "parameters": {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n },\n "predicate_type": {\n "minLength": 1,\n "type": "string"\n },\n "provider": {\n "additionalProperties": false,\n "properties": {\n "id": {\n "minLength": 1,\n "type": "string"\n },\n "name": {\n "minLength": 1,\n "type": "string"\n },\n "version": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "id",\n "name",\n "version"\n ],\n "type": "object"\n },\n "raw_result": {\n "anyOf": [\n {\n "$ref": "#/$defs/__schema0"\n },\n {\n "type": "null"\n }\n ]\n },\n "subject": {\n "anyOf": [\n {\n "additionalProperties": false,\n "properties": {\n "architecture": {\n "anyOf": [\n {\n "enum": [\n "x86",\n "x86_64",\n "arm",\n "arm64"\n ],\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "digest": {\n "additionalProperties": false,\n "properties": {\n "sha256": {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n }\n },\n "required": [\n "sha256"\n ],\n "type": "object"\n },\n "format": {\n "enum": [\n "hopper",\n "analysis-database",\n "mach-o",\n "elf",\n "pe",\n "dos-mz",\n "dos-com",\n "zip",\n "ipa",\n "apk",\n "msix",\n "appx",\n "asar",\n "dmg",\n "pkg",\n "plist",\n "javascript",\n "source-map",\n "directory",\n "file",\n "unknown",\n "mach-o-universal",\n "javascript-bundle",\n "entitlements"\n ],\n "type": "string"\n },\n "local_path": {\n "type": "string"\n },\n "name": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "name",\n "digest",\n "format",\n "architecture",\n "local_path"\n ],\n "type": "object"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "evidence_id",\n "subject",\n "provider",\n "predicate_type",\n "operation",\n "parameters",\n "raw_result",\n "normalized_result",\n "confidence",\n "authority",\n "environment",\n "limitations",\n "locations",\n "evidence_links"\n ],\n "type": "object"\n },\n "evidence_id": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "result": {\n "additionalProperties": false,\n "properties": {\n "catalogs": {\n "items": {\n "additionalProperties": false,\n "properties": {\n "path": {\n "minLength": 1,\n "type": "string"\n },\n "record_count": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "sha256": {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n }\n },\n "required": [\n "path",\n "sha256",\n "record_count"\n ],\n "type": "object"\n },\n "type": "array"\n },\n "limit": {\n "exclusiveMinimum": 0,\n "maximum": 9007199254740991,\n "type": "integer"\n },\n "limitations": {\n "items": {\n "type": "string"\n },\n "type": "array"\n },\n "next_offset": {\n "anyOf": [\n {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n {\n "type": "null"\n }\n ]\n },\n "offset": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "records": {\n "items": {\n "additionalProperties": false,\n "properties": {\n "asset_name": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "catalog_path": {\n "minLength": 1,\n "type": "string"\n },\n "catalog_sha256": {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n },\n "index": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "kind": {\n "enum": [\n "catalog",\n "rendition"\n ],\n "type": "string"\n },\n "metadata": {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n },\n "rendition_name": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "catalog_path",\n "catalog_sha256",\n "index",\n "kind",\n "asset_name",\n "rendition_name",\n "metadata"\n ],\n "type": "object"\n },\n "type": "array"\n },\n "resource_key_matches": {\n "items": {\n "additionalProperties": false,\n "properties": {\n "field": {\n "minLength": 1,\n "type": "string"\n },\n "key": {\n "minLength": 1,\n "type": "string"\n },\n "renditions": {\n "items": {\n "additionalProperties": false,\n "properties": {\n "catalog_path": {\n "minLength": 1,\n "type": "string"\n },\n "catalog_sha256": {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n },\n "record_index": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "rendition_name": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "catalog_path",\n "catalog_sha256",\n "record_index",\n "rendition_name"\n ],\n "type": "object"\n },\n "type": "array"\n },\n "source_archive_sha256": {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n },\n "source_node_id": {\n "minLength": 1,\n "type": "string"\n },\n "source_path": {\n "minLength": 1,\n "type": "string"\n },\n "status": {\n "enum": [\n "matched",\n "ambiguous",\n "unmatched"\n ],\n "type": "string"\n }\n },\n "required": [\n "source_node_id",\n "source_path",\n "source_archive_sha256",\n "field",\n "key",\n "status",\n "renditions"\n ],\n "type": "object"\n },\n "type": "array"\n },\n "target_sha256": {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n },\n "total_records": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "truncated": {\n "type": "boolean"\n }\n },\n "required": [\n "target_sha256",\n "catalogs",\n "total_records",\n "offset",\n "limit",\n "records",\n "resource_key_matches",\n "next_offset",\n "truncated",\n "limitations"\n ],\n "type": "object"\n }\n },\n "required": [\n "result",\n "evidence_id",\n "evidence"\n ],\n "type": "object"\n },\n "requiresSession": false,\n "title": "Inspect Asset Catalog"\n },\n {\n "analysisOperation": "inspect_managed_artifact",\n "annotations": {\n "destructiveHint": false,\n "idempotentHint": true,\n "openWorldHint": false,\n "readOnlyHint": false\n },\n "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 complete inline inventories when metadata is admitted and explicit partial or malformed coverage otherwise.",\n "effects": {\n "accessesNetwork": false,\n "changesUiState": false,\n "idempotent": true,\n "launchesProcess": false,\n "mayDiscardData": false,\n "mutatesSession": true,\n "mutatesTarget": false,\n "writesFilesystem": false\n },\n "inputSchema": {\n "$schema": "https://json-schema.org/draft/2020-12/schema",\n "examples": [\n {\n "path": "/tmp/Example.dll"\n }\n ],\n "properties": {\n "path": {\n "description": "Explicit managed PE/CLI path; omit to reuse the previously selected managed target",\n "minLength": 1,\n "type": "string"\n }\n },\n "type": "object"\n },\n "kind": "managed-provider",\n "name": "inspect_managed_artifact",\n "outputSchema": {\n "$defs": {\n "__schema0": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "number"\n },\n {\n "type": "boolean"\n },\n {\n "type": "null"\n },\n {\n "items": {\n "$ref": "#/$defs/__schema0"\n },\n "type": "array"\n },\n {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n }\n ]\n }\n },\n "$schema": "https://json-schema.org/draft/2020-12/schema",\n "additionalProperties": false,\n "properties": {\n "evidence": {\n "additionalProperties": false,\n "properties": {\n "analysis_profile": {\n "additionalProperties": false,\n "properties": {\n "digest": {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n },\n "parameters": {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n },\n "provider": {\n "additionalProperties": false,\n "properties": {\n "id": {\n "minLength": 1,\n "type": "string"\n },\n "name": {\n "minLength": 1,\n "type": "string"\n },\n "version": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "id",\n "name",\n "version"\n ],\n "type": "object"\n }\n },\n "required": [\n "provider",\n "parameters",\n "digest"\n ],\n "type": "object"\n },\n "authority": {\n "enum": [\n "shipped-artifact",\n "controlled-replay",\n "historical-reference",\n "external-service",\n "analyst-inference"\n ],\n "type": "string"\n },\n "confidence": {\n "enum": [\n "observed",\n "derived",\n "inferred"\n ],\n "type": "string"\n },\n "environment": {\n "anyOf": [\n {\n "additionalProperties": false,\n "properties": {\n "architecture": {\n "minLength": 1,\n "type": "string"\n },\n "id": {\n "minLength": 1,\n "type": "string"\n },\n "isolation": {\n "enum": [\n "none",\n "process",\n "container",\n "virtual-machine"\n ],\n "type": "string"\n },\n "platform": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "id",\n "platform",\n "architecture",\n "isolation"\n ],\n "type": "object"\n },\n {\n "type": "null"\n }\n ]\n },\n "evidence_id": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "evidence_links": {\n "items": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "type": "array"\n },\n "limitations": {\n "items": {\n "type": "string"\n },\n "type": "array"\n },\n "locations": {\n "items": {\n "oneOf": [\n {\n "additionalProperties": false,\n "properties": {\n "address": {\n "minLength": 1,\n "type": "string"\n },\n "kind": {\n "const": "address",\n "type": "string"\n }\n },\n "required": [\n "kind",\n "address"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "end": {\n "minLength": 1,\n "type": "string"\n },\n "kind": {\n "const": "address-range",\n "type": "string"\n },\n "start": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "kind",\n "start",\n "end"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "kind": {\n "const": "artifact-path",\n "type": "string"\n },\n "path": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "kind",\n "path"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "kind": {\n "const": "file-offset",\n "type": "string"\n },\n "offset": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "kind",\n "offset"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "end": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "kind": {\n "const": "file-offset-range",\n "type": "string"\n },\n "start": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "kind",\n "start",\n "end"\n ],\n "type": "object"\n }\n ]\n },\n "type": "array"\n },\n "normalized_result": {\n "$ref": "#/$defs/__schema0"\n },\n "operation": {\n "minLength": 1,\n "type": "string"\n },\n "parameters": {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n },\n "predicate_type": {\n "minLength": 1,\n "type": "string"\n },\n "provider": {\n "additionalProperties": false,\n "properties": {\n "id": {\n "minLength": 1,\n "type": "string"\n },\n "name": {\n "minLength": 1,\n "type": "string"\n },\n "version": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "id",\n "name",\n "version"\n ],\n "type": "object"\n },\n "raw_result": {\n "anyOf": [\n {\n "$ref": "#/$defs/__schema0"\n },\n {\n "type": "null"\n }\n ]\n },\n "subject": {\n "anyOf": [\n {\n "additionalProperties": false,\n "properties": {\n "architecture": {\n "anyOf": [\n {\n "enum": [\n "x86",\n "x86_64",\n "arm",\n "arm64"\n ],\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "digest": {\n "additionalProperties": false,\n "properties": {\n "sha256": {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n }\n },\n "required": [\n "sha256"\n ],\n "type": "object"\n },\n "format": {\n "enum": [\n "hopper",\n "analysis-database",\n "mach-o",\n "elf",\n "pe",\n "dos-mz",\n "dos-com",\n "zip",\n "ipa",\n "apk",\n "msix",\n "appx",\n "asar",\n "dmg",\n "pkg",\n "plist",\n "javascript",\n "source-map",\n "directory",\n "file",\n "unknown",\n "mach-o-universal",\n "javascript-bundle",\n "entitlements"\n ],\n "type": "string"\n },\n "local_path": {\n "type": "string"\n },\n "name": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "name",\n "digest",\n "format",\n "architecture",\n "local_path"\n ],\n "type": "object"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "evidence_id",\n "subject",\n "provider",\n "predicate_type",\n "operation",\n "parameters",\n "raw_result",\n "normalized_result",\n "confidence",\n "authority",\n "environment",\n "limitations",\n "locations",\n "evidence_links"\n ],\n "type": "object"\n },\n "evidence_id": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "result": {\n "additionalProperties": false,\n "properties": {\n "artifact": {\n "additionalProperties": false,\n "properties": {\n "byte_length": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "format": {\n "const": "pe",\n "type": "string"\n },\n "path": {\n "minLength": 1,\n "type": "string"\n },\n "sha256": {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n }\n },\n "required": [\n "path",\n "sha256",\n "byte_length",\n "format"\n ],\n "type": "object"\n },\n "assembly": {\n "anyOf": [\n {\n "additionalProperties": false,\n "properties": {\n "culture": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "flags": {\n "maximum": 4294967295,\n "minimum": 0,\n "type": "integer"\n },\n "hash_algorithm": {\n "maximum": 4294967295,\n "minimum": 0,\n "type": "integer"\n },\n "name": {\n "type": "string"\n },\n "public_key": {\n "additionalProperties": false,\n "properties": {\n "byte_length": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "kind": {\n "enum": [\n "none",\n "public-key",\n "public-key-token"\n ],\n "type": "string"\n },\n "sha256": {\n "anyOf": [\n {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "token": {\n "anyOf": [\n {\n "pattern": "^[a-f0-9]{16}$",\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "kind",\n "byte_length",\n "sha256",\n "token"\n ],\n "type": "object"\n },\n "row_offset": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "token": {\n "pattern": "^0x[0-9a-f]{8}$",\n "type": "string"\n },\n "version": {\n "pattern": "^\\\\d+\\\\.\\\\d+\\\\.\\\\d+\\\\.\\\\d+$",\n "type": "string"\n }\n },\n "required": [\n "name",\n "version",\n "culture",\n "flags",\n "hash_algorithm",\n "public_key",\n "token",\n "row_offset"\n ],\n "type": "object"\n },\n {\n "type": "null"\n }\n ]\n },\n "attributes": {\n "items": {\n "additionalProperties": false,\n "properties": {\n "constructor_token": {\n "anyOf": [\n {\n "pattern": "^0x[0-9a-f]{8}$",\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "decoded_fixed_string": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "parent_token": {\n "pattern": "^0x[0-9a-f]{8}$",\n "type": "string"\n },\n "row_offset": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "token": {\n "pattern": "^0x[0-9a-f]{8}$",\n "type": "string"\n },\n "type_name": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "value_length": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "value_sha256": {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n }\n },\n "required": [\n "parent_token",\n "constructor_token",\n "type_name",\n "value_length",\n "value_sha256",\n "decoded_fixed_string",\n "token",\n "row_offset"\n ],\n "type": "object"\n },\n "type": "array"\n },\n "classification": {\n "additionalProperties": false,\n "properties": {\n "container": {\n "const": "pe",\n "type": "string"\n },\n "evidence": {\n "items": {\n "additionalProperties": false,\n "properties": {\n "code": {\n "minLength": 1,\n "type": "string"\n },\n "detail": {\n "minLength": 1,\n "type": "string"\n },\n "file_offset": {\n "anyOf": [\n {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "code",\n "detail",\n "file_offset"\n ],\n "type": "object"\n },\n "type": "array"\n },\n "implementation": {\n "enum": [\n "cil",\n "cil-and-ready-to-run",\n "cpp-cli-mixed",\n "metadata-only",\n "not-managed",\n "unknown"\n ],\n "type": "string"\n },\n "managed_architecture": {\n "enum": [\n "anycpu",\n "anycpu-prefer-32",\n "x86",\n "x86_64",\n "arm",\n "arm64",\n "unknown"\n ],\n "type": "string"\n },\n "runtime_family": {\n "enum": [\n "dotnet-framework",\n "modern-dotnet",\n "unity-mono",\n "mixed-clr-native",\n "unknown"\n ],\n "type": "string"\n },\n "status": {\n "enum": [\n "managed",\n "not-managed",\n "malformed"\n ],\n "type": "string"\n }\n },\n "required": [\n "status",\n "container",\n "runtime_family",\n "implementation",\n "managed_architecture",\n "evidence"\n ],\n "type": "object"\n },\n "coverage": {\n "additionalProperties": false,\n "properties": {\n "issues": {\n "items": {\n "additionalProperties": false,\n "properties": {\n "code": {\n "enum": [\n "invalid-cli-header",\n "invalid-directory",\n "invalid-metadata-root",\n "invalid-stream",\n "missing-stream",\n "invalid-tables",\n "invalid-row",\n "invalid-heap-index",\n "invalid-string",\n "invalid-blob",\n "unsupported-signature",\n "invalid-guid",\n "invalid-resource"\n ],\n "type": "string"\n },\n "detail": {\n "minLength": 1,\n "type": "string"\n },\n "offset": {\n "anyOf": [\n {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n {\n "type": "null"\n }\n ]\n },\n "scope": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "code",\n "scope",\n "offset",\n "detail"\n ],\n "type": "object"\n },\n "type": "array"\n },\n "state": {\n "enum": [\n "complete",\n "partial",\n "unavailable"\n ],\n "type": "string"\n }\n },\n "required": [\n "state",\n "issues"\n ],\n "type": "object"\n },\n "limitations": {\n "items": {\n "type": "string"\n },\n "type": "array"\n },\n "metadata": {\n "additionalProperties": false,\n "properties": {\n "status": {\n "enum": [\n "absent",\n "complete",\n "partial",\n "malformed"\n ],\n "type": "string"\n },\n "stream_names": {\n "items": {\n "type": "string"\n },\n "type": "array"\n },\n "table_row_counts": {\n "additionalProperties": {\n "maximum": 4294967295,\n "minimum": 0,\n "type": "integer"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n },\n "version": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "status",\n "version",\n "stream_names",\n "table_row_counts"\n ],\n "type": "object"\n },\n "module": {\n "anyOf": [\n {\n "additionalProperties": false,\n "properties": {\n "enc_base_id": {\n "anyOf": [\n {\n "pattern": "^[0-9a-fA-F]{8}(?:-[0-9a-fA-F]{4}){3}-[0-9a-fA-F]{12}$",\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "enc_id": {\n "anyOf": [\n {\n "pattern": "^[0-9a-fA-F]{8}(?:-[0-9a-fA-F]{4}){3}-[0-9a-fA-F]{12}$",\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "generation": {\n "maximum": 65535,\n "minimum": 0,\n "type": "integer"\n },\n "mvid": {\n "anyOf": [\n {\n "pattern": "^[0-9a-fA-F]{8}(?:-[0-9a-fA-F]{4}){3}-[0-9a-fA-F]{12}$",\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "name": {\n "type": "string"\n },\n "row_offset": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "token": {\n "pattern": "^0x[0-9a-f]{8}$",\n "type": "string"\n }\n },\n "required": [\n "name",\n "generation",\n "mvid",\n "enc_id",\n "enc_base_id",\n "token",\n "row_offset"\n ],\n "type": "object"\n },\n {\n "type": "null"\n }\n ]\n },\n "pe": {\n "additionalProperties": false,\n "properties": {\n "architecture": {\n "enum": [\n "x86",\n "x86_64",\n "arm",\n "arm64"\n ],\n "type": "string"\n },\n "characteristics": {\n "maximum": 65535,\n "minimum": 0,\n "type": "integer"\n },\n "cli": {\n "anyOf": [\n {\n "additionalProperties": false,\n "properties": {\n "entry_point": {\n "additionalProperties": false,\n "properties": {\n "kind": {\n "enum": [\n "metadata-token",\n "native-rva",\n "none"\n ],\n "type": "string"\n },\n "value": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "kind",\n "value"\n ],\n "type": "object"\n },\n "flag_names": {\n "items": {\n "type": "string"\n },\n "type": "array"\n },\n "flags": {\n "maximum": 4294967295,\n "minimum": 0,\n "type": "integer"\n },\n "header_offset": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "header_size": {\n "maximum": 9007199254740991,\n "minimum": 72,\n "type": "integer"\n },\n "managed_native_header_rva": {\n "maximum": 4294967295,\n "minimum": 0,\n "type": "integer"\n },\n "managed_native_header_size": {\n "maximum": 4294967295,\n "minimum": 0,\n "type": "integer"\n },\n "metadata_rva": {\n "maximum": 4294967295,\n "minimum": 1,\n "type": "integer"\n },\n "metadata_size": {\n "maximum": 4294967295,\n "minimum": 1,\n "type": "integer"\n },\n "ready_to_run_signature": {\n "type": "boolean"\n },\n "resources_rva": {\n "maximum": 4294967295,\n "minimum": 0,\n "type": "integer"\n },\n "resources_size": {\n "maximum": 4294967295,\n "minimum": 0,\n "type": "integer"\n },\n "runtime_version": {\n "type": "string"\n },\n "strong_name_rva": {\n "maximum": 4294967295,\n "minimum": 0,\n "type": "integer"\n },\n "strong_name_size": {\n "maximum": 4294967295,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "header_offset",\n "header_size",\n "runtime_version",\n "flags",\n "flag_names",\n "entry_point",\n "metadata_rva",\n "metadata_size",\n "resources_rva",\n "resources_size",\n "strong_name_rva",\n "strong_name_size",\n "managed_native_header_rva",\n "managed_native_header_size",\n "ready_to_run_signature"\n ],\n "type": "object"\n },\n {\n "type": "null"\n }\n ]\n },\n "machine": {\n "maximum": 65535,\n "minimum": 0,\n "type": "integer"\n },\n "machine_hex": {\n "pattern": "^0x[0-9a-f]{4}$",\n "type": "string"\n },\n "optional_header": {\n "enum": [\n "pe32",\n "pe32-plus"\n ],\n "type": "string"\n },\n "section_count": {\n "maximum": 65535,\n "minimum": 1,\n "type": "integer"\n }\n },\n "required": [\n "machine",\n "machine_hex",\n "architecture",\n "optional_header",\n "section_count",\n "characteristics",\n "cli"\n ],\n "type": "object"\n },\n "references": {\n "items": {\n "additionalProperties": false,\n "properties": {\n "culture": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "flags": {\n "maximum": 4294967295,\n "minimum": 0,\n "type": "integer"\n },\n "hash_value_length": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "hash_value_sha256": {\n "anyOf": [\n {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "name": {\n "type": "string"\n },\n "public_key_or_token": {\n "additionalProperties": false,\n "properties": {\n "byte_length": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "kind": {\n "enum": [\n "none",\n "public-key",\n "public-key-token"\n ],\n "type": "string"\n },\n "sha256": {\n "anyOf": [\n {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "token": {\n "anyOf": [\n {\n "pattern": "^[a-f0-9]{16}$",\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "kind",\n "byte_length",\n "sha256",\n "token"\n ],\n "type": "object"\n },\n "row_offset": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "token": {\n "pattern": "^0x[0-9a-f]{8}$",\n "type": "string"\n },\n "version": {\n "pattern": "^\\\\d+\\\\.\\\\d+\\\\.\\\\d+\\\\.\\\\d+$",\n "type": "string"\n }\n },\n "required": [\n "name",\n "version",\n "culture",\n "flags",\n "public_key_or_token",\n "hash_value_sha256",\n "hash_value_length",\n "token",\n "row_offset"\n ],\n "type": "object"\n },\n "type": "array"\n },\n "resources": {\n "items": {\n "additionalProperties": false,\n "properties": {\n "data_length": {\n "anyOf": [\n {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n {\n "type": "null"\n }\n ]\n },\n "data_sha256": {\n "anyOf": [\n {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "declared_offset": {\n "maximum": 4294967295,\n "minimum": 0,\n "type": "integer"\n },\n "embedded": {\n "type": "boolean"\n },\n "flags": {\n "maximum": 4294967295,\n "minimum": 0,\n "type": "integer"\n },\n "implementation_token": {\n "anyOf": [\n {\n "pattern": "^0x[0-9a-f]{8}$",\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "name": {\n "type": "string"\n },\n "row_offset": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "token": {\n "pattern": "^0x[0-9a-f]{8}$",\n "type": "string"\n },\n "visibility": {\n "enum": [\n "public",\n "private",\n "unknown"\n ],\n "type": "string"\n }\n },\n "required": [\n "name",\n "flags",\n "visibility",\n "implementation_token",\n "embedded",\n "declared_offset",\n "data_length",\n "data_sha256",\n "token",\n "row_offset"\n ],\n "type": "object"\n },\n "type": "array"\n },\n "target_frameworks": {\n "items": {\n "type": "string"\n },\n "type": "array"\n }\n },\n "required": [\n "artifact",\n "pe",\n "classification",\n "metadata",\n "module",\n "assembly",\n "target_frameworks",\n "references",\n "resources",\n "attributes",\n "coverage",\n "limitations"\n ],\n "type": "object"\n }\n },\n "required": [\n "result",\n "evidence_id",\n "evidence"\n ],\n "type": "object"\n },\n "requiresSession": false,\n "title": "Inspect Managed Artifact"\n },\n {\n "analysisOperation": "inspect_managed_members",\n "annotations": {\n "destructiveHint": false,\n "idempotentHint": true,\n "openWorldHint": false,\n "readOnlyHint": false\n },\n "description": "Inspect PE/CLI metadata members, signatures, raw CIL hashes, 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 tuple hash does not resolve them or fully commit control flow.",\n "effects": {\n "accessesNetwork": false,\n "changesUiState": false,\n "idempotent": true,\n "launchesProcess": false,\n "mayDiscardData": false,\n "mutatesSession": true,\n "mutatesTarget": false,\n "writesFilesystem": false\n },\n "inputSchema": {\n "$schema": "https://json-schema.org/draft/2020-12/schema",\n "examples": [\n {}\n ],\n "properties": {\n "path": {\n "description": "Explicit managed PE/CLI path; omit to reuse the previously selected managed target",\n "minLength": 1,\n "type": "string"\n }\n },\n "type": "object"\n },\n "kind": "managed-provider",\n "name": "inspect_managed_members",\n "outputSchema": {\n "$defs": {\n "__schema0": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "number"\n },\n {\n "type": "boolean"\n },\n {\n "type": "null"\n },\n {\n "items": {\n "$ref": "#/$defs/__schema0"\n },\n "type": "array"\n },\n {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n }\n ]\n }\n },\n "$schema": "https://json-schema.org/draft/2020-12/schema",\n "additionalProperties": false,\n "properties": {\n "evidence": {\n "additionalProperties": false,\n "properties": {\n "analysis_profile": {\n "additionalProperties": false,\n "properties": {\n "digest": {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n },\n "parameters": {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n },\n "provider": {\n "additionalProperties": false,\n "properties": {\n "id": {\n "minLength": 1,\n "type": "string"\n },\n "name": {\n "minLength": 1,\n "type": "string"\n },\n "version": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "id",\n "name",\n "version"\n ],\n "type": "object"\n }\n },\n "required": [\n "provider",\n "parameters",\n "digest"\n ],\n "type": "object"\n },\n "authority": {\n "enum": [\n "shipped-artifact",\n "controlled-replay",\n "historical-reference",\n "external-service",\n "analyst-inference"\n ],\n "type": "string"\n },\n "confidence": {\n "enum": [\n "observed",\n "derived",\n "inferred"\n ],\n "type": "string"\n },\n "environment": {\n "anyOf": [\n {\n "additionalProperties": false,\n "properties": {\n "architecture": {\n "minLength": 1,\n "type": "string"\n },\n "id": {\n "minLength": 1,\n "type": "string"\n },\n "isolation": {\n "enum": [\n "none",\n "process",\n "container",\n "virtual-machine"\n ],\n "type": "string"\n },\n "platform": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "id",\n "platform",\n "architecture",\n "isolation"\n ],\n "type": "object"\n },\n {\n "type": "null"\n }\n ]\n },\n "evidence_id": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "evidence_links": {\n "items": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "type": "array"\n },\n "limitations": {\n "items": {\n "type": "string"\n },\n "type": "array"\n },\n "locations": {\n "items": {\n "oneOf": [\n {\n "additionalProperties": false,\n "properties": {\n "address": {\n "minLength": 1,\n "type": "string"\n },\n "kind": {\n "const": "address",\n "type": "string"\n }\n },\n "required": [\n "kind",\n "address"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "end": {\n "minLength": 1,\n "type": "string"\n },\n "kind": {\n "const": "address-range",\n "type": "string"\n },\n "start": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "kind",\n "start",\n "end"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "kind": {\n "const": "artifact-path",\n "type": "string"\n },\n "path": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "kind",\n "path"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "kind": {\n "const": "file-offset",\n "type": "string"\n },\n "offset": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "kind",\n "offset"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "end": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "kind": {\n "const": "file-offset-range",\n "type": "string"\n },\n "start": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "kind",\n "start",\n "end"\n ],\n "type": "object"\n }\n ]\n },\n "type": "array"\n },\n "normalized_result": {\n "$ref": "#/$defs/__schema0"\n },\n "operation": {\n "minLength": 1,\n "type": "string"\n },\n "parameters": {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n },\n "predicate_type": {\n "minLength": 1,\n "type": "string"\n },\n "provider": {\n "additionalProperties": false,\n "properties": {\n "id": {\n "minLength": 1,\n "type": "string"\n },\n "name": {\n "minLength": 1,\n "type": "string"\n },\n "version": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "id",\n "name",\n "version"\n ],\n "type": "object"\n },\n "raw_result": {\n "anyOf": [\n {\n "$ref": "#/$defs/__schema0"\n },\n {\n "type": "null"\n }\n ]\n },\n "subject": {\n "anyOf": [\n {\n "additionalProperties": false,\n "properties": {\n "architecture": {\n "anyOf": [\n {\n "enum": [\n "x86",\n "x86_64",\n "arm",\n "arm64"\n ],\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "digest": {\n "additionalProperties": false,\n "properties": {\n "sha256": {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n }\n },\n "required": [\n "sha256"\n ],\n "type": "object"\n },\n "format": {\n "enum": [\n "hopper",\n "analysis-database",\n "mach-o",\n "elf",\n "pe",\n "dos-mz",\n "dos-com",\n "zip",\n "ipa",\n "apk",\n "msix",\n "appx",\n "asar",\n "dmg",\n "pkg",\n "plist",\n "javascript",\n "source-map",\n "directory",\n "file",\n "unknown",\n "mach-o-universal",\n "javascript-bundle",\n "entitlements"\n ],\n "type": "string"\n },\n "local_path": {\n "type": "string"\n },\n "name": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "name",\n "digest",\n "format",\n "architecture",\n "local_path"\n ],\n "type": "object"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "evidence_id",\n "subject",\n "provider",\n "predicate_type",\n "operation",\n "parameters",\n "raw_result",\n "normalized_result",\n "confidence",\n "authority",\n "environment",\n "limitations",\n "locations",\n "evidence_links"\n ],\n "type": "object"\n },\n "evidence_id": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "result": {\n "additionalProperties": false,\n "properties": {\n "artifact": {\n "additionalProperties": false,\n "properties": {\n "byte_length": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "format": {\n "const": "pe",\n "type": "string"\n },\n "path": {\n "minLength": 1,\n "type": "string"\n },\n "sha256": {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n }\n },\n "required": [\n "path",\n "sha256",\n "byte_length",\n "format"\n ],\n "type": "object"\n },\n "call_edges": {\n "items": {\n "additionalProperties": false,\n "properties": {\n "caller": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "caller_token": {\n "pattern": "^0x[0-9a-f]{8}$",\n "type": "string"\n },\n "opcode": {\n "type": "string"\n },\n "target_kind": {\n "enum": [\n "method-def",\n "member-ref",\n "method-spec",\n "unknown"\n ],\n "type": "string"\n },\n "target_name": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "target_token": {\n "pattern": "^0x[0-9a-f]{8}$",\n "type": "string"\n }\n },\n "required": [\n "caller_token",\n "caller",\n "opcode",\n "target_token",\n "target_kind",\n "target_name"\n ],\n "type": "object"\n },\n "type": "array"\n },\n "coverage": {\n "additionalProperties": false,\n "properties": {\n "issues": {\n "items": {\n "additionalProperties": false,\n "properties": {\n "code": {\n "enum": [\n "invalid-cli-header",\n "invalid-directory",\n "invalid-metadata-root",\n "invalid-stream",\n "missing-stream",\n "invalid-tables",\n "invalid-row",\n "invalid-heap-index",\n "invalid-string",\n "invalid-blob",\n "unsupported-signature",\n "invalid-guid",\n "invalid-resource"\n ],\n "type": "string"\n },\n "detail": {\n "minLength": 1,\n "type": "string"\n },\n "offset": {\n "anyOf": [\n {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n {\n "type": "null"\n }\n ]\n },\n "scope": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "code",\n "scope",\n "offset",\n "detail"\n ],\n "type": "object"\n },\n "type": "array"\n },\n "state": {\n "enum": [\n "complete",\n "partial",\n "unavailable"\n ],\n "type": "string"\n }\n },\n "required": [\n "state",\n "issues"\n ],\n "type": "object"\n },\n "field_accesses": {\n "items": {\n "additionalProperties": false,\n "properties": {\n "field_name": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "field_token": {\n "pattern": "^0x[0-9a-f]{8}$",\n "type": "string"\n },\n "method": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "method_token": {\n "pattern": "^0x[0-9a-f]{8}$",\n "type": "string"\n },\n "opcode": {\n "type": "string"\n }\n },\n "required": [\n "method_token",\n "method",\n "opcode",\n "field_token",\n "field_name"\n ],\n "type": "object"\n },\n "type": "array"\n },\n "fields": {\n "items": {\n "additionalProperties": false,\n "properties": {\n "declaring_type": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "declaring_type_token": {\n "anyOf": [\n {\n "pattern": "^0x[0-9a-f]{8}$",\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "flags": {\n "maximum": 65535,\n "minimum": 0,\n "type": "integer"\n },\n "name": {\n "type": "string"\n },\n "row_offset": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "signature": {\n "additionalProperties": false,\n "properties": {\n "calling_convention": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "field_type": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "generic_parameter_count": {\n "anyOf": [\n {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n {\n "type": "null"\n }\n ]\n },\n "issue": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "kind": {\n "enum": [\n "method",\n "field",\n "unknown"\n ],\n "type": "string"\n },\n "parameter_count": {\n "anyOf": [\n {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n {\n "type": "null"\n }\n ]\n },\n "parameter_types": {\n "items": {\n "type": "string"\n },\n "type": "array"\n },\n "parse_status": {\n "enum": [\n "decoded",\n "partial",\n "unsupported",\n "malformed"\n ],\n "type": "string"\n },\n "raw_length": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "raw_sha256": {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n },\n "return_type": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "raw_length",\n "raw_sha256",\n "kind",\n "parse_status",\n "calling_convention",\n "generic_parameter_count",\n "parameter_count",\n "return_type",\n "parameter_types",\n "field_type",\n "issue"\n ],\n "type": "object"\n },\n "token": {\n "pattern": "^0x[0-9a-f]{8}$",\n "type": "string"\n }\n },\n "required": [\n "token",\n "row_offset",\n "declaring_type_token",\n "declaring_type",\n "name",\n "flags",\n "signature"\n ],\n "type": "object"\n },\n "type": "array"\n },\n "identity_scope": {\n "additionalProperties": false,\n "properties": {\n "requires_artifact_sha256": {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n },\n "requires_mvid": {\n "anyOf": [\n {\n "pattern": "^[0-9a-fA-F]{8}(?:-[0-9a-fA-F]{4}){3}-[0-9a-fA-F]{12}$",\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "token_identity": {\n "const": "build-local",\n "type": "string"\n }\n },\n "required": [\n "token_identity",\n "requires_artifact_sha256",\n "requires_mvid"\n ],\n "type": "object"\n },\n "limitations": {\n "items": {\n "type": "string"\n },\n "type": "array"\n },\n "member_refs": {\n "items": {\n "additionalProperties": false,\n "properties": {\n "name": {\n "type": "string"\n },\n "parent_token": {\n "anyOf": [\n {\n "pattern": "^0x[0-9a-f]{8}$",\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "row_offset": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "signature": {\n "additionalProperties": false,\n "properties": {\n "calling_convention": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "field_type": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "generic_parameter_count": {\n "anyOf": [\n {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n {\n "type": "null"\n }\n ]\n },\n "issue": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "kind": {\n "enum": [\n "method",\n "field",\n "unknown"\n ],\n "type": "string"\n },\n "parameter_count": {\n "anyOf": [\n {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n {\n "type": "null"\n }\n ]\n },\n "parameter_types": {\n "items": {\n "type": "string"\n },\n "type": "array"\n },\n "parse_status": {\n "enum": [\n "decoded",\n "partial",\n "unsupported",\n "malformed"\n ],\n "type": "string"\n },\n "raw_length": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "raw_sha256": {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n },\n "return_type": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "raw_length",\n "raw_sha256",\n "kind",\n "parse_status",\n "calling_convention",\n "generic_parameter_count",\n "parameter_count",\n "return_type",\n "parameter_types",\n "field_type",\n "issue"\n ],\n "type": "object"\n },\n "token": {\n "pattern": "^0x[0-9a-f]{8}$",\n "type": "string"\n }\n },\n "required": [\n "token",\n "row_offset",\n "parent_token",\n "name",\n "signature"\n ],\n "type": "object"\n },\n "type": "array"\n },\n "metadata": {\n "additionalProperties": false,\n "properties": {\n "status": {\n "enum": [\n "absent",\n "complete",\n "partial",\n "malformed"\n ],\n "type": "string"\n },\n "table_row_counts": {\n "additionalProperties": {\n "maximum": 4294967295,\n "minimum": 0,\n "type": "integer"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n },\n "version": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "status",\n "version",\n "table_row_counts"\n ],\n "type": "object"\n },\n "methods": {\n "items": {\n "additionalProperties": false,\n "properties": {\n "body": {\n "additionalProperties": false,\n "properties": {\n "anchors": {\n "items": {\n "additionalProperties": false,\n "properties": {\n "il_offset": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "opcode": {\n "minLength": 1,\n "type": "string"\n },\n "operand": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "operand_kind": {\n "enum": [\n "none",\n "branch",\n "constant",\n "field",\n "method",\n "signature",\n "string",\n "switch",\n "token",\n "type",\n "variable",\n "unknown"\n ],\n "type": "string"\n }\n },\n "required": [\n "il_offset",\n "opcode",\n "operand_kind",\n "operand"\n ],\n "type": "object"\n },\n "type": "array"\n },\n "decoded_instruction_count": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "exception_regions": {\n "items": {\n "additionalProperties": false,\n "properties": {\n "class_token": {\n "anyOf": [\n {\n "pattern": "^0x[0-9a-f]{8}$",\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "filter_offset": {\n "anyOf": [\n {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n {\n "type": "null"\n }\n ]\n },\n "flags": {\n "maximum": 4294967295,\n "minimum": 0,\n "type": "integer"\n },\n "handler_length": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "handler_offset": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "try_length": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "try_offset": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "flags",\n "try_offset",\n "try_length",\n "handler_offset",\n "handler_length",\n "class_token",\n "filter_offset"\n ],\n "type": "object"\n },\n "type": "array"\n },\n "file_offset": {\n "anyOf": [\n {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n {\n "type": "null"\n }\n ]\n },\n "header_format": {\n "enum": [\n "tiny",\n "fat",\n "none",\n "unknown"\n ],\n "type": "string"\n },\n "il_sha256": {\n "anyOf": [\n {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n },\n {\n "type": "null"\n }\n ],\n "description": "SHA-256 of exactly the raw il_size CIL bytes; excludes the method header, locals signature, alignment, and extra sections"\n },\n "il_size": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "init_locals": {\n "anyOf": [\n {\n "type": "boolean"\n },\n {\n "type": "null"\n }\n ]\n },\n "instruction_count": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "issue": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "local_var_sig_token": {\n "anyOf": [\n {\n "pattern": "^0x[0-9a-f]{8}$",\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "max_stack": {\n "anyOf": [\n {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n {\n "type": "null"\n }\n ]\n },\n "normalized_il_sha256": {\n "anyOf": [\n {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n },\n {\n "type": "null"\n }\n ],\n "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"\n },\n "opcode_counts": {\n "additionalProperties": {\n "maximum": 9007199254740991,\n "minimum": 1,\n "type": "integer"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n },\n "rva": {\n "maximum": 4294967295,\n "minimum": 0,\n "type": "integer"\n },\n "status": {\n "enum": [\n "present",\n "partial",\n "absent",\n "malformed"\n ],\n "type": "string"\n },\n "truncated_instructions": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "status",\n "header_format",\n "rva",\n "file_offset",\n "max_stack",\n "init_locals",\n "local_var_sig_token",\n "il_size",\n "il_sha256",\n "normalized_il_sha256",\n "instruction_count",\n "decoded_instruction_count",\n "truncated_instructions",\n "opcode_counts",\n "anchors",\n "exception_regions",\n "issue"\n ],\n "type": "object"\n },\n "declaring_type": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "declaring_type_token": {\n "anyOf": [\n {\n "pattern": "^0x[0-9a-f]{8}$",\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "flags": {\n "maximum": 65535,\n "minimum": 0,\n "type": "integer"\n },\n "impl_flags": {\n "maximum": 65535,\n "minimum": 0,\n "type": "integer"\n },\n "name": {\n "type": "string"\n },\n "row_offset": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "rva": {\n "maximum": 4294967295,\n "minimum": 0,\n "type": "integer"\n },\n "signature": {\n "additionalProperties": false,\n "properties": {\n "calling_convention": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "field_type": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "generic_parameter_count": {\n "anyOf": [\n {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n {\n "type": "null"\n }\n ]\n },\n "issue": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "kind": {\n "enum": [\n "method",\n "field",\n "unknown"\n ],\n "type": "string"\n },\n "parameter_count": {\n "anyOf": [\n {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n {\n "type": "null"\n }\n ]\n },\n "parameter_types": {\n "items": {\n "type": "string"\n },\n "type": "array"\n },\n "parse_status": {\n "enum": [\n "decoded",\n "partial",\n "unsupported",\n "malformed"\n ],\n "type": "string"\n },\n "raw_length": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "raw_sha256": {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n },\n "return_type": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "raw_length",\n "raw_sha256",\n "kind",\n "parse_status",\n "calling_convention",\n "generic_parameter_count",\n "parameter_count",\n "return_type",\n "parameter_types",\n "field_type",\n "issue"\n ],\n "type": "object"\n },\n "token": {\n "pattern": "^0x[0-9a-f]{8}$",\n "type": "string"\n }\n },\n "required": [\n "token",\n "row_offset",\n "declaring_type_token",\n "declaring_type",\n "name",\n "rva",\n "impl_flags",\n "flags",\n "signature",\n "body"\n ],\n "type": "object"\n },\n "type": "array"\n },\n "module": {\n "anyOf": [\n {\n "additionalProperties": false,\n "properties": {\n "enc_base_id": {\n "anyOf": [\n {\n "pattern": "^[0-9a-fA-F]{8}(?:-[0-9a-fA-F]{4}){3}-[0-9a-fA-F]{12}$",\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "enc_id": {\n "anyOf": [\n {\n "pattern": "^[0-9a-fA-F]{8}(?:-[0-9a-fA-F]{4}){3}-[0-9a-fA-F]{12}$",\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "generation": {\n "maximum": 65535,\n "minimum": 0,\n "type": "integer"\n },\n "mvid": {\n "anyOf": [\n {\n "pattern": "^[0-9a-fA-F]{8}(?:-[0-9a-fA-F]{4}){3}-[0-9a-fA-F]{12}$",\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "name": {\n "type": "string"\n },\n "row_offset": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "token": {\n "pattern": "^0x[0-9a-f]{8}$",\n "type": "string"\n }\n },\n "required": [\n "name",\n "generation",\n "mvid",\n "enc_id",\n "enc_base_id",\n "token",\n "row_offset"\n ],\n "type": "object"\n },\n {\n "type": "null"\n }\n ]\n },\n "types": {\n "items": {\n "additionalProperties": false,\n "properties": {\n "extends_token": {\n "anyOf": [\n {\n "pattern": "^0x[0-9a-f]{8}$",\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "field_list": {\n "additionalProperties": false,\n "properties": {\n "count": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "first_row": {\n "anyOf": [\n {\n "maximum": 9007199254740991,\n "minimum": 1,\n "type": "integer"\n },\n {\n "type": "null"\n }\n ]\n },\n "last_row": {\n "anyOf": [\n {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "first_row",\n "last_row",\n "count"\n ],\n "type": "object"\n },\n "flags": {\n "maximum": 4294967295,\n "minimum": 0,\n "type": "integer"\n },\n "full_name": {\n "type": "string"\n },\n "method_list": {\n "additionalProperties": false,\n "properties": {\n "count": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "first_row": {\n "anyOf": [\n {\n "maximum": 9007199254740991,\n "minimum": 1,\n "type": "integer"\n },\n {\n "type": "null"\n }\n ]\n },\n "last_row": {\n "anyOf": [\n {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "first_row",\n "last_row",\n "count"\n ],\n "type": "object"\n },\n "name": {\n "type": "string"\n },\n "namespace": {\n "type": "string"\n },\n "row_offset": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "token": {\n "pattern": "^0x[0-9a-f]{8}$",\n "type": "string"\n }\n },\n "required": [\n "token",\n "row_offset",\n "namespace",\n "name",\n "full_name",\n "flags",\n "extends_token",\n "field_list",\n "method_list"\n ],\n "type": "object"\n },\n "type": "array"\n }\n },\n "required": [\n "artifact",\n "module",\n "metadata",\n "identity_scope",\n "types",\n "fields",\n "methods",\n "member_refs",\n "call_edges",\n "field_accesses",\n "coverage",\n "limitations"\n ],\n "type": "object"\n }\n },\n "required": [\n "result",\n "evidence_id",\n "evidence"\n ],\n "type": "object"\n },\n "requiresSession": false,\n "title": "Inspect Managed Members"\n },\n {\n "analysisOperation": "inspect_managed_native_boundaries",\n "annotations": {\n "destructiveHint": false,\n "idempotentHint": true,\n "openWorldHint": false,\n "readOnlyHint": false\n },\n "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.",\n "effects": {\n "accessesNetwork": false,\n "changesUiState": false,\n "idempotent": true,\n "launchesProcess": false,\n "mayDiscardData": false,\n "mutatesSession": true,\n "mutatesTarget": false,\n "writesFilesystem": false\n },\n "inputSchema": {\n "$schema": "https://json-schema.org/draft/2020-12/schema",\n "examples": [\n {}\n ],\n "properties": {\n "path": {\n "description": "Explicit managed PE/CLI path; omit to reuse the previously selected managed target",\n "minLength": 1,\n "type": "string"\n }\n },\n "type": "object"\n },\n "kind": "managed-provider",\n "name": "inspect_managed_native_boundaries",\n "outputSchema": {\n "$defs": {\n "__schema0": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "number"\n },\n {\n "type": "boolean"\n },\n {\n "type": "null"\n },\n {\n "items": {\n "$ref": "#/$defs/__schema0"\n },\n "type": "array"\n },\n {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n }\n ]\n }\n },\n "$schema": "https://json-schema.org/draft/2020-12/schema",\n "additionalProperties": false,\n "properties": {\n "evidence": {\n "additionalProperties": false,\n "properties": {\n "analysis_profile": {\n "additionalProperties": false,\n "properties": {\n "digest": {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n },\n "parameters": {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n },\n "provider": {\n "additionalProperties": false,\n "properties": {\n "id": {\n "minLength": 1,\n "type": "string"\n },\n "name": {\n "minLength": 1,\n "type": "string"\n },\n "version": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "id",\n "name",\n "version"\n ],\n "type": "object"\n }\n },\n "required": [\n "provider",\n "parameters",\n "digest"\n ],\n "type": "object"\n },\n "authority": {\n "enum": [\n "shipped-artifact",\n "controlled-replay",\n "historical-reference",\n "external-service",\n "analyst-inference"\n ],\n "type": "string"\n },\n "confidence": {\n "enum": [\n "observed",\n "derived",\n "inferred"\n ],\n "type": "string"\n },\n "environment": {\n "anyOf": [\n {\n "additionalProperties": false,\n "properties": {\n "architecture": {\n "minLength": 1,\n "type": "string"\n },\n "id": {\n "minLength": 1,\n "type": "string"\n },\n "isolation": {\n "enum": [\n "none",\n "process",\n "container",\n "virtual-machine"\n ],\n "type": "string"\n },\n "platform": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "id",\n "platform",\n "architecture",\n "isolation"\n ],\n "type": "object"\n },\n {\n "type": "null"\n }\n ]\n },\n "evidence_id": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "evidence_links": {\n "items": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "type": "array"\n },\n "limitations": {\n "items": {\n "type": "string"\n },\n "type": "array"\n },\n "locations": {\n "items": {\n "oneOf": [\n {\n "additionalProperties": false,\n "properties": {\n "address": {\n "minLength": 1,\n "type": "string"\n },\n "kind": {\n "const": "address",\n "type": "string"\n }\n },\n "required": [\n "kind",\n "address"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "end": {\n "minLength": 1,\n "type": "string"\n },\n "kind": {\n "const": "address-range",\n "type": "string"\n },\n "start": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "kind",\n "start",\n "end"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "kind": {\n "const": "artifact-path",\n "type": "string"\n },\n "path": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "kind",\n "path"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "kind": {\n "const": "file-offset",\n "type": "string"\n },\n "offset": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "kind",\n "offset"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "end": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "kind": {\n "const": "file-offset-range",\n "type": "string"\n },\n "start": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "kind",\n "start",\n "end"\n ],\n "type": "object"\n }\n ]\n },\n "type": "array"\n },\n "normalized_result": {\n "$ref": "#/$defs/__schema0"\n },\n "operation": {\n "minLength": 1,\n "type": "string"\n },\n "parameters": {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n },\n "predicate_type": {\n "minLength": 1,\n "type": "string"\n },\n "provider": {\n "additionalProperties": false,\n "properties": {\n "id": {\n "minLength": 1,\n "type": "string"\n },\n "name": {\n "minLength": 1,\n "type": "string"\n },\n "version": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "id",\n "name",\n "version"\n ],\n "type": "object"\n },\n "raw_result": {\n "anyOf": [\n {\n "$ref": "#/$defs/__schema0"\n },\n {\n "type": "null"\n }\n ]\n },\n "subject": {\n "anyOf": [\n {\n "additionalProperties": false,\n "properties": {\n "architecture": {\n "anyOf": [\n {\n "enum": [\n "x86",\n "x86_64",\n "arm",\n "arm64"\n ],\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "digest": {\n "additionalProperties": false,\n "properties": {\n "sha256": {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n }\n },\n "required": [\n "sha256"\n ],\n "type": "object"\n },\n "format": {\n "enum": [\n "hopper",\n "analysis-database",\n "mach-o",\n "elf",\n "pe",\n "dos-mz",\n "dos-com",\n "zip",\n "ipa",\n "apk",\n "msix",\n "appx",\n "asar",\n "dmg",\n "pkg",\n "plist",\n "javascript",\n "source-map",\n "directory",\n "file",\n "unknown",\n "mach-o-universal",\n "javascript-bundle",\n "entitlements"\n ],\n "type": "string"\n },\n "local_path": {\n "type": "string"\n },\n "name": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "name",\n "digest",\n "format",\n "architecture",\n "local_path"\n ],\n "type": "object"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "evidence_id",\n "subject",\n "provider",\n "predicate_type",\n "operation",\n "parameters",\n "raw_result",\n "normalized_result",\n "confidence",\n "authority",\n "environment",\n "limitations",\n "locations",\n "evidence_links"\n ],\n "type": "object"\n },\n "evidence_id": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "result": {\n "additionalProperties": false,\n "properties": {\n "artifact": {\n "additionalProperties": false,\n "properties": {\n "byte_length": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "format": {\n "const": "pe",\n "type": "string"\n },\n "path": {\n "minLength": 1,\n "type": "string"\n },\n "sha256": {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n }\n },\n "required": [\n "path",\n "sha256",\n "byte_length",\n "format"\n ],\n "type": "object"\n },\n "cli_native": {\n "additionalProperties": false,\n "properties": {\n "il_only": {\n "type": "boolean"\n },\n "managed_native_header_rva": {\n "maximum": 4294967295,\n "minimum": 0,\n "type": "integer"\n },\n "managed_native_header_size": {\n "maximum": 4294967295,\n "minimum": 0,\n "type": "integer"\n },\n "native_entry_point": {\n "type": "boolean"\n },\n "ready_to_run_signature": {\n "type": "boolean"\n },\n "requires_32bit": {\n "type": "boolean"\n },\n "strong_name_signed": {\n "type": "boolean"\n }\n },\n "required": [\n "il_only",\n "requires_32bit",\n "strong_name_signed",\n "native_entry_point",\n "ready_to_run_signature",\n "managed_native_header_rva",\n "managed_native_header_size"\n ],\n "type": "object"\n },\n "coverage": {\n "additionalProperties": false,\n "properties": {\n "issues": {\n "items": {\n "additionalProperties": false,\n "properties": {\n "code": {\n "enum": [\n "invalid-cli-header",\n "invalid-directory",\n "invalid-metadata-root",\n "invalid-stream",\n "missing-stream",\n "invalid-tables",\n "invalid-row",\n "invalid-heap-index",\n "invalid-string",\n "invalid-blob",\n "unsupported-signature",\n "invalid-guid",\n "invalid-resource"\n ],\n "type": "string"\n },\n "detail": {\n "minLength": 1,\n "type": "string"\n },\n "offset": {\n "anyOf": [\n {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n {\n "type": "null"\n }\n ]\n },\n "scope": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "code",\n "scope",\n "offset",\n "detail"\n ],\n "type": "object"\n },\n "type": "array"\n },\n "state": {\n "enum": [\n "complete",\n "partial",\n "unavailable"\n ],\n "type": "string"\n }\n },\n "required": [\n "state",\n "issues"\n ],\n "type": "object"\n },\n "identity_scope": {\n "additionalProperties": false,\n "properties": {\n "requires_artifact_sha256": {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n },\n "requires_mvid": {\n "anyOf": [\n {\n "pattern": "^[0-9a-fA-F]{8}(?:-[0-9a-fA-F]{4}){3}-[0-9a-fA-F]{12}$",\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "token_identity": {\n "const": "build-local",\n "type": "string"\n }\n },\n "required": [\n "token_identity",\n "requires_artifact_sha256",\n "requires_mvid"\n ],\n "type": "object"\n },\n "limitations": {\n "items": {\n "type": "string"\n },\n "type": "array"\n },\n "metadata": {\n "additionalProperties": false,\n "properties": {\n "status": {\n "enum": [\n "absent",\n "complete",\n "partial",\n "malformed"\n ],\n "type": "string"\n },\n "table_row_counts": {\n "additionalProperties": {\n "maximum": 4294967295,\n "minimum": 0,\n "type": "integer"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n },\n "version": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "status",\n "version",\n "table_row_counts"\n ],\n "type": "object"\n },\n "module": {\n "anyOf": [\n {\n "additionalProperties": false,\n "properties": {\n "enc_base_id": {\n "anyOf": [\n {\n "pattern": "^[0-9a-fA-F]{8}(?:-[0-9a-fA-F]{4}){3}-[0-9a-fA-F]{12}$",\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "enc_id": {\n "anyOf": [\n {\n "pattern": "^[0-9a-fA-F]{8}(?:-[0-9a-fA-F]{4}){3}-[0-9a-fA-F]{12}$",\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "generation": {\n "maximum": 65535,\n "minimum": 0,\n "type": "integer"\n },\n "mvid": {\n "anyOf": [\n {\n "pattern": "^[0-9a-fA-F]{8}(?:-[0-9a-fA-F]{4}){3}-[0-9a-fA-F]{12}$",\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "name": {\n "type": "string"\n },\n "row_offset": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "token": {\n "pattern": "^0x[0-9a-f]{8}$",\n "type": "string"\n }\n },\n "required": [\n "name",\n "generation",\n "mvid",\n "enc_id",\n "enc_base_id",\n "token",\n "row_offset"\n ],\n "type": "object"\n },\n {\n "type": "null"\n }\n ]\n },\n "module_refs": {\n "items": {\n "additionalProperties": false,\n "properties": {\n "name": {\n "type": "string"\n },\n "row_offset": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "token": {\n "pattern": "^0x[0-9a-f]{8}$",\n "type": "string"\n }\n },\n "required": [\n "token",\n "row_offset",\n "name"\n ],\n "type": "object"\n },\n "type": "array"\n },\n "native_implementations": {\n "items": {\n "additionalProperties": false,\n "properties": {\n "body_interpretation": {\n "enum": [\n "managed-cil",\n "native-or-runtime",\n "not-file-backed",\n "unknown"\n ],\n "type": "string"\n },\n "boundary_kind": {\n "enum": [\n "pinvoke",\n "native-body",\n "runtime-provided",\n "unmanaged-method",\n "mixed-or-unknown"\n ],\n "type": "string"\n },\n "code_type": {\n "enum": [\n "il",\n "native",\n "optil",\n "runtime",\n "unknown"\n ],\n "type": "string"\n },\n "flags": {\n "maximum": 65535,\n "minimum": 0,\n "type": "integer"\n },\n "impl_flags": {\n "maximum": 65535,\n "minimum": 0,\n "type": "integer"\n },\n "managed_kind": {\n "enum": [\n "managed",\n "unmanaged",\n "unknown"\n ],\n "type": "string"\n },\n "name": {\n "type": "string"\n },\n "pinvoke_declared": {\n "type": "boolean"\n },\n "row_offset": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "rva": {\n "maximum": 4294967295,\n "minimum": 0,\n "type": "integer"\n },\n "token": {\n "pattern": "^0x[0-9a-f]{8}$",\n "type": "string"\n }\n },\n "required": [\n "token",\n "row_offset",\n "name",\n "rva",\n "flags",\n "impl_flags",\n "code_type",\n "managed_kind",\n "pinvoke_declared",\n "boundary_kind",\n "body_interpretation"\n ],\n "type": "object"\n },\n "type": "array"\n },\n "pinvoke_imports": {\n "items": {\n "additionalProperties": false,\n "properties": {\n "best_fit": {\n "enum": [\n "assembly-default",\n "enabled",\n "disabled",\n "unknown"\n ],\n "type": "string"\n },\n "call_convention": {\n "enum": [\n "not-specified",\n "winapi",\n "cdecl",\n "stdcall",\n "thiscall",\n "fastcall",\n "unknown"\n ],\n "type": "string"\n },\n "char_set": {\n "enum": [\n "not-specified",\n "ansi",\n "unicode",\n "auto",\n "unknown"\n ],\n "type": "string"\n },\n "import_name": {\n "type": "string"\n },\n "import_scope_name": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "import_scope_token": {\n "anyOf": [\n {\n "pattern": "^0x[0-9a-f]{8}$",\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "mapping_flags": {\n "maximum": 65535,\n "minimum": 0,\n "type": "integer"\n },\n "mapping_flags_hex": {\n "pattern": "^0x[0-9a-f]{4}$",\n "type": "string"\n },\n "member_kind": {\n "enum": [\n "method",\n "field",\n "unknown"\n ],\n "type": "string"\n },\n "member_name": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "member_token": {\n "anyOf": [\n {\n "pattern": "^0x[0-9a-f]{8}$",\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "no_mangle": {\n "type": "boolean"\n },\n "row_offset": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "supports_last_error": {\n "type": "boolean"\n },\n "throw_on_unmappable_char": {\n "enum": [\n "assembly-default",\n "enabled",\n "disabled",\n "unknown"\n ],\n "type": "string"\n },\n "token": {\n "pattern": "^0x[0-9a-f]{8}$",\n "type": "string"\n },\n "verification": {\n "const": "managed-declaration-only",\n "type": "string"\n }\n },\n "required": [\n "token",\n "row_offset",\n "mapping_flags",\n "mapping_flags_hex",\n "member_token",\n "member_kind",\n "member_name",\n "import_name",\n "import_scope_token",\n "import_scope_name",\n "no_mangle",\n "char_set",\n "call_convention",\n "supports_last_error",\n "best_fit",\n "throw_on_unmappable_char",\n "verification"\n ],\n "type": "object"\n },\n "type": "array"\n },\n "summary": {\n "additionalProperties": false,\n "properties": {\n "mixed_mode_or_native_header": {\n "type": "boolean"\n },\n "module_ref_count": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "native_implementation_count": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "pinvoke_import_count": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "ready_to_run": {\n "type": "boolean"\n }\n },\n "required": [\n "module_ref_count",\n "pinvoke_import_count",\n "native_implementation_count",\n "ready_to_run",\n "mixed_mode_or_native_header"\n ],\n "type": "object"\n }\n },\n "required": [\n "artifact",\n "module",\n "metadata",\n "identity_scope",\n "cli_native",\n "module_refs",\n "pinvoke_imports",\n "native_implementations",\n "summary",\n "coverage",\n "limitations"\n ],\n "type": "object"\n }\n },\n "required": [\n "result",\n "evidence_id",\n "evidence"\n ],\n "type": "object"\n },\n "requiresSession": false,\n "title": "Inspect Managed Native Boundaries"\n },\n {\n "analysisOperation": null,\n "annotations": {\n "destructiveHint": false,\n "idempotentHint": true,\n "openWorldHint": true,\n "readOnlyHint": false\n },\n "description": "Inspect a local APK\'s package, SDK and permission declarations, decoded manifest and class/resource counts. Does not execute the APK or verify signatures. Requires a caller-supplied JADX MCP JAR and JDK; uses one worker in an isolated temporary workspace.",\n "effects": {\n "accessesNetwork": false,\n "changesUiState": false,\n "idempotent": true,\n "launchesProcess": true,\n "mayDiscardData": false,\n "mutatesSession": true,\n "mutatesTarget": false,\n "writesFilesystem": true\n },\n "inputSchema": {\n "$schema": "https://json-schema.org/draft/2020-12/schema",\n "additionalProperties": false,\n "examples": [\n {\n "path": "/tmp/Example.apk"\n }\n ],\n "properties": {\n "path": {\n "description": "Local APK path; the target is never executed",\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "path"\n ],\n "type": "object"\n },\n "kind": "android-provider",\n "name": "inspect_android_package",\n "outputSchema": {\n "$defs": {\n "__schema0": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "number"\n },\n {\n "type": "boolean"\n },\n {\n "type": "null"\n },\n {\n "items": {\n "$ref": "#/$defs/__schema0"\n },\n "type": "array"\n },\n {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n }\n ]\n }\n },\n "$schema": "https://json-schema.org/draft/2020-12/schema",\n "additionalProperties": false,\n "properties": {\n "evidence": {\n "additionalProperties": false,\n "properties": {\n "analysis_profile": {\n "additionalProperties": false,\n "properties": {\n "digest": {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n },\n "parameters": {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n },\n "provider": {\n "additionalProperties": false,\n "properties": {\n "id": {\n "minLength": 1,\n "type": "string"\n },\n "name": {\n "minLength": 1,\n "type": "string"\n },\n "version": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "id",\n "name",\n "version"\n ],\n "type": "object"\n }\n },\n "required": [\n "provider",\n "parameters",\n "digest"\n ],\n "type": "object"\n },\n "authority": {\n "enum": [\n "shipped-artifact",\n "controlled-replay",\n "historical-reference",\n "external-service",\n "analyst-inference"\n ],\n "type": "string"\n },\n "confidence": {\n "enum": [\n "observed",\n "derived",\n "inferred"\n ],\n "type": "string"\n },\n "environment": {\n "anyOf": [\n {\n "additionalProperties": false,\n "properties": {\n "architecture": {\n "minLength": 1,\n "type": "string"\n },\n "id": {\n "minLength": 1,\n "type": "string"\n },\n "isolation": {\n "enum": [\n "none",\n "process",\n "container",\n "virtual-machine"\n ],\n "type": "string"\n },\n "platform": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "id",\n "platform",\n "architecture",\n "isolation"\n ],\n "type": "object"\n },\n {\n "type": "null"\n }\n ]\n },\n "evidence_id": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "evidence_links": {\n "items": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "type": "array"\n },\n "limitations": {\n "items": {\n "type": "string"\n },\n "type": "array"\n },\n "locations": {\n "items": {\n "oneOf": [\n {\n "additionalProperties": false,\n "properties": {\n "address": {\n "minLength": 1,\n "type": "string"\n },\n "kind": {\n "const": "address",\n "type": "string"\n }\n },\n "required": [\n "kind",\n "address"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "end": {\n "minLength": 1,\n "type": "string"\n },\n "kind": {\n "const": "address-range",\n "type": "string"\n },\n "start": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "kind",\n "start",\n "end"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "kind": {\n "const": "artifact-path",\n "type": "string"\n },\n "path": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "kind",\n "path"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "kind": {\n "const": "file-offset",\n "type": "string"\n },\n "offset": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "kind",\n "offset"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "end": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "kind": {\n "const": "file-offset-range",\n "type": "string"\n },\n "start": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "kind",\n "start",\n "end"\n ],\n "type": "object"\n }\n ]\n },\n "type": "array"\n },\n "normalized_result": {\n "$ref": "#/$defs/__schema0"\n },\n "operation": {\n "minLength": 1,\n "type": "string"\n },\n "parameters": {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n },\n "predicate_type": {\n "minLength": 1,\n "type": "string"\n },\n "provider": {\n "additionalProperties": false,\n "properties": {\n "id": {\n "minLength": 1,\n "type": "string"\n },\n "name": {\n "minLength": 1,\n "type": "string"\n },\n "version": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "id",\n "name",\n "version"\n ],\n "type": "object"\n },\n "raw_result": {\n "anyOf": [\n {\n "$ref": "#/$defs/__schema0"\n },\n {\n "type": "null"\n }\n ]\n },\n "subject": {\n "anyOf": [\n {\n "additionalProperties": false,\n "properties": {\n "architecture": {\n "anyOf": [\n {\n "enum": [\n "x86",\n "x86_64",\n "arm",\n "arm64"\n ],\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "digest": {\n "additionalProperties": false,\n "properties": {\n "sha256": {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n }\n },\n "required": [\n "sha256"\n ],\n "type": "object"\n },\n "format": {\n "enum": [\n "hopper",\n "analysis-database",\n "mach-o",\n "elf",\n "pe",\n "dos-mz",\n "dos-com",\n "zip",\n "ipa",\n "apk",\n "msix",\n "appx",\n "asar",\n "dmg",\n "pkg",\n "plist",\n "javascript",\n "source-map",\n "directory",\n "file",\n "unknown",\n "mach-o-universal",\n "javascript-bundle",\n "entitlements"\n ],\n "type": "string"\n },\n "local_path": {\n "type": "string"\n },\n "name": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "name",\n "digest",\n "format",\n "architecture",\n "local_path"\n ],\n "type": "object"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "evidence_id",\n "subject",\n "provider",\n "predicate_type",\n "operation",\n "parameters",\n "raw_result",\n "normalized_result",\n "confidence",\n "authority",\n "environment",\n "limitations",\n "locations",\n "evidence_links"\n ],\n "type": "object"\n },\n "evidence_id": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "result": {\n "additionalProperties": false,\n "properties": {\n "class_count": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "engine": {\n "additionalProperties": false,\n "properties": {\n "artifact_sha256": {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n },\n "heap_limit_mib": {\n "anyOf": [\n {\n "exclusiveMinimum": 0,\n "maximum": 9007199254740991,\n "type": "integer"\n },\n {\n "type": "null"\n }\n ]\n },\n "name": {\n "minLength": 1,\n "type": "string"\n },\n "source_revision": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "version": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "worker_count": {\n "exclusiveMinimum": 0,\n "maximum": 9007199254740991,\n "type": "integer"\n }\n },\n "required": [\n "name",\n "version",\n "artifact_sha256",\n "source_revision",\n "worker_count",\n "heap_limit_mib"\n ],\n "type": "object"\n },\n "manifest": {\n "additionalProperties": false,\n "properties": {\n "reported_total_bytes": {\n "anyOf": [\n {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n {\n "type": "null"\n }\n ]\n },\n "status": {\n "enum": [\n "complete",\n "partial"\n ],\n "type": "string"\n },\n "text": {\n "type": "string"\n }\n },\n "required": [\n "status",\n "text",\n "reported_total_bytes"\n ],\n "type": "object"\n },\n "min_sdk": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "package_name": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "permissions": {\n "items": {\n "type": "string"\n },\n "type": "array"\n },\n "resource_count": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "signature_verification": {\n "const": "not_performed",\n "type": "string"\n },\n "target_sdk": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "version_code": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "version_name": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "engine",\n "package_name",\n "version_name",\n "version_code",\n "min_sdk",\n "target_sdk",\n "permissions",\n "manifest",\n "class_count",\n "resource_count",\n "signature_verification"\n ],\n "type": "object"\n }\n },\n "required": [\n "result",\n "evidence_id",\n "evidence"\n ],\n "type": "object"\n },\n "requiresSession": false,\n "title": "Inspect Android Package"\n },\n {\n "analysisOperation": null,\n "annotations": {\n "destructiveHint": false,\n "idempotentHint": true,\n "openWorldHint": true,\n "readOnlyHint": false\n },\n "description": "Search complete decompiler class names in an explicit local APK by case-sensitive substring. Empty query inventories all classes. Retains artifact and engine identity; no APK execution.",\n "effects": {\n "accessesNetwork": false,\n "changesUiState": false,\n "idempotent": true,\n "launchesProcess": true,\n "mayDiscardData": false,\n "mutatesSession": true,\n "mutatesTarget": false,\n "writesFilesystem": true\n },\n "inputSchema": {\n "$schema": "https://json-schema.org/draft/2020-12/schema",\n "additionalProperties": false,\n "examples": [\n {\n "path": "/tmp/Example.apk",\n "query": "Activity"\n }\n ],\n "properties": {\n "path": {\n "description": "Local APK path; the target is never executed",\n "minLength": 1,\n "type": "string"\n },\n "query": {\n "description": "Case-sensitive class-name substring; empty lists all classes",\n "type": "string"\n }\n },\n "required": [\n "path",\n "query"\n ],\n "type": "object"\n },\n "kind": "android-provider",\n "name": "search_android_classes",\n "outputSchema": {\n "$defs": {\n "__schema0": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "number"\n },\n {\n "type": "boolean"\n },\n {\n "type": "null"\n },\n {\n "items": {\n "$ref": "#/$defs/__schema0"\n },\n "type": "array"\n },\n {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n }\n ]\n }\n },\n "$schema": "https://json-schema.org/draft/2020-12/schema",\n "additionalProperties": false,\n "properties": {\n "evidence": {\n "additionalProperties": false,\n "properties": {\n "analysis_profile": {\n "additionalProperties": false,\n "properties": {\n "digest": {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n },\n "parameters": {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n },\n "provider": {\n "additionalProperties": false,\n "properties": {\n "id": {\n "minLength": 1,\n "type": "string"\n },\n "name": {\n "minLength": 1,\n "type": "string"\n },\n "version": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "id",\n "name",\n "version"\n ],\n "type": "object"\n }\n },\n "required": [\n "provider",\n "parameters",\n "digest"\n ],\n "type": "object"\n },\n "authority": {\n "enum": [\n "shipped-artifact",\n "controlled-replay",\n "historical-reference",\n "external-service",\n "analyst-inference"\n ],\n "type": "string"\n },\n "confidence": {\n "enum": [\n "observed",\n "derived",\n "inferred"\n ],\n "type": "string"\n },\n "environment": {\n "anyOf": [\n {\n "additionalProperties": false,\n "properties": {\n "architecture": {\n "minLength": 1,\n "type": "string"\n },\n "id": {\n "minLength": 1,\n "type": "string"\n },\n "isolation": {\n "enum": [\n "none",\n "process",\n "container",\n "virtual-machine"\n ],\n "type": "string"\n },\n "platform": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "id",\n "platform",\n "architecture",\n "isolation"\n ],\n "type": "object"\n },\n {\n "type": "null"\n }\n ]\n },\n "evidence_id": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "evidence_links": {\n "items": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "type": "array"\n },\n "limitations": {\n "items": {\n "type": "string"\n },\n "type": "array"\n },\n "locations": {\n "items": {\n "oneOf": [\n {\n "additionalProperties": false,\n "properties": {\n "address": {\n "minLength": 1,\n "type": "string"\n },\n "kind": {\n "const": "address",\n "type": "string"\n }\n },\n "required": [\n "kind",\n "address"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "end": {\n "minLength": 1,\n "type": "string"\n },\n "kind": {\n "const": "address-range",\n "type": "string"\n },\n "start": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "kind",\n "start",\n "end"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "kind": {\n "const": "artifact-path",\n "type": "string"\n },\n "path": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "kind",\n "path"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "kind": {\n "const": "file-offset",\n "type": "string"\n },\n "offset": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "kind",\n "offset"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "end": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "kind": {\n "const": "file-offset-range",\n "type": "string"\n },\n "start": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "kind",\n "start",\n "end"\n ],\n "type": "object"\n }\n ]\n },\n "type": "array"\n },\n "normalized_result": {\n "$ref": "#/$defs/__schema0"\n },\n "operation": {\n "minLength": 1,\n "type": "string"\n },\n "parameters": {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n },\n "predicate_type": {\n "minLength": 1,\n "type": "string"\n },\n "provider": {\n "additionalProperties": false,\n "properties": {\n "id": {\n "minLength": 1,\n "type": "string"\n },\n "name": {\n "minLength": 1,\n "type": "string"\n },\n "version": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "id",\n "name",\n "version"\n ],\n "type": "object"\n },\n "raw_result": {\n "anyOf": [\n {\n "$ref": "#/$defs/__schema0"\n },\n {\n "type": "null"\n }\n ]\n },\n "subject": {\n "anyOf": [\n {\n "additionalProperties": false,\n "properties": {\n "architecture": {\n "anyOf": [\n {\n "enum": [\n "x86",\n "x86_64",\n "arm",\n "arm64"\n ],\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "digest": {\n "additionalProperties": false,\n "properties": {\n "sha256": {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n }\n },\n "required": [\n "sha256"\n ],\n "type": "object"\n },\n "format": {\n "enum": [\n "hopper",\n "analysis-database",\n "mach-o",\n "elf",\n "pe",\n "dos-mz",\n "dos-com",\n "zip",\n "ipa",\n "apk",\n "msix",\n "appx",\n "asar",\n "dmg",\n "pkg",\n "plist",\n "javascript",\n "source-map",\n "directory",\n "file",\n "unknown",\n "mach-o-universal",\n "javascript-bundle",\n "entitlements"\n ],\n "type": "string"\n },\n "local_path": {\n "type": "string"\n },\n "name": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "name",\n "digest",\n "format",\n "architecture",\n "local_path"\n ],\n "type": "object"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "evidence_id",\n "subject",\n "provider",\n "predicate_type",\n "operation",\n "parameters",\n "raw_result",\n "normalized_result",\n "confidence",\n "authority",\n "environment",\n "limitations",\n "locations",\n "evidence_links"\n ],\n "type": "object"\n },\n "evidence_id": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "result": {\n "additionalProperties": false,\n "properties": {\n "coverage": {\n "const": "complete",\n "type": "string"\n },\n "engine": {\n "additionalProperties": false,\n "properties": {\n "artifact_sha256": {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n },\n "heap_limit_mib": {\n "anyOf": [\n {\n "exclusiveMinimum": 0,\n "maximum": 9007199254740991,\n "type": "integer"\n },\n {\n "type": "null"\n }\n ]\n },\n "name": {\n "minLength": 1,\n "type": "string"\n },\n "source_revision": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "version": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "worker_count": {\n "exclusiveMinimum": 0,\n "maximum": 9007199254740991,\n "type": "integer"\n }\n },\n "required": [\n "name",\n "version",\n "artifact_sha256",\n "source_revision",\n "worker_count",\n "heap_limit_mib"\n ],\n "type": "object"\n },\n "matches": {\n "items": {\n "type": "string"\n },\n "type": "array"\n },\n "query": {\n "type": "string"\n },\n "total_classes": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "engine",\n "query",\n "total_classes",\n "matches",\n "coverage"\n ],\n "type": "object"\n }\n },\n "required": [\n "result",\n "evidence_id",\n "evidence"\n ],\n "type": "object"\n },\n "requiresSession": false,\n "title": "Search Android Classes"\n },\n {\n "analysisOperation": null,\n "annotations": {\n "destructiveHint": false,\n "idempotentHint": true,\n "openWorldHint": true,\n "readOnlyHint": false\n },\n "description": "Inspect one exact Android class\'s parsed methods, fields and inner classes, including synthetic members. Returns display signatures and explicit unknown DEX descriptors without generating source. Overload indices remain consistent within the artifact and engine session.",\n "effects": {\n "accessesNetwork": false,\n "changesUiState": false,\n "idempotent": true,\n "launchesProcess": true,\n "mayDiscardData": false,\n "mutatesSession": true,\n "mutatesTarget": false,\n "writesFilesystem": true\n },\n "inputSchema": {\n "$schema": "https://json-schema.org/draft/2020-12/schema",\n "additionalProperties": false,\n "examples": [\n {\n "class_name": "example.MainActivity",\n "path": "/tmp/Example.apk"\n }\n ],\n "properties": {\n "class_name": {\n "description": "Exact fully qualified class name",\n "minLength": 1,\n "type": "string"\n },\n "path": {\n "description": "Local APK path; the target is never executed",\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "path",\n "class_name"\n ],\n "type": "object"\n },\n "kind": "android-provider",\n "name": "inspect_android_class",\n "outputSchema": {\n "$defs": {\n "__schema0": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "number"\n },\n {\n "type": "boolean"\n },\n {\n "type": "null"\n },\n {\n "items": {\n "$ref": "#/$defs/__schema0"\n },\n "type": "array"\n },\n {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n }\n ]\n }\n },\n "$schema": "https://json-schema.org/draft/2020-12/schema",\n "additionalProperties": false,\n "properties": {\n "evidence": {\n "additionalProperties": false,\n "properties": {\n "analysis_profile": {\n "additionalProperties": false,\n "properties": {\n "digest": {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n },\n "parameters": {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n },\n "provider": {\n "additionalProperties": false,\n "properties": {\n "id": {\n "minLength": 1,\n "type": "string"\n },\n "name": {\n "minLength": 1,\n "type": "string"\n },\n "version": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "id",\n "name",\n "version"\n ],\n "type": "object"\n }\n },\n "required": [\n "provider",\n "parameters",\n "digest"\n ],\n "type": "object"\n },\n "authority": {\n "enum": [\n "shipped-artifact",\n "controlled-replay",\n "historical-reference",\n "external-service",\n "analyst-inference"\n ],\n "type": "string"\n },\n "confidence": {\n "enum": [\n "observed",\n "derived",\n "inferred"\n ],\n "type": "string"\n },\n "environment": {\n "anyOf": [\n {\n "additionalProperties": false,\n "properties": {\n "architecture": {\n "minLength": 1,\n "type": "string"\n },\n "id": {\n "minLength": 1,\n "type": "string"\n },\n "isolation": {\n "enum": [\n "none",\n "process",\n "container",\n "virtual-machine"\n ],\n "type": "string"\n },\n "platform": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "id",\n "platform",\n "architecture",\n "isolation"\n ],\n "type": "object"\n },\n {\n "type": "null"\n }\n ]\n },\n "evidence_id": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "evidence_links": {\n "items": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "type": "array"\n },\n "limitations": {\n "items": {\n "type": "string"\n },\n "type": "array"\n },\n "locations": {\n "items": {\n "oneOf": [\n {\n "additionalProperties": false,\n "properties": {\n "address": {\n "minLength": 1,\n "type": "string"\n },\n "kind": {\n "const": "address",\n "type": "string"\n }\n },\n "required": [\n "kind",\n "address"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "end": {\n "minLength": 1,\n "type": "string"\n },\n "kind": {\n "const": "address-range",\n "type": "string"\n },\n "start": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "kind",\n "start",\n "end"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "kind": {\n "const": "artifact-path",\n "type": "string"\n },\n "path": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "kind",\n "path"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "kind": {\n "const": "file-offset",\n "type": "string"\n },\n "offset": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "kind",\n "offset"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "end": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "kind": {\n "const": "file-offset-range",\n "type": "string"\n },\n "start": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "kind",\n "start",\n "end"\n ],\n "type": "object"\n }\n ]\n },\n "type": "array"\n },\n "normalized_result": {\n "$ref": "#/$defs/__schema0"\n },\n "operation": {\n "minLength": 1,\n "type": "string"\n },\n "parameters": {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n },\n "predicate_type": {\n "minLength": 1,\n "type": "string"\n },\n "provider": {\n "additionalProperties": false,\n "properties": {\n "id": {\n "minLength": 1,\n "type": "string"\n },\n "name": {\n "minLength": 1,\n "type": "string"\n },\n "version": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "id",\n "name",\n "version"\n ],\n "type": "object"\n },\n "raw_result": {\n "anyOf": [\n {\n "$ref": "#/$defs/__schema0"\n },\n {\n "type": "null"\n }\n ]\n },\n "subject": {\n "anyOf": [\n {\n "additionalProperties": false,\n "properties": {\n "architecture": {\n "anyOf": [\n {\n "enum": [\n "x86",\n "x86_64",\n "arm",\n "arm64"\n ],\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "digest": {\n "additionalProperties": false,\n "properties": {\n "sha256": {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n }\n },\n "required": [\n "sha256"\n ],\n "type": "object"\n },\n "format": {\n "enum": [\n "hopper",\n "analysis-database",\n "mach-o",\n "elf",\n "pe",\n "dos-mz",\n "dos-com",\n "zip",\n "ipa",\n "apk",\n "msix",\n "appx",\n "asar",\n "dmg",\n "pkg",\n "plist",\n "javascript",\n "source-map",\n "directory",\n "file",\n "unknown",\n "mach-o-universal",\n "javascript-bundle",\n "entitlements"\n ],\n "type": "string"\n },\n "local_path": {\n "type": "string"\n },\n "name": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "name",\n "digest",\n "format",\n "architecture",\n "local_path"\n ],\n "type": "object"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "evidence_id",\n "subject",\n "provider",\n "predicate_type",\n "operation",\n "parameters",\n "raw_result",\n "normalized_result",\n "confidence",\n "authority",\n "environment",\n "limitations",\n "locations",\n "evidence_links"\n ],\n "type": "object"\n },\n "evidence_id": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "result": {\n "additionalProperties": false,\n "properties": {\n "class_name": {\n "type": "string"\n },\n "engine": {\n "additionalProperties": false,\n "properties": {\n "artifact_sha256": {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n },\n "heap_limit_mib": {\n "anyOf": [\n {\n "exclusiveMinimum": 0,\n "maximum": 9007199254740991,\n "type": "integer"\n },\n {\n "type": "null"\n }\n ]\n },\n "name": {\n "minLength": 1,\n "type": "string"\n },\n "source_revision": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "version": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "worker_count": {\n "exclusiveMinimum": 0,\n "maximum": 9007199254740991,\n "type": "integer"\n }\n },\n "required": [\n "name",\n "version",\n "artifact_sha256",\n "source_revision",\n "worker_count",\n "heap_limit_mib"\n ],\n "type": "object"\n },\n "fields": {\n "items": {\n "additionalProperties": false,\n "properties": {\n "name": {\n "type": "string"\n },\n "reported_type": {\n "type": "string"\n }\n },\n "required": [\n "name",\n "reported_type"\n ],\n "type": "object"\n },\n "type": "array"\n },\n "inner_classes": {\n "items": {\n "type": "string"\n },\n "type": "array"\n },\n "methods": {\n "items": {\n "additionalProperties": false,\n "properties": {\n "dex_descriptor": {\n "type": "null"\n },\n "is_constructor": {\n "type": "boolean"\n },\n "name": {\n "type": "string"\n },\n "overload_index": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "reported_signature": {\n "type": "string"\n }\n },\n "required": [\n "name",\n "reported_signature",\n "overload_index",\n "is_constructor",\n "dex_descriptor"\n ],\n "type": "object"\n },\n "type": "array"\n }\n },\n "required": [\n "engine",\n "class_name",\n "methods",\n "fields",\n "inner_classes"\n ],\n "type": "object"\n }\n },\n "required": [\n "result",\n "evidence_id",\n "evidence"\n ],\n "type": "object"\n },\n "requiresSession": false,\n "title": "Inspect Android Class"\n },\n {\n "analysisOperation": null,\n "annotations": {\n "destructiveHint": false,\n "idempotentHint": true,\n "openWorldHint": true,\n "readOnlyHint": false\n },\n "description": "Decompile one Android method with smali fallback. Requires explicit overload_index when multiple methods share a name. Reports representation, fallback markers and source truncation; never treats display signatures as exact DEX identities.",\n "effects": {\n "accessesNetwork": false,\n "changesUiState": false,\n "idempotent": true,\n "launchesProcess": true,\n "mayDiscardData": false,\n "mutatesSession": true,\n "mutatesTarget": false,\n "writesFilesystem": true\n },\n "inputSchema": {\n "$schema": "https://json-schema.org/draft/2020-12/schema",\n "additionalProperties": false,\n "examples": [\n {\n "class_name": "example.MainActivity",\n "method_name": "onCreate",\n "path": "/tmp/Example.apk"\n }\n ],\n "properties": {\n "class_name": {\n "description": "Exact fully qualified class name",\n "minLength": 1,\n "type": "string"\n },\n "method_name": {\n "description": "Value for method name.",\n "minLength": 1,\n "type": "string"\n },\n "overload_index": {\n "description": "Explicit index among same-name methods; required when ambiguous",\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "path": {\n "description": "Local APK path; the target is never executed",\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "path",\n "class_name",\n "method_name"\n ],\n "type": "object"\n },\n "kind": "android-provider",\n "name": "inspect_android_method",\n "outputSchema": {\n "$defs": {\n "__schema0": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "number"\n },\n {\n "type": "boolean"\n },\n {\n "type": "null"\n },\n {\n "items": {\n "$ref": "#/$defs/__schema0"\n },\n "type": "array"\n },\n {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n }\n ]\n }\n },\n "$schema": "https://json-schema.org/draft/2020-12/schema",\n "additionalProperties": false,\n "properties": {\n "evidence": {\n "additionalProperties": false,\n "properties": {\n "analysis_profile": {\n "additionalProperties": false,\n "properties": {\n "digest": {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n },\n "parameters": {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n },\n "provider": {\n "additionalProperties": false,\n "properties": {\n "id": {\n "minLength": 1,\n "type": "string"\n },\n "name": {\n "minLength": 1,\n "type": "string"\n },\n "version": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "id",\n "name",\n "version"\n ],\n "type": "object"\n }\n },\n "required": [\n "provider",\n "parameters",\n "digest"\n ],\n "type": "object"\n },\n "authority": {\n "enum": [\n "shipped-artifact",\n "controlled-replay",\n "historical-reference",\n "external-service",\n "analyst-inference"\n ],\n "type": "string"\n },\n "confidence": {\n "enum": [\n "observed",\n "derived",\n "inferred"\n ],\n "type": "string"\n },\n "environment": {\n "anyOf": [\n {\n "additionalProperties": false,\n "properties": {\n "architecture": {\n "minLength": 1,\n "type": "string"\n },\n "id": {\n "minLength": 1,\n "type": "string"\n },\n "isolation": {\n "enum": [\n "none",\n "process",\n "container",\n "virtual-machine"\n ],\n "type": "string"\n },\n "platform": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "id",\n "platform",\n "architecture",\n "isolation"\n ],\n "type": "object"\n },\n {\n "type": "null"\n }\n ]\n },\n "evidence_id": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "evidence_links": {\n "items": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "type": "array"\n },\n "limitations": {\n "items": {\n "type": "string"\n },\n "type": "array"\n },\n "locations": {\n "items": {\n "oneOf": [\n {\n "additionalProperties": false,\n "properties": {\n "address": {\n "minLength": 1,\n "type": "string"\n },\n "kind": {\n "const": "address",\n "type": "string"\n }\n },\n "required": [\n "kind",\n "address"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "end": {\n "minLength": 1,\n "type": "string"\n },\n "kind": {\n "const": "address-range",\n "type": "string"\n },\n "start": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "kind",\n "start",\n "end"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "kind": {\n "const": "artifact-path",\n "type": "string"\n },\n "path": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "kind",\n "path"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "kind": {\n "const": "file-offset",\n "type": "string"\n },\n "offset": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "kind",\n "offset"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "end": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "kind": {\n "const": "file-offset-range",\n "type": "string"\n },\n "start": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "kind",\n "start",\n "end"\n ],\n "type": "object"\n }\n ]\n },\n "type": "array"\n },\n "normalized_result": {\n "$ref": "#/$defs/__schema0"\n },\n "operation": {\n "minLength": 1,\n "type": "string"\n },\n "parameters": {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n },\n "predicate_type": {\n "minLength": 1,\n "type": "string"\n },\n "provider": {\n "additionalProperties": false,\n "properties": {\n "id": {\n "minLength": 1,\n "type": "string"\n },\n "name": {\n "minLength": 1,\n "type": "string"\n },\n "version": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "id",\n "name",\n "version"\n ],\n "type": "object"\n },\n "raw_result": {\n "anyOf": [\n {\n "$ref": "#/$defs/__schema0"\n },\n {\n "type": "null"\n }\n ]\n },\n "subject": {\n "anyOf": [\n {\n "additionalProperties": false,\n "properties": {\n "architecture": {\n "anyOf": [\n {\n "enum": [\n "x86",\n "x86_64",\n "arm",\n "arm64"\n ],\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "digest": {\n "additionalProperties": false,\n "properties": {\n "sha256": {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n }\n },\n "required": [\n "sha256"\n ],\n "type": "object"\n },\n "format": {\n "enum": [\n "hopper",\n "analysis-database",\n "mach-o",\n "elf",\n "pe",\n "dos-mz",\n "dos-com",\n "zip",\n "ipa",\n "apk",\n "msix",\n "appx",\n "asar",\n "dmg",\n "pkg",\n "plist",\n "javascript",\n "source-map",\n "directory",\n "file",\n "unknown",\n "mach-o-universal",\n "javascript-bundle",\n "entitlements"\n ],\n "type": "string"\n },\n "local_path": {\n "type": "string"\n },\n "name": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "name",\n "digest",\n "format",\n "architecture",\n "local_path"\n ],\n "type": "object"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "evidence_id",\n "subject",\n "provider",\n "predicate_type",\n "operation",\n "parameters",\n "raw_result",\n "normalized_result",\n "confidence",\n "authority",\n "environment",\n "limitations",\n "locations",\n "evidence_links"\n ],\n "type": "object"\n },\n "evidence_id": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "result": {\n "additionalProperties": false,\n "properties": {\n "body_status": {\n "enum": [\n "available",\n "not_available"\n ],\n "type": "string"\n },\n "class_name": {\n "type": "string"\n },\n "engine": {\n "additionalProperties": false,\n "properties": {\n "artifact_sha256": {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n },\n "heap_limit_mib": {\n "anyOf": [\n {\n "exclusiveMinimum": 0,\n "maximum": 9007199254740991,\n "type": "integer"\n },\n {\n "type": "null"\n }\n ]\n },\n "name": {\n "minLength": 1,\n "type": "string"\n },\n "source_revision": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "version": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "worker_count": {\n "exclusiveMinimum": 0,\n "maximum": 9007199254740991,\n "type": "integer"\n }\n },\n "required": [\n "name",\n "version",\n "artifact_sha256",\n "source_revision",\n "worker_count",\n "heap_limit_mib"\n ],\n "type": "object"\n },\n "fell_back": {\n "type": "boolean"\n },\n "markers": {\n "items": {\n "type": "string"\n },\n "type": "array"\n },\n "method": {\n "additionalProperties": false,\n "properties": {\n "dex_descriptor": {\n "type": "null"\n },\n "is_constructor": {\n "type": "boolean"\n },\n "name": {\n "type": "string"\n },\n "overload_index": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "reported_signature": {\n "type": "string"\n }\n },\n "required": [\n "name",\n "reported_signature",\n "overload_index",\n "is_constructor",\n "dex_descriptor"\n ],\n "type": "object"\n },\n "overload_count": {\n "exclusiveMinimum": 0,\n "maximum": 9007199254740991,\n "type": "integer"\n },\n "representation": {\n "enum": [\n "java",\n "smali"\n ],\n "type": "string"\n },\n "source": {\n "additionalProperties": false,\n "properties": {\n "reported_total_bytes": {\n "anyOf": [\n {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n {\n "type": "null"\n }\n ]\n },\n "status": {\n "enum": [\n "complete",\n "partial"\n ],\n "type": "string"\n },\n "text": {\n "type": "string"\n }\n },\n "required": [\n "status",\n "text",\n "reported_total_bytes"\n ],\n "type": "object"\n }\n },\n "required": [\n "engine",\n "class_name",\n "method",\n "overload_count",\n "representation",\n "body_status",\n "fell_back",\n "markers",\n "source"\n ],\n "type": "object"\n }\n },\n "required": [\n "result",\n "evidence_id",\n "evidence"\n ],\n "type": "object"\n },\n "requiresSession": false,\n "title": "Inspect Android Method"\n },\n {\n "analysisOperation": null,\n "annotations": {\n "destructiveHint": false,\n "idempotentHint": true,\n "openWorldHint": true,\n "readOnlyHint": false\n },\n "description": "Trace incoming static references to an exact Android class or unique method. Overloaded method reference queries are explicitly unsupported by the current engine. Source lines and DEX offsets remain unknown; no runtime calls are inferred.",\n "effects": {\n "accessesNetwork": false,\n "changesUiState": false,\n "idempotent": true,\n "launchesProcess": true,\n "mayDiscardData": false,\n "mutatesSession": true,\n "mutatesTarget": false,\n "writesFilesystem": true\n },\n "inputSchema": {\n "$schema": "https://json-schema.org/draft/2020-12/schema",\n "additionalProperties": false,\n "examples": [\n {\n "class_name": "example.MainActivity",\n "path": "/tmp/Example.apk"\n }\n ],\n "properties": {\n "class_name": {\n "description": "Exact fully qualified class name",\n "minLength": 1,\n "type": "string"\n },\n "method_name": {\n "description": "Omit for class references; ambiguous overloaded methods are unsupported",\n "minLength": 1,\n "type": "string"\n },\n "path": {\n "description": "Local APK path; the target is never executed",\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "path",\n "class_name"\n ],\n "type": "object"\n },\n "kind": "android-provider",\n "name": "trace_android_references",\n "outputSchema": {\n "$defs": {\n "__schema0": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "number"\n },\n {\n "type": "boolean"\n },\n {\n "type": "null"\n },\n {\n "items": {\n "$ref": "#/$defs/__schema0"\n },\n "type": "array"\n },\n {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n }\n ]\n }\n },\n "$schema": "https://json-schema.org/draft/2020-12/schema",\n "additionalProperties": false,\n "properties": {\n "evidence": {\n "additionalProperties": false,\n "properties": {\n "analysis_profile": {\n "additionalProperties": false,\n "properties": {\n "digest": {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n },\n "parameters": {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n },\n "provider": {\n "additionalProperties": false,\n "properties": {\n "id": {\n "minLength": 1,\n "type": "string"\n },\n "name": {\n "minLength": 1,\n "type": "string"\n },\n "version": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "id",\n "name",\n "version"\n ],\n "type": "object"\n }\n },\n "required": [\n "provider",\n "parameters",\n "digest"\n ],\n "type": "object"\n },\n "authority": {\n "enum": [\n "shipped-artifact",\n "controlled-replay",\n "historical-reference",\n "external-service",\n "analyst-inference"\n ],\n "type": "string"\n },\n "confidence": {\n "enum": [\n "observed",\n "derived",\n "inferred"\n ],\n "type": "string"\n },\n "environment": {\n "anyOf": [\n {\n "additionalProperties": false,\n "properties": {\n "architecture": {\n "minLength": 1,\n "type": "string"\n },\n "id": {\n "minLength": 1,\n "type": "string"\n },\n "isolation": {\n "enum": [\n "none",\n "process",\n "container",\n "virtual-machine"\n ],\n "type": "string"\n },\n "platform": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "id",\n "platform",\n "architecture",\n "isolation"\n ],\n "type": "object"\n },\n {\n "type": "null"\n }\n ]\n },\n "evidence_id": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "evidence_links": {\n "items": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "type": "array"\n },\n "limitations": {\n "items": {\n "type": "string"\n },\n "type": "array"\n },\n "locations": {\n "items": {\n "oneOf": [\n {\n "additionalProperties": false,\n "properties": {\n "address": {\n "minLength": 1,\n "type": "string"\n },\n "kind": {\n "const": "address",\n "type": "string"\n }\n },\n "required": [\n "kind",\n "address"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "end": {\n "minLength": 1,\n "type": "string"\n },\n "kind": {\n "const": "address-range",\n "type": "string"\n },\n "start": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "kind",\n "start",\n "end"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "kind": {\n "const": "artifact-path",\n "type": "string"\n },\n "path": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "kind",\n "path"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "kind": {\n "const": "file-offset",\n "type": "string"\n },\n "offset": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "kind",\n "offset"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "end": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "kind": {\n "const": "file-offset-range",\n "type": "string"\n },\n "start": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "kind",\n "start",\n "end"\n ],\n "type": "object"\n }\n ]\n },\n "type": "array"\n },\n "normalized_result": {\n "$ref": "#/$defs/__schema0"\n },\n "operation": {\n "minLength": 1,\n "type": "string"\n },\n "parameters": {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n },\n "predicate_type": {\n "minLength": 1,\n "type": "string"\n },\n "provider": {\n "additionalProperties": false,\n "properties": {\n "id": {\n "minLength": 1,\n "type": "string"\n },\n "name": {\n "minLength": 1,\n "type": "string"\n },\n "version": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "id",\n "name",\n "version"\n ],\n "type": "object"\n },\n "raw_result": {\n "anyOf": [\n {\n "$ref": "#/$defs/__schema0"\n },\n {\n "type": "null"\n }\n ]\n },\n "subject": {\n "anyOf": [\n {\n "additionalProperties": false,\n "properties": {\n "architecture": {\n "anyOf": [\n {\n "enum": [\n "x86",\n "x86_64",\n "arm",\n "arm64"\n ],\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "digest": {\n "additionalProperties": false,\n "properties": {\n "sha256": {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n }\n },\n "required": [\n "sha256"\n ],\n "type": "object"\n },\n "format": {\n "enum": [\n "hopper",\n "analysis-database",\n "mach-o",\n "elf",\n "pe",\n "dos-mz",\n "dos-com",\n "zip",\n "ipa",\n "apk",\n "msix",\n "appx",\n "asar",\n "dmg",\n "pkg",\n "plist",\n "javascript",\n "source-map",\n "directory",\n "file",\n "unknown",\n "mach-o-universal",\n "javascript-bundle",\n "entitlements"\n ],\n "type": "string"\n },\n "local_path": {\n "type": "string"\n },\n "name": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "name",\n "digest",\n "format",\n "architecture",\n "local_path"\n ],\n "type": "object"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "evidence_id",\n "subject",\n "provider",\n "predicate_type",\n "operation",\n "parameters",\n "raw_result",\n "normalized_result",\n "confidence",\n "authority",\n "environment",\n "limitations",\n "locations",\n "evidence_links"\n ],\n "type": "object"\n },\n "evidence_id": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "result": {\n "additionalProperties": false,\n "properties": {\n "class_name": {\n "type": "string"\n },\n "coverage": {\n "const": "complete",\n "type": "string"\n },\n "engine": {\n "additionalProperties": false,\n "properties": {\n "artifact_sha256": {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n },\n "heap_limit_mib": {\n "anyOf": [\n {\n "exclusiveMinimum": 0,\n "maximum": 9007199254740991,\n "type": "integer"\n },\n {\n "type": "null"\n }\n ]\n },\n "name": {\n "minLength": 1,\n "type": "string"\n },\n "source_revision": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "version": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "worker_count": {\n "exclusiveMinimum": 0,\n "maximum": 9007199254740991,\n "type": "integer"\n }\n },\n "required": [\n "name",\n "version",\n "artifact_sha256",\n "source_revision",\n "worker_count",\n "heap_limit_mib"\n ],\n "type": "object"\n },\n "method_name": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "references": {\n "items": {\n "additionalProperties": false,\n "properties": {\n "containing_class": {\n "type": "string"\n },\n "dex_offset": {\n "type": "null"\n },\n "kind": {\n "type": "string"\n },\n "name": {\n "type": "string"\n },\n "reported_full_name": {\n "type": "string"\n },\n "source_line": {\n "type": "null"\n },\n "top_class": {\n "type": "string"\n }\n },\n "required": [\n "kind",\n "name",\n "reported_full_name",\n "containing_class",\n "top_class",\n "source_line",\n "dex_offset"\n ],\n "type": "object"\n },\n "type": "array"\n },\n "total": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "engine",\n "class_name",\n "method_name",\n "total",\n "references",\n "coverage"\n ],\n "type": "object"\n }\n },\n "required": [\n "result",\n "evidence_id",\n "evidence"\n ],\n "type": "object"\n },\n "requiresSession": false,\n "title": "Trace Android References"\n },\n {\n "analysisOperation": null,\n "annotations": {\n "destructiveHint": false,\n "idempotentHint": true,\n "openWorldHint": true,\n "readOnlyHint": false\n },\n "description": "Inspect signature candidates in a local firmware file with Binwalk 3.1.x (verified with 3.1.0). Returns offsets, reported lengths, descriptions and raw confidence values. Length validation and runtime addresses remain unknown. No extraction or target execution. Linux, caller-supplied tool and util-linux prlimit required; 128 MiB input limit, one worker and 120-second deadline.",\n "effects": {\n "accessesNetwork": false,\n "changesUiState": false,\n "idempotent": true,\n "launchesProcess": true,\n "mayDiscardData": false,\n "mutatesSession": true,\n "mutatesTarget": false,\n "writesFilesystem": true\n },\n "inputSchema": {\n "$schema": "https://json-schema.org/draft/2020-12/schema",\n "additionalProperties": false,\n "examples": [\n {\n "path": "/tmp/firmware.bin"\n }\n ],\n "properties": {\n "path": {\n "description": "Local firmware file; never executed",\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "path"\n ],\n "type": "object"\n },\n "kind": "firmware-provider",\n "name": "inspect_firmware_regions",\n "outputSchema": {\n "$defs": {\n "__schema0": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "number"\n },\n {\n "type": "boolean"\n },\n {\n "type": "null"\n },\n {\n "items": {\n "$ref": "#/$defs/__schema0"\n },\n "type": "array"\n },\n {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n }\n ]\n }\n },\n "$schema": "https://json-schema.org/draft/2020-12/schema",\n "additionalProperties": false,\n "properties": {\n "evidence": {\n "additionalProperties": false,\n "properties": {\n "analysis_profile": {\n "additionalProperties": false,\n "properties": {\n "digest": {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n },\n "parameters": {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n },\n "provider": {\n "additionalProperties": false,\n "properties": {\n "id": {\n "minLength": 1,\n "type": "string"\n },\n "name": {\n "minLength": 1,\n "type": "string"\n },\n "version": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "id",\n "name",\n "version"\n ],\n "type": "object"\n }\n },\n "required": [\n "provider",\n "parameters",\n "digest"\n ],\n "type": "object"\n },\n "authority": {\n "enum": [\n "shipped-artifact",\n "controlled-replay",\n "historical-reference",\n "external-service",\n "analyst-inference"\n ],\n "type": "string"\n },\n "confidence": {\n "enum": [\n "observed",\n "derived",\n "inferred"\n ],\n "type": "string"\n },\n "environment": {\n "anyOf": [\n {\n "additionalProperties": false,\n "properties": {\n "architecture": {\n "minLength": 1,\n "type": "string"\n },\n "id": {\n "minLength": 1,\n "type": "string"\n },\n "isolation": {\n "enum": [\n "none",\n "process",\n "container",\n "virtual-machine"\n ],\n "type": "string"\n },\n "platform": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "id",\n "platform",\n "architecture",\n "isolation"\n ],\n "type": "object"\n },\n {\n "type": "null"\n }\n ]\n },\n "evidence_id": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "evidence_links": {\n "items": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "type": "array"\n },\n "limitations": {\n "items": {\n "type": "string"\n },\n "type": "array"\n },\n "locations": {\n "items": {\n "oneOf": [\n {\n "additionalProperties": false,\n "properties": {\n "address": {\n "minLength": 1,\n "type": "string"\n },\n "kind": {\n "const": "address",\n "type": "string"\n }\n },\n "required": [\n "kind",\n "address"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "end": {\n "minLength": 1,\n "type": "string"\n },\n "kind": {\n "const": "address-range",\n "type": "string"\n },\n "start": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "kind",\n "start",\n "end"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "kind": {\n "const": "artifact-path",\n "type": "string"\n },\n "path": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "kind",\n "path"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "kind": {\n "const": "file-offset",\n "type": "string"\n },\n "offset": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "kind",\n "offset"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "end": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "kind": {\n "const": "file-offset-range",\n "type": "string"\n },\n "start": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "kind",\n "start",\n "end"\n ],\n "type": "object"\n }\n ]\n },\n "type": "array"\n },\n "normalized_result": {\n "$ref": "#/$defs/__schema0"\n },\n "operation": {\n "minLength": 1,\n "type": "string"\n },\n "parameters": {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n },\n "predicate_type": {\n "minLength": 1,\n "type": "string"\n },\n "provider": {\n "additionalProperties": false,\n "properties": {\n "id": {\n "minLength": 1,\n "type": "string"\n },\n "name": {\n "minLength": 1,\n "type": "string"\n },\n "version": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "id",\n "name",\n "version"\n ],\n "type": "object"\n },\n "raw_result": {\n "anyOf": [\n {\n "$ref": "#/$defs/__schema0"\n },\n {\n "type": "null"\n }\n ]\n },\n "subject": {\n "anyOf": [\n {\n "additionalProperties": false,\n "properties": {\n "architecture": {\n "anyOf": [\n {\n "enum": [\n "x86",\n "x86_64",\n "arm",\n "arm64"\n ],\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "digest": {\n "additionalProperties": false,\n "properties": {\n "sha256": {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n }\n },\n "required": [\n "sha256"\n ],\n "type": "object"\n },\n "format": {\n "enum": [\n "hopper",\n "analysis-database",\n "mach-o",\n "elf",\n "pe",\n "dos-mz",\n "dos-com",\n "zip",\n "ipa",\n "apk",\n "msix",\n "appx",\n "asar",\n "dmg",\n "pkg",\n "plist",\n "javascript",\n "source-map",\n "directory",\n "file",\n "unknown",\n "mach-o-universal",\n "javascript-bundle",\n "entitlements"\n ],\n "type": "string"\n },\n "local_path": {\n "type": "string"\n },\n "name": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "name",\n "digest",\n "format",\n "architecture",\n "local_path"\n ],\n "type": "object"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "evidence_id",\n "subject",\n "provider",\n "predicate_type",\n "operation",\n "parameters",\n "raw_result",\n "normalized_result",\n "confidence",\n "authority",\n "environment",\n "limitations",\n "locations",\n "evidence_links"\n ],\n "type": "object"\n },\n "evidence_id": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "result": {\n "additionalProperties": false,\n "properties": {\n "coverage": {\n "const": "signature_scan",\n "type": "string"\n },\n "engine": {\n "additionalProperties": false,\n "properties": {\n "executable_path": {\n "type": "string"\n },\n "executable_sha256": {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n },\n "name": {\n "type": "string"\n },\n "source_revision": {\n "type": "null"\n },\n "version": {\n "type": "string"\n },\n "worker_count": {\n "const": 1,\n "type": "number"\n }\n },\n "required": [\n "name",\n "version",\n "executable_path",\n "executable_sha256",\n "source_revision",\n "worker_count"\n ],\n "type": "object"\n },\n "input_size": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "regions": {\n "items": {\n "additionalProperties": false,\n "properties": {\n "description": {\n "type": "string"\n },\n "offset": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "provider_id": {\n "type": "string"\n },\n "reported_confidence": {\n "maximum": 255,\n "minimum": 0,\n "type": "integer"\n },\n "reported_size": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "signature": {\n "type": "string"\n },\n "size_basis": {\n "const": "provider_reported_validation_unknown",\n "type": "string"\n }\n },\n "required": [\n "provider_id",\n "offset",\n "reported_size",\n "signature",\n "description",\n "reported_confidence",\n "size_basis"\n ],\n "type": "object"\n },\n "type": "array"\n }\n },\n "required": [\n "engine",\n "input_size",\n "regions",\n "coverage"\n ],\n "type": "object"\n }\n },\n "required": [\n "result",\n "evidence_id",\n "evidence"\n ],\n "type": "object"\n },\n "requiresSession": false,\n "title": "Inspect Firmware Regions"\n },\n {\n "analysisOperation": null,\n "annotations": {\n "destructiveHint": false,\n "idempotentHint": false,\n "openWorldHint": true,\n "readOnlyHint": false\n },\n "description": "Extract caller-selected firmware bytes with Unblob 26.6.x (verified with 26.6.4) into an absent output directory. Returns verified child paths/digests, task derivations, unknown chunks and extraction diagnostics inline. Preserves the default sandbox; publishes regular files only. Linux, caller-supplied tool, format-specific extractors and util-linux prlimit required. No mounts or extracted-code execution. Select a returned native file with open_binary for Ghidra analysis; decompressed offsets are not original-file addresses.",\n "effects": {\n "accessesNetwork": false,\n "changesUiState": false,\n "idempotent": false,\n "launchesProcess": true,\n "mayDiscardData": false,\n "mutatesSession": true,\n "mutatesTarget": false,\n "writesFilesystem": true\n },\n "inputSchema": {\n "$schema": "https://json-schema.org/draft/2020-12/schema",\n "additionalProperties": false,\n "examples": [\n {\n "output_directory": "/tmp/firmware-output",\n "path": "/tmp/firmware.bin",\n "range": {\n "length": 4096,\n "offset": 64\n }\n }\n ],\n "properties": {\n "max_depth": {\n "default": 3,\n "description": "Extraction depth; reaching it yields partial analysis",\n "maximum": 10,\n "minimum": 1,\n "type": "integer"\n },\n "max_output_bytes": {\n "default": 268435456,\n "description": "Staging file-byte budget, checked during extraction; transient overshoot is possible",\n "maximum": 536870912,\n "minimum": 1,\n "type": "integer"\n },\n "max_output_files": {\n "default": 10000,\n "description": "Staging entry budget, including directories and links",\n "maximum": 100000,\n "minimum": 1,\n "type": "integer"\n },\n "output_directory": {\n "description": "Absolute, absent output directory; parent must exist",\n "minLength": 1,\n "type": "string"\n },\n "path": {\n "description": "Local firmware file; never executed",\n "minLength": 1,\n "type": "string"\n },\n "range": {\n "additionalProperties": false,\n "description": "Explicit file-byte interval; omit to extract the whole file",\n "properties": {\n "length": {\n "description": "Value for length.",\n "exclusiveMinimum": 0,\n "maximum": 9007199254740991,\n "type": "integer"\n },\n "offset": {\n "description": "Value for offset.",\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "offset",\n "length"\n ],\n "type": "object"\n }\n },\n "required": [\n "path",\n "output_directory"\n ],\n "type": "object"\n },\n "kind": "firmware-provider",\n "name": "extract_firmware",\n "outputSchema": {\n "$defs": {\n "__schema0": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "number"\n },\n {\n "type": "boolean"\n },\n {\n "type": "null"\n },\n {\n "items": {\n "$ref": "#/$defs/__schema0"\n },\n "type": "array"\n },\n {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n }\n ]\n }\n },\n "$schema": "https://json-schema.org/draft/2020-12/schema",\n "additionalProperties": false,\n "properties": {\n "evidence": {\n "additionalProperties": false,\n "properties": {\n "analysis_profile": {\n "additionalProperties": false,\n "properties": {\n "digest": {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n },\n "parameters": {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n },\n "provider": {\n "additionalProperties": false,\n "properties": {\n "id": {\n "minLength": 1,\n "type": "string"\n },\n "name": {\n "minLength": 1,\n "type": "string"\n },\n "version": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "id",\n "name",\n "version"\n ],\n "type": "object"\n }\n },\n "required": [\n "provider",\n "parameters",\n "digest"\n ],\n "type": "object"\n },\n "authority": {\n "enum": [\n "shipped-artifact",\n "controlled-replay",\n "historical-reference",\n "external-service",\n "analyst-inference"\n ],\n "type": "string"\n },\n "confidence": {\n "enum": [\n "observed",\n "derived",\n "inferred"\n ],\n "type": "string"\n },\n "environment": {\n "anyOf": [\n {\n "additionalProperties": false,\n "properties": {\n "architecture": {\n "minLength": 1,\n "type": "string"\n },\n "id": {\n "minLength": 1,\n "type": "string"\n },\n "isolation": {\n "enum": [\n "none",\n "process",\n "container",\n "virtual-machine"\n ],\n "type": "string"\n },\n "platform": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "id",\n "platform",\n "architecture",\n "isolation"\n ],\n "type": "object"\n },\n {\n "type": "null"\n }\n ]\n },\n "evidence_id": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "evidence_links": {\n "items": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "type": "array"\n },\n "limitations": {\n "items": {\n "type": "string"\n },\n "type": "array"\n },\n "locations": {\n "items": {\n "oneOf": [\n {\n "additionalProperties": false,\n "properties": {\n "address": {\n "minLength": 1,\n "type": "string"\n },\n "kind": {\n "const": "address",\n "type": "string"\n }\n },\n "required": [\n "kind",\n "address"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "end": {\n "minLength": 1,\n "type": "string"\n },\n "kind": {\n "const": "address-range",\n "type": "string"\n },\n "start": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "kind",\n "start",\n "end"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "kind": {\n "const": "artifact-path",\n "type": "string"\n },\n "path": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "kind",\n "path"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "kind": {\n "const": "file-offset",\n "type": "string"\n },\n "offset": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "kind",\n "offset"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "end": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "kind": {\n "const": "file-offset-range",\n "type": "string"\n },\n "start": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "kind",\n "start",\n "end"\n ],\n "type": "object"\n }\n ]\n },\n "type": "array"\n },\n "normalized_result": {\n "$ref": "#/$defs/__schema0"\n },\n "operation": {\n "minLength": 1,\n "type": "string"\n },\n "parameters": {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n },\n "predicate_type": {\n "minLength": 1,\n "type": "string"\n },\n "provider": {\n "additionalProperties": false,\n "properties": {\n "id": {\n "minLength": 1,\n "type": "string"\n },\n "name": {\n "minLength": 1,\n "type": "string"\n },\n "version": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "id",\n "name",\n "version"\n ],\n "type": "object"\n },\n "raw_result": {\n "anyOf": [\n {\n "$ref": "#/$defs/__schema0"\n },\n {\n "type": "null"\n }\n ]\n },\n "subject": {\n "anyOf": [\n {\n "additionalProperties": false,\n "properties": {\n "architecture": {\n "anyOf": [\n {\n "enum": [\n "x86",\n "x86_64",\n "arm",\n "arm64"\n ],\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "digest": {\n "additionalProperties": false,\n "properties": {\n "sha256": {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n }\n },\n "required": [\n "sha256"\n ],\n "type": "object"\n },\n "format": {\n "enum": [\n "hopper",\n "analysis-database",\n "mach-o",\n "elf",\n "pe",\n "dos-mz",\n "dos-com",\n "zip",\n "ipa",\n "apk",\n "msix",\n "appx",\n "asar",\n "dmg",\n "pkg",\n "plist",\n "javascript",\n "source-map",\n "directory",\n "file",\n "unknown",\n "mach-o-universal",\n "javascript-bundle",\n "entitlements"\n ],\n "type": "string"\n },\n "local_path": {\n "type": "string"\n },\n "name": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "name",\n "digest",\n "format",\n "architecture",\n "local_path"\n ],\n "type": "object"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "evidence_id",\n "subject",\n "provider",\n "predicate_type",\n "operation",\n "parameters",\n "raw_result",\n "normalized_result",\n "confidence",\n "authority",\n "environment",\n "limitations",\n "locations",\n "evidence_links"\n ],\n "type": "object"\n },\n "evidence_id": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "result": {\n "additionalProperties": false,\n "properties": {\n "chunks": {\n "items": {\n "additionalProperties": false,\n "properties": {\n "encrypted": {\n "anyOf": [\n {\n "type": "boolean"\n },\n {\n "type": "null"\n }\n ]\n },\n "handler": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "input_path": {\n "type": "string"\n },\n "provider_id": {\n "type": "string"\n },\n "range": {\n "additionalProperties": false,\n "properties": {\n "length": {\n "exclusiveMinimum": 0,\n "maximum": 9007199254740991,\n "type": "integer"\n },\n "offset": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "offset",\n "length"\n ],\n "type": "object"\n },\n "root_file_range": {\n "anyOf": [\n {\n "additionalProperties": false,\n "properties": {\n "length": {\n "exclusiveMinimum": 0,\n "maximum": 9007199254740991,\n "type": "integer"\n },\n "offset": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "offset",\n "length"\n ],\n "type": "object"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "input_path",\n "provider_id",\n "range",\n "handler",\n "encrypted",\n "root_file_range"\n ],\n "type": "object"\n },\n "type": "array"\n },\n "coverage": {\n "enum": [\n "complete",\n "partial"\n ],\n "type": "string"\n },\n "depth_limited_paths": {\n "items": {\n "type": "string"\n },\n "type": "array"\n },\n "derivations": {\n "items": {\n "additionalProperties": false,\n "properties": {\n "child_path": {\n "type": "string"\n },\n "handler": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "parent_file_range": {\n "anyOf": [\n {\n "additionalProperties": false,\n "properties": {\n "length": {\n "exclusiveMinimum": 0,\n "maximum": 9007199254740991,\n "type": "integer"\n },\n "offset": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "offset",\n "length"\n ],\n "type": "object"\n },\n {\n "type": "null"\n }\n ]\n },\n "parent_path": {\n "type": "string"\n },\n "provider_blob_id": {\n "type": "string"\n }\n },\n "required": [\n "parent_path",\n "child_path",\n "provider_blob_id",\n "handler",\n "parent_file_range"\n ],\n "type": "object"\n },\n "type": "array"\n },\n "diagnostics": {\n "items": {\n "$ref": "#/$defs/__schema0"\n },\n "type": "array"\n },\n "engine": {\n "additionalProperties": false,\n "properties": {\n "executable_path": {\n "type": "string"\n },\n "executable_sha256": {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n },\n "name": {\n "type": "string"\n },\n "source_revision": {\n "type": "null"\n },\n "version": {\n "type": "string"\n },\n "worker_count": {\n "const": 1,\n "type": "number"\n }\n },\n "required": [\n "name",\n "version",\n "executable_path",\n "executable_sha256",\n "source_revision",\n "worker_count"\n ],\n "type": "object"\n },\n "files": {\n "items": {\n "additionalProperties": false,\n "properties": {\n "analysis_depth": {\n "anyOf": [\n {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n {\n "type": "null"\n }\n ]\n },\n "mime_type": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "original_file_range": {\n "type": "null"\n },\n "path": {\n "type": "string"\n },\n "relative_path": {\n "type": "string"\n },\n "reported_sha256": {\n "anyOf": [\n {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "runtime_address": {\n "type": "null"\n },\n "sha256": {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n },\n "size": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "relative_path",\n "path",\n "size",\n "sha256",\n "reported_sha256",\n "mime_type",\n "analysis_depth",\n "runtime_address",\n "original_file_range"\n ],\n "type": "object"\n },\n "type": "array"\n },\n "output_directory": {\n "type": "string"\n },\n "published_bytes": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "selection": {\n "additionalProperties": false,\n "properties": {\n "length": {\n "exclusiveMinimum": 0,\n "maximum": 9007199254740991,\n "type": "integer"\n },\n "offset": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "sha256": {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n }\n },\n "required": [\n "offset",\n "length",\n "sha256"\n ],\n "type": "object"\n },\n "unpublished_entries": {\n "items": {\n "additionalProperties": false,\n "properties": {\n "kind": {\n "enum": [\n "symlink",\n "special"\n ],\n "type": "string"\n },\n "link_target": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "relative_path": {\n "type": "string"\n }\n },\n "required": [\n "relative_path",\n "kind",\n "link_target"\n ],\n "type": "object"\n },\n "type": "array"\n }\n },\n "required": [\n "engine",\n "selection",\n "output_directory",\n "coverage",\n "files",\n "unpublished_entries",\n "chunks",\n "derivations",\n "depth_limited_paths",\n "diagnostics",\n "published_bytes"\n ],\n "type": "object"\n }\n },\n "required": [\n "result",\n "evidence_id",\n "evidence"\n ],\n "type": "object"\n },\n "requiresSession": false,\n "title": "Extract Firmware"\n },\n {\n "analysisOperation": null,\n "annotations": {\n "destructiveHint": false,\n "idempotentHint": true,\n "openWorldHint": false,\n "readOnlyHint": false\n },\n "description": "Compare two authenticated inspect_managed_members Evidence records using unique-only tiers: exact CIL/signature, exact declared type, name, and raw signature (decoded or not), and decoded structural method shape. Names alone are never a matching basis; a member whose signature was not decoded, or whose same-named counterpart\'s was not, stays unknown rather than added or removed. Metadata tokens remain build-local coordinates bound to each artifact SHA-256 and MVID, and the tuple digest does not itself remap them.",\n "effects": {\n "accessesNetwork": false,\n "changesUiState": false,\n "idempotent": true,\n "launchesProcess": false,\n "mayDiscardData": false,\n "mutatesSession": true,\n "mutatesTarget": false,\n "writesFilesystem": false\n },\n "inputSchema": {\n "$defs": {\n "__schema0": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "number"\n },\n {\n "type": "boolean"\n },\n {\n "type": "null"\n },\n {\n "items": {\n "$ref": "#/$defs/__schema0"\n },\n "type": "array"\n },\n {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n }\n ]\n }\n },\n "$schema": "https://json-schema.org/draft/2020-12/schema",\n "additionalProperties": false,\n "examples": [\n {\n "left": {\n "authority": "shipped-artifact",\n "confidence": "observed",\n "environment": null,\n "evidence_id": "ev_b3525a33f9aecdcfeac8372301c13cb9153b189d93ef337eee0fef9425171ce3",\n "evidence_links": [],\n "limitations": [\n "Artifact identity is unavailable for this observation."\n ],\n "locations": [],\n "normalized_result": {\n "artifact": {\n "byte_length": 4096,\n "format": "pe",\n "path": "/examples/00000000.dll",\n "sha256": "0000000000000000000000000000000000000000000000000000000000000000"\n },\n "call_edges": [],\n "coverage": {\n "issues": [],\n "state": "complete"\n },\n "field_accesses": [],\n "fields": [],\n "identity_scope": {\n "requires_artifact_sha256": "0000000000000000000000000000000000000000000000000000000000000000",\n "requires_mvid": "00112233-4455-6677-8899-aabbccddeeff",\n "token_identity": "build-local"\n },\n "limitations": [],\n "member_refs": [],\n "metadata": {\n "status": "complete",\n "table_row_counts": {},\n "version": "v4.0.30319"\n },\n "methods": [],\n "module": {\n "enc_base_id": null,\n "enc_id": null,\n "generation": 0,\n "mvid": "00112233-4455-6677-8899-aabbccddeeff",\n "name": "Example.dll",\n "row_offset": 0,\n "token": "0x00000001"\n },\n "types": []\n },\n "operation": "inspect_managed_members",\n "parameters": {},\n "predicate_type": "rea.analysis",\n "provider": {\n "id": "rea-dotnet-static",\n "name": "REA managed static analysis provider",\n "version": "1"\n },\n "raw_result": null,\n "subject": null\n },\n "right": {\n "authority": "shipped-artifact",\n "confidence": "observed",\n "environment": null,\n "evidence_id": "ev_8f79f99bceb5bf3d5e5af7fd678ac07b67427756eca0784cd56ffa6b9c4dbda4",\n "evidence_links": [],\n "limitations": [\n "Artifact identity is unavailable for this observation."\n ],\n "locations": [],\n "normalized_result": {\n "artifact": {\n "byte_length": 4096,\n "format": "pe",\n "path": "/examples/11111111.dll",\n "sha256": "1111111111111111111111111111111111111111111111111111111111111111"\n },\n "call_edges": [],\n "coverage": {\n "issues": [],\n "state": "complete"\n },\n "field_accesses": [],\n "fields": [],\n "identity_scope": {\n "requires_artifact_sha256": "1111111111111111111111111111111111111111111111111111111111111111",\n "requires_mvid": "ffeeddcc-bbaa-4988-9766-554433221100",\n "token_identity": "build-local"\n },\n "limitations": [],\n "member_refs": [],\n "metadata": {\n "status": "complete",\n "table_row_counts": {},\n "version": "v4.0.30319"\n },\n "methods": [],\n "module": {\n "enc_base_id": null,\n "enc_id": null,\n "generation": 0,\n "mvid": "ffeeddcc-bbaa-4988-9766-554433221100",\n "name": "Example.dll",\n "row_offset": 0,\n "token": "0x00000001"\n },\n "types": []\n },\n "operation": "inspect_managed_members",\n "parameters": {},\n "predicate_type": "rea.analysis",\n "provider": {\n "id": "rea-dotnet-static",\n "name": "REA managed static analysis provider",\n "version": "1"\n },\n "raw_result": null,\n "subject": null\n }\n }\n ],\n "properties": {\n "left": {\n "additionalProperties": false,\n "description": "Left-hand input used for comparison or differential execution.",\n "properties": {\n "analysis_profile": {\n "description": "Value for analysis profile.",\n "properties": {\n "digest": {\n "description": "Value for digest.",\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n },\n "parameters": {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "description": "Value for parameters.",\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n },\n "provider": {\n "description": "Value for provider.",\n "properties": {\n "id": {\n "description": "Value for id.",\n "minLength": 1,\n "type": "string"\n },\n "name": {\n "description": "Exact name used by this operation.",\n "minLength": 1,\n "type": "string"\n },\n "version": {\n "description": "Value for version.",\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "id",\n "name",\n "version"\n ],\n "type": "object"\n }\n },\n "required": [\n "provider",\n "parameters",\n "digest"\n ],\n "type": "object"\n },\n "authority": {\n "description": "Value for authority.",\n "enum": [\n "shipped-artifact",\n "controlled-replay",\n "historical-reference",\n "external-service",\n "analyst-inference"\n ],\n "type": "string"\n },\n "confidence": {\n "description": "Value for confidence.",\n "enum": [\n "observed",\n "derived",\n "inferred"\n ],\n "type": "string"\n },\n "environment": {\n "anyOf": [\n {\n "properties": {\n "architecture": {\n "description": "Value for architecture.",\n "minLength": 1,\n "type": "string"\n },\n "id": {\n "description": "Value for id.",\n "minLength": 1,\n "type": "string"\n },\n "isolation": {\n "description": "Value for isolation.",\n "enum": [\n "none",\n "process",\n "container",\n "virtual-machine"\n ],\n "type": "string"\n },\n "platform": {\n "description": "Value for platform.",\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "id",\n "platform",\n "architecture",\n "isolation"\n ],\n "type": "object"\n },\n {\n "type": "null"\n }\n ],\n "description": "Value for environment."\n },\n "evidence_id": {\n "description": "Stable identifier of the recorded Evidence observation.",\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "evidence_links": {\n "description": "Value for evidence links.",\n "items": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "type": "array"\n },\n "limitations": {\n "description": "Value for limitations.",\n "items": {\n "type": "string"\n },\n "type": "array"\n },\n "locations": {\n "description": "Value for locations.",\n "items": {\n "oneOf": [\n {\n "properties": {\n "address": {\n "description": "Value for address.",\n "minLength": 1,\n "type": "string"\n },\n "kind": {\n "const": "address",\n "description": "Value for kind.",\n "type": "string"\n }\n },\n "required": [\n "kind",\n "address"\n ],\n "type": "object"\n },\n {\n "properties": {\n "end": {\n "description": "Value for end.",\n "minLength": 1,\n "type": "string"\n },\n "kind": {\n "const": "address-range",\n "description": "Value for kind.",\n "type": "string"\n },\n "start": {\n "description": "Value for start.",\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "kind",\n "start",\n "end"\n ],\n "type": "object"\n },\n {\n "properties": {\n "kind": {\n "const": "artifact-path",\n "description": "Value for kind.",\n "type": "string"\n },\n "path": {\n "description": "Local filesystem path used by this operation.",\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "kind",\n "path"\n ],\n "type": "object"\n },\n {\n "properties": {\n "kind": {\n "const": "file-offset",\n "description": "Value for kind.",\n "type": "string"\n },\n "offset": {\n "description": "Value for offset.",\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "kind",\n "offset"\n ],\n "type": "object"\n },\n {\n "properties": {\n "end": {\n "description": "Value for end.",\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "kind": {\n "const": "file-offset-range",\n "description": "Value for kind.",\n "type": "string"\n },\n "start": {\n "description": "Value for start.",\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "kind",\n "start",\n "end"\n ],\n "type": "object"\n }\n ]\n },\n "type": "array"\n },\n "normalized_result": {\n "$ref": "#/$defs/__schema0",\n "description": "Value for normalized result."\n },\n "operation": {\n "description": "Value for operation.",\n "minLength": 1,\n "type": "string"\n },\n "parameters": {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "description": "Value for parameters.",\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n },\n "predicate_type": {\n "description": "Value for predicate type.",\n "minLength": 1,\n "type": "string"\n },\n "provider": {\n "description": "Value for provider.",\n "properties": {\n "id": {\n "description": "Value for id.",\n "minLength": 1,\n "type": "string"\n },\n "name": {\n "description": "Exact name used by this operation.",\n "minLength": 1,\n "type": "string"\n },\n "version": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ],\n "description": "Value for version."\n }\n },\n "required": [\n "id",\n "name",\n "version"\n ],\n "type": "object"\n },\n "raw_result": {\n "anyOf": [\n {\n "$ref": "#/$defs/__schema0"\n },\n {\n "type": "null"\n }\n ],\n "description": "Value for raw result."\n },\n "subject": {\n "anyOf": [\n {\n "properties": {\n "architecture": {\n "anyOf": [\n {\n "enum": [\n "x86",\n "x86_64",\n "arm",\n "arm64"\n ],\n "type": "string"\n },\n {\n "type": "null"\n }\n ],\n "description": "Value for architecture."\n },\n "digest": {\n "description": "Value for digest.",\n "properties": {\n "sha256": {\n "description": "Value for sha256.",\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n }\n },\n "required": [\n "sha256"\n ],\n "type": "object"\n },\n "format": {\n "description": "Declared input artifact format.",\n "enum": [\n "hopper",\n "analysis-database",\n "mach-o",\n "elf",\n "pe",\n "dos-mz",\n "dos-com",\n "zip",\n "ipa",\n "apk",\n "msix",\n "appx",\n "asar",\n "dmg",\n "pkg",\n "plist",\n "javascript",\n "source-map",\n "directory",\n "file",\n "unknown",\n "mach-o-universal",\n "javascript-bundle",\n "entitlements"\n ],\n "type": "string"\n },\n "local_path": {\n "description": "Local filesystem path for local.",\n "type": "string"\n },\n "name": {\n "description": "Exact name used by this operation.",\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "name",\n "digest",\n "format",\n "architecture",\n "local_path"\n ],\n "type": "object"\n },\n {\n "type": "null"\n }\n ],\n "description": "Value for subject."\n }\n },\n "required": [\n "evidence_id",\n "subject",\n "provider",\n "predicate_type",\n "operation",\n "parameters",\n "raw_result",\n "normalized_result",\n "confidence",\n "authority",\n "environment",\n "limitations",\n "locations",\n "evidence_links"\n ],\n "type": "object"\n },\n "right": {\n "additionalProperties": false,\n "description": "Right-hand input used for comparison or differential execution.",\n "properties": {\n "analysis_profile": {\n "description": "Value for analysis profile.",\n "properties": {\n "digest": {\n "description": "Value for digest.",\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n },\n "parameters": {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "description": "Value for parameters.",\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n },\n "provider": {\n "description": "Value for provider.",\n "properties": {\n "id": {\n "description": "Value for id.",\n "minLength": 1,\n "type": "string"\n },\n "name": {\n "description": "Exact name used by this operation.",\n "minLength": 1,\n "type": "string"\n },\n "version": {\n "description": "Value for version.",\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "id",\n "name",\n "version"\n ],\n "type": "object"\n }\n },\n "required": [\n "provider",\n "parameters",\n "digest"\n ],\n "type": "object"\n },\n "authority": {\n "description": "Value for authority.",\n "enum": [\n "shipped-artifact",\n "controlled-replay",\n "historical-reference",\n "external-service",\n "analyst-inference"\n ],\n "type": "string"\n },\n "confidence": {\n "description": "Value for confidence.",\n "enum": [\n "observed",\n "derived",\n "inferred"\n ],\n "type": "string"\n },\n "environment": {\n "anyOf": [\n {\n "properties": {\n "architecture": {\n "description": "Value for architecture.",\n "minLength": 1,\n "type": "string"\n },\n "id": {\n "description": "Value for id.",\n "minLength": 1,\n "type": "string"\n },\n "isolation": {\n "description": "Value for isolation.",\n "enum": [\n "none",\n "process",\n "container",\n "virtual-machine"\n ],\n "type": "string"\n },\n "platform": {\n "description": "Value for platform.",\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "id",\n "platform",\n "architecture",\n "isolation"\n ],\n "type": "object"\n },\n {\n "type": "null"\n }\n ],\n "description": "Value for environment."\n },\n "evidence_id": {\n "description": "Stable identifier of the recorded Evidence observation.",\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "evidence_links": {\n "description": "Value for evidence links.",\n "items": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "type": "array"\n },\n "limitations": {\n "description": "Value for limitations.",\n "items": {\n "type": "string"\n },\n "type": "array"\n },\n "locations": {\n "description": "Value for locations.",\n "items": {\n "oneOf": [\n {\n "properties": {\n "address": {\n "description": "Value for address.",\n "minLength": 1,\n "type": "string"\n },\n "kind": {\n "const": "address",\n "description": "Value for kind.",\n "type": "string"\n }\n },\n "required": [\n "kind",\n "address"\n ],\n "type": "object"\n },\n {\n "properties": {\n "end": {\n "description": "Value for end.",\n "minLength": 1,\n "type": "string"\n },\n "kind": {\n "const": "address-range",\n "description": "Value for kind.",\n "type": "string"\n },\n "start": {\n "description": "Value for start.",\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "kind",\n "start",\n "end"\n ],\n "type": "object"\n },\n {\n "properties": {\n "kind": {\n "const": "artifact-path",\n "description": "Value for kind.",\n "type": "string"\n },\n "path": {\n "description": "Local filesystem path used by this operation.",\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "kind",\n "path"\n ],\n "type": "object"\n },\n {\n "properties": {\n "kind": {\n "const": "file-offset",\n "description": "Value for kind.",\n "type": "string"\n },\n "offset": {\n "description": "Value for offset.",\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "kind",\n "offset"\n ],\n "type": "object"\n },\n {\n "properties": {\n "end": {\n "description": "Value for end.",\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "kind": {\n "const": "file-offset-range",\n "description": "Value for kind.",\n "type": "string"\n },\n "start": {\n "description": "Value for start.",\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "kind",\n "start",\n "end"\n ],\n "type": "object"\n }\n ]\n },\n "type": "array"\n },\n "normalized_result": {\n "$ref": "#/$defs/__schema0",\n "description": "Value for normalized result."\n },\n "operation": {\n "description": "Value for operation.",\n "minLength": 1,\n "type": "string"\n },\n "parameters": {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "description": "Value for parameters.",\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n },\n "predicate_type": {\n "description": "Value for predicate type.",\n "minLength": 1,\n "type": "string"\n },\n "provider": {\n "description": "Value for provider.",\n "properties": {\n "id": {\n "description": "Value for id.",\n "minLength": 1,\n "type": "string"\n },\n "name": {\n "description": "Exact name used by this operation.",\n "minLength": 1,\n "type": "string"\n },\n "version": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ],\n "description": "Value for version."\n }\n },\n "required": [\n "id",\n "name",\n "version"\n ],\n "type": "object"\n },\n "raw_result": {\n "anyOf": [\n {\n "$ref": "#/$defs/__schema0"\n },\n {\n "type": "null"\n }\n ],\n "description": "Value for raw result."\n },\n "subject": {\n "anyOf": [\n {\n "properties": {\n "architecture": {\n "anyOf": [\n {\n "enum": [\n "x86",\n "x86_64",\n "arm",\n "arm64"\n ],\n "type": "string"\n },\n {\n "type": "null"\n }\n ],\n "description": "Value for architecture."\n },\n "digest": {\n "description": "Value for digest.",\n "properties": {\n "sha256": {\n "description": "Value for sha256.",\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n }\n },\n "required": [\n "sha256"\n ],\n "type": "object"\n },\n "format": {\n "description": "Declared input artifact format.",\n "enum": [\n "hopper",\n "analysis-database",\n "mach-o",\n "elf",\n "pe",\n "dos-mz",\n "dos-com",\n "zip",\n "ipa",\n "apk",\n "msix",\n "appx",\n "asar",\n "dmg",\n "pkg",\n "plist",\n "javascript",\n "source-map",\n "directory",\n "file",\n "unknown",\n "mach-o-universal",\n "javascript-bundle",\n "entitlements"\n ],\n "type": "string"\n },\n "local_path": {\n "description": "Local filesystem path for local.",\n "type": "string"\n },\n "name": {\n "description": "Exact name used by this operation.",\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "name",\n "digest",\n "format",\n "architecture",\n "local_path"\n ],\n "type": "object"\n },\n {\n "type": "null"\n }\n ],\n "description": "Value for subject."\n }\n },\n "required": [\n "evidence_id",\n "subject",\n "provider",\n "predicate_type",\n "operation",\n "parameters",\n "raw_result",\n "normalized_result",\n "confidence",\n "authority",\n "environment",\n "limitations",\n "locations",\n "evidence_links"\n ],\n "type": "object"\n }\n },\n "required": [\n "left",\n "right"\n ],\n "type": "object"\n },\n "kind": "application",\n "name": "compare_managed_members",\n "outputSchema": {\n "$defs": {\n "__schema0": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "number"\n },\n {\n "type": "boolean"\n },\n {\n "type": "null"\n },\n {\n "items": {\n "$ref": "#/$defs/__schema0"\n },\n "type": "array"\n },\n {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n }\n ]\n }\n },\n "$schema": "https://json-schema.org/draft/2020-12/schema",\n "additionalProperties": false,\n "properties": {\n "evidence": {\n "additionalProperties": false,\n "properties": {\n "analysis_profile": {\n "additionalProperties": false,\n "properties": {\n "digest": {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n },\n "parameters": {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n },\n "provider": {\n "additionalProperties": false,\n "properties": {\n "id": {\n "minLength": 1,\n "type": "string"\n },\n "name": {\n "minLength": 1,\n "type": "string"\n },\n "version": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "id",\n "name",\n "version"\n ],\n "type": "object"\n }\n },\n "required": [\n "provider",\n "parameters",\n "digest"\n ],\n "type": "object"\n },\n "authority": {\n "enum": [\n "shipped-artifact",\n "controlled-replay",\n "historical-reference",\n "external-service",\n "analyst-inference"\n ],\n "type": "string"\n },\n "confidence": {\n "enum": [\n "observed",\n "derived",\n "inferred"\n ],\n "type": "string"\n },\n "environment": {\n "anyOf": [\n {\n "additionalProperties": false,\n "properties": {\n "architecture": {\n "minLength": 1,\n "type": "string"\n },\n "id": {\n "minLength": 1,\n "type": "string"\n },\n "isolation": {\n "enum": [\n "none",\n "process",\n "container",\n "virtual-machine"\n ],\n "type": "string"\n },\n "platform": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "id",\n "platform",\n "architecture",\n "isolation"\n ],\n "type": "object"\n },\n {\n "type": "null"\n }\n ]\n },\n "evidence_id": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "evidence_links": {\n "items": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "type": "array"\n },\n "limitations": {\n "items": {\n "type": "string"\n },\n "type": "array"\n },\n "locations": {\n "items": {\n "oneOf": [\n {\n "additionalProperties": false,\n "properties": {\n "address": {\n "minLength": 1,\n "type": "string"\n },\n "kind": {\n "const": "address",\n "type": "string"\n }\n },\n "required": [\n "kind",\n "address"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "end": {\n "minLength": 1,\n "type": "string"\n },\n "kind": {\n "const": "address-range",\n "type": "string"\n },\n "start": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "kind",\n "start",\n "end"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "kind": {\n "const": "artifact-path",\n "type": "string"\n },\n "path": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "kind",\n "path"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "kind": {\n "const": "file-offset",\n "type": "string"\n },\n "offset": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "kind",\n "offset"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "end": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "kind": {\n "const": "file-offset-range",\n "type": "string"\n },\n "start": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "kind",\n "start",\n "end"\n ],\n "type": "object"\n }\n ]\n },\n "type": "array"\n },\n "normalized_result": {\n "$ref": "#/$defs/__schema0"\n },\n "operation": {\n "minLength": 1,\n "type": "string"\n },\n "parameters": {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n },\n "predicate_type": {\n "minLength": 1,\n "type": "string"\n },\n "provider": {\n "additionalProperties": false,\n "properties": {\n "id": {\n "minLength": 1,\n "type": "string"\n },\n "name": {\n "minLength": 1,\n "type": "string"\n },\n "version": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "id",\n "name",\n "version"\n ],\n "type": "object"\n },\n "raw_result": {\n "anyOf": [\n {\n "$ref": "#/$defs/__schema0"\n },\n {\n "type": "null"\n }\n ]\n },\n "subject": {\n "anyOf": [\n {\n "additionalProperties": false,\n "properties": {\n "architecture": {\n "anyOf": [\n {\n "enum": [\n "x86",\n "x86_64",\n "arm",\n "arm64"\n ],\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "digest": {\n "additionalProperties": false,\n "properties": {\n "sha256": {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n }\n },\n "required": [\n "sha256"\n ],\n "type": "object"\n },\n "format": {\n "enum": [\n "hopper",\n "analysis-database",\n "mach-o",\n "elf",\n "pe",\n "dos-mz",\n "dos-com",\n "zip",\n "ipa",\n "apk",\n "msix",\n "appx",\n "asar",\n "dmg",\n "pkg",\n "plist",\n "javascript",\n "source-map",\n "directory",\n "file",\n "unknown",\n "mach-o-universal",\n "javascript-bundle",\n "entitlements"\n ],\n "type": "string"\n },\n "local_path": {\n "type": "string"\n },\n "name": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "name",\n "digest",\n "format",\n "architecture",\n "local_path"\n ],\n "type": "object"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "evidence_id",\n "subject",\n "provider",\n "predicate_type",\n "operation",\n "parameters",\n "raw_result",\n "normalized_result",\n "confidence",\n "authority",\n "environment",\n "limitations",\n "locations",\n "evidence_links"\n ],\n "type": "object"\n },\n "evidence_id": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "result": {\n "additionalProperties": false,\n "properties": {\n "algorithm": {\n "additionalProperties": false,\n "properties": {\n "name": {\n "const": "rea-managed-member-comparison",\n "type": "string"\n },\n "name_matching": {\n "const": "exact-signature-fallback",\n "type": "string"\n },\n "token_identity": {\n "const": "build-local",\n "type": "string"\n }\n },\n "required": [\n "name",\n "token_identity",\n "name_matching"\n ],\n "type": "object"\n },\n "comparison_id": {\n "pattern": "^mmc_[a-f0-9]{64}$",\n "type": "string"\n },\n "coverage": {\n "additionalProperties": false,\n "properties": {\n "left_status": {\n "enum": [\n "complete",\n "partial",\n "unavailable"\n ],\n "type": "string"\n },\n "right_status": {\n "enum": [\n "complete",\n "partial",\n "unavailable"\n ],\n "type": "string"\n },\n "status": {\n "enum": [\n "complete-within-inputs",\n "partial"\n ],\n "type": "string"\n }\n },\n "required": [\n "status",\n "left_status",\n "right_status"\n ],\n "type": "object"\n },\n "evidence_links": {\n "items": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "maxItems": 2,\n "minItems": 2,\n "type": "array"\n },\n "fields": {\n "items": {\n "anyOf": [\n {\n "additionalProperties": false,\n "properties": {\n "evidence_links": {\n "items": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "maxItems": 2,\n "minItems": 2,\n "type": "array"\n },\n "item_id": {\n "pattern": "^mmc_field_[a-f0-9]{64}$",\n "type": "string"\n },\n "left": {\n "additionalProperties": false,\n "properties": {\n "declaring_type": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "name": {\n "type": "string"\n },\n "signature_sha256": {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n },\n "token": {\n "pattern": "^0x[0-9a-f]{8}$",\n "type": "string"\n }\n },\n "required": [\n "token",\n "declaring_type",\n "name",\n "signature_sha256"\n ],\n "type": "object"\n },\n "limitations": {\n "items": {\n "minLength": 1,\n "type": "string"\n },\n "type": "array"\n },\n "match": {\n "additionalProperties": false,\n "properties": {\n "basis": {\n "enum": [\n "exact-il-signature",\n "exact-signature",\n "structural-method-shape",\n "field-signature"\n ],\n "type": "string"\n },\n "candidate_left_tokens": {\n "items": {\n "not": {}\n },\n "maxItems": 0,\n "minItems": 0,\n "type": "array"\n },\n "candidate_right_tokens": {\n "items": {\n "not": {}\n },\n "maxItems": 0,\n "minItems": 0,\n "type": "array"\n },\n "confidence": {\n "enum": [\n "exact",\n "high"\n ],\n "type": "string"\n },\n "status": {\n "const": "matched",\n "type": "string"\n }\n },\n "required": [\n "status",\n "basis",\n "confidence",\n "candidate_left_tokens",\n "candidate_right_tokens"\n ],\n "type": "object"\n },\n "right": {\n "additionalProperties": false,\n "properties": {\n "declaring_type": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "name": {\n "type": "string"\n },\n "signature_sha256": {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n },\n "token": {\n "pattern": "^0x[0-9a-f]{8}$",\n "type": "string"\n }\n },\n "required": [\n "token",\n "declaring_type",\n "name",\n "signature_sha256"\n ],\n "type": "object"\n },\n "status": {\n "enum": [\n "unchanged",\n "changed",\n "unknown"\n ],\n "type": "string"\n }\n },\n "required": [\n "evidence_links",\n "limitations",\n "item_id",\n "status",\n "left",\n "right",\n "match"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "evidence_links": {\n "items": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "maxItems": 2,\n "minItems": 2,\n "type": "array"\n },\n "item_id": {\n "pattern": "^mmc_field_[a-f0-9]{64}$",\n "type": "string"\n },\n "left": {\n "additionalProperties": false,\n "properties": {\n "declaring_type": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "name": {\n "type": "string"\n },\n "signature_sha256": {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n },\n "token": {\n "pattern": "^0x[0-9a-f]{8}$",\n "type": "string"\n }\n },\n "required": [\n "token",\n "declaring_type",\n "name",\n "signature_sha256"\n ],\n "type": "object"\n },\n "limitations": {\n "items": {\n "minLength": 1,\n "type": "string"\n },\n "type": "array"\n },\n "match": {\n "additionalProperties": false,\n "properties": {\n "basis": {\n "const": "none",\n "type": "string"\n },\n "candidate_left_tokens": {\n "items": {\n "not": {}\n },\n "maxItems": 0,\n "minItems": 0,\n "type": "array"\n },\n "candidate_right_tokens": {\n "items": {\n "not": {}\n },\n "maxItems": 0,\n "minItems": 0,\n "type": "array"\n },\n "confidence": {\n "const": "unknown",\n "type": "string"\n },\n "status": {\n "const": "unmatched",\n "type": "string"\n }\n },\n "required": [\n "status",\n "basis",\n "confidence",\n "candidate_left_tokens",\n "candidate_right_tokens"\n ],\n "type": "object"\n },\n "right": {\n "type": "null"\n },\n "status": {\n "enum": [\n "removed",\n "unknown"\n ],\n "type": "string"\n }\n },\n "required": [\n "evidence_links",\n "limitations",\n "item_id",\n "status",\n "left",\n "right",\n "match"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "evidence_links": {\n "items": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "maxItems": 2,\n "minItems": 2,\n "type": "array"\n },\n "item_id": {\n "pattern": "^mmc_field_[a-f0-9]{64}$",\n "type": "string"\n },\n "left": {\n "type": "null"\n },\n "limitations": {\n "items": {\n "minLength": 1,\n "type": "string"\n },\n "type": "array"\n },\n "match": {\n "additionalProperties": false,\n "properties": {\n "basis": {\n "const": "none",\n "type": "string"\n },\n "candidate_left_tokens": {\n "items": {\n "not": {}\n },\n "maxItems": 0,\n "minItems": 0,\n "type": "array"\n },\n "candidate_right_tokens": {\n "items": {\n "not": {}\n },\n "maxItems": 0,\n "minItems": 0,\n "type": "array"\n },\n "confidence": {\n "const": "unknown",\n "type": "string"\n },\n "status": {\n "const": "unmatched",\n "type": "string"\n }\n },\n "required": [\n "status",\n "basis",\n "confidence",\n "candidate_left_tokens",\n "candidate_right_tokens"\n ],\n "type": "object"\n },\n "right": {\n "additionalProperties": false,\n "properties": {\n "declaring_type": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "name": {\n "type": "string"\n },\n "signature_sha256": {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n },\n "token": {\n "pattern": "^0x[0-9a-f]{8}$",\n "type": "string"\n }\n },\n "required": [\n "token",\n "declaring_type",\n "name",\n "signature_sha256"\n ],\n "type": "object"\n },\n "status": {\n "enum": [\n "added",\n "unknown"\n ],\n "type": "string"\n }\n },\n "required": [\n "evidence_links",\n "limitations",\n "item_id",\n "status",\n "left",\n "right",\n "match"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "evidence_links": {\n "items": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "maxItems": 2,\n "minItems": 2,\n "type": "array"\n },\n "item_id": {\n "pattern": "^mmc_field_[a-f0-9]{64}$",\n "type": "string"\n },\n "left": {\n "type": "null"\n },\n "limitations": {\n "items": {\n "minLength": 1,\n "type": "string"\n },\n "type": "array"\n },\n "match": {\n "additionalProperties": false,\n "properties": {\n "basis": {\n "enum": [\n "exact-il-signature",\n "exact-signature",\n "structural-method-shape",\n "field-signature"\n ],\n "type": "string"\n },\n "candidate_left_tokens": {\n "items": {\n "pattern": "^0x[0-9a-f]{8}$",\n "type": "string"\n },\n "minItems": 1,\n "type": "array"\n },\n "candidate_right_tokens": {\n "items": {\n "pattern": "^0x[0-9a-f]{8}$",\n "type": "string"\n },\n "minItems": 1,\n "type": "array"\n },\n "confidence": {\n "const": "unknown",\n "type": "string"\n },\n "status": {\n "const": "ambiguous",\n "type": "string"\n }\n },\n "required": [\n "status",\n "basis",\n "confidence",\n "candidate_left_tokens",\n "candidate_right_tokens"\n ],\n "type": "object"\n },\n "right": {\n "type": "null"\n },\n "status": {\n "const": "unknown",\n "type": "string"\n }\n },\n "required": [\n "evidence_links",\n "limitations",\n "item_id",\n "status",\n "left",\n "right",\n "match"\n ],\n "type": "object"\n }\n ]\n },\n "type": "array"\n },\n "left": {\n "additionalProperties": false,\n "properties": {\n "artifact_sha256": {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n },\n "evidence_id": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "fields_total": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "metadata_status": {\n "enum": [\n "absent",\n "complete",\n "partial",\n "malformed"\n ],\n "type": "string"\n },\n "methods_total": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "module_name": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "mvid": {\n "anyOf": [\n {\n "pattern": "^[0-9a-fA-F]{8}(?:-[0-9a-fA-F]{4}){3}-[0-9a-fA-F]{12}$",\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "evidence_id",\n "artifact_sha256",\n "mvid",\n "module_name",\n "metadata_status",\n "methods_total",\n "fields_total"\n ],\n "type": "object"\n },\n "limitations": {\n "items": {\n "minLength": 1,\n "type": "string"\n },\n "type": "array"\n },\n "matching": {\n "additionalProperties": false,\n "properties": {\n "ambiguous": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "exact_il_signature": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "exact_signature": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "field_signature": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "structural_method_shape": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "unmatched": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "exact_il_signature",\n "exact_signature",\n "structural_method_shape",\n "field_signature",\n "ambiguous",\n "unmatched"\n ],\n "type": "object"\n },\n "methods": {\n "items": {\n "anyOf": [\n {\n "additionalProperties": false,\n "properties": {\n "dimensions": {\n "items": {\n "enum": [\n "metadata",\n "signature",\n "cil",\n "opcode-shape",\n "call-shape",\n "field-shape",\n "exception-shape",\n "availability",\n "body-coverage"\n ],\n "type": "string"\n },\n "type": "array"\n },\n "evidence_links": {\n "items": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "maxItems": 2,\n "minItems": 2,\n "type": "array"\n },\n "item_id": {\n "pattern": "^mmc_method_[a-f0-9]{64}$",\n "type": "string"\n },\n "left": {\n "additionalProperties": false,\n "properties": {\n "declaring_type": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "name": {\n "type": "string"\n },\n "normalized_il_sha256": {\n "anyOf": [\n {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "signature_sha256": {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n },\n "token": {\n "pattern": "^0x[0-9a-f]{8}$",\n "type": "string"\n }\n },\n "required": [\n "token",\n "declaring_type",\n "name",\n "signature_sha256",\n "normalized_il_sha256"\n ],\n "type": "object"\n },\n "limitations": {\n "items": {\n "minLength": 1,\n "type": "string"\n },\n "type": "array"\n },\n "match": {\n "additionalProperties": false,\n "properties": {\n "basis": {\n "enum": [\n "exact-il-signature",\n "exact-signature",\n "structural-method-shape",\n "field-signature"\n ],\n "type": "string"\n },\n "candidate_left_tokens": {\n "items": {\n "not": {}\n },\n "maxItems": 0,\n "minItems": 0,\n "type": "array"\n },\n "candidate_right_tokens": {\n "items": {\n "not": {}\n },\n "maxItems": 0,\n "minItems": 0,\n "type": "array"\n },\n "confidence": {\n "enum": [\n "exact",\n "high"\n ],\n "type": "string"\n },\n "status": {\n "const": "matched",\n "type": "string"\n }\n },\n "required": [\n "status",\n "basis",\n "confidence",\n "candidate_left_tokens",\n "candidate_right_tokens"\n ],\n "type": "object"\n },\n "right": {\n "additionalProperties": false,\n "properties": {\n "declaring_type": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "name": {\n "type": "string"\n },\n "normalized_il_sha256": {\n "anyOf": [\n {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "signature_sha256": {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n },\n "token": {\n "pattern": "^0x[0-9a-f]{8}$",\n "type": "string"\n }\n },\n "required": [\n "token",\n "declaring_type",\n "name",\n "signature_sha256",\n "normalized_il_sha256"\n ],\n "type": "object"\n },\n "status": {\n "enum": [\n "unchanged",\n "changed",\n "unknown"\n ],\n "type": "string"\n }\n },\n "required": [\n "evidence_links",\n "limitations",\n "item_id",\n "dimensions",\n "status",\n "left",\n "right",\n "match"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "dimensions": {\n "items": {\n "enum": [\n "metadata",\n "signature",\n "cil",\n "opcode-shape",\n "call-shape",\n "field-shape",\n "exception-shape",\n "availability",\n "body-coverage"\n ],\n "type": "string"\n },\n "type": "array"\n },\n "evidence_links": {\n "items": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "maxItems": 2,\n "minItems": 2,\n "type": "array"\n },\n "item_id": {\n "pattern": "^mmc_method_[a-f0-9]{64}$",\n "type": "string"\n },\n "left": {\n "additionalProperties": false,\n "properties": {\n "declaring_type": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "name": {\n "type": "string"\n },\n "normalized_il_sha256": {\n "anyOf": [\n {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "signature_sha256": {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n },\n "token": {\n "pattern": "^0x[0-9a-f]{8}$",\n "type": "string"\n }\n },\n "required": [\n "token",\n "declaring_type",\n "name",\n "signature_sha256",\n "normalized_il_sha256"\n ],\n "type": "object"\n },\n "limitations": {\n "items": {\n "minLength": 1,\n "type": "string"\n },\n "type": "array"\n },\n "match": {\n "additionalProperties": false,\n "properties": {\n "basis": {\n "const": "none",\n "type": "string"\n },\n "candidate_left_tokens": {\n "items": {\n "not": {}\n },\n "maxItems": 0,\n "minItems": 0,\n "type": "array"\n },\n "candidate_right_tokens": {\n "items": {\n "not": {}\n },\n "maxItems": 0,\n "minItems": 0,\n "type": "array"\n },\n "confidence": {\n "const": "unknown",\n "type": "string"\n },\n "status": {\n "const": "unmatched",\n "type": "string"\n }\n },\n "required": [\n "status",\n "basis",\n "confidence",\n "candidate_left_tokens",\n "candidate_right_tokens"\n ],\n "type": "object"\n },\n "right": {\n "type": "null"\n },\n "status": {\n "enum": [\n "removed",\n "unknown"\n ],\n "type": "string"\n }\n },\n "required": [\n "evidence_links",\n "limitations",\n "item_id",\n "dimensions",\n "status",\n "left",\n "right",\n "match"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "dimensions": {\n "items": {\n "enum": [\n "metadata",\n "signature",\n "cil",\n "opcode-shape",\n "call-shape",\n "field-shape",\n "exception-shape",\n "availability",\n "body-coverage"\n ],\n "type": "string"\n },\n "type": "array"\n },\n "evidence_links": {\n "items": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "maxItems": 2,\n "minItems": 2,\n "type": "array"\n },\n "item_id": {\n "pattern": "^mmc_method_[a-f0-9]{64}$",\n "type": "string"\n },\n "left": {\n "type": "null"\n },\n "limitations": {\n "items": {\n "minLength": 1,\n "type": "string"\n },\n "type": "array"\n },\n "match": {\n "additionalProperties": false,\n "properties": {\n "basis": {\n "const": "none",\n "type": "string"\n },\n "candidate_left_tokens": {\n "items": {\n "not": {}\n },\n "maxItems": 0,\n "minItems": 0,\n "type": "array"\n },\n "candidate_right_tokens": {\n "items": {\n "not": {}\n },\n "maxItems": 0,\n "minItems": 0,\n "type": "array"\n },\n "confidence": {\n "const": "unknown",\n "type": "string"\n },\n "status": {\n "const": "unmatched",\n "type": "string"\n }\n },\n "required": [\n "status",\n "basis",\n "confidence",\n "candidate_left_tokens",\n "candidate_right_tokens"\n ],\n "type": "object"\n },\n "right": {\n "additionalProperties": false,\n "properties": {\n "declaring_type": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "name": {\n "type": "string"\n },\n "normalized_il_sha256": {\n "anyOf": [\n {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "signature_sha256": {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n },\n "token": {\n "pattern": "^0x[0-9a-f]{8}$",\n "type": "string"\n }\n },\n "required": [\n "token",\n "declaring_type",\n "name",\n "signature_sha256",\n "normalized_il_sha256"\n ],\n "type": "object"\n },\n "status": {\n "enum": [\n "added",\n "unknown"\n ],\n "type": "string"\n }\n },\n "required": [\n "evidence_links",\n "limitations",\n "item_id",\n "dimensions",\n "status",\n "left",\n "right",\n "match"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "dimensions": {\n "items": {\n "enum": [\n "metadata",\n "signature",\n "cil",\n "opcode-shape",\n "call-shape",\n "field-shape",\n "exception-shape",\n "availability",\n "body-coverage"\n ],\n "type": "string"\n },\n "type": "array"\n },\n "evidence_links": {\n "items": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "maxItems": 2,\n "minItems": 2,\n "type": "array"\n },\n "item_id": {\n "pattern": "^mmc_method_[a-f0-9]{64}$",\n "type": "string"\n },\n "left": {\n "type": "null"\n },\n "limitations": {\n "items": {\n "minLength": 1,\n "type": "string"\n },\n "type": "array"\n },\n "match": {\n "additionalProperties": false,\n "properties": {\n "basis": {\n "enum": [\n "exact-il-signature",\n "exact-signature",\n "structural-method-shape",\n "field-signature"\n ],\n "type": "string"\n },\n "candidate_left_tokens": {\n "items": {\n "pattern": "^0x[0-9a-f]{8}$",\n "type": "string"\n },\n "minItems": 1,\n "type": "array"\n },\n "candidate_right_tokens": {\n "items": {\n "pattern": "^0x[0-9a-f]{8}$",\n "type": "string"\n },\n "minItems": 1,\n "type": "array"\n },\n "confidence": {\n "const": "unknown",\n "type": "string"\n },\n "status": {\n "const": "ambiguous",\n "type": "string"\n }\n },\n "required": [\n "status",\n "basis",\n "confidence",\n "candidate_left_tokens",\n "candidate_right_tokens"\n ],\n "type": "object"\n },\n "right": {\n "type": "null"\n },\n "status": {\n "const": "unknown",\n "type": "string"\n }\n },\n "required": [\n "evidence_links",\n "limitations",\n "item_id",\n "dimensions",\n "status",\n "left",\n "right",\n "match"\n ],\n "type": "object"\n }\n ]\n },\n "type": "array"\n },\n "right": {\n "additionalProperties": false,\n "properties": {\n "artifact_sha256": {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n },\n "evidence_id": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "fields_total": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "metadata_status": {\n "enum": [\n "absent",\n "complete",\n "partial",\n "malformed"\n ],\n "type": "string"\n },\n "methods_total": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "module_name": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "mvid": {\n "anyOf": [\n {\n "pattern": "^[0-9a-fA-F]{8}(?:-[0-9a-fA-F]{4}){3}-[0-9a-fA-F]{12}$",\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "evidence_id",\n "artifact_sha256",\n "mvid",\n "module_name",\n "metadata_status",\n "methods_total",\n "fields_total"\n ],\n "type": "object"\n },\n "summary": {\n "additionalProperties": false,\n "properties": {\n "added": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "changed": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "removed": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "unchanged": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "unknown": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "unchanged",\n "changed",\n "added",\n "removed",\n "unknown"\n ],\n "type": "object"\n }\n },\n "required": [\n "comparison_id",\n "algorithm",\n "left",\n "right",\n "summary",\n "matching",\n "methods",\n "fields",\n "coverage",\n "evidence_links",\n "limitations"\n ],\n "type": "object"\n }\n },\n "required": [\n "result",\n "evidence_id",\n "evidence"\n ],\n "type": "object"\n },\n "requiresSession": true,\n "title": "Compare Managed Members"\n },\n {\n "analysisOperation": null,\n "annotations": {\n "destructiveHint": false,\n "idempotentHint": true,\n "openWorldHint": false,\n "readOnlyHint": false\n },\n "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.",\n "effects": {\n "accessesNetwork": false,\n "changesUiState": false,\n "idempotent": true,\n "launchesProcess": false,\n "mayDiscardData": false,\n "mutatesSession": true,\n "mutatesTarget": false,\n "writesFilesystem": false\n },\n "inputSchema": {\n "$defs": {\n "__schema0": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "number"\n },\n {\n "type": "boolean"\n },\n {\n "type": "null"\n },\n {\n "items": {\n "$ref": "#/$defs/__schema0"\n },\n "type": "array"\n },\n {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n }\n ]\n }\n },\n "$schema": "https://json-schema.org/draft/2020-12/schema",\n "additionalProperties": false,\n "examples": [\n {\n "managed_boundaries": {\n "authority": "shipped-artifact",\n "confidence": "observed",\n "environment": null,\n "evidence_id": "ev_0b4af8f787323ba7fb52a35b1c21115b2c53d55d61ff9de4a16b006b818a2ba2",\n "evidence_links": [],\n "limitations": [\n "Artifact identity is unavailable for this observation."\n ],\n "locations": [],\n "normalized_result": {\n "artifact": {\n "byte_length": 8192,\n "format": "pe",\n "path": "/examples/ManagedInterop.exe",\n "sha256": "6666666666666666666666666666666666666666666666666666666666666666"\n },\n "cli_native": {\n "il_only": true,\n "managed_native_header_rva": 0,\n "managed_native_header_size": 0,\n "native_entry_point": false,\n "ready_to_run_signature": false,\n "requires_32bit": false,\n "strong_name_signed": false\n },\n "coverage": {\n "issues": [],\n "state": "complete"\n },\n "identity_scope": {\n "requires_artifact_sha256": "6666666666666666666666666666666666666666666666666666666666666666",\n "requires_mvid": "00112233-4455-4677-8899-aabbccddeeff",\n "token_identity": "build-local"\n },\n "limitations": [],\n "metadata": {\n "status": "complete",\n "table_row_counts": {},\n "version": "v4.0.30319"\n },\n "module": {\n "enc_base_id": null,\n "enc_id": null,\n "generation": 0,\n "mvid": "00112233-4455-4677-8899-aabbccddeeff",\n "name": "ManagedInterop.exe",\n "row_offset": 0,\n "token": "0x00000001"\n },\n "module_refs": [\n {\n "name": "nativehelper.dll",\n "row_offset": 256,\n "token": "0x1a000001"\n }\n ],\n "native_implementations": [],\n "pinvoke_imports": [\n {\n "best_fit": "assembly-default",\n "call_convention": "cdecl",\n "char_set": "not-specified",\n "import_name": "open_native",\n "import_scope_name": "nativehelper.dll",\n "import_scope_token": "0x1a000001",\n "mapping_flags": 0,\n "mapping_flags_hex": "0x0000",\n "member_kind": "method",\n "member_name": "OpenNative",\n "member_token": "0x06000001",\n "no_mangle": true,\n "row_offset": 288,\n "supports_last_error": false,\n "throw_on_unmappable_char": "assembly-default",\n "token": "0x1c000001",\n "verification": "managed-declaration-only"\n }\n ],\n "summary": {\n "mixed_mode_or_native_header": false,\n "module_ref_count": 1,\n "native_implementation_count": 0,\n "pinvoke_import_count": 1,\n "ready_to_run": false\n }\n },\n "operation": "inspect_managed_native_boundaries",\n "parameters": {},\n "predicate_type": "rea.analysis",\n "provider": {\n "id": "rea-dotnet-static",\n "name": "REA managed static analysis provider",\n "version": "1"\n },\n "raw_result": null,\n "subject": null\n },\n "native_observations": [\n {\n "authority": "shipped-artifact",\n "confidence": "observed",\n "environment": null,\n "evidence_id": "ev_9ec8ff855a81995540b10a08acf864e2003b588f92dd88cd2b796e3ad288fdc9",\n "evidence_links": [],\n "limitations": [],\n "locations": [],\n "normalized_result": {\n "architectures": {\n "exhaustive": true,\n "items": [],\n "limitations": [],\n "total": 0\n },\n "build_metadata": {\n "exhaustive": true,\n "items": [],\n "limitations": [],\n "total": 0\n },\n "dependencies": {\n "exhaustive": true,\n "items": [],\n "limitations": [],\n "total": 0\n },\n "endian": "little",\n "entrypoints": {\n "exhaustive": true,\n "items": [],\n "limitations": [],\n "total": 0\n },\n "exports": {\n "exhaustive": true,\n "items": [\n {\n "address": "0x1000",\n "name": "open_native",\n "reexport": false,\n "source": "nm",\n "weak": false\n }\n ],\n "limitations": [],\n "total": 1\n },\n "file_type": "dylib",\n "flags": [],\n "format": "mach-o",\n "imports": {\n "exhaustive": true,\n "items": [],\n "limitations": [],\n "total": 0\n },\n "limitations": [],\n "load_commands": {\n "exhaustive": true,\n "items": [],\n "limitations": [],\n "total": 0\n },\n "provenance": [],\n "segments": {\n "exhaustive": true,\n "items": [],\n "limitations": [],\n "total": 0\n },\n "uuid": null,\n "word_size": 64\n },\n "operation": "inspect_macho",\n "parameters": {},\n "predicate_type": "rea.analysis",\n "provider": {\n "id": "native-macos",\n "name": "REA native macOS provider",\n "version": "1"\n },\n "raw_result": null,\n "subject": {\n "architecture": "x86_64",\n "digest": {\n "sha256": "7777777777777777777777777777777777777777777777777777777777777777"\n },\n "format": "mach-o",\n "local_path": "/examples/nativehelper.dll",\n "name": "nativehelper.dll"\n }\n }\n ]\n }\n ],\n "properties": {\n "managed_boundaries": {\n "additionalProperties": false,\n "description": "Value for managed boundaries.",\n "properties": {\n "analysis_profile": {\n "description": "Value for analysis profile.",\n "properties": {\n "digest": {\n "description": "Value for digest.",\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n },\n "parameters": {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "description": "Value for parameters.",\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n },\n "provider": {\n "description": "Value for provider.",\n "properties": {\n "id": {\n "description": "Value for id.",\n "minLength": 1,\n "type": "string"\n },\n "name": {\n "description": "Exact name used by this operation.",\n "minLength": 1,\n "type": "string"\n },\n "version": {\n "description": "Value for version.",\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "id",\n "name",\n "version"\n ],\n "type": "object"\n }\n },\n "required": [\n "provider",\n "parameters",\n "digest"\n ],\n "type": "object"\n },\n "authority": {\n "description": "Value for authority.",\n "enum": [\n "shipped-artifact",\n "controlled-replay",\n "historical-reference",\n "external-service",\n "analyst-inference"\n ],\n "type": "string"\n },\n "confidence": {\n "description": "Value for confidence.",\n "enum": [\n "observed",\n "derived",\n "inferred"\n ],\n "type": "string"\n },\n "environment": {\n "anyOf": [\n {\n "properties": {\n "architecture": {\n "description": "Value for architecture.",\n "minLength": 1,\n "type": "string"\n },\n "id": {\n "description": "Value for id.",\n "minLength": 1,\n "type": "string"\n },\n "isolation": {\n "description": "Value for isolation.",\n "enum": [\n "none",\n "process",\n "container",\n "virtual-machine"\n ],\n "type": "string"\n },\n "platform": {\n "description": "Value for platform.",\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "id",\n "platform",\n "architecture",\n "isolation"\n ],\n "type": "object"\n },\n {\n "type": "null"\n }\n ],\n "description": "Value for environment."\n },\n "evidence_id": {\n "description": "Stable identifier of the recorded Evidence observation.",\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "evidence_links": {\n "description": "Value for evidence links.",\n "items": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "type": "array"\n },\n "limitations": {\n "description": "Value for limitations.",\n "items": {\n "type": "string"\n },\n "type": "array"\n },\n "locations": {\n "description": "Value for locations.",\n "items": {\n "oneOf": [\n {\n "properties": {\n "address": {\n "description": "Value for address.",\n "minLength": 1,\n "type": "string"\n },\n "kind": {\n "const": "address",\n "description": "Value for kind.",\n "type": "string"\n }\n },\n "required": [\n "kind",\n "address"\n ],\n "type": "object"\n },\n {\n "properties": {\n "end": {\n "description": "Value for end.",\n "minLength": 1,\n "type": "string"\n },\n "kind": {\n "const": "address-range",\n "description": "Value for kind.",\n "type": "string"\n },\n "start": {\n "description": "Value for start.",\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "kind",\n "start",\n "end"\n ],\n "type": "object"\n },\n {\n "properties": {\n "kind": {\n "const": "artifact-path",\n "description": "Value for kind.",\n "type": "string"\n },\n "path": {\n "description": "Local filesystem path used by this operation.",\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "kind",\n "path"\n ],\n "type": "object"\n },\n {\n "properties": {\n "kind": {\n "const": "file-offset",\n "description": "Value for kind.",\n "type": "string"\n },\n "offset": {\n "description": "Value for offset.",\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "kind",\n "offset"\n ],\n "type": "object"\n },\n {\n "properties": {\n "end": {\n "description": "Value for end.",\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "kind": {\n "const": "file-offset-range",\n "description": "Value for kind.",\n "type": "string"\n },\n "start": {\n "description": "Value for start.",\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "kind",\n "start",\n "end"\n ],\n "type": "object"\n }\n ]\n },\n "type": "array"\n },\n "normalized_result": {\n "$ref": "#/$defs/__schema0",\n "description": "Value for normalized result."\n },\n "operation": {\n "description": "Value for operation.",\n "minLength": 1,\n "type": "string"\n },\n "parameters": {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "description": "Value for parameters.",\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n },\n "predicate_type": {\n "description": "Value for predicate type.",\n "minLength": 1,\n "type": "string"\n },\n "provider": {\n "description": "Value for provider.",\n "properties": {\n "id": {\n "description": "Value for id.",\n "minLength": 1,\n "type": "string"\n },\n "name": {\n "description": "Exact name used by this operation.",\n "minLength": 1,\n "type": "string"\n },\n "version": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ],\n "description": "Value for version."\n }\n },\n "required": [\n "id",\n "name",\n "version"\n ],\n "type": "object"\n },\n "raw_result": {\n "anyOf": [\n {\n "$ref": "#/$defs/__schema0"\n },\n {\n "type": "null"\n }\n ],\n "description": "Value for raw result."\n },\n "subject": {\n "anyOf": [\n {\n "properties": {\n "architecture": {\n "anyOf": [\n {\n "enum": [\n "x86",\n "x86_64",\n "arm",\n "arm64"\n ],\n "type": "string"\n },\n {\n "type": "null"\n }\n ],\n "description": "Value for architecture."\n },\n "digest": {\n "description": "Value for digest.",\n "properties": {\n "sha256": {\n "description": "Value for sha256.",\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n }\n },\n "required": [\n "sha256"\n ],\n "type": "object"\n },\n "format": {\n "description": "Declared input artifact format.",\n "enum": [\n "hopper",\n "analysis-database",\n "mach-o",\n "elf",\n "pe",\n "dos-mz",\n "dos-com",\n "zip",\n "ipa",\n "apk",\n "msix",\n "appx",\n "asar",\n "dmg",\n "pkg",\n "plist",\n "javascript",\n "source-map",\n "directory",\n "file",\n "unknown",\n "mach-o-universal",\n "javascript-bundle",\n "entitlements"\n ],\n "type": "string"\n },\n "local_path": {\n "description": "Local filesystem path for local.",\n "type": "string"\n },\n "name": {\n "description": "Exact name used by this operation.",\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "name",\n "digest",\n "format",\n "architecture",\n "local_path"\n ],\n "type": "object"\n },\n {\n "type": "null"\n }\n ],\n "description": "Value for subject."\n }\n },\n "required": [\n "evidence_id",\n "subject",\n "provider",\n "predicate_type",\n "operation",\n "parameters",\n "raw_result",\n "normalized_result",\n "confidence",\n "authority",\n "environment",\n "limitations",\n "locations",\n "evidence_links"\n ],\n "type": "object"\n },\n "native_observations": {\n "description": "Native function or export Evidence records",\n "items": {\n "additionalProperties": false,\n "properties": {\n "analysis_profile": {\n "description": "Value for analysis profile.",\n "properties": {\n "digest": {\n "description": "Value for digest.",\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n },\n "parameters": {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "description": "Value for parameters.",\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n },\n "provider": {\n "description": "Value for provider.",\n "properties": {\n "id": {\n "description": "Value for id.",\n "minLength": 1,\n "type": "string"\n },\n "name": {\n "description": "Exact name used by this operation.",\n "minLength": 1,\n "type": "string"\n },\n "version": {\n "description": "Value for version.",\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "id",\n "name",\n "version"\n ],\n "type": "object"\n }\n },\n "required": [\n "provider",\n "parameters",\n "digest"\n ],\n "type": "object"\n },\n "authority": {\n "description": "Value for authority.",\n "enum": [\n "shipped-artifact",\n "controlled-replay",\n "historical-reference",\n "external-service",\n "analyst-inference"\n ],\n "type": "string"\n },\n "confidence": {\n "description": "Value for confidence.",\n "enum": [\n "observed",\n "derived",\n "inferred"\n ],\n "type": "string"\n },\n "environment": {\n "anyOf": [\n {\n "properties": {\n "architecture": {\n "description": "Value for architecture.",\n "minLength": 1,\n "type": "string"\n },\n "id": {\n "description": "Value for id.",\n "minLength": 1,\n "type": "string"\n },\n "isolation": {\n "description": "Value for isolation.",\n "enum": [\n "none",\n "process",\n "container",\n "virtual-machine"\n ],\n "type": "string"\n },\n "platform": {\n "description": "Value for platform.",\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "id",\n "platform",\n "architecture",\n "isolation"\n ],\n "type": "object"\n },\n {\n "type": "null"\n }\n ],\n "description": "Value for environment."\n },\n "evidence_id": {\n "description": "Stable identifier of the recorded Evidence observation.",\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "evidence_links": {\n "description": "Value for evidence links.",\n "items": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "type": "array"\n },\n "limitations": {\n "description": "Value for limitations.",\n "items": {\n "type": "string"\n },\n "type": "array"\n },\n "locations": {\n "description": "Value for locations.",\n "items": {\n "oneOf": [\n {\n "properties": {\n "address": {\n "description": "Value for address.",\n "minLength": 1,\n "type": "string"\n },\n "kind": {\n "const": "address",\n "description": "Value for kind.",\n "type": "string"\n }\n },\n "required": [\n "kind",\n "address"\n ],\n "type": "object"\n },\n {\n "properties": {\n "end": {\n "description": "Value for end.",\n "minLength": 1,\n "type": "string"\n },\n "kind": {\n "const": "address-range",\n "description": "Value for kind.",\n "type": "string"\n },\n "start": {\n "description": "Value for start.",\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "kind",\n "start",\n "end"\n ],\n "type": "object"\n },\n {\n "properties": {\n "kind": {\n "const": "artifact-path",\n "description": "Value for kind.",\n "type": "string"\n },\n "path": {\n "description": "Local filesystem path used by this operation.",\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "kind",\n "path"\n ],\n "type": "object"\n },\n {\n "properties": {\n "kind": {\n "const": "file-offset",\n "description": "Value for kind.",\n "type": "string"\n },\n "offset": {\n "description": "Value for offset.",\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "kind",\n "offset"\n ],\n "type": "object"\n },\n {\n "properties": {\n "end": {\n "description": "Value for end.",\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "kind": {\n "const": "file-offset-range",\n "description": "Value for kind.",\n "type": "string"\n },\n "start": {\n "description": "Value for start.",\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "kind",\n "start",\n "end"\n ],\n "type": "object"\n }\n ]\n },\n "type": "array"\n },\n "normalized_result": {\n "$ref": "#/$defs/__schema0",\n "description": "Value for normalized result."\n },\n "operation": {\n "description": "Value for operation.",\n "minLength": 1,\n "type": "string"\n },\n "parameters": {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "description": "Value for parameters.",\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n },\n "predicate_type": {\n "description": "Value for predicate type.",\n "minLength": 1,\n "type": "string"\n },\n "provider": {\n "description": "Value for provider.",\n "properties": {\n "id": {\n "description": "Value for id.",\n "minLength": 1,\n "type": "string"\n },\n "name": {\n "description": "Exact name used by this operation.",\n "minLength": 1,\n "type": "string"\n },\n "version": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ],\n "description": "Value for version."\n }\n },\n "required": [\n "id",\n "name",\n "version"\n ],\n "type": "object"\n },\n "raw_result": {\n "anyOf": [\n {\n "$ref": "#/$defs/__schema0"\n },\n {\n "type": "null"\n }\n ],\n "description": "Value for raw result."\n },\n "subject": {\n "anyOf": [\n {\n "properties": {\n "architecture": {\n "anyOf": [\n {\n "enum": [\n "x86",\n "x86_64",\n "arm",\n "arm64"\n ],\n "type": "string"\n },\n {\n "type": "null"\n }\n ],\n "description": "Value for architecture."\n },\n "digest": {\n "description": "Value for digest.",\n "properties": {\n "sha256": {\n "description": "Value for sha256.",\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n }\n },\n "required": [\n "sha256"\n ],\n "type": "object"\n },\n "format": {\n "description": "Declared input artifact format.",\n "enum": [\n "hopper",\n "analysis-database",\n "mach-o",\n "elf",\n "pe",\n "dos-mz",\n "dos-com",\n "zip",\n "ipa",\n "apk",\n "msix",\n "appx",\n "asar",\n "dmg",\n "pkg",\n "plist",\n "javascript",\n "source-map",\n "directory",\n "file",\n "unknown",\n "mach-o-universal",\n "javascript-bundle",\n "entitlements"\n ],\n "type": "string"\n },\n "local_path": {\n "description": "Local filesystem path for local.",\n "type": "string"\n },\n "name": {\n "description": "Exact name used by this operation.",\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "name",\n "digest",\n "format",\n "architecture",\n "local_path"\n ],\n "type": "object"\n },\n {\n "type": "null"\n }\n ],\n "description": "Value for subject."\n }\n },\n "required": [\n "evidence_id",\n "subject",\n "provider",\n "predicate_type",\n "operation",\n "parameters",\n "raw_result",\n "normalized_result",\n "confidence",\n "authority",\n "environment",\n "limitations",\n "locations",\n "evidence_links"\n ],\n "type": "object"\n },\n "minItems": 1,\n "type": "array"\n }\n },\n "required": [\n "managed_boundaries",\n "native_observations"\n ],\n "type": "object"\n },\n "kind": "application",\n "name": "verify_managed_native_boundaries",\n "outputSchema": {\n "$defs": {\n "__schema0": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "number"\n },\n {\n "type": "boolean"\n },\n {\n "type": "null"\n },\n {\n "items": {\n "$ref": "#/$defs/__schema0"\n },\n "type": "array"\n },\n {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n }\n ]\n }\n },\n "$schema": "https://json-schema.org/draft/2020-12/schema",\n "additionalProperties": false,\n "properties": {\n "evidence": {\n "additionalProperties": false,\n "properties": {\n "analysis_profile": {\n "additionalProperties": false,\n "properties": {\n "digest": {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n },\n "parameters": {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n },\n "provider": {\n "additionalProperties": false,\n "properties": {\n "id": {\n "minLength": 1,\n "type": "string"\n },\n "name": {\n "minLength": 1,\n "type": "string"\n },\n "version": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "id",\n "name",\n "version"\n ],\n "type": "object"\n }\n },\n "required": [\n "provider",\n "parameters",\n "digest"\n ],\n "type": "object"\n },\n "authority": {\n "enum": [\n "shipped-artifact",\n "controlled-replay",\n "historical-reference",\n "external-service",\n "analyst-inference"\n ],\n "type": "string"\n },\n "confidence": {\n "enum": [\n "observed",\n "derived",\n "inferred"\n ],\n "type": "string"\n },\n "environment": {\n "anyOf": [\n {\n "additionalProperties": false,\n "properties": {\n "architecture": {\n "minLength": 1,\n "type": "string"\n },\n "id": {\n "minLength": 1,\n "type": "string"\n },\n "isolation": {\n "enum": [\n "none",\n "process",\n "container",\n "virtual-machine"\n ],\n "type": "string"\n },\n "platform": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "id",\n "platform",\n "architecture",\n "isolation"\n ],\n "type": "object"\n },\n {\n "type": "null"\n }\n ]\n },\n "evidence_id": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "evidence_links": {\n "items": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "type": "array"\n },\n "limitations": {\n "items": {\n "type": "string"\n },\n "type": "array"\n },\n "locations": {\n "items": {\n "oneOf": [\n {\n "additionalProperties": false,\n "properties": {\n "address": {\n "minLength": 1,\n "type": "string"\n },\n "kind": {\n "const": "address",\n "type": "string"\n }\n },\n "required": [\n "kind",\n "address"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "end": {\n "minLength": 1,\n "type": "string"\n },\n "kind": {\n "const": "address-range",\n "type": "string"\n },\n "start": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "kind",\n "start",\n "end"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "kind": {\n "const": "artifact-path",\n "type": "string"\n },\n "path": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "kind",\n "path"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "kind": {\n "const": "file-offset",\n "type": "string"\n },\n "offset": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "kind",\n "offset"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "end": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "kind": {\n "const": "file-offset-range",\n "type": "string"\n },\n "start": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "kind",\n "start",\n "end"\n ],\n "type": "object"\n }\n ]\n },\n "type": "array"\n },\n "normalized_result": {\n "$ref": "#/$defs/__schema0"\n },\n "operation": {\n "minLength": 1,\n "type": "string"\n },\n "parameters": {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n },\n "predicate_type": {\n "minLength": 1,\n "type": "string"\n },\n "provider": {\n "additionalProperties": false,\n "properties": {\n "id": {\n "minLength": 1,\n "type": "string"\n },\n "name": {\n "minLength": 1,\n "type": "string"\n },\n "version": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "id",\n "name",\n "version"\n ],\n "type": "object"\n },\n "raw_result": {\n "anyOf": [\n {\n "$ref": "#/$defs/__schema0"\n },\n {\n "type": "null"\n }\n ]\n },\n "subject": {\n "anyOf": [\n {\n "additionalProperties": false,\n "properties": {\n "architecture": {\n "anyOf": [\n {\n "enum": [\n "x86",\n "x86_64",\n "arm",\n "arm64"\n ],\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "digest": {\n "additionalProperties": false,\n "properties": {\n "sha256": {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n }\n },\n "required": [\n "sha256"\n ],\n "type": "object"\n },\n "format": {\n "enum": [\n "hopper",\n "analysis-database",\n "mach-o",\n "elf",\n "pe",\n "dos-mz",\n "dos-com",\n "zip",\n "ipa",\n "apk",\n "msix",\n "appx",\n "asar",\n "dmg",\n "pkg",\n "plist",\n "javascript",\n "source-map",\n "directory",\n "file",\n "unknown",\n "mach-o-universal",\n "javascript-bundle",\n "entitlements"\n ],\n "type": "string"\n },\n "local_path": {\n "type": "string"\n },\n "name": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "name",\n "digest",\n "format",\n "architecture",\n "local_path"\n ],\n "type": "object"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "evidence_id",\n "subject",\n "provider",\n "predicate_type",\n "operation",\n "parameters",\n "raw_result",\n "normalized_result",\n "confidence",\n "authority",\n "environment",\n "limitations",\n "locations",\n "evidence_links"\n ],\n "type": "object"\n },\n "evidence_id": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "result": {\n "additionalProperties": false,\n "properties": {\n "algorithm": {\n "additionalProperties": false,\n "properties": {\n "name": {\n "const": "rea-managed-native-verification",\n "type": "string"\n },\n "token_identity": {\n "const": "build-local",\n "type": "string"\n },\n "token_to_address_mapping": {\n "const": "not-inferred",\n "type": "string"\n }\n },\n "required": [\n "name",\n "token_identity",\n "token_to_address_mapping"\n ],\n "type": "object"\n },\n "coverage": {\n "additionalProperties": false,\n "properties": {\n "status": {\n "enum": [\n "complete-within-inputs",\n "partial"\n ],\n "type": "string"\n }\n },\n "required": [\n "status"\n ],\n "type": "object"\n },\n "evidence_links": {\n "items": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "minItems": 2,\n "type": "array"\n },\n "limitations": {\n "items": {\n "minLength": 1,\n "type": "string"\n },\n "type": "array"\n },\n "managed_boundary": {\n "additionalProperties": false,\n "properties": {\n "artifact_path": {\n "minLength": 1,\n "type": "string"\n },\n "artifact_sha256": {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n },\n "coverage_state": {\n "enum": [\n "complete",\n "partial",\n "unavailable"\n ],\n "type": "string"\n },\n "evidence_id": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "metadata_status": {\n "enum": [\n "absent",\n "complete",\n "partial",\n "malformed"\n ],\n "type": "string"\n },\n "mvid": {\n "anyOf": [\n {\n "pattern": "^[0-9a-fA-F]{8}(?:-[0-9a-fA-F]{4}){3}-[0-9a-fA-F]{12}$",\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "native_implementations_total": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "pinvoke_imports_total": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "evidence_id",\n "artifact_sha256",\n "artifact_path",\n "mvid",\n "metadata_status",\n "pinvoke_imports_total",\n "native_implementations_total",\n "coverage_state"\n ],\n "type": "object"\n },\n "native_implementations": {\n "additionalProperties": false,\n "properties": {\n "reason": {\n "minLength": 1,\n "type": "string"\n },\n "unresolved": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "unresolved",\n "reason"\n ],\n "type": "object"\n },\n "native_observations": {\n "additionalProperties": false,\n "properties": {\n "accepted": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "symbols": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "total": {\n "maximum": 9007199254740991,\n "minimum": 1,\n "type": "integer"\n },\n "unsupported": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "total",\n "accepted",\n "unsupported",\n "symbols"\n ],\n "type": "object"\n },\n "pinvoke_imports": {\n "items": {\n "oneOf": [\n {\n "additionalProperties": false,\n "properties": {\n "basis": {\n "enum": [\n "exact-export-name",\n "exact-function-name"\n ],\n "type": "string"\n },\n "candidates": {\n "items": {\n "additionalProperties": false,\n "properties": {\n "address": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "evidence_id": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "module_name": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "module_path": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "name": {\n "minLength": 1,\n "type": "string"\n },\n "operation": {\n "minLength": 1,\n "type": "string"\n },\n "source": {\n "enum": [\n "macho-export",\n "function-dossier"\n ],\n "type": "string"\n }\n },\n "required": [\n "evidence_id",\n "operation",\n "name",\n "address",\n "module_name",\n "module_path",\n "source"\n ],\n "type": "object"\n },\n "prefixItems": [\n {\n "additionalProperties": false,\n "properties": {\n "address": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "evidence_id": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "module_name": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "module_path": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "name": {\n "minLength": 1,\n "type": "string"\n },\n "operation": {\n "minLength": 1,\n "type": "string"\n },\n "source": {\n "enum": [\n "macho-export",\n "function-dossier"\n ],\n "type": "string"\n }\n },\n "required": [\n "evidence_id",\n "operation",\n "name",\n "address",\n "module_name",\n "module_path",\n "source"\n ],\n "type": "object"\n }\n ],\n "type": "array"\n },\n "confidence": {\n "const": "observed",\n "type": "string"\n },\n "evidence_links": {\n "items": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "minItems": 1,\n "type": "array"\n },\n "item_id": {\n "pattern": "^mnv_pinvoke_[a-f0-9]{64}$",\n "type": "string"\n },\n "limitations": {\n "items": {\n "minLength": 1,\n "type": "string"\n },\n "type": "array"\n },\n "managed": {\n "additionalProperties": false,\n "properties": {\n "call_convention": {\n "enum": [\n "not-specified",\n "winapi",\n "cdecl",\n "stdcall",\n "thiscall",\n "fastcall",\n "unknown"\n ],\n "type": "string"\n },\n "char_set": {\n "enum": [\n "not-specified",\n "ansi",\n "unicode",\n "auto",\n "unknown"\n ],\n "type": "string"\n },\n "declaration_verification": {\n "const": "managed-declaration-only",\n "type": "string"\n },\n "import_name": {\n "minLength": 1,\n "type": "string"\n },\n "import_scope_name": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "member_name": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "member_token": {\n "anyOf": [\n {\n "pattern": "^0x[0-9a-f]{8}$",\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "no_mangle": {\n "type": "boolean"\n },\n "token": {\n "pattern": "^0x[0-9a-f]{8}$",\n "type": "string"\n }\n },\n "required": [\n "token",\n "member_token",\n "member_name",\n "import_name",\n "import_scope_name",\n "no_mangle",\n "char_set",\n "call_convention",\n "declaration_verification"\n ],\n "type": "object"\n },\n "matched_native": {\n "additionalProperties": false,\n "properties": {\n "address": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "evidence_id": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "module_name": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "module_path": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "name": {\n "minLength": 1,\n "type": "string"\n },\n "operation": {\n "minLength": 1,\n "type": "string"\n },\n "source": {\n "enum": [\n "macho-export",\n "function-dossier"\n ],\n "type": "string"\n }\n },\n "required": [\n "evidence_id",\n "operation",\n "name",\n "address",\n "module_name",\n "module_path",\n "source"\n ],\n "type": "object"\n },\n "status": {\n "const": "verified",\n "type": "string"\n }\n },\n "required": [\n "item_id",\n "managed",\n "evidence_links",\n "limitations",\n "status",\n "basis",\n "confidence",\n "matched_native",\n "candidates"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "basis": {\n "const": "decorated-name-candidate",\n "type": "string"\n },\n "candidates": {\n "items": {\n "additionalProperties": false,\n "properties": {\n "address": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "evidence_id": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "module_name": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "module_path": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "name": {\n "minLength": 1,\n "type": "string"\n },\n "operation": {\n "minLength": 1,\n "type": "string"\n },\n "source": {\n "enum": [\n "macho-export",\n "function-dossier"\n ],\n "type": "string"\n }\n },\n "required": [\n "evidence_id",\n "operation",\n "name",\n "address",\n "module_name",\n "module_path",\n "source"\n ],\n "type": "object"\n },\n "prefixItems": [\n {\n "additionalProperties": false,\n "properties": {\n "address": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "evidence_id": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "module_name": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "module_path": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "name": {\n "minLength": 1,\n "type": "string"\n },\n "operation": {\n "minLength": 1,\n "type": "string"\n },\n "source": {\n "enum": [\n "macho-export",\n "function-dossier"\n ],\n "type": "string"\n }\n },\n "required": [\n "evidence_id",\n "operation",\n "name",\n "address",\n "module_name",\n "module_path",\n "source"\n ],\n "type": "object"\n }\n ],\n "type": "array"\n },\n "confidence": {\n "const": "inferred",\n "type": "string"\n },\n "evidence_links": {\n "items": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "minItems": 1,\n "type": "array"\n },\n "item_id": {\n "pattern": "^mnv_pinvoke_[a-f0-9]{64}$",\n "type": "string"\n },\n "limitations": {\n "items": {\n "minLength": 1,\n "type": "string"\n },\n "type": "array"\n },\n "managed": {\n "additionalProperties": false,\n "properties": {\n "call_convention": {\n "enum": [\n "not-specified",\n "winapi",\n "cdecl",\n "stdcall",\n "thiscall",\n "fastcall",\n "unknown"\n ],\n "type": "string"\n },\n "char_set": {\n "enum": [\n "not-specified",\n "ansi",\n "unicode",\n "auto",\n "unknown"\n ],\n "type": "string"\n },\n "declaration_verification": {\n "const": "managed-declaration-only",\n "type": "string"\n },\n "import_name": {\n "minLength": 1,\n "type": "string"\n },\n "import_scope_name": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "member_name": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "member_token": {\n "anyOf": [\n {\n "pattern": "^0x[0-9a-f]{8}$",\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "no_mangle": {\n "type": "boolean"\n },\n "token": {\n "pattern": "^0x[0-9a-f]{8}$",\n "type": "string"\n }\n },\n "required": [\n "token",\n "member_token",\n "member_name",\n "import_name",\n "import_scope_name",\n "no_mangle",\n "char_set",\n "call_convention",\n "declaration_verification"\n ],\n "type": "object"\n },\n "matched_native": {\n "additionalProperties": false,\n "properties": {\n "address": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "evidence_id": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "module_name": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "module_path": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "name": {\n "minLength": 1,\n "type": "string"\n },\n "operation": {\n "minLength": 1,\n "type": "string"\n },\n "source": {\n "enum": [\n "macho-export",\n "function-dossier"\n ],\n "type": "string"\n }\n },\n "required": [\n "evidence_id",\n "operation",\n "name",\n "address",\n "module_name",\n "module_path",\n "source"\n ],\n "type": "object"\n },\n "status": {\n "const": "inferred",\n "type": "string"\n }\n },\n "required": [\n "item_id",\n "managed",\n "evidence_links",\n "limitations",\n "status",\n "basis",\n "confidence",\n "matched_native",\n "candidates"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "basis": {\n "enum": [\n "no-native-candidate",\n "unsupported-native-evidence"\n ],\n "type": "string"\n },\n "candidates": {\n "items": {\n "not": {}\n },\n "maxItems": 0,\n "minItems": 0,\n "type": "array"\n },\n "confidence": {\n "const": "unknown",\n "type": "string"\n },\n "evidence_links": {\n "items": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "minItems": 1,\n "type": "array"\n },\n "item_id": {\n "pattern": "^mnv_pinvoke_[a-f0-9]{64}$",\n "type": "string"\n },\n "limitations": {\n "items": {\n "minLength": 1,\n "type": "string"\n },\n "type": "array"\n },\n "managed": {\n "additionalProperties": false,\n "properties": {\n "call_convention": {\n "enum": [\n "not-specified",\n "winapi",\n "cdecl",\n "stdcall",\n "thiscall",\n "fastcall",\n "unknown"\n ],\n "type": "string"\n },\n "char_set": {\n "enum": [\n "not-specified",\n "ansi",\n "unicode",\n "auto",\n "unknown"\n ],\n "type": "string"\n },\n "declaration_verification": {\n "const": "managed-declaration-only",\n "type": "string"\n },\n "import_name": {\n "minLength": 1,\n "type": "string"\n },\n "import_scope_name": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "member_name": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "member_token": {\n "anyOf": [\n {\n "pattern": "^0x[0-9a-f]{8}$",\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "no_mangle": {\n "type": "boolean"\n },\n "token": {\n "pattern": "^0x[0-9a-f]{8}$",\n "type": "string"\n }\n },\n "required": [\n "token",\n "member_token",\n "member_name",\n "import_name",\n "import_scope_name",\n "no_mangle",\n "char_set",\n "call_convention",\n "declaration_verification"\n ],\n "type": "object"\n },\n "matched_native": {\n "type": "null"\n },\n "status": {\n "const": "unresolved",\n "type": "string"\n }\n },\n "required": [\n "item_id",\n "managed",\n "evidence_links",\n "limitations",\n "status",\n "basis",\n "confidence",\n "matched_native",\n "candidates"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "basis": {\n "const": "module-mismatch",\n "type": "string"\n },\n "candidates": {\n "items": {\n "additionalProperties": false,\n "properties": {\n "address": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "evidence_id": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "module_name": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "module_path": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "name": {\n "minLength": 1,\n "type": "string"\n },\n "operation": {\n "minLength": 1,\n "type": "string"\n },\n "source": {\n "enum": [\n "macho-export",\n "function-dossier"\n ],\n "type": "string"\n }\n },\n "required": [\n "evidence_id",\n "operation",\n "name",\n "address",\n "module_name",\n "module_path",\n "source"\n ],\n "type": "object"\n },\n "prefixItems": [\n {\n "additionalProperties": false,\n "properties": {\n "address": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "evidence_id": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "module_name": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "module_path": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "name": {\n "minLength": 1,\n "type": "string"\n },\n "operation": {\n "minLength": 1,\n "type": "string"\n },\n "source": {\n "enum": [\n "macho-export",\n "function-dossier"\n ],\n "type": "string"\n }\n },\n "required": [\n "evidence_id",\n "operation",\n "name",\n "address",\n "module_name",\n "module_path",\n "source"\n ],\n "type": "object"\n }\n ],\n "type": "array"\n },\n "confidence": {\n "const": "unknown",\n "type": "string"\n },\n "evidence_links": {\n "items": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "minItems": 1,\n "type": "array"\n },\n "item_id": {\n "pattern": "^mnv_pinvoke_[a-f0-9]{64}$",\n "type": "string"\n },\n "limitations": {\n "items": {\n "minLength": 1,\n "type": "string"\n },\n "type": "array"\n },\n "managed": {\n "additionalProperties": false,\n "properties": {\n "call_convention": {\n "enum": [\n "not-specified",\n "winapi",\n "cdecl",\n "stdcall",\n "thiscall",\n "fastcall",\n "unknown"\n ],\n "type": "string"\n },\n "char_set": {\n "enum": [\n "not-specified",\n "ansi",\n "unicode",\n "auto",\n "unknown"\n ],\n "type": "string"\n },\n "declaration_verification": {\n "const": "managed-declaration-only",\n "type": "string"\n },\n "import_name": {\n "minLength": 1,\n "type": "string"\n },\n "import_scope_name": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "member_name": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "member_token": {\n "anyOf": [\n {\n "pattern": "^0x[0-9a-f]{8}$",\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "no_mangle": {\n "type": "boolean"\n },\n "token": {\n "pattern": "^0x[0-9a-f]{8}$",\n "type": "string"\n }\n },\n "required": [\n "token",\n "member_token",\n "member_name",\n "import_name",\n "import_scope_name",\n "no_mangle",\n "char_set",\n "call_convention",\n "declaration_verification"\n ],\n "type": "object"\n },\n "matched_native": {\n "additionalProperties": false,\n "properties": {\n "address": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "evidence_id": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "module_name": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "module_path": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "name": {\n "minLength": 1,\n "type": "string"\n },\n "operation": {\n "minLength": 1,\n "type": "string"\n },\n "source": {\n "enum": [\n "macho-export",\n "function-dossier"\n ],\n "type": "string"\n }\n },\n "required": [\n "evidence_id",\n "operation",\n "name",\n "address",\n "module_name",\n "module_path",\n "source"\n ],\n "type": "object"\n },\n "status": {\n "const": "contradicted",\n "type": "string"\n }\n },\n "required": [\n "item_id",\n "managed",\n "evidence_links",\n "limitations",\n "status",\n "basis",\n "confidence",\n "matched_native",\n "candidates"\n ],\n "type": "object"\n }\n ]\n },\n "type": "array"\n },\n "summary": {\n "additionalProperties": false,\n "properties": {\n "contradicted": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "inferred": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "native_body_unresolved": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "unresolved": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "verified": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "verified",\n "inferred",\n "unresolved",\n "contradicted",\n "native_body_unresolved"\n ],\n "type": "object"\n },\n "verification_id": {\n "pattern": "^mnv_[a-f0-9]{64}$",\n "type": "string"\n }\n },\n "required": [\n "verification_id",\n "algorithm",\n "managed_boundary",\n "native_observations",\n "summary",\n "pinvoke_imports",\n "native_implementations",\n "coverage",\n "evidence_links",\n "limitations"\n ],\n "type": "object"\n }\n },\n "required": [\n "result",\n "evidence_id",\n "evidence"\n ],\n "type": "object"\n },\n "requiresSession": true,\n "title": "Verify Managed Native Boundaries"\n },\n {\n "analysisOperation": null,\n "annotations": {\n "destructiveHint": false,\n "idempotentHint": true,\n "openWorldHint": false,\n "readOnlyHint": false\n },\n "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 decoded-IL tuple hash, records the decompiler identity and options, and marks C# or pseudocode as analyst inference rather than canonical byte observation.",\n "effects": {\n "accessesNetwork": false,\n "changesUiState": false,\n "idempotent": true,\n "launchesProcess": false,\n "mayDiscardData": false,\n "mutatesSession": true,\n "mutatesTarget": false,\n "writesFilesystem": false\n },\n "inputSchema": {\n "$defs": {\n "__schema0": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "number"\n },\n {\n "type": "boolean"\n },\n {\n "type": "null"\n },\n {\n "items": {\n "$ref": "#/$defs/__schema0"\n },\n "type": "array"\n },\n {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n }\n ]\n }\n },\n "$schema": "https://json-schema.org/draft/2020-12/schema",\n "additionalProperties": false,\n "examples": [\n {\n "decompiler": {\n "executable_sha256": null,\n "family": "ilspy",\n "name": "ilspycmd",\n "options": [\n "--disable-updatecheck",\n "--type",\n "Example.Program"\n ],\n "version": "9.1.0.7988"\n },\n "methods": [\n {\n "normalized_il_sha256": "5555555555555555555555555555555555555555555555555555555555555555",\n "reconstruction": {\n "end_line": 1,\n "kind": "decompiled-csharp",\n "language": "csharp",\n "source_path": "/examples/Example.Program.cs",\n "start_line": 1,\n "text": "internal static void Main() { }"\n },\n "signature_sha256": "3333333333333333333333333333333333333333333333333333333333333333",\n "token": "0x06000001"\n }\n ],\n "notes": [\n "Synthetic example only; decompiler output is imported as inference."\n ],\n "static_members": {\n "authority": "shipped-artifact",\n "confidence": "observed",\n "environment": null,\n "evidence_id": "ev_cf07661a99083e446ac5f18af3ca331cb1af7c3cd6cb7c9dc8bff880a1ed8bb9",\n "evidence_links": [],\n "limitations": [\n "Artifact identity is unavailable for this observation."\n ],\n "locations": [],\n "normalized_result": {\n "artifact": {\n "byte_length": 4096,\n "format": "pe",\n "path": "/examples/22222222.dll",\n "sha256": "2222222222222222222222222222222222222222222222222222222222222222"\n },\n "call_edges": [],\n "coverage": {\n "issues": [],\n "state": "complete"\n },\n "field_accesses": [],\n "fields": [],\n "identity_scope": {\n "requires_artifact_sha256": "2222222222222222222222222222222222222222222222222222222222222222",\n "requires_mvid": "11112222-3333-4444-9555-666677778888",\n "token_identity": "build-local"\n },\n "limitations": [],\n "member_refs": [],\n "metadata": {\n "status": "complete",\n "table_row_counts": {},\n "version": "v4.0.30319"\n },\n "methods": [\n {\n "body": {\n "anchors": [],\n "decoded_instruction_count": 1,\n "exception_regions": [],\n "file_offset": 512,\n "header_format": "tiny",\n "il_sha256": "4444444444444444444444444444444444444444444444444444444444444444",\n "il_size": 1,\n "init_locals": false,\n "instruction_count": 1,\n "issue": null,\n "local_var_sig_token": null,\n "max_stack": 8,\n "normalized_il_sha256": "5555555555555555555555555555555555555555555555555555555555555555",\n "opcode_counts": {\n "ret": 1\n },\n "rva": 8192,\n "status": "present",\n "truncated_instructions": 0\n },\n "declaring_type": "Example.Program",\n "declaring_type_token": "0x02000001",\n "flags": 22,\n "impl_flags": 0,\n "name": "Main",\n "row_offset": 128,\n "rva": 8192,\n "signature": {\n "calling_convention": "default",\n "field_type": null,\n "generic_parameter_count": 0,\n "issue": null,\n "kind": "method",\n "parameter_count": 0,\n "parameter_types": [],\n "parse_status": "decoded",\n "raw_length": 3,\n "raw_sha256": "3333333333333333333333333333333333333333333333333333333333333333",\n "return_type": "void"\n },\n "token": "0x06000001"\n }\n ],\n "module": {\n "enc_base_id": null,\n "enc_id": null,\n "generation": 0,\n "mvid": "11112222-3333-4444-9555-666677778888",\n "name": "Example.dll",\n "row_offset": 0,\n "token": "0x00000001"\n },\n "types": []\n },\n "operation": "inspect_managed_members",\n "parameters": {},\n "predicate_type": "rea.analysis",\n "provider": {\n "id": "rea-dotnet-static",\n "name": "REA managed static analysis provider",\n "version": "1"\n },\n "raw_result": null,\n "subject": null\n }\n }\n ],\n "properties": {\n "decompiler": {\n "additionalProperties": false,\n "description": "Value for decompiler.",\n "properties": {\n "executable_sha256": {\n "anyOf": [\n {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n },\n {\n "type": "null"\n }\n ],\n "default": null,\n "description": "Exact SHA-256 digest of executable."\n },\n "family": {\n "description": "Value for family.",\n "enum": [\n "ilspy",\n "dnspy",\n "dnlib",\n "mono-cecil",\n "other"\n ],\n "type": "string"\n },\n "name": {\n "description": "Exact name used by this operation.",\n "minLength": 1,\n "type": "string"\n },\n "options": {\n "default": [],\n "description": "Value for options.",\n "items": {\n "type": "string"\n },\n "type": "array"\n },\n "version": {\n "anyOf": [\n {\n "minLength": 1,\n "type": "string"\n },\n {\n "type": "null"\n }\n ],\n "default": null,\n "description": "Value for version."\n }\n },\n "required": [\n "name",\n "family"\n ],\n "type": "object"\n },\n "methods": {\n "description": "Value for methods.",\n "items": {\n "additionalProperties": false,\n "properties": {\n "normalized_il_sha256": {\n "anyOf": [\n {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n },\n {\n "type": "null"\n }\n ],\n "description": "Exact SHA-256 digest of normalized il."\n },\n "reconstruction": {\n "additionalProperties": false,\n "description": "Value for reconstruction.",\n "properties": {\n "end_line": {\n "anyOf": [\n {\n "maximum": 9007199254740991,\n "minimum": 1,\n "type": "integer"\n },\n {\n "type": "null"\n }\n ],\n "description": "Value for end line."\n },\n "kind": {\n "description": "Value for kind.",\n "enum": [\n "decompiled-csharp",\n "decompiled-il",\n "semantic-pseudocode"\n ],\n "type": "string"\n },\n "language": {\n "description": "Value for language.",\n "enum": [\n "csharp",\n "il",\n "pseudocode"\n ],\n "type": "string"\n },\n "source_path": {\n "anyOf": [\n {\n "minLength": 1,\n "type": "string"\n },\n {\n "type": "null"\n }\n ],\n "description": "Local filesystem path for source."\n },\n "start_line": {\n "anyOf": [\n {\n "maximum": 9007199254740991,\n "minimum": 1,\n "type": "integer"\n },\n {\n "type": "null"\n }\n ],\n "description": "Value for start line."\n },\n "text": {\n "description": "Value for text.",\n "minLength": 1,\n "type": "string"\n },\n "text_sha256": {\n "description": "Exact SHA-256 digest of text.",\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n }\n },\n "required": [\n "kind",\n "language",\n "text"\n ],\n "type": "object"\n },\n "signature_sha256": {\n "description": "Exact SHA-256 digest of signature.",\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n },\n "token": {\n "description": "Value for token.",\n "pattern": "^0x[0-9a-f]{8}$",\n "type": "string"\n }\n },\n "required": [\n "token",\n "signature_sha256",\n "normalized_il_sha256",\n "reconstruction"\n ],\n "type": "object"\n },\n "minItems": 1,\n "type": "array"\n },\n "notes": {\n "default": [],\n "description": "Value for notes.",\n "items": {\n "minLength": 1,\n "type": "string"\n },\n "type": "array"\n },\n "static_members": {\n "additionalProperties": false,\n "description": "Value for static members.",\n "properties": {\n "analysis_profile": {\n "description": "Value for analysis profile.",\n "properties": {\n "digest": {\n "description": "Value for digest.",\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n },\n "parameters": {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "description": "Value for parameters.",\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n },\n "provider": {\n "description": "Value for provider.",\n "properties": {\n "id": {\n "description": "Value for id.",\n "minLength": 1,\n "type": "string"\n },\n "name": {\n "description": "Exact name used by this operation.",\n "minLength": 1,\n "type": "string"\n },\n "version": {\n "description": "Value for version.",\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "id",\n "name",\n "version"\n ],\n "type": "object"\n }\n },\n "required": [\n "provider",\n "parameters",\n "digest"\n ],\n "type": "object"\n },\n "authority": {\n "description": "Value for authority.",\n "enum": [\n "shipped-artifact",\n "controlled-replay",\n "historical-reference",\n "external-service",\n "analyst-inference"\n ],\n "type": "string"\n },\n "confidence": {\n "description": "Value for confidence.",\n "enum": [\n "observed",\n "derived",\n "inferred"\n ],\n "type": "string"\n },\n "environment": {\n "anyOf": [\n {\n "properties": {\n "architecture": {\n "description": "Value for architecture.",\n "minLength": 1,\n "type": "string"\n },\n "id": {\n "description": "Value for id.",\n "minLength": 1,\n "type": "string"\n },\n "isolation": {\n "description": "Value for isolation.",\n "enum": [\n "none",\n "process",\n "container",\n "virtual-machine"\n ],\n "type": "string"\n },\n "platform": {\n "description": "Value for platform.",\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "id",\n "platform",\n "architecture",\n "isolation"\n ],\n "type": "object"\n },\n {\n "type": "null"\n }\n ],\n "description": "Value for environment."\n },\n "evidence_id": {\n "description": "Stable identifier of the recorded Evidence observation.",\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "evidence_links": {\n "description": "Value for evidence links.",\n "items": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "type": "array"\n },\n "limitations": {\n "description": "Value for limitations.",\n "items": {\n "type": "string"\n },\n "type": "array"\n },\n "locations": {\n "description": "Value for locations.",\n "items": {\n "oneOf": [\n {\n "properties": {\n "address": {\n "description": "Value for address.",\n "minLength": 1,\n "type": "string"\n },\n "kind": {\n "const": "address",\n "description": "Value for kind.",\n "type": "string"\n }\n },\n "required": [\n "kind",\n "address"\n ],\n "type": "object"\n },\n {\n "properties": {\n "end": {\n "description": "Value for end.",\n "minLength": 1,\n "type": "string"\n },\n "kind": {\n "const": "address-range",\n "description": "Value for kind.",\n "type": "string"\n },\n "start": {\n "description": "Value for start.",\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "kind",\n "start",\n "end"\n ],\n "type": "object"\n },\n {\n "properties": {\n "kind": {\n "const": "artifact-path",\n "description": "Value for kind.",\n "type": "string"\n },\n "path": {\n "description": "Local filesystem path used by this operation.",\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "kind",\n "path"\n ],\n "type": "object"\n },\n {\n "properties": {\n "kind": {\n "const": "file-offset",\n "description": "Value for kind.",\n "type": "string"\n },\n "offset": {\n "description": "Value for offset.",\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "kind",\n "offset"\n ],\n "type": "object"\n },\n {\n "properties": {\n "end": {\n "description": "Value for end.",\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "kind": {\n "const": "file-offset-range",\n "description": "Value for kind.",\n "type": "string"\n },\n "start": {\n "description": "Value for start.",\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "kind",\n "start",\n "end"\n ],\n "type": "object"\n }\n ]\n },\n "type": "array"\n },\n "normalized_result": {\n "$ref": "#/$defs/__schema0",\n "description": "Value for normalized result."\n },\n "operation": {\n "description": "Value for operation.",\n "minLength": 1,\n "type": "string"\n },\n "parameters": {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "description": "Value for parameters.",\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n },\n "predicate_type": {\n "description": "Value for predicate type.",\n "minLength": 1,\n "type": "string"\n },\n "provider": {\n "description": "Value for provider.",\n "properties": {\n "id": {\n "description": "Value for id.",\n "minLength": 1,\n "type": "string"\n },\n "name": {\n "description": "Exact name used by this operation.",\n "minLength": 1,\n "type": "string"\n },\n "version": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ],\n "description": "Value for version."\n }\n },\n "required": [\n "id",\n "name",\n "version"\n ],\n "type": "object"\n },\n "raw_result": {\n "anyOf": [\n {\n "$ref": "#/$defs/__schema0"\n },\n {\n "type": "null"\n }\n ],\n "description": "Value for raw result."\n },\n "subject": {\n "anyOf": [\n {\n "properties": {\n "architecture": {\n "anyOf": [\n {\n "enum": [\n "x86",\n "x86_64",\n "arm",\n "arm64"\n ],\n "type": "string"\n },\n {\n "type": "null"\n }\n ],\n "description": "Value for architecture."\n },\n "digest": {\n "description": "Value for digest.",\n "properties": {\n "sha256": {\n "description": "Value for sha256.",\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n }\n },\n "required": [\n "sha256"\n ],\n "type": "object"\n },\n "format": {\n "description": "Declared input artifact format.",\n "enum": [\n "hopper",\n "analysis-database",\n "mach-o",\n "elf",\n "pe",\n "dos-mz",\n "dos-com",\n "zip",\n "ipa",\n "apk",\n "msix",\n "appx",\n "asar",\n "dmg",\n "pkg",\n "plist",\n "javascript",\n "source-map",\n "directory",\n "file",\n "unknown",\n "mach-o-universal",\n "javascript-bundle",\n "entitlements"\n ],\n "type": "string"\n },\n "local_path": {\n "description": "Local filesystem path for local.",\n "type": "string"\n },\n "name": {\n "description": "Exact name used by this operation.",\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "name",\n "digest",\n "format",\n "architecture",\n "local_path"\n ],\n "type": "object"\n },\n {\n "type": "null"\n }\n ],\n "description": "Value for subject."\n }\n },\n "required": [\n "evidence_id",\n "subject",\n "provider",\n "predicate_type",\n "operation",\n "parameters",\n "raw_result",\n "normalized_result",\n "confidence",\n "authority",\n "environment",\n "limitations",\n "locations",\n "evidence_links"\n ],\n "type": "object"\n }\n },\n "required": [\n "static_members",\n "decompiler",\n "methods"\n ],\n "type": "object"\n },\n "kind": "application",\n "name": "import_managed_reconstruction",\n "outputSchema": {\n "$defs": {\n "__schema0": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "number"\n },\n {\n "type": "boolean"\n },\n {\n "type": "null"\n },\n {\n "items": {\n "$ref": "#/$defs/__schema0"\n },\n "type": "array"\n },\n {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n }\n ]\n }\n },\n "$schema": "https://json-schema.org/draft/2020-12/schema",\n "additionalProperties": false,\n "properties": {\n "evidence": {\n "additionalProperties": false,\n "properties": {\n "analysis_profile": {\n "additionalProperties": false,\n "properties": {\n "digest": {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n },\n "parameters": {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n },\n "provider": {\n "additionalProperties": false,\n "properties": {\n "id": {\n "minLength": 1,\n "type": "string"\n },\n "name": {\n "minLength": 1,\n "type": "string"\n },\n "version": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "id",\n "name",\n "version"\n ],\n "type": "object"\n }\n },\n "required": [\n "provider",\n "parameters",\n "digest"\n ],\n "type": "object"\n },\n "authority": {\n "enum": [\n "shipped-artifact",\n "controlled-replay",\n "historical-reference",\n "external-service",\n "analyst-inference"\n ],\n "type": "string"\n },\n "confidence": {\n "enum": [\n "observed",\n "derived",\n "inferred"\n ],\n "type": "string"\n },\n "environment": {\n "anyOf": [\n {\n "additionalProperties": false,\n "properties": {\n "architecture": {\n "minLength": 1,\n "type": "string"\n },\n "id": {\n "minLength": 1,\n "type": "string"\n },\n "isolation": {\n "enum": [\n "none",\n "process",\n "container",\n "virtual-machine"\n ],\n "type": "string"\n },\n "platform": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "id",\n "platform",\n "architecture",\n "isolation"\n ],\n "type": "object"\n },\n {\n "type": "null"\n }\n ]\n },\n "evidence_id": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "evidence_links": {\n "items": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "type": "array"\n },\n "limitations": {\n "items": {\n "type": "string"\n },\n "type": "array"\n },\n "locations": {\n "items": {\n "oneOf": [\n {\n "additionalProperties": false,\n "properties": {\n "address": {\n "minLength": 1,\n "type": "string"\n },\n "kind": {\n "const": "address",\n "type": "string"\n }\n },\n "required": [\n "kind",\n "address"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "end": {\n "minLength": 1,\n "type": "string"\n },\n "kind": {\n "const": "address-range",\n "type": "string"\n },\n "start": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "kind",\n "start",\n "end"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "kind": {\n "const": "artifact-path",\n "type": "string"\n },\n "path": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "kind",\n "path"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "kind": {\n "const": "file-offset",\n "type": "string"\n },\n "offset": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "kind",\n "offset"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "end": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "kind": {\n "const": "file-offset-range",\n "type": "string"\n },\n "start": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "kind",\n "start",\n "end"\n ],\n "type": "object"\n }\n ]\n },\n "type": "array"\n },\n "normalized_result": {\n "$ref": "#/$defs/__schema0"\n },\n "operation": {\n "minLength": 1,\n "type": "string"\n },\n "parameters": {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n },\n "predicate_type": {\n "minLength": 1,\n "type": "string"\n },\n "provider": {\n "additionalProperties": false,\n "properties": {\n "id": {\n "minLength": 1,\n "type": "string"\n },\n "name": {\n "minLength": 1,\n "type": "string"\n },\n "version": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "id",\n "name",\n "version"\n ],\n "type": "object"\n },\n "raw_result": {\n "anyOf": [\n {\n "$ref": "#/$defs/__schema0"\n },\n {\n "type": "null"\n }\n ]\n },\n "subject": {\n "anyOf": [\n {\n "additionalProperties": false,\n "properties": {\n "architecture": {\n "anyOf": [\n {\n "enum": [\n "x86",\n "x86_64",\n "arm",\n "arm64"\n ],\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "digest": {\n "additionalProperties": false,\n "properties": {\n "sha256": {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n }\n },\n "required": [\n "sha256"\n ],\n "type": "object"\n },\n "format": {\n "enum": [\n "hopper",\n "analysis-database",\n "mach-o",\n "elf",\n "pe",\n "dos-mz",\n "dos-com",\n "zip",\n "ipa",\n "apk",\n "msix",\n "appx",\n "asar",\n "dmg",\n "pkg",\n "plist",\n "javascript",\n "source-map",\n "directory",\n "file",\n "unknown",\n "mach-o-universal",\n "javascript-bundle",\n "entitlements"\n ],\n "type": "string"\n },\n "local_path": {\n "type": "string"\n },\n "name": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "name",\n "digest",\n "format",\n "architecture",\n "local_path"\n ],\n "type": "object"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "evidence_id",\n "subject",\n "provider",\n "predicate_type",\n "operation",\n "parameters",\n "raw_result",\n "normalized_result",\n "confidence",\n "authority",\n "environment",\n "limitations",\n "locations",\n "evidence_links"\n ],\n "type": "object"\n },\n "evidence_id": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "result": {\n "additionalProperties": false,\n "properties": {\n "decompiler": {\n "additionalProperties": false,\n "properties": {\n "executable_sha256": {\n "anyOf": [\n {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n },\n {\n "type": "null"\n }\n ],\n "default": null\n },\n "family": {\n "enum": [\n "ilspy",\n "dnspy",\n "dnlib",\n "mono-cecil",\n "other"\n ],\n "type": "string"\n },\n "name": {\n "minLength": 1,\n "type": "string"\n },\n "options": {\n "default": [],\n "items": {\n "type": "string"\n },\n "type": "array"\n },\n "options_sha256": {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n },\n "version": {\n "anyOf": [\n {\n "minLength": 1,\n "type": "string"\n },\n {\n "type": "null"\n }\n ],\n "default": null\n }\n },\n "required": [\n "name",\n "version",\n "family",\n "executable_sha256",\n "options",\n "options_sha256"\n ],\n "type": "object"\n },\n "evidence_links": {\n "items": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "maxItems": 1,\n "minItems": 1,\n "type": "array"\n },\n "executed": {\n "const": false,\n "type": "boolean"\n },\n "limitations": {\n "items": {\n "minLength": 1,\n "type": "string"\n },\n "type": "array"\n },\n "methods": {\n "items": {\n "additionalProperties": false,\n "properties": {\n "body_sha256": {\n "anyOf": [\n {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "declaring_type": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "il_size": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "name": {\n "type": "string"\n },\n "normalized_il_sha256": {\n "anyOf": [\n {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "reconstruction": {\n "additionalProperties": false,\n "properties": {\n "end_line": {\n "anyOf": [\n {\n "maximum": 9007199254740991,\n "minimum": 1,\n "type": "integer"\n },\n {\n "type": "null"\n }\n ]\n },\n "kind": {\n "enum": [\n "decompiled-csharp",\n "decompiled-il",\n "semantic-pseudocode"\n ],\n "type": "string"\n },\n "language": {\n "enum": [\n "csharp",\n "il",\n "pseudocode"\n ],\n "type": "string"\n },\n "line_count": {\n "maximum": 9007199254740991,\n "minimum": 1,\n "type": "integer"\n },\n "source_path": {\n "anyOf": [\n {\n "minLength": 1,\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "start_line": {\n "anyOf": [\n {\n "maximum": 9007199254740991,\n "minimum": 1,\n "type": "integer"\n },\n {\n "type": "null"\n }\n ]\n },\n "text": {\n "minLength": 1,\n "type": "string"\n },\n "text_length": {\n "maximum": 9007199254740991,\n "minimum": 1,\n "type": "integer"\n },\n "text_sha256": {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n }\n },\n "required": [\n "kind",\n "language",\n "text",\n "text_sha256",\n "text_length",\n "line_count",\n "source_path",\n "start_line",\n "end_line"\n ],\n "type": "object"\n },\n "signature_sha256": {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n },\n "token": {\n "pattern": "^0x[0-9a-f]{8}$",\n "type": "string"\n },\n "validation": {\n "additionalProperties": false,\n "properties": {\n "canonical_observation": {\n "const": false,\n "type": "boolean"\n },\n "confidence_floor": {\n "const": "inference",\n "type": "string"\n },\n "exact_build_required": {\n "const": true,\n "type": "boolean"\n },\n "matched_static_member": {\n "const": true,\n "type": "boolean"\n }\n },\n "required": [\n "matched_static_member",\n "exact_build_required",\n "canonical_observation",\n "confidence_floor"\n ],\n "type": "object"\n }\n },\n "required": [\n "token",\n "declaring_type",\n "name",\n "signature_sha256",\n "normalized_il_sha256",\n "body_sha256",\n "il_size",\n "reconstruction",\n "validation"\n ],\n "type": "object"\n },\n "minItems": 1,\n "type": "array"\n },\n "notes": {\n "items": {\n "minLength": 1,\n "type": "string"\n },\n "type": "array"\n },\n "phase": {\n "const": "reconstruction-import",\n "type": "string"\n },\n "reconstruction_id": {\n "pattern": "^mre_[a-f0-9]{64}$",\n "type": "string"\n },\n "static_observation": {\n "additionalProperties": false,\n "properties": {\n "artifact_path": {\n "minLength": 1,\n "type": "string"\n },\n "artifact_sha256": {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n },\n "byte_length": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "evidence_id": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "metadata_status": {\n "enum": [\n "absent",\n "complete",\n "partial",\n "malformed"\n ],\n "type": "string"\n },\n "module_name": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "mvid": {\n "anyOf": [\n {\n "pattern": "^[0-9a-fA-F]{8}(?:-[0-9a-fA-F]{4}){3}-[0-9a-fA-F]{12}$",\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "evidence_id",\n "artifact_sha256",\n "artifact_path",\n "byte_length",\n "module_name",\n "mvid",\n "metadata_status"\n ],\n "type": "object"\n },\n "summary": {\n "additionalProperties": false,\n "properties": {\n "decompiled_csharp_methods": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "decompiled_il_methods": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "imported_methods": {\n "maximum": 9007199254740991,\n "minimum": 1,\n "type": "integer"\n },\n "pseudocode_methods": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "total_text_bytes": {\n "maximum": 9007199254740991,\n "minimum": 1,\n "type": "integer"\n }\n },\n "required": [\n "imported_methods",\n "decompiled_csharp_methods",\n "decompiled_il_methods",\n "pseudocode_methods",\n "total_text_bytes"\n ],\n "type": "object"\n }\n },\n "required": [\n "reconstruction_id",\n "phase",\n "executed",\n "static_observation",\n "decompiler",\n "summary",\n "methods",\n "notes",\n "evidence_links",\n "limitations"\n ],\n "type": "object"\n }\n },\n "required": [\n "result",\n "evidence_id",\n "evidence"\n ],\n "type": "object"\n },\n "requiresSession": true,\n "title": "Import Managed Reconstruction"\n },\n {\n "analysisOperation": null,\n "annotations": {\n "destructiveHint": false,\n "idempotentHint": true,\n "openWorldHint": false,\n "readOnlyHint": false\n },\n "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.",\n "effects": {\n "accessesNetwork": false,\n "changesUiState": false,\n "idempotent": true,\n "launchesProcess": false,\n "mayDiscardData": false,\n "mutatesSession": true,\n "mutatesTarget": false,\n "writesFilesystem": false\n },\n "inputSchema": {\n "$defs": {\n "__schema0": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "number"\n },\n {\n "type": "boolean"\n },\n {\n "type": "null"\n },\n {\n "items": {\n "$ref": "#/$defs/__schema0"\n },\n "type": "array"\n },\n {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n }\n ]\n }\n },\n "$schema": "https://json-schema.org/draft/2020-12/schema",\n "anyOf": [\n {\n "additionalProperties": false,\n "properties": {\n "managed_artifact": {\n "additionalProperties": false,\n "description": "Value for managed artifact.",\n "properties": {\n "analysis_profile": {\n "description": "Value for analysis profile.",\n "properties": {\n "digest": {\n "description": "Value for digest.",\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n },\n "parameters": {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "description": "Value for parameters.",\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n },\n "provider": {\n "description": "Value for provider.",\n "properties": {\n "id": {\n "description": "Value for id.",\n "minLength": 1,\n "type": "string"\n },\n "name": {\n "description": "Exact name used by this operation.",\n "minLength": 1,\n "type": "string"\n },\n "version": {\n "description": "Value for version.",\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "id",\n "name",\n "version"\n ],\n "type": "object"\n }\n },\n "required": [\n "provider",\n "parameters",\n "digest"\n ],\n "type": "object"\n },\n "authority": {\n "description": "Value for authority.",\n "enum": [\n "shipped-artifact",\n "controlled-replay",\n "historical-reference",\n "external-service",\n "analyst-inference"\n ],\n "type": "string"\n },\n "confidence": {\n "description": "Value for confidence.",\n "enum": [\n "observed",\n "derived",\n "inferred"\n ],\n "type": "string"\n },\n "environment": {\n "anyOf": [\n {\n "properties": {\n "architecture": {\n "description": "Value for architecture.",\n "minLength": 1,\n "type": "string"\n },\n "id": {\n "description": "Value for id.",\n "minLength": 1,\n "type": "string"\n },\n "isolation": {\n "description": "Value for isolation.",\n "enum": [\n "none",\n "process",\n "container",\n "virtual-machine"\n ],\n "type": "string"\n },\n "platform": {\n "description": "Value for platform.",\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "id",\n "platform",\n "architecture",\n "isolation"\n ],\n "type": "object"\n },\n {\n "type": "null"\n }\n ],\n "description": "Value for environment."\n },\n "evidence_id": {\n "description": "Stable identifier of the recorded Evidence observation.",\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "evidence_links": {\n "description": "Value for evidence links.",\n "items": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "type": "array"\n },\n "limitations": {\n "description": "Value for limitations.",\n "items": {\n "type": "string"\n },\n "type": "array"\n },\n "locations": {\n "description": "Value for locations.",\n "items": {\n "oneOf": [\n {\n "properties": {\n "address": {\n "description": "Value for address.",\n "minLength": 1,\n "type": "string"\n },\n "kind": {\n "const": "address",\n "description": "Value for kind.",\n "type": "string"\n }\n },\n "required": [\n "kind",\n "address"\n ],\n "type": "object"\n },\n {\n "properties": {\n "end": {\n "description": "Value for end.",\n "minLength": 1,\n "type": "string"\n },\n "kind": {\n "const": "address-range",\n "description": "Value for kind.",\n "type": "string"\n },\n "start": {\n "description": "Value for start.",\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "kind",\n "start",\n "end"\n ],\n "type": "object"\n },\n {\n "properties": {\n "kind": {\n "const": "artifact-path",\n "description": "Value for kind.",\n "type": "string"\n },\n "path": {\n "description": "Local filesystem path used by this operation.",\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "kind",\n "path"\n ],\n "type": "object"\n },\n {\n "properties": {\n "kind": {\n "const": "file-offset",\n "description": "Value for kind.",\n "type": "string"\n },\n "offset": {\n "description": "Value for offset.",\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "kind",\n "offset"\n ],\n "type": "object"\n },\n {\n "properties": {\n "end": {\n "description": "Value for end.",\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "kind": {\n "const": "file-offset-range",\n "description": "Value for kind.",\n "type": "string"\n },\n "start": {\n "description": "Value for start.",\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "kind",\n "start",\n "end"\n ],\n "type": "object"\n }\n ]\n },\n "type": "array"\n },\n "normalized_result": {\n "$ref": "#/$defs/__schema0",\n "description": "Value for normalized result."\n },\n "operation": {\n "description": "Value for operation.",\n "minLength": 1,\n "type": "string"\n },\n "parameters": {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "description": "Value for parameters.",\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n },\n "predicate_type": {\n "description": "Value for predicate type.",\n "minLength": 1,\n "type": "string"\n },\n "provider": {\n "description": "Value for provider.",\n "properties": {\n "id": {\n "description": "Value for id.",\n "minLength": 1,\n "type": "string"\n },\n "name": {\n "description": "Exact name used by this operation.",\n "minLength": 1,\n "type": "string"\n },\n "version": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ],\n "description": "Value for version."\n }\n },\n "required": [\n "id",\n "name",\n "version"\n ],\n "type": "object"\n },\n "raw_result": {\n "anyOf": [\n {\n "$ref": "#/$defs/__schema0"\n },\n {\n "type": "null"\n }\n ],\n "description": "Value for raw result."\n },\n "subject": {\n "anyOf": [\n {\n "properties": {\n "architecture": {\n "anyOf": [\n {\n "enum": [\n "x86",\n "x86_64",\n "arm",\n "arm64"\n ],\n "type": "string"\n },\n {\n "type": "null"\n }\n ],\n "description": "Value for architecture."\n },\n "digest": {\n "description": "Value for digest.",\n "properties": {\n "sha256": {\n "description": "Value for sha256.",\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n }\n },\n "required": [\n "sha256"\n ],\n "type": "object"\n },\n "format": {\n "description": "Declared input artifact format.",\n "enum": [\n "hopper",\n "analysis-database",\n "mach-o",\n "elf",\n "pe",\n "dos-mz",\n "dos-com",\n "zip",\n "ipa",\n "apk",\n "msix",\n "appx",\n "asar",\n "dmg",\n "pkg",\n "plist",\n "javascript",\n "source-map",\n "directory",\n "file",\n "unknown",\n "mach-o-universal",\n "javascript-bundle",\n "entitlements"\n ],\n "type": "string"\n },\n "local_path": {\n "description": "Local filesystem path for local.",\n "type": "string"\n },\n "name": {\n "description": "Exact name used by this operation.",\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "name",\n "digest",\n "format",\n "architecture",\n "local_path"\n ],\n "type": "object"\n },\n {\n "type": "null"\n }\n ],\n "description": "Value for subject."\n }\n },\n "required": [\n "evidence_id",\n "subject",\n "provider",\n "predicate_type",\n "operation",\n "parameters",\n "raw_result",\n "normalized_result",\n "confidence",\n "authority",\n "environment",\n "limitations",\n "locations",\n "evidence_links"\n ],\n "type": "object"\n },\n "managed_members": {\n "additionalProperties": false,\n "description": "Value for managed members.",\n "properties": {\n "analysis_profile": {\n "description": "Value for analysis profile.",\n "properties": {\n "digest": {\n "description": "Value for digest.",\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n },\n "parameters": {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "description": "Value for parameters.",\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n },\n "provider": {\n "description": "Value for provider.",\n "properties": {\n "id": {\n "description": "Value for id.",\n "minLength": 1,\n "type": "string"\n },\n "name": {\n "description": "Exact name used by this operation.",\n "minLength": 1,\n "type": "string"\n },\n "version": {\n "description": "Value for version.",\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "id",\n "name",\n "version"\n ],\n "type": "object"\n }\n },\n "required": [\n "provider",\n "parameters",\n "digest"\n ],\n "type": "object"\n },\n "authority": {\n "description": "Value for authority.",\n "enum": [\n "shipped-artifact",\n "controlled-replay",\n "historical-reference",\n "external-service",\n "analyst-inference"\n ],\n "type": "string"\n },\n "confidence": {\n "description": "Value for confidence.",\n "enum": [\n "observed",\n "derived",\n "inferred"\n ],\n "type": "string"\n },\n "environment": {\n "anyOf": [\n {\n "properties": {\n "architecture": {\n "description": "Value for architecture.",\n "minLength": 1,\n "type": "string"\n },\n "id": {\n "description": "Value for id.",\n "minLength": 1,\n "type": "string"\n },\n "isolation": {\n "description": "Value for isolation.",\n "enum": [\n "none",\n "process",\n "container",\n "virtual-machine"\n ],\n "type": "string"\n },\n "platform": {\n "description": "Value for platform.",\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "id",\n "platform",\n "architecture",\n "isolation"\n ],\n "type": "object"\n },\n {\n "type": "null"\n }\n ],\n "description": "Value for environment."\n },\n "evidence_id": {\n "description": "Stable identifier of the recorded Evidence observation.",\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "evidence_links": {\n "description": "Value for evidence links.",\n "items": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "type": "array"\n },\n "limitations": {\n "description": "Value for limitations.",\n "items": {\n "type": "string"\n },\n "type": "array"\n },\n "locations": {\n "description": "Value for locations.",\n "items": {\n "oneOf": [\n {\n "properties": {\n "address": {\n "description": "Value for address.",\n "minLength": 1,\n "type": "string"\n },\n "kind": {\n "const": "address",\n "description": "Value for kind.",\n "type": "string"\n }\n },\n "required": [\n "kind",\n "address"\n ],\n "type": "object"\n },\n {\n "properties": {\n "end": {\n "description": "Value for end.",\n "minLength": 1,\n "type": "string"\n },\n "kind": {\n "const": "address-range",\n "description": "Value for kind.",\n "type": "string"\n },\n "start": {\n "description": "Value for start.",\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "kind",\n "start",\n "end"\n ],\n "type": "object"\n },\n {\n "properties": {\n "kind": {\n "const": "artifact-path",\n "description": "Value for kind.",\n "type": "string"\n },\n "path": {\n "description": "Local filesystem path used by this operation.",\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "kind",\n "path"\n ],\n "type": "object"\n },\n {\n "properties": {\n "kind": {\n "const": "file-offset",\n "description": "Value for kind.",\n "type": "string"\n },\n "offset": {\n "description": "Value for offset.",\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "kind",\n "offset"\n ],\n "type": "object"\n },\n {\n "properties": {\n "end": {\n "description": "Value for end.",\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "kind": {\n "const": "file-offset-range",\n "description": "Value for kind.",\n "type": "string"\n },\n "start": {\n "description": "Value for start.",\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "kind",\n "start",\n "end"\n ],\n "type": "object"\n }\n ]\n },\n "type": "array"\n },\n "normalized_result": {\n "$ref": "#/$defs/__schema0",\n "description": "Value for normalized result."\n },\n "operation": {\n "description": "Value for operation.",\n "minLength": 1,\n "type": "string"\n },\n "parameters": {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "description": "Value for parameters.",\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n },\n "predicate_type": {\n "description": "Value for predicate type.",\n "minLength": 1,\n "type": "string"\n },\n "provider": {\n "description": "Value for provider.",\n "properties": {\n "id": {\n "description": "Value for id.",\n "minLength": 1,\n "type": "string"\n },\n "name": {\n "description": "Exact name used by this operation.",\n "minLength": 1,\n "type": "string"\n },\n "version": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ],\n "description": "Value for version."\n }\n },\n "required": [\n "id",\n "name",\n "version"\n ],\n "type": "object"\n },\n "raw_result": {\n "anyOf": [\n {\n "$ref": "#/$defs/__schema0"\n },\n {\n "type": "null"\n }\n ],\n "description": "Value for raw result."\n },\n "subject": {\n "anyOf": [\n {\n "properties": {\n "architecture": {\n "anyOf": [\n {\n "enum": [\n "x86",\n "x86_64",\n "arm",\n "arm64"\n ],\n "type": "string"\n },\n {\n "type": "null"\n }\n ],\n "description": "Value for architecture."\n },\n "digest": {\n "description": "Value for digest.",\n "properties": {\n "sha256": {\n "description": "Value for sha256.",\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n }\n },\n "required": [\n "sha256"\n ],\n "type": "object"\n },\n "format": {\n "description": "Declared input artifact format.",\n "enum": [\n "hopper",\n "analysis-database",\n "mach-o",\n "elf",\n "pe",\n "dos-mz",\n "dos-com",\n "zip",\n "ipa",\n "apk",\n "msix",\n "appx",\n "asar",\n "dmg",\n "pkg",\n "plist",\n "javascript",\n "source-map",\n "directory",\n "file",\n "unknown",\n "mach-o-universal",\n "javascript-bundle",\n "entitlements"\n ],\n "type": "string"\n },\n "local_path": {\n "description": "Local filesystem path for local.",\n "type": "string"\n },\n "name": {\n "description": "Exact name used by this operation.",\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "name",\n "digest",\n "format",\n "architecture",\n "local_path"\n ],\n "type": "object"\n },\n {\n "type": "null"\n }\n ],\n "description": "Value for subject."\n }\n },\n "required": [\n "evidence_id",\n "subject",\n "provider",\n "predicate_type",\n "operation",\n "parameters",\n "raw_result",\n "normalized_result",\n "confidence",\n "authority",\n "environment",\n "limitations",\n "locations",\n "evidence_links"\n ],\n "type": "object"\n },\n "managed_native_boundaries": {\n "additionalProperties": false,\n "description": "Value for managed native boundaries.",\n "properties": {\n "analysis_profile": {\n "description": "Value for analysis profile.",\n "properties": {\n "digest": {\n "description": "Value for digest.",\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n },\n "parameters": {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "description": "Value for parameters.",\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n },\n "provider": {\n "description": "Value for provider.",\n "properties": {\n "id": {\n "description": "Value for id.",\n "minLength": 1,\n "type": "string"\n },\n "name": {\n "description": "Exact name used by this operation.",\n "minLength": 1,\n "type": "string"\n },\n "version": {\n "description": "Value for version.",\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "id",\n "name",\n "version"\n ],\n "type": "object"\n }\n },\n "required": [\n "provider",\n "parameters",\n "digest"\n ],\n "type": "object"\n },\n "authority": {\n "description": "Value for authority.",\n "enum": [\n "shipped-artifact",\n "controlled-replay",\n "historical-reference",\n "external-service",\n "analyst-inference"\n ],\n "type": "string"\n },\n "confidence": {\n "description": "Value for confidence.",\n "enum": [\n "observed",\n "derived",\n "inferred"\n ],\n "type": "string"\n },\n "environment": {\n "anyOf": [\n {\n "properties": {\n "architecture": {\n "description": "Value for architecture.",\n "minLength": 1,\n "type": "string"\n },\n "id": {\n "description": "Value for id.",\n "minLength": 1,\n "type": "string"\n },\n "isolation": {\n "description": "Value for isolation.",\n "enum": [\n "none",\n "process",\n "container",\n "virtual-machine"\n ],\n "type": "string"\n },\n "platform": {\n "description": "Value for platform.",\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "id",\n "platform",\n "architecture",\n "isolation"\n ],\n "type": "object"\n },\n {\n "type": "null"\n }\n ],\n "description": "Value for environment."\n },\n "evidence_id": {\n "description": "Stable identifier of the recorded Evidence observation.",\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "evidence_links": {\n "description": "Value for evidence links.",\n "items": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "type": "array"\n },\n "limitations": {\n "description": "Value for limitations.",\n "items": {\n "type": "string"\n },\n "type": "array"\n },\n "locations": {\n "description": "Value for locations.",\n "items": {\n "oneOf": [\n {\n "properties": {\n "address": {\n "description": "Value for address.",\n "minLength": 1,\n "type": "string"\n },\n "kind": {\n "const": "address",\n "description": "Value for kind.",\n "type": "string"\n }\n },\n "required": [\n "kind",\n "address"\n ],\n "type": "object"\n },\n {\n "properties": {\n "end": {\n "description": "Value for end.",\n "minLength": 1,\n "type": "string"\n },\n "kind": {\n "const": "address-range",\n "description": "Value for kind.",\n "type": "string"\n },\n "start": {\n "description": "Value for start.",\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "kind",\n "start",\n "end"\n ],\n "type": "object"\n },\n {\n "properties": {\n "kind": {\n "const": "artifact-path",\n "description": "Value for kind.",\n "type": "string"\n },\n "path": {\n "description": "Local filesystem path used by this operation.",\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "kind",\n "path"\n ],\n "type": "object"\n },\n {\n "properties": {\n "kind": {\n "const": "file-offset",\n "description": "Value for kind.",\n "type": "string"\n },\n "offset": {\n "description": "Value for offset.",\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "kind",\n "offset"\n ],\n "type": "object"\n },\n {\n "properties": {\n "end": {\n "description": "Value for end.",\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "kind": {\n "const": "file-offset-range",\n "description": "Value for kind.",\n "type": "string"\n },\n "start": {\n "description": "Value for start.",\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "kind",\n "start",\n "end"\n ],\n "type": "object"\n }\n ]\n },\n "type": "array"\n },\n "normalized_result": {\n "$ref": "#/$defs/__schema0",\n "description": "Value for normalized result."\n },\n "operation": {\n "description": "Value for operation.",\n "minLength": 1,\n "type": "string"\n },\n "parameters": {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "description": "Value for parameters.",\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n },\n "predicate_type": {\n "description": "Value for predicate type.",\n "minLength": 1,\n "type": "string"\n },\n "provider": {\n "description": "Value for provider.",\n "properties": {\n "id": {\n "description": "Value for id.",\n "minLength": 1,\n "type": "string"\n },\n "name": {\n "description": "Exact name used by this operation.",\n "minLength": 1,\n "type": "string"\n },\n "version": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ],\n "description": "Value for version."\n }\n },\n "required": [\n "id",\n "name",\n "version"\n ],\n "type": "object"\n },\n "raw_result": {\n "anyOf": [\n {\n "$ref": "#/$defs/__schema0"\n },\n {\n "type": "null"\n }\n ],\n "description": "Value for raw result."\n },\n "subject": {\n "anyOf": [\n {\n "properties": {\n "architecture": {\n "anyOf": [\n {\n "enum": [\n "x86",\n "x86_64",\n "arm",\n "arm64"\n ],\n "type": "string"\n },\n {\n "type": "null"\n }\n ],\n "description": "Value for architecture."\n },\n "digest": {\n "description": "Value for digest.",\n "properties": {\n "sha256": {\n "description": "Value for sha256.",\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n }\n },\n "required": [\n "sha256"\n ],\n "type": "object"\n },\n "format": {\n "description": "Declared input artifact format.",\n "enum": [\n "hopper",\n "analysis-database",\n "mach-o",\n "elf",\n "pe",\n "dos-mz",\n "dos-com",\n "zip",\n "ipa",\n "apk",\n "msix",\n "appx",\n "asar",\n "dmg",\n "pkg",\n "plist",\n "javascript",\n "source-map",\n "directory",\n "file",\n "unknown",\n "mach-o-universal",\n "javascript-bundle",\n "entitlements"\n ],\n "type": "string"\n },\n "local_path": {\n "description": "Local filesystem path for local.",\n "type": "string"\n },\n "name": {\n "description": "Exact name used by this operation.",\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "name",\n "digest",\n "format",\n "architecture",\n "local_path"\n ],\n "type": "object"\n },\n {\n "type": "null"\n }\n ],\n "description": "Value for subject."\n }\n },\n "required": [\n "evidence_id",\n "subject",\n "provider",\n "predicate_type",\n "operation",\n "parameters",\n "raw_result",\n "normalized_result",\n "confidence",\n "authority",\n "environment",\n "limitations",\n "locations",\n "evidence_links"\n ],\n "type": "object"\n }\n },\n "required": [\n "managed_artifact"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "managed_artifact": {\n "additionalProperties": false,\n "description": "Value for managed artifact.",\n "properties": {\n "analysis_profile": {\n "description": "Value for analysis profile.",\n "properties": {\n "digest": {\n "description": "Value for digest.",\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n },\n "parameters": {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "description": "Value for parameters.",\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n },\n "provider": {\n "description": "Value for provider.",\n "properties": {\n "id": {\n "description": "Value for id.",\n "minLength": 1,\n "type": "string"\n },\n "name": {\n "description": "Exact name used by this operation.",\n "minLength": 1,\n "type": "string"\n },\n "version": {\n "description": "Value for version.",\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "id",\n "name",\n "version"\n ],\n "type": "object"\n }\n },\n "required": [\n "provider",\n "parameters",\n "digest"\n ],\n "type": "object"\n },\n "authority": {\n "description": "Value for authority.",\n "enum": [\n "shipped-artifact",\n "controlled-replay",\n "historical-reference",\n "external-service",\n "analyst-inference"\n ],\n "type": "string"\n },\n "confidence": {\n "description": "Value for confidence.",\n "enum": [\n "observed",\n "derived",\n "inferred"\n ],\n "type": "string"\n },\n "environment": {\n "anyOf": [\n {\n "properties": {\n "architecture": {\n "description": "Value for architecture.",\n "minLength": 1,\n "type": "string"\n },\n "id": {\n "description": "Value for id.",\n "minLength": 1,\n "type": "string"\n },\n "isolation": {\n "description": "Value for isolation.",\n "enum": [\n "none",\n "process",\n "container",\n "virtual-machine"\n ],\n "type": "string"\n },\n "platform": {\n "description": "Value for platform.",\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "id",\n "platform",\n "architecture",\n "isolation"\n ],\n "type": "object"\n },\n {\n "type": "null"\n }\n ],\n "description": "Value for environment."\n },\n "evidence_id": {\n "description": "Stable identifier of the recorded Evidence observation.",\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "evidence_links": {\n "description": "Value for evidence links.",\n "items": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "type": "array"\n },\n "limitations": {\n "description": "Value for limitations.",\n "items": {\n "type": "string"\n },\n "type": "array"\n },\n "locations": {\n "description": "Value for locations.",\n "items": {\n "oneOf": [\n {\n "properties": {\n "address": {\n "description": "Value for address.",\n "minLength": 1,\n "type": "string"\n },\n "kind": {\n "const": "address",\n "description": "Value for kind.",\n "type": "string"\n }\n },\n "required": [\n "kind",\n "address"\n ],\n "type": "object"\n },\n {\n "properties": {\n "end": {\n "description": "Value for end.",\n "minLength": 1,\n "type": "string"\n },\n "kind": {\n "const": "address-range",\n "description": "Value for kind.",\n "type": "string"\n },\n "start": {\n "description": "Value for start.",\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "kind",\n "start",\n "end"\n ],\n "type": "object"\n },\n {\n "properties": {\n "kind": {\n "const": "artifact-path",\n "description": "Value for kind.",\n "type": "string"\n },\n "path": {\n "description": "Local filesystem path used by this operation.",\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "kind",\n "path"\n ],\n "type": "object"\n },\n {\n "properties": {\n "kind": {\n "const": "file-offset",\n "description": "Value for kind.",\n "type": "string"\n },\n "offset": {\n "description": "Value for offset.",\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "kind",\n "offset"\n ],\n "type": "object"\n },\n {\n "properties": {\n "end": {\n "description": "Value for end.",\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "kind": {\n "const": "file-offset-range",\n "description": "Value for kind.",\n "type": "string"\n },\n "start": {\n "description": "Value for start.",\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "kind",\n "start",\n "end"\n ],\n "type": "object"\n }\n ]\n },\n "type": "array"\n },\n "normalized_result": {\n "$ref": "#/$defs/__schema0",\n "description": "Value for normalized result."\n },\n "operation": {\n "description": "Value for operation.",\n "minLength": 1,\n "type": "string"\n },\n "parameters": {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "description": "Value for parameters.",\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n },\n "predicate_type": {\n "description": "Value for predicate type.",\n "minLength": 1,\n "type": "string"\n },\n "provider": {\n "description": "Value for provider.",\n "properties": {\n "id": {\n "description": "Value for id.",\n "minLength": 1,\n "type": "string"\n },\n "name": {\n "description": "Exact name used by this operation.",\n "minLength": 1,\n "type": "string"\n },\n "version": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ],\n "description": "Value for version."\n }\n },\n "required": [\n "id",\n "name",\n "version"\n ],\n "type": "object"\n },\n "raw_result": {\n "anyOf": [\n {\n "$ref": "#/$defs/__schema0"\n },\n {\n "type": "null"\n }\n ],\n "description": "Value for raw result."\n },\n "subject": {\n "anyOf": [\n {\n "properties": {\n "architecture": {\n "anyOf": [\n {\n "enum": [\n "x86",\n "x86_64",\n "arm",\n "arm64"\n ],\n "type": "string"\n },\n {\n "type": "null"\n }\n ],\n "description": "Value for architecture."\n },\n "digest": {\n "description": "Value for digest.",\n "properties": {\n "sha256": {\n "description": "Value for sha256.",\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n }\n },\n "required": [\n "sha256"\n ],\n "type": "object"\n },\n "format": {\n "description": "Declared input artifact format.",\n "enum": [\n "hopper",\n "analysis-database",\n "mach-o",\n "elf",\n "pe",\n "dos-mz",\n "dos-com",\n "zip",\n "ipa",\n "apk",\n "msix",\n "appx",\n "asar",\n "dmg",\n "pkg",\n "plist",\n "javascript",\n "source-map",\n "directory",\n "file",\n "unknown",\n "mach-o-universal",\n "javascript-bundle",\n "entitlements"\n ],\n "type": "string"\n },\n "local_path": {\n "description": "Local filesystem path for local.",\n "type": "string"\n },\n "name": {\n "description": "Exact name used by this operation.",\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "name",\n "digest",\n "format",\n "architecture",\n "local_path"\n ],\n "type": "object"\n },\n {\n "type": "null"\n }\n ],\n "description": "Value for subject."\n }\n },\n "required": [\n "evidence_id",\n "subject",\n "provider",\n "predicate_type",\n "operation",\n "parameters",\n "raw_result",\n "normalized_result",\n "confidence",\n "authority",\n "environment",\n "limitations",\n "locations",\n "evidence_links"\n ],\n "type": "object"\n },\n "managed_members": {\n "additionalProperties": false,\n "description": "Value for managed members.",\n "properties": {\n "analysis_profile": {\n "description": "Value for analysis profile.",\n "properties": {\n "digest": {\n "description": "Value for digest.",\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n },\n "parameters": {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "description": "Value for parameters.",\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n },\n "provider": {\n "description": "Value for provider.",\n "properties": {\n "id": {\n "description": "Value for id.",\n "minLength": 1,\n "type": "string"\n },\n "name": {\n "description": "Exact name used by this operation.",\n "minLength": 1,\n "type": "string"\n },\n "version": {\n "description": "Value for version.",\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "id",\n "name",\n "version"\n ],\n "type": "object"\n }\n },\n "required": [\n "provider",\n "parameters",\n "digest"\n ],\n "type": "object"\n },\n "authority": {\n "description": "Value for authority.",\n "enum": [\n "shipped-artifact",\n "controlled-replay",\n "historical-reference",\n "external-service",\n "analyst-inference"\n ],\n "type": "string"\n },\n "confidence": {\n "description": "Value for confidence.",\n "enum": [\n "observed",\n "derived",\n "inferred"\n ],\n "type": "string"\n },\n "environment": {\n "anyOf": [\n {\n "properties": {\n "architecture": {\n "description": "Value for architecture.",\n "minLength": 1,\n "type": "string"\n },\n "id": {\n "description": "Value for id.",\n "minLength": 1,\n "type": "string"\n },\n "isolation": {\n "description": "Value for isolation.",\n "enum": [\n "none",\n "process",\n "container",\n "virtual-machine"\n ],\n "type": "string"\n },\n "platform": {\n "description": "Value for platform.",\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "id",\n "platform",\n "architecture",\n "isolation"\n ],\n "type": "object"\n },\n {\n "type": "null"\n }\n ],\n "description": "Value for environment."\n },\n "evidence_id": {\n "description": "Stable identifier of the recorded Evidence observation.",\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "evidence_links": {\n "description": "Value for evidence links.",\n "items": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "type": "array"\n },\n "limitations": {\n "description": "Value for limitations.",\n "items": {\n "type": "string"\n },\n "type": "array"\n },\n "locations": {\n "description": "Value for locations.",\n "items": {\n "oneOf": [\n {\n "properties": {\n "address": {\n "description": "Value for address.",\n "minLength": 1,\n "type": "string"\n },\n "kind": {\n "const": "address",\n "description": "Value for kind.",\n "type": "string"\n }\n },\n "required": [\n "kind",\n "address"\n ],\n "type": "object"\n },\n {\n "properties": {\n "end": {\n "description": "Value for end.",\n "minLength": 1,\n "type": "string"\n },\n "kind": {\n "const": "address-range",\n "description": "Value for kind.",\n "type": "string"\n },\n "start": {\n "description": "Value for start.",\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "kind",\n "start",\n "end"\n ],\n "type": "object"\n },\n {\n "properties": {\n "kind": {\n "const": "artifact-path",\n "description": "Value for kind.",\n "type": "string"\n },\n "path": {\n "description": "Local filesystem path used by this operation.",\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "kind",\n "path"\n ],\n "type": "object"\n },\n {\n "properties": {\n "kind": {\n "const": "file-offset",\n "description": "Value for kind.",\n "type": "string"\n },\n "offset": {\n "description": "Value for offset.",\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "kind",\n "offset"\n ],\n "type": "object"\n },\n {\n "properties": {\n "end": {\n "description": "Value for end.",\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "kind": {\n "const": "file-offset-range",\n "description": "Value for kind.",\n "type": "string"\n },\n "start": {\n "description": "Value for start.",\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "kind",\n "start",\n "end"\n ],\n "type": "object"\n }\n ]\n },\n "type": "array"\n },\n "normalized_result": {\n "$ref": "#/$defs/__schema0",\n "description": "Value for normalized result."\n },\n "operation": {\n "description": "Value for operation.",\n "minLength": 1,\n "type": "string"\n },\n "parameters": {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "description": "Value for parameters.",\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n },\n "predicate_type": {\n "description": "Value for predicate type.",\n "minLength": 1,\n "type": "string"\n },\n "provider": {\n "description": "Value for provider.",\n "properties": {\n "id": {\n "description": "Value for id.",\n "minLength": 1,\n "type": "string"\n },\n "name": {\n "description": "Exact name used by this operation.",\n "minLength": 1,\n "type": "string"\n },\n "version": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ],\n "description": "Value for version."\n }\n },\n "required": [\n "id",\n "name",\n "version"\n ],\n "type": "object"\n },\n "raw_result": {\n "anyOf": [\n {\n "$ref": "#/$defs/__schema0"\n },\n {\n "type": "null"\n }\n ],\n "description": "Value for raw result."\n },\n "subject": {\n "anyOf": [\n {\n "properties": {\n "architecture": {\n "anyOf": [\n {\n "enum": [\n "x86",\n "x86_64",\n "arm",\n "arm64"\n ],\n "type": "string"\n },\n {\n "type": "null"\n }\n ],\n "description": "Value for architecture."\n },\n "digest": {\n "description": "Value for digest.",\n "properties": {\n "sha256": {\n "description": "Value for sha256.",\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n }\n },\n "required": [\n "sha256"\n ],\n "type": "object"\n },\n "format": {\n "description": "Declared input artifact format.",\n "enum": [\n "hopper",\n "analysis-database",\n "mach-o",\n "elf",\n "pe",\n "dos-mz",\n "dos-com",\n "zip",\n "ipa",\n "apk",\n "msix",\n "appx",\n "asar",\n "dmg",\n "pkg",\n "plist",\n "javascript",\n "source-map",\n "directory",\n "file",\n "unknown",\n "mach-o-universal",\n "javascript-bundle",\n "entitlements"\n ],\n "type": "string"\n },\n "local_path": {\n "description": "Local filesystem path for local.",\n "type": "string"\n },\n "name": {\n "description": "Exact name used by this operation.",\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "name",\n "digest",\n "format",\n "architecture",\n "local_path"\n ],\n "type": "object"\n },\n {\n "type": "null"\n }\n ],\n "description": "Value for subject."\n }\n },\n "required": [\n "evidence_id",\n "subject",\n "provider",\n "predicate_type",\n "operation",\n "parameters",\n "raw_result",\n "normalized_result",\n "confidence",\n "authority",\n "environment",\n "limitations",\n "locations",\n "evidence_links"\n ],\n "type": "object"\n },\n "managed_native_boundaries": {\n "additionalProperties": false,\n "description": "Value for managed native boundaries.",\n "properties": {\n "analysis_profile": {\n "description": "Value for analysis profile.",\n "properties": {\n "digest": {\n "description": "Value for digest.",\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n },\n "parameters": {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "description": "Value for parameters.",\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n },\n "provider": {\n "description": "Value for provider.",\n "properties": {\n "id": {\n "description": "Value for id.",\n "minLength": 1,\n "type": "string"\n },\n "name": {\n "description": "Exact name used by this operation.",\n "minLength": 1,\n "type": "string"\n },\n "version": {\n "description": "Value for version.",\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "id",\n "name",\n "version"\n ],\n "type": "object"\n }\n },\n "required": [\n "provider",\n "parameters",\n "digest"\n ],\n "type": "object"\n },\n "authority": {\n "description": "Value for authority.",\n "enum": [\n "shipped-artifact",\n "controlled-replay",\n "historical-reference",\n "external-service",\n "analyst-inference"\n ],\n "type": "string"\n },\n "confidence": {\n "description": "Value for confidence.",\n "enum": [\n "observed",\n "derived",\n "inferred"\n ],\n "type": "string"\n },\n "environment": {\n "anyOf": [\n {\n "properties": {\n "architecture": {\n "description": "Value for architecture.",\n "minLength": 1,\n "type": "string"\n },\n "id": {\n "description": "Value for id.",\n "minLength": 1,\n "type": "string"\n },\n "isolation": {\n "description": "Value for isolation.",\n "enum": [\n "none",\n "process",\n "container",\n "virtual-machine"\n ],\n "type": "string"\n },\n "platform": {\n "description": "Value for platform.",\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "id",\n "platform",\n "architecture",\n "isolation"\n ],\n "type": "object"\n },\n {\n "type": "null"\n }\n ],\n "description": "Value for environment."\n },\n "evidence_id": {\n "description": "Stable identifier of the recorded Evidence observation.",\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "evidence_links": {\n "description": "Value for evidence links.",\n "items": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "type": "array"\n },\n "limitations": {\n "description": "Value for limitations.",\n "items": {\n "type": "string"\n },\n "type": "array"\n },\n "locations": {\n "description": "Value for locations.",\n "items": {\n "oneOf": [\n {\n "properties": {\n "address": {\n "description": "Value for address.",\n "minLength": 1,\n "type": "string"\n },\n "kind": {\n "const": "address",\n "description": "Value for kind.",\n "type": "string"\n }\n },\n "required": [\n "kind",\n "address"\n ],\n "type": "object"\n },\n {\n "properties": {\n "end": {\n "description": "Value for end.",\n "minLength": 1,\n "type": "string"\n },\n "kind": {\n "const": "address-range",\n "description": "Value for kind.",\n "type": "string"\n },\n "start": {\n "description": "Value for start.",\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "kind",\n "start",\n "end"\n ],\n "type": "object"\n },\n {\n "properties": {\n "kind": {\n "const": "artifact-path",\n "description": "Value for kind.",\n "type": "string"\n },\n "path": {\n "description": "Local filesystem path used by this operation.",\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "kind",\n "path"\n ],\n "type": "object"\n },\n {\n "properties": {\n "kind": {\n "const": "file-offset",\n "description": "Value for kind.",\n "type": "string"\n },\n "offset": {\n "description": "Value for offset.",\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "kind",\n "offset"\n ],\n "type": "object"\n },\n {\n "properties": {\n "end": {\n "description": "Value for end.",\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "kind": {\n "const": "file-offset-range",\n "description": "Value for kind.",\n "type": "string"\n },\n "start": {\n "description": "Value for start.",\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "kind",\n "start",\n "end"\n ],\n "type": "object"\n }\n ]\n },\n "type": "array"\n },\n "normalized_result": {\n "$ref": "#/$defs/__schema0",\n "description": "Value for normalized result."\n },\n "operation": {\n "description": "Value for operation.",\n "minLength": 1,\n "type": "string"\n },\n "parameters": {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "description": "Value for parameters.",\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n },\n "predicate_type": {\n "description": "Value for predicate type.",\n "minLength": 1,\n "type": "string"\n },\n "provider": {\n "description": "Value for provider.",\n "properties": {\n "id": {\n "description": "Value for id.",\n "minLength": 1,\n "type": "string"\n },\n "name": {\n "description": "Exact name used by this operation.",\n "minLength": 1,\n "type": "string"\n },\n "version": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ],\n "description": "Value for version."\n }\n },\n "required": [\n "id",\n "name",\n "version"\n ],\n "type": "object"\n },\n "raw_result": {\n "anyOf": [\n {\n "$ref": "#/$defs/__schema0"\n },\n {\n "type": "null"\n }\n ],\n "description": "Value for raw result."\n },\n "subject": {\n "anyOf": [\n {\n "properties": {\n "architecture": {\n "anyOf": [\n {\n "enum": [\n "x86",\n "x86_64",\n "arm",\n "arm64"\n ],\n "type": "string"\n },\n {\n "type": "null"\n }\n ],\n "description": "Value for architecture."\n },\n "digest": {\n "description": "Value for digest.",\n "properties": {\n "sha256": {\n "description": "Value for sha256.",\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n }\n },\n "required": [\n "sha256"\n ],\n "type": "object"\n },\n "format": {\n "description": "Declared input artifact format.",\n "enum": [\n "hopper",\n "analysis-database",\n "mach-o",\n "elf",\n "pe",\n "dos-mz",\n "dos-com",\n "zip",\n "ipa",\n "apk",\n "msix",\n "appx",\n "asar",\n "dmg",\n "pkg",\n "plist",\n "javascript",\n "source-map",\n "directory",\n "file",\n "unknown",\n "mach-o-universal",\n "javascript-bundle",\n "entitlements"\n ],\n "type": "string"\n },\n "local_path": {\n "description": "Local filesystem path for local.",\n "type": "string"\n },\n "name": {\n "description": "Exact name used by this operation.",\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "name",\n "digest",\n "format",\n "architecture",\n "local_path"\n ],\n "type": "object"\n },\n {\n "type": "null"\n }\n ],\n "description": "Value for subject."\n }\n },\n "required": [\n "evidence_id",\n "subject",\n "provider",\n "predicate_type",\n "operation",\n "parameters",\n "raw_result",\n "normalized_result",\n "confidence",\n "authority",\n "environment",\n "limitations",\n "locations",\n "evidence_links"\n ],\n "type": "object"\n }\n },\n "required": [\n "managed_members"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "managed_artifact": {\n "additionalProperties": false,\n "description": "Value for managed artifact.",\n "properties": {\n "analysis_profile": {\n "description": "Value for analysis profile.",\n "properties": {\n "digest": {\n "description": "Value for digest.",\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n },\n "parameters": {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "description": "Value for parameters.",\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n },\n "provider": {\n "description": "Value for provider.",\n "properties": {\n "id": {\n "description": "Value for id.",\n "minLength": 1,\n "type": "string"\n },\n "name": {\n "description": "Exact name used by this operation.",\n "minLength": 1,\n "type": "string"\n },\n "version": {\n "description": "Value for version.",\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "id",\n "name",\n "version"\n ],\n "type": "object"\n }\n },\n "required": [\n "provider",\n "parameters",\n "digest"\n ],\n "type": "object"\n },\n "authority": {\n "description": "Value for authority.",\n "enum": [\n "shipped-artifact",\n "controlled-replay",\n "historical-reference",\n "external-service",\n "analyst-inference"\n ],\n "type": "string"\n },\n "confidence": {\n "description": "Value for confidence.",\n "enum": [\n "observed",\n "derived",\n "inferred"\n ],\n "type": "string"\n },\n "environment": {\n "anyOf": [\n {\n "properties": {\n "architecture": {\n "description": "Value for architecture.",\n "minLength": 1,\n "type": "string"\n },\n "id": {\n "description": "Value for id.",\n "minLength": 1,\n "type": "string"\n },\n "isolation": {\n "description": "Value for isolation.",\n "enum": [\n "none",\n "process",\n "container",\n "virtual-machine"\n ],\n "type": "string"\n },\n "platform": {\n "description": "Value for platform.",\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "id",\n "platform",\n "architecture",\n "isolation"\n ],\n "type": "object"\n },\n {\n "type": "null"\n }\n ],\n "description": "Value for environment."\n },\n "evidence_id": {\n "description": "Stable identifier of the recorded Evidence observation.",\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "evidence_links": {\n "description": "Value for evidence links.",\n "items": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "type": "array"\n },\n "limitations": {\n "description": "Value for limitations.",\n "items": {\n "type": "string"\n },\n "type": "array"\n },\n "locations": {\n "description": "Value for locations.",\n "items": {\n "oneOf": [\n {\n "properties": {\n "address": {\n "description": "Value for address.",\n "minLength": 1,\n "type": "string"\n },\n "kind": {\n "const": "address",\n "description": "Value for kind.",\n "type": "string"\n }\n },\n "required": [\n "kind",\n "address"\n ],\n "type": "object"\n },\n {\n "properties": {\n "end": {\n "description": "Value for end.",\n "minLength": 1,\n "type": "string"\n },\n "kind": {\n "const": "address-range",\n "description": "Value for kind.",\n "type": "string"\n },\n "start": {\n "description": "Value for start.",\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "kind",\n "start",\n "end"\n ],\n "type": "object"\n },\n {\n "properties": {\n "kind": {\n "const": "artifact-path",\n "description": "Value for kind.",\n "type": "string"\n },\n "path": {\n "description": "Local filesystem path used by this operation.",\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "kind",\n "path"\n ],\n "type": "object"\n },\n {\n "properties": {\n "kind": {\n "const": "file-offset",\n "description": "Value for kind.",\n "type": "string"\n },\n "offset": {\n "description": "Value for offset.",\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "kind",\n "offset"\n ],\n "type": "object"\n },\n {\n "properties": {\n "end": {\n "description": "Value for end.",\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "kind": {\n "const": "file-offset-range",\n "description": "Value for kind.",\n "type": "string"\n },\n "start": {\n "description": "Value for start.",\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "kind",\n "start",\n "end"\n ],\n "type": "object"\n }\n ]\n },\n "type": "array"\n },\n "normalized_result": {\n "$ref": "#/$defs/__schema0",\n "description": "Value for normalized result."\n },\n "operation": {\n "description": "Value for operation.",\n "minLength": 1,\n "type": "string"\n },\n "parameters": {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "description": "Value for parameters.",\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n },\n "predicate_type": {\n "description": "Value for predicate type.",\n "minLength": 1,\n "type": "string"\n },\n "provider": {\n "description": "Value for provider.",\n "properties": {\n "id": {\n "description": "Value for id.",\n "minLength": 1,\n "type": "string"\n },\n "name": {\n "description": "Exact name used by this operation.",\n "minLength": 1,\n "type": "string"\n },\n "version": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ],\n "description": "Value for version."\n }\n },\n "required": [\n "id",\n "name",\n "version"\n ],\n "type": "object"\n },\n "raw_result": {\n "anyOf": [\n {\n "$ref": "#/$defs/__schema0"\n },\n {\n "type": "null"\n }\n ],\n "description": "Value for raw result."\n },\n "subject": {\n "anyOf": [\n {\n "properties": {\n "architecture": {\n "anyOf": [\n {\n "enum": [\n "x86",\n "x86_64",\n "arm",\n "arm64"\n ],\n "type": "string"\n },\n {\n "type": "null"\n }\n ],\n "description": "Value for architecture."\n },\n "digest": {\n "description": "Value for digest.",\n "properties": {\n "sha256": {\n "description": "Value for sha256.",\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n }\n },\n "required": [\n "sha256"\n ],\n "type": "object"\n },\n "format": {\n "description": "Declared input artifact format.",\n "enum": [\n "hopper",\n "analysis-database",\n "mach-o",\n "elf",\n "pe",\n "dos-mz",\n "dos-com",\n "zip",\n "ipa",\n "apk",\n "msix",\n "appx",\n "asar",\n "dmg",\n "pkg",\n "plist",\n "javascript",\n "source-map",\n "directory",\n "file",\n "unknown",\n "mach-o-universal",\n "javascript-bundle",\n "entitlements"\n ],\n "type": "string"\n },\n "local_path": {\n "description": "Local filesystem path for local.",\n "type": "string"\n },\n "name": {\n "description": "Exact name used by this operation.",\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "name",\n "digest",\n "format",\n "architecture",\n "local_path"\n ],\n "type": "object"\n },\n {\n "type": "null"\n }\n ],\n "description": "Value for subject."\n }\n },\n "required": [\n "evidence_id",\n "subject",\n "provider",\n "predicate_type",\n "operation",\n "parameters",\n "raw_result",\n "normalized_result",\n "confidence",\n "authority",\n "environment",\n "limitations",\n "locations",\n "evidence_links"\n ],\n "type": "object"\n },\n "managed_members": {\n "additionalProperties": false,\n "description": "Value for managed members.",\n "properties": {\n "analysis_profile": {\n "description": "Value for analysis profile.",\n "properties": {\n "digest": {\n "description": "Value for digest.",\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n },\n "parameters": {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "description": "Value for parameters.",\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n },\n "provider": {\n "description": "Value for provider.",\n "properties": {\n "id": {\n "description": "Value for id.",\n "minLength": 1,\n "type": "string"\n },\n "name": {\n "description": "Exact name used by this operation.",\n "minLength": 1,\n "type": "string"\n },\n "version": {\n "description": "Value for version.",\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "id",\n "name",\n "version"\n ],\n "type": "object"\n }\n },\n "required": [\n "provider",\n "parameters",\n "digest"\n ],\n "type": "object"\n },\n "authority": {\n "description": "Value for authority.",\n "enum": [\n "shipped-artifact",\n "controlled-replay",\n "historical-reference",\n "external-service",\n "analyst-inference"\n ],\n "type": "string"\n },\n "confidence": {\n "description": "Value for confidence.",\n "enum": [\n "observed",\n "derived",\n "inferred"\n ],\n "type": "string"\n },\n "environment": {\n "anyOf": [\n {\n "properties": {\n "architecture": {\n "description": "Value for architecture.",\n "minLength": 1,\n "type": "string"\n },\n "id": {\n "description": "Value for id.",\n "minLength": 1,\n "type": "string"\n },\n "isolation": {\n "description": "Value for isolation.",\n "enum": [\n "none",\n "process",\n "container",\n "virtual-machine"\n ],\n "type": "string"\n },\n "platform": {\n "description": "Value for platform.",\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "id",\n "platform",\n "architecture",\n "isolation"\n ],\n "type": "object"\n },\n {\n "type": "null"\n }\n ],\n "description": "Value for environment."\n },\n "evidence_id": {\n "description": "Stable identifier of the recorded Evidence observation.",\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "evidence_links": {\n "description": "Value for evidence links.",\n "items": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "type": "array"\n },\n "limitations": {\n "description": "Value for limitations.",\n "items": {\n "type": "string"\n },\n "type": "array"\n },\n "locations": {\n "description": "Value for locations.",\n "items": {\n "oneOf": [\n {\n "properties": {\n "address": {\n "description": "Value for address.",\n "minLength": 1,\n "type": "string"\n },\n "kind": {\n "const": "address",\n "description": "Value for kind.",\n "type": "string"\n }\n },\n "required": [\n "kind",\n "address"\n ],\n "type": "object"\n },\n {\n "properties": {\n "end": {\n "description": "Value for end.",\n "minLength": 1,\n "type": "string"\n },\n "kind": {\n "const": "address-range",\n "description": "Value for kind.",\n "type": "string"\n },\n "start": {\n "description": "Value for start.",\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "kind",\n "start",\n "end"\n ],\n "type": "object"\n },\n {\n "properties": {\n "kind": {\n "const": "artifact-path",\n "description": "Value for kind.",\n "type": "string"\n },\n "path": {\n "description": "Local filesystem path used by this operation.",\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "kind",\n "path"\n ],\n "type": "object"\n },\n {\n "properties": {\n "kind": {\n "const": "file-offset",\n "description": "Value for kind.",\n "type": "string"\n },\n "offset": {\n "description": "Value for offset.",\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "kind",\n "offset"\n ],\n "type": "object"\n },\n {\n "properties": {\n "end": {\n "description": "Value for end.",\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "kind": {\n "const": "file-offset-range",\n "description": "Value for kind.",\n "type": "string"\n },\n "start": {\n "description": "Value for start.",\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "kind",\n "start",\n "end"\n ],\n "type": "object"\n }\n ]\n },\n "type": "array"\n },\n "normalized_result": {\n "$ref": "#/$defs/__schema0",\n "description": "Value for normalized result."\n },\n "operation": {\n "description": "Value for operation.",\n "minLength": 1,\n "type": "string"\n },\n "parameters": {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "description": "Value for parameters.",\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n },\n "predicate_type": {\n "description": "Value for predicate type.",\n "minLength": 1,\n "type": "string"\n },\n "provider": {\n "description": "Value for provider.",\n "properties": {\n "id": {\n "description": "Value for id.",\n "minLength": 1,\n "type": "string"\n },\n "name": {\n "description": "Exact name used by this operation.",\n "minLength": 1,\n "type": "string"\n },\n "version": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ],\n "description": "Value for version."\n }\n },\n "required": [\n "id",\n "name",\n "version"\n ],\n "type": "object"\n },\n "raw_result": {\n "anyOf": [\n {\n "$ref": "#/$defs/__schema0"\n },\n {\n "type": "null"\n }\n ],\n "description": "Value for raw result."\n },\n "subject": {\n "anyOf": [\n {\n "properties": {\n "architecture": {\n "anyOf": [\n {\n "enum": [\n "x86",\n "x86_64",\n "arm",\n "arm64"\n ],\n "type": "string"\n },\n {\n "type": "null"\n }\n ],\n "description": "Value for architecture."\n },\n "digest": {\n "description": "Value for digest.",\n "properties": {\n "sha256": {\n "description": "Value for sha256.",\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n }\n },\n "required": [\n "sha256"\n ],\n "type": "object"\n },\n "format": {\n "description": "Declared input artifact format.",\n "enum": [\n "hopper",\n "analysis-database",\n "mach-o",\n "elf",\n "pe",\n "dos-mz",\n "dos-com",\n "zip",\n "ipa",\n "apk",\n "msix",\n "appx",\n "asar",\n "dmg",\n "pkg",\n "plist",\n "javascript",\n "source-map",\n "directory",\n "file",\n "unknown",\n "mach-o-universal",\n "javascript-bundle",\n "entitlements"\n ],\n "type": "string"\n },\n "local_path": {\n "description": "Local filesystem path for local.",\n "type": "string"\n },\n "name": {\n "description": "Exact name used by this operation.",\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "name",\n "digest",\n "format",\n "architecture",\n "local_path"\n ],\n "type": "object"\n },\n {\n "type": "null"\n }\n ],\n "description": "Value for subject."\n }\n },\n "required": [\n "evidence_id",\n "subject",\n "provider",\n "predicate_type",\n "operation",\n "parameters",\n "raw_result",\n "normalized_result",\n "confidence",\n "authority",\n "environment",\n "limitations",\n "locations",\n "evidence_links"\n ],\n "type": "object"\n },\n "managed_native_boundaries": {\n "additionalProperties": false,\n "description": "Value for managed native boundaries.",\n "properties": {\n "analysis_profile": {\n "description": "Value for analysis profile.",\n "properties": {\n "digest": {\n "description": "Value for digest.",\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n },\n "parameters": {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "description": "Value for parameters.",\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n },\n "provider": {\n "description": "Value for provider.",\n "properties": {\n "id": {\n "description": "Value for id.",\n "minLength": 1,\n "type": "string"\n },\n "name": {\n "description": "Exact name used by this operation.",\n "minLength": 1,\n "type": "string"\n },\n "version": {\n "description": "Value for version.",\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "id",\n "name",\n "version"\n ],\n "type": "object"\n }\n },\n "required": [\n "provider",\n "parameters",\n "digest"\n ],\n "type": "object"\n },\n "authority": {\n "description": "Value for authority.",\n "enum": [\n "shipped-artifact",\n "controlled-replay",\n "historical-reference",\n "external-service",\n "analyst-inference"\n ],\n "type": "string"\n },\n "confidence": {\n "description": "Value for confidence.",\n "enum": [\n "observed",\n "derived",\n "inferred"\n ],\n "type": "string"\n },\n "environment": {\n "anyOf": [\n {\n "properties": {\n "architecture": {\n "description": "Value for architecture.",\n "minLength": 1,\n "type": "string"\n },\n "id": {\n "description": "Value for id.",\n "minLength": 1,\n "type": "string"\n },\n "isolation": {\n "description": "Value for isolation.",\n "enum": [\n "none",\n "process",\n "container",\n "virtual-machine"\n ],\n "type": "string"\n },\n "platform": {\n "description": "Value for platform.",\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "id",\n "platform",\n "architecture",\n "isolation"\n ],\n "type": "object"\n },\n {\n "type": "null"\n }\n ],\n "description": "Value for environment."\n },\n "evidence_id": {\n "description": "Stable identifier of the recorded Evidence observation.",\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "evidence_links": {\n "description": "Value for evidence links.",\n "items": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "type": "array"\n },\n "limitations": {\n "description": "Value for limitations.",\n "items": {\n "type": "string"\n },\n "type": "array"\n },\n "locations": {\n "description": "Value for locations.",\n "items": {\n "oneOf": [\n {\n "properties": {\n "address": {\n "description": "Value for address.",\n "minLength": 1,\n "type": "string"\n },\n "kind": {\n "const": "address",\n "description": "Value for kind.",\n "type": "string"\n }\n },\n "required": [\n "kind",\n "address"\n ],\n "type": "object"\n },\n {\n "properties": {\n "end": {\n "description": "Value for end.",\n "minLength": 1,\n "type": "string"\n },\n "kind": {\n "const": "address-range",\n "description": "Value for kind.",\n "type": "string"\n },\n "start": {\n "description": "Value for start.",\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "kind",\n "start",\n "end"\n ],\n "type": "object"\n },\n {\n "properties": {\n "kind": {\n "const": "artifact-path",\n "description": "Value for kind.",\n "type": "string"\n },\n "path": {\n "description": "Local filesystem path used by this operation.",\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "kind",\n "path"\n ],\n "type": "object"\n },\n {\n "properties": {\n "kind": {\n "const": "file-offset",\n "description": "Value for kind.",\n "type": "string"\n },\n "offset": {\n "description": "Value for offset.",\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "kind",\n "offset"\n ],\n "type": "object"\n },\n {\n "properties": {\n "end": {\n "description": "Value for end.",\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "kind": {\n "const": "file-offset-range",\n "description": "Value for kind.",\n "type": "string"\n },\n "start": {\n "description": "Value for start.",\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "kind",\n "start",\n "end"\n ],\n "type": "object"\n }\n ]\n },\n "type": "array"\n },\n "normalized_result": {\n "$ref": "#/$defs/__schema0",\n "description": "Value for normalized result."\n },\n "operation": {\n "description": "Value for operation.",\n "minLength": 1,\n "type": "string"\n },\n "parameters": {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "description": "Value for parameters.",\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n },\n "predicate_type": {\n "description": "Value for predicate type.",\n "minLength": 1,\n "type": "string"\n },\n "provider": {\n "description": "Value for provider.",\n "properties": {\n "id": {\n "description": "Value for id.",\n "minLength": 1,\n "type": "string"\n },\n "name": {\n "description": "Exact name used by this operation.",\n "minLength": 1,\n "type": "string"\n },\n "version": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ],\n "description": "Value for version."\n }\n },\n "required": [\n "id",\n "name",\n "version"\n ],\n "type": "object"\n },\n "raw_result": {\n "anyOf": [\n {\n "$ref": "#/$defs/__schema0"\n },\n {\n "type": "null"\n }\n ],\n "description": "Value for raw result."\n },\n "subject": {\n "anyOf": [\n {\n "properties": {\n "architecture": {\n "anyOf": [\n {\n "enum": [\n "x86",\n "x86_64",\n "arm",\n "arm64"\n ],\n "type": "string"\n },\n {\n "type": "null"\n }\n ],\n "description": "Value for architecture."\n },\n "digest": {\n "description": "Value for digest.",\n "properties": {\n "sha256": {\n "description": "Value for sha256.",\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n }\n },\n "required": [\n "sha256"\n ],\n "type": "object"\n },\n "format": {\n "description": "Declared input artifact format.",\n "enum": [\n "hopper",\n "analysis-database",\n "mach-o",\n "elf",\n "pe",\n "dos-mz",\n "dos-com",\n "zip",\n "ipa",\n "apk",\n "msix",\n "appx",\n "asar",\n "dmg",\n "pkg",\n "plist",\n "javascript",\n "source-map",\n "directory",\n "file",\n "unknown",\n "mach-o-universal",\n "javascript-bundle",\n "entitlements"\n ],\n "type": "string"\n },\n "local_path": {\n "description": "Local filesystem path for local.",\n "type": "string"\n },\n "name": {\n "description": "Exact name used by this operation.",\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "name",\n "digest",\n "format",\n "architecture",\n "local_path"\n ],\n "type": "object"\n },\n {\n "type": "null"\n }\n ],\n "description": "Value for subject."\n }\n },\n "required": [\n "evidence_id",\n "subject",\n "provider",\n "predicate_type",\n "operation",\n "parameters",\n "raw_result",\n "normalized_result",\n "confidence",\n "authority",\n "environment",\n "limitations",\n "locations",\n "evidence_links"\n ],\n "type": "object"\n }\n },\n "required": [\n "managed_native_boundaries"\n ],\n "type": "object"\n }\n ],\n "examples": [\n {\n "managed_members": {\n "authority": "shipped-artifact",\n "confidence": "observed",\n "environment": null,\n "evidence_id": "ev_cf07661a99083e446ac5f18af3ca331cb1af7c3cd6cb7c9dc8bff880a1ed8bb9",\n "evidence_links": [],\n "limitations": [\n "Artifact identity is unavailable for this observation."\n ],\n "locations": [],\n "normalized_result": {\n "artifact": {\n "byte_length": 4096,\n "format": "pe",\n "path": "/examples/22222222.dll",\n "sha256": "2222222222222222222222222222222222222222222222222222222222222222"\n },\n "call_edges": [],\n "coverage": {\n "issues": [],\n "state": "complete"\n },\n "field_accesses": [],\n "fields": [],\n "identity_scope": {\n "requires_artifact_sha256": "2222222222222222222222222222222222222222222222222222222222222222",\n "requires_mvid": "11112222-3333-4444-9555-666677778888",\n "token_identity": "build-local"\n },\n "limitations": [],\n "member_refs": [],\n "metadata": {\n "status": "complete",\n "table_row_counts": {},\n "version": "v4.0.30319"\n },\n "methods": [\n {\n "body": {\n "anchors": [],\n "decoded_instruction_count": 1,\n "exception_regions": [],\n "file_offset": 512,\n "header_format": "tiny",\n "il_sha256": "4444444444444444444444444444444444444444444444444444444444444444",\n "il_size": 1,\n "init_locals": false,\n "instruction_count": 1,\n "issue": null,\n "local_var_sig_token": null,\n "max_stack": 8,\n "normalized_il_sha256": "5555555555555555555555555555555555555555555555555555555555555555",\n "opcode_counts": {\n "ret": 1\n },\n "rva": 8192,\n "status": "present",\n "truncated_instructions": 0\n },\n "declaring_type": "Example.Program",\n "declaring_type_token": "0x02000001",\n "flags": 22,\n "impl_flags": 0,\n "name": "Main",\n "row_offset": 128,\n "rva": 8192,\n "signature": {\n "calling_convention": "default",\n "field_type": null,\n "generic_parameter_count": 0,\n "issue": null,\n "kind": "method",\n "parameter_count": 0,\n "parameter_types": [],\n "parse_status": "decoded",\n "raw_length": 3,\n "raw_sha256": "3333333333333333333333333333333333333333333333333333333333333333",\n "return_type": "void"\n },\n "token": "0x06000001"\n }\n ],\n "module": {\n "enc_base_id": null,\n "enc_id": null,\n "generation": 0,\n "mvid": "11112222-3333-4444-9555-666677778888",\n "name": "Example.dll",\n "row_offset": 0,\n "token": "0x00000001"\n },\n "types": []\n },\n "operation": "inspect_managed_members",\n "parameters": {},\n "predicate_type": "rea.analysis",\n "provider": {\n "id": "rea-dotnet-static",\n "name": "REA managed static analysis provider",\n "version": "1"\n },\n "raw_result": null,\n "subject": null\n }\n }\n ],\n "type": "object"\n },\n "kind": "application",\n "name": "project_managed_application_graph",\n "outputSchema": {\n "$defs": {\n "__schema0": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "number"\n },\n {\n "type": "boolean"\n },\n {\n "type": "null"\n },\n {\n "items": {\n "$ref": "#/$defs/__schema0"\n },\n "type": "array"\n },\n {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n }\n ]\n }\n },\n "$schema": "https://json-schema.org/draft/2020-12/schema",\n "additionalProperties": false,\n "properties": {\n "evidence": {\n "additionalProperties": false,\n "properties": {\n "analysis_profile": {\n "additionalProperties": false,\n "properties": {\n "digest": {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n },\n "parameters": {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n },\n "provider": {\n "additionalProperties": false,\n "properties": {\n "id": {\n "minLength": 1,\n "type": "string"\n },\n "name": {\n "minLength": 1,\n "type": "string"\n },\n "version": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "id",\n "name",\n "version"\n ],\n "type": "object"\n }\n },\n "required": [\n "provider",\n "parameters",\n "digest"\n ],\n "type": "object"\n },\n "authority": {\n "enum": [\n "shipped-artifact",\n "controlled-replay",\n "historical-reference",\n "external-service",\n "analyst-inference"\n ],\n "type": "string"\n },\n "confidence": {\n "enum": [\n "observed",\n "derived",\n "inferred"\n ],\n "type": "string"\n },\n "environment": {\n "anyOf": [\n {\n "additionalProperties": false,\n "properties": {\n "architecture": {\n "minLength": 1,\n "type": "string"\n },\n "id": {\n "minLength": 1,\n "type": "string"\n },\n "isolation": {\n "enum": [\n "none",\n "process",\n "container",\n "virtual-machine"\n ],\n "type": "string"\n },\n "platform": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "id",\n "platform",\n "architecture",\n "isolation"\n ],\n "type": "object"\n },\n {\n "type": "null"\n }\n ]\n },\n "evidence_id": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "evidence_links": {\n "items": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "type": "array"\n },\n "limitations": {\n "items": {\n "type": "string"\n },\n "type": "array"\n },\n "locations": {\n "items": {\n "oneOf": [\n {\n "additionalProperties": false,\n "properties": {\n "address": {\n "minLength": 1,\n "type": "string"\n },\n "kind": {\n "const": "address",\n "type": "string"\n }\n },\n "required": [\n "kind",\n "address"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "end": {\n "minLength": 1,\n "type": "string"\n },\n "kind": {\n "const": "address-range",\n "type": "string"\n },\n "start": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "kind",\n "start",\n "end"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "kind": {\n "const": "artifact-path",\n "type": "string"\n },\n "path": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "kind",\n "path"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "kind": {\n "const": "file-offset",\n "type": "string"\n },\n "offset": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "kind",\n "offset"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "end": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "kind": {\n "const": "file-offset-range",\n "type": "string"\n },\n "start": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "kind",\n "start",\n "end"\n ],\n "type": "object"\n }\n ]\n },\n "type": "array"\n },\n "normalized_result": {\n "$ref": "#/$defs/__schema0"\n },\n "operation": {\n "minLength": 1,\n "type": "string"\n },\n "parameters": {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n },\n "predicate_type": {\n "minLength": 1,\n "type": "string"\n },\n "provider": {\n "additionalProperties": false,\n "properties": {\n "id": {\n "minLength": 1,\n "type": "string"\n },\n "name": {\n "minLength": 1,\n "type": "string"\n },\n "version": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "id",\n "name",\n "version"\n ],\n "type": "object"\n },\n "raw_result": {\n "anyOf": [\n {\n "$ref": "#/$defs/__schema0"\n },\n {\n "type": "null"\n }\n ]\n },\n "subject": {\n "anyOf": [\n {\n "additionalProperties": false,\n "properties": {\n "architecture": {\n "anyOf": [\n {\n "enum": [\n "x86",\n "x86_64",\n "arm",\n "arm64"\n ],\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "digest": {\n "additionalProperties": false,\n "properties": {\n "sha256": {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n }\n },\n "required": [\n "sha256"\n ],\n "type": "object"\n },\n "format": {\n "enum": [\n "hopper",\n "analysis-database",\n "mach-o",\n "elf",\n "pe",\n "dos-mz",\n "dos-com",\n "zip",\n "ipa",\n "apk",\n "msix",\n "appx",\n "asar",\n "dmg",\n "pkg",\n "plist",\n "javascript",\n "source-map",\n "directory",\n "file",\n "unknown",\n "mach-o-universal",\n "javascript-bundle",\n "entitlements"\n ],\n "type": "string"\n },\n "local_path": {\n "type": "string"\n },\n "name": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "name",\n "digest",\n "format",\n "architecture",\n "local_path"\n ],\n "type": "object"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "evidence_id",\n "subject",\n "provider",\n "predicate_type",\n "operation",\n "parameters",\n "raw_result",\n "normalized_result",\n "confidence",\n "authority",\n "environment",\n "limitations",\n "locations",\n "evidence_links"\n ],\n "type": "object"\n },\n "evidence_id": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "result": {\n "additionalProperties": false,\n "properties": {\n "coverage": {\n "additionalProperties": false,\n "properties": {\n "status": {\n "enum": [\n "complete-within-inputs",\n "partial"\n ],\n "type": "string"\n }\n },\n "required": [\n "status"\n ],\n "type": "object"\n },\n "evidence_links": {\n "items": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "maxItems": 3,\n "minItems": 1,\n "type": "array"\n },\n "graph": {\n "additionalProperties": false,\n "properties": {\n "coverage": {\n "anyOf": [\n {\n "additionalProperties": false,\n "properties": {\n "limits": {\n "items": {\n "additionalProperties": false,\n "properties": {\n "name": {\n "minLength": 1,\n "type": "string"\n },\n "unit": {\n "enum": [\n "items",\n "bytes",\n "milliseconds",\n "depth",\n "characters",\n "instructions",\n "other"\n ],\n "type": "string"\n },\n "value": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "name",\n "value",\n "unit"\n ],\n "type": "object"\n },\n "type": "array"\n },\n "omitted_count": {\n "const": 0,\n "type": "number"\n },\n "status": {\n "const": "complete",\n "type": "string"\n },\n "truncated": {\n "const": false,\n "type": "boolean"\n }\n },\n "required": [\n "status",\n "truncated",\n "omitted_count",\n "limits"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "limits": {\n "items": {\n "additionalProperties": false,\n "properties": {\n "name": {\n "minLength": 1,\n "type": "string"\n },\n "unit": {\n "enum": [\n "items",\n "bytes",\n "milliseconds",\n "depth",\n "characters",\n "instructions",\n "other"\n ],\n "type": "string"\n },\n "value": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "name",\n "value",\n "unit"\n ],\n "type": "object"\n },\n "type": "array"\n },\n "omitted_count": {\n "anyOf": [\n {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n {\n "type": "null"\n }\n ]\n },\n "status": {\n "const": "partial",\n "type": "string"\n },\n "truncated": {\n "const": false,\n "type": "boolean"\n }\n },\n "required": [\n "status",\n "truncated",\n "omitted_count",\n "limits"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "limits": {\n "items": {\n "additionalProperties": false,\n "properties": {\n "name": {\n "minLength": 1,\n "type": "string"\n },\n "unit": {\n "enum": [\n "items",\n "bytes",\n "milliseconds",\n "depth",\n "characters",\n "instructions",\n "other"\n ],\n "type": "string"\n },\n "value": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "name",\n "value",\n "unit"\n ],\n "type": "object"\n },\n "minItems": 1,\n "type": "array"\n },\n "omitted_count": {\n "anyOf": [\n {\n "exclusiveMinimum": 0,\n "maximum": 9007199254740991,\n "type": "integer"\n },\n {\n "type": "null"\n }\n ]\n },\n "status": {\n "const": "partial",\n "type": "string"\n },\n "truncated": {\n "const": true,\n "type": "boolean"\n }\n },\n "required": [\n "status",\n "truncated",\n "omitted_count",\n "limits"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "limits": {\n "items": {\n "additionalProperties": false,\n "properties": {\n "name": {\n "minLength": 1,\n "type": "string"\n },\n "unit": {\n "enum": [\n "items",\n "bytes",\n "milliseconds",\n "depth",\n "characters",\n "instructions",\n "other"\n ],\n "type": "string"\n },\n "value": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "name",\n "value",\n "unit"\n ],\n "type": "object"\n },\n "type": "array"\n },\n "omitted_count": {\n "type": "null"\n },\n "status": {\n "enum": [\n "unknown",\n "unavailable"\n ],\n "type": "string"\n },\n "truncated": {\n "const": false,\n "type": "boolean"\n }\n },\n "required": [\n "status",\n "truncated",\n "omitted_count",\n "limits"\n ],\n "type": "object"\n }\n ]\n },\n "edges": {\n "items": {\n "additionalProperties": false,\n "properties": {\n "edge_id": {\n "pattern": "^jag_edge_[a-f0-9]{64}$",\n "type": "string"\n },\n "evidence": {\n "additionalProperties": false,\n "properties": {\n "artifact": {\n "oneOf": [\n {\n "additionalProperties": false,\n "properties": {\n "artifact_id": {\n "pattern": "^art_[a-f0-9]{64}$",\n "type": "string"\n },\n "available": {\n "const": true,\n "type": "boolean"\n },\n "sha256": {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n }\n },\n "required": [\n "available",\n "artifact_id",\n "sha256"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "available": {\n "const": false,\n "type": "boolean"\n },\n "detail": {\n "minLength": 1,\n "type": "string"\n },\n "reason": {\n "enum": [\n "not-applicable",\n "not-observed",\n "truncated",\n "provider-unavailable",\n "unresolved",\n "unknown"\n ],\n "type": "string"\n }\n },\n "required": [\n "available",\n "reason",\n "detail"\n ],\n "type": "object"\n }\n ]\n },\n "authority": {\n "enum": [\n "artifact-bytes",\n "ast-static-analysis",\n "static-relationship-inference",\n "passive-cdp-runtime",\n "cross-layer-reconciliation",\n "cross-version-comparison",\n "controlled-replay",\n "native-analysis-provider",\n "managed-static-analysis",\n "historical-reference",\n "user-assertion",\n "unknown"\n ],\n "type": "string"\n },\n "confidence": {\n "enum": [\n "exact",\n "high",\n "medium",\n "low",\n "unknown"\n ],\n "type": "string"\n },\n "coverage": {\n "anyOf": [\n {\n "additionalProperties": false,\n "properties": {\n "limits": {\n "items": {\n "additionalProperties": false,\n "properties": {\n "name": {\n "minLength": 1,\n "type": "string"\n },\n "unit": {\n "enum": [\n "items",\n "bytes",\n "milliseconds",\n "depth",\n "characters",\n "instructions",\n "other"\n ],\n "type": "string"\n },\n "value": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "name",\n "value",\n "unit"\n ],\n "type": "object"\n },\n "type": "array"\n },\n "omitted_count": {\n "const": 0,\n "type": "number"\n },\n "status": {\n "const": "complete",\n "type": "string"\n },\n "truncated": {\n "const": false,\n "type": "boolean"\n }\n },\n "required": [\n "status",\n "truncated",\n "omitted_count",\n "limits"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "limits": {\n "items": {\n "additionalProperties": false,\n "properties": {\n "name": {\n "minLength": 1,\n "type": "string"\n },\n "unit": {\n "enum": [\n "items",\n "bytes",\n "milliseconds",\n "depth",\n "characters",\n "instructions",\n "other"\n ],\n "type": "string"\n },\n "value": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "name",\n "value",\n "unit"\n ],\n "type": "object"\n },\n "type": "array"\n },\n "omitted_count": {\n "anyOf": [\n {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n {\n "type": "null"\n }\n ]\n },\n "status": {\n "const": "partial",\n "type": "string"\n },\n "truncated": {\n "const": false,\n "type": "boolean"\n }\n },\n "required": [\n "status",\n "truncated",\n "omitted_count",\n "limits"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "limits": {\n "items": {\n "additionalProperties": false,\n "properties": {\n "name": {\n "minLength": 1,\n "type": "string"\n },\n "unit": {\n "enum": [\n "items",\n "bytes",\n "milliseconds",\n "depth",\n "characters",\n "instructions",\n "other"\n ],\n "type": "string"\n },\n "value": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "name",\n "value",\n "unit"\n ],\n "type": "object"\n },\n "minItems": 1,\n "type": "array"\n },\n "omitted_count": {\n "anyOf": [\n {\n "exclusiveMinimum": 0,\n "maximum": 9007199254740991,\n "type": "integer"\n },\n {\n "type": "null"\n }\n ]\n },\n "status": {\n "const": "partial",\n "type": "string"\n },\n "truncated": {\n "const": true,\n "type": "boolean"\n }\n },\n "required": [\n "status",\n "truncated",\n "omitted_count",\n "limits"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "limits": {\n "items": {\n "additionalProperties": false,\n "properties": {\n "name": {\n "minLength": 1,\n "type": "string"\n },\n "unit": {\n "enum": [\n "items",\n "bytes",\n "milliseconds",\n "depth",\n "characters",\n "instructions",\n "other"\n ],\n "type": "string"\n },\n "value": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "name",\n "value",\n "unit"\n ],\n "type": "object"\n },\n "type": "array"\n },\n "omitted_count": {\n "type": "null"\n },\n "status": {\n "enum": [\n "unknown",\n "unavailable"\n ],\n "type": "string"\n },\n "truncated": {\n "const": false,\n "type": "boolean"\n }\n },\n "required": [\n "status",\n "truncated",\n "omitted_count",\n "limits"\n ],\n "type": "object"\n }\n ]\n },\n "evidence_ids": {\n "items": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "type": "array"\n },\n "extractor": {\n "additionalProperties": false,\n "properties": {\n "executable_sha256": {\n "anyOf": [\n {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "name": {\n "minLength": 1,\n "type": "string"\n },\n "operation": {\n "minLength": 1,\n "type": "string"\n },\n "version": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "name",\n "version",\n "operation",\n "executable_sha256"\n ],\n "type": "object"\n },\n "limitations": {\n "items": {\n "minLength": 1,\n "type": "string"\n },\n "type": "array"\n },\n "location": {\n "oneOf": [\n {\n "additionalProperties": false,\n "properties": {\n "available": {\n "const": true,\n "type": "boolean"\n },\n "value": {\n "oneOf": [\n {\n "additionalProperties": false,\n "properties": {\n "kind": {\n "const": "artifact-path",\n "type": "string"\n },\n "path": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "kind",\n "path"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "end": {\n "additionalProperties": false,\n "properties": {\n "column": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "line": {\n "maximum": 9007199254740991,\n "minimum": 1,\n "type": "integer"\n }\n },\n "required": [\n "line",\n "column"\n ],\n "type": "object"\n },\n "kind": {\n "const": "source-range",\n "type": "string"\n },\n "source": {\n "minLength": 1,\n "type": "string"\n },\n "start": {\n "additionalProperties": false,\n "properties": {\n "column": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "line": {\n "maximum": 9007199254740991,\n "minimum": 1,\n "type": "integer"\n }\n },\n "required": [\n "line",\n "column"\n ],\n "type": "object"\n }\n },\n "required": [\n "kind",\n "source",\n "start",\n "end"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "end": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "kind": {\n "const": "file-offset-range",\n "type": "string"\n },\n "start": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "kind",\n "start",\n "end"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "kind": {\n "const": "url",\n "type": "string"\n },\n "url": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "kind",\n "url"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "capture_sha256": {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n },\n "frame_key": {\n "anyOf": [\n {\n "minLength": 1,\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "kind": {\n "const": "runtime",\n "type": "string"\n },\n "script_key": {\n "anyOf": [\n {\n "minLength": 1,\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "target_key": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "kind",\n "capture_sha256",\n "target_key",\n "frame_key",\n "script_key"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "address": {\n "minLength": 1,\n "type": "string"\n },\n "kind": {\n "const": "native-address",\n "type": "string"\n },\n "symbol": {\n "anyOf": [\n {\n "minLength": 1,\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "kind",\n "address",\n "symbol"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "export_path": {\n "minLength": 1,\n "type": "string"\n },\n "kind": {\n "const": "package-export",\n "type": "string"\n },\n "package_name": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "kind",\n "package_name",\n "export_path"\n ],\n "type": "object"\n }\n ]\n }\n },\n "required": [\n "available",\n "value"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "available": {\n "const": false,\n "type": "boolean"\n },\n "detail": {\n "minLength": 1,\n "type": "string"\n },\n "reason": {\n "enum": [\n "not-applicable",\n "not-observed",\n "truncated",\n "provider-unavailable",\n "unresolved",\n "unknown"\n ],\n "type": "string"\n }\n },\n "required": [\n "available",\n "reason",\n "detail"\n ],\n "type": "object"\n }\n ]\n },\n "state": {\n "enum": [\n "observed",\n "inferred",\n "unknown",\n "unavailable"\n ],\n "type": "string"\n }\n },\n "required": [\n "authority",\n "state",\n "confidence",\n "artifact",\n "location",\n "extractor",\n "coverage",\n "limitations",\n "evidence_ids"\n ],\n "type": "object"\n },\n "identifier_strategy": {\n "additionalProperties": false,\n "properties": {\n "stability": {\n "const": "relationship-exact",\n "type": "string"\n },\n "strategy": {\n "const": "semantic-content-sha256",\n "type": "string"\n }\n },\n "required": [\n "strategy",\n "stability"\n ],\n "type": "object"\n },\n "properties": {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "propertyNames": {\n "minLength": 1,\n "type": "string"\n },\n "type": "object"\n },\n "relation": {\n "enum": [\n "contains",\n "loads",\n "imports",\n "maps_to",\n "exposes",\n "sends",\n "invokes",\n "handles",\n "calls",\n "persists_to",\n "observed_as",\n "changed_from"\n ],\n "type": "string"\n },\n "source_node_id": {\n "pattern": "^jag_node_[a-f0-9]{64}$",\n "type": "string"\n },\n "target_node_id": {\n "pattern": "^jag_node_[a-f0-9]{64}$",\n "type": "string"\n }\n },\n "required": [\n "source_node_id",\n "target_node_id",\n "relation",\n "properties",\n "evidence",\n "edge_id",\n "identifier_strategy"\n ],\n "type": "object"\n },\n "type": "array"\n },\n "graph_id": {\n "pattern": "^jag_[a-f0-9]{64}$",\n "type": "string"\n },\n "limitations": {\n "items": {\n "minLength": 1,\n "type": "string"\n },\n "type": "array"\n },\n "nodes": {\n "items": {\n "additionalProperties": false,\n "properties": {\n "identity": {\n "oneOf": [\n {\n "additionalProperties": false,\n "properties": {\n "sha256": {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n },\n "stability": {\n "const": "global-exact",\n "type": "string"\n },\n "strategy": {\n "const": "content-digest",\n "type": "string"\n }\n },\n "required": [\n "strategy",\n "stability",\n "sha256"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "original_source": {\n "type": "string"\n },\n "source_map_sha256": {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n },\n "source_sha256": {\n "anyOf": [\n {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "stability": {\n "const": "source-map-exact",\n "type": "string"\n },\n "strategy": {\n "const": "source-map-original",\n "type": "string"\n }\n },\n "required": [\n "strategy",\n "stability",\n "source_map_sha256",\n "original_source",\n "source_sha256"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "artifact_sha256": {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n },\n "path": {\n "minLength": 1,\n "type": "string"\n },\n "stability": {\n "const": "artifact-version",\n "type": "string"\n },\n "strategy": {\n "const": "canonical-path",\n "type": "string"\n }\n },\n "required": [\n "strategy",\n "stability",\n "artifact_sha256",\n "path"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "algorithm": {\n "minLength": 1,\n "type": "string"\n },\n "basis": {\n "items": {\n "enum": [\n "syntax-tree",\n "control-flow",\n "imports",\n "exports",\n "literals",\n "api-usage"\n ],\n "type": "string"\n },\n "minItems": 1,\n "type": "array"\n },\n "fingerprint_sha256": {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n },\n "stability": {\n "const": "cross-version-inference",\n "type": "string"\n },\n "strategy": {\n "const": "structural-fingerprint",\n "type": "string"\n }\n },\n "required": [\n "strategy",\n "stability",\n "algorithm",\n "fingerprint_sha256",\n "basis"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "artifact_sha256": {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n },\n "key": {\n "type": "string"\n },\n "namespace": {\n "minLength": 1,\n "type": "string"\n },\n "stability": {\n "const": "artifact-version",\n "type": "string"\n },\n "strategy": {\n "const": "artifact-local-key",\n "type": "string"\n }\n },\n "required": [\n "strategy",\n "stability",\n "artifact_sha256",\n "namespace",\n "key"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "capture_sha256": {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n },\n "runtime_key": {\n "minLength": 1,\n "type": "string"\n },\n "stability": {\n "const": "capture-only",\n "type": "string"\n },\n "strategy": {\n "const": "runtime-instance",\n "type": "string"\n }\n },\n "required": [\n "strategy",\n "stability",\n "capture_sha256",\n "runtime_key"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "observation_sha256": {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n },\n "scope": {\n "minLength": 1,\n "type": "string"\n },\n "stability": {\n "const": "observation-only",\n "type": "string"\n },\n "strategy": {\n "const": "observation-fingerprint",\n "type": "string"\n }\n },\n "required": [\n "strategy",\n "stability",\n "observation_sha256",\n "scope"\n ],\n "type": "object"\n }\n ]\n },\n "kind": {\n "enum": [\n "package",\n "installer",\n "artifact",\n "asar-entry",\n "electron-main",\n "electron-preload",\n "electron-renderer",\n "electron-utility",\n "javascript-asset",\n "javascript-chunk",\n "javascript-module",\n "source-map",\n "source-module",\n "browser-window",\n "frame",\n "target",\n "context-bridge-api",\n "ipc-channel",\n "ipc-handler",\n "worker",\n "service-worker",\n "endpoint",\n "storage",\n "native-addon",\n "native-export",\n "managed-assembly",\n "managed-module",\n "managed-type",\n "managed-method",\n "managed-field",\n "managed-pinvoke-import",\n "managed-native-implementation",\n "runtime-script-instance",\n "unknown"\n ],\n "type": "string"\n },\n "node_id": {\n "pattern": "^jag_node_[a-f0-9]{64}$",\n "type": "string"\n },\n "observations": {\n "items": {\n "additionalProperties": false,\n "properties": {\n "evidence": {\n "additionalProperties": false,\n "properties": {\n "artifact": {\n "oneOf": [\n {\n "additionalProperties": false,\n "properties": {\n "artifact_id": {\n "pattern": "^art_[a-f0-9]{64}$",\n "type": "string"\n },\n "available": {\n "const": true,\n "type": "boolean"\n },\n "sha256": {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n }\n },\n "required": [\n "available",\n "artifact_id",\n "sha256"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "available": {\n "const": false,\n "type": "boolean"\n },\n "detail": {\n "minLength": 1,\n "type": "string"\n },\n "reason": {\n "enum": [\n "not-applicable",\n "not-observed",\n "truncated",\n "provider-unavailable",\n "unresolved",\n "unknown"\n ],\n "type": "string"\n }\n },\n "required": [\n "available",\n "reason",\n "detail"\n ],\n "type": "object"\n }\n ]\n },\n "authority": {\n "enum": [\n "artifact-bytes",\n "ast-static-analysis",\n "static-relationship-inference",\n "passive-cdp-runtime",\n "cross-layer-reconciliation",\n "cross-version-comparison",\n "controlled-replay",\n "native-analysis-provider",\n "managed-static-analysis",\n "historical-reference",\n "user-assertion",\n "unknown"\n ],\n "type": "string"\n },\n "confidence": {\n "enum": [\n "exact",\n "high",\n "medium",\n "low",\n "unknown"\n ],\n "type": "string"\n },\n "coverage": {\n "anyOf": [\n {\n "additionalProperties": false,\n "properties": {\n "limits": {\n "items": {\n "additionalProperties": false,\n "properties": {\n "name": {\n "minLength": 1,\n "type": "string"\n },\n "unit": {\n "enum": [\n "items",\n "bytes",\n "milliseconds",\n "depth",\n "characters",\n "instructions",\n "other"\n ],\n "type": "string"\n },\n "value": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "name",\n "value",\n "unit"\n ],\n "type": "object"\n },\n "type": "array"\n },\n "omitted_count": {\n "const": 0,\n "type": "number"\n },\n "status": {\n "const": "complete",\n "type": "string"\n },\n "truncated": {\n "const": false,\n "type": "boolean"\n }\n },\n "required": [\n "status",\n "truncated",\n "omitted_count",\n "limits"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "limits": {\n "items": {\n "additionalProperties": false,\n "properties": {\n "name": {\n "minLength": 1,\n "type": "string"\n },\n "unit": {\n "enum": [\n "items",\n "bytes",\n "milliseconds",\n "depth",\n "characters",\n "instructions",\n "other"\n ],\n "type": "string"\n },\n "value": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "name",\n "value",\n "unit"\n ],\n "type": "object"\n },\n "type": "array"\n },\n "omitted_count": {\n "anyOf": [\n {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n {\n "type": "null"\n }\n ]\n },\n "status": {\n "const": "partial",\n "type": "string"\n },\n "truncated": {\n "const": false,\n "type": "boolean"\n }\n },\n "required": [\n "status",\n "truncated",\n "omitted_count",\n "limits"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "limits": {\n "items": {\n "additionalProperties": false,\n "properties": {\n "name": {\n "minLength": 1,\n "type": "string"\n },\n "unit": {\n "enum": [\n "items",\n "bytes",\n "milliseconds",\n "depth",\n "characters",\n "instructions",\n "other"\n ],\n "type": "string"\n },\n "value": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "name",\n "value",\n "unit"\n ],\n "type": "object"\n },\n "minItems": 1,\n "type": "array"\n },\n "omitted_count": {\n "anyOf": [\n {\n "exclusiveMinimum": 0,\n "maximum": 9007199254740991,\n "type": "integer"\n },\n {\n "type": "null"\n }\n ]\n },\n "status": {\n "const": "partial",\n "type": "string"\n },\n "truncated": {\n "const": true,\n "type": "boolean"\n }\n },\n "required": [\n "status",\n "truncated",\n "omitted_count",\n "limits"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "limits": {\n "items": {\n "additionalProperties": false,\n "properties": {\n "name": {\n "minLength": 1,\n "type": "string"\n },\n "unit": {\n "enum": [\n "items",\n "bytes",\n "milliseconds",\n "depth",\n "characters",\n "instructions",\n "other"\n ],\n "type": "string"\n },\n "value": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "name",\n "value",\n "unit"\n ],\n "type": "object"\n },\n "type": "array"\n },\n "omitted_count": {\n "type": "null"\n },\n "status": {\n "enum": [\n "unknown",\n "unavailable"\n ],\n "type": "string"\n },\n "truncated": {\n "const": false,\n "type": "boolean"\n }\n },\n "required": [\n "status",\n "truncated",\n "omitted_count",\n "limits"\n ],\n "type": "object"\n }\n ]\n },\n "evidence_ids": {\n "items": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "type": "array"\n },\n "extractor": {\n "additionalProperties": false,\n "properties": {\n "executable_sha256": {\n "anyOf": [\n {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "name": {\n "minLength": 1,\n "type": "string"\n },\n "operation": {\n "minLength": 1,\n "type": "string"\n },\n "version": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "name",\n "version",\n "operation",\n "executable_sha256"\n ],\n "type": "object"\n },\n "limitations": {\n "items": {\n "minLength": 1,\n "type": "string"\n },\n "type": "array"\n },\n "location": {\n "oneOf": [\n {\n "additionalProperties": false,\n "properties": {\n "available": {\n "const": true,\n "type": "boolean"\n },\n "value": {\n "oneOf": [\n {\n "additionalProperties": false,\n "properties": {\n "kind": {\n "const": "artifact-path",\n "type": "string"\n },\n "path": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "kind",\n "path"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "end": {\n "additionalProperties": false,\n "properties": {\n "column": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "line": {\n "maximum": 9007199254740991,\n "minimum": 1,\n "type": "integer"\n }\n },\n "required": [\n "line",\n "column"\n ],\n "type": "object"\n },\n "kind": {\n "const": "source-range",\n "type": "string"\n },\n "source": {\n "minLength": 1,\n "type": "string"\n },\n "start": {\n "additionalProperties": false,\n "properties": {\n "column": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "line": {\n "maximum": 9007199254740991,\n "minimum": 1,\n "type": "integer"\n }\n },\n "required": [\n "line",\n "column"\n ],\n "type": "object"\n }\n },\n "required": [\n "kind",\n "source",\n "start",\n "end"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "end": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "kind": {\n "const": "file-offset-range",\n "type": "string"\n },\n "start": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "kind",\n "start",\n "end"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "kind": {\n "const": "url",\n "type": "string"\n },\n "url": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "kind",\n "url"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "capture_sha256": {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n },\n "frame_key": {\n "anyOf": [\n {\n "minLength": 1,\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "kind": {\n "const": "runtime",\n "type": "string"\n },\n "script_key": {\n "anyOf": [\n {\n "minLength": 1,\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "target_key": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "kind",\n "capture_sha256",\n "target_key",\n "frame_key",\n "script_key"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "address": {\n "minLength": 1,\n "type": "string"\n },\n "kind": {\n "const": "native-address",\n "type": "string"\n },\n "symbol": {\n "anyOf": [\n {\n "minLength": 1,\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "kind",\n "address",\n "symbol"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "export_path": {\n "minLength": 1,\n "type": "string"\n },\n "kind": {\n "const": "package-export",\n "type": "string"\n },\n "package_name": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "kind",\n "package_name",\n "export_path"\n ],\n "type": "object"\n }\n ]\n }\n },\n "required": [\n "available",\n "value"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "available": {\n "const": false,\n "type": "boolean"\n },\n "detail": {\n "minLength": 1,\n "type": "string"\n },\n "reason": {\n "enum": [\n "not-applicable",\n "not-observed",\n "truncated",\n "provider-unavailable",\n "unresolved",\n "unknown"\n ],\n "type": "string"\n }\n },\n "required": [\n "available",\n "reason",\n "detail"\n ],\n "type": "object"\n }\n ]\n },\n "state": {\n "enum": [\n "observed",\n "inferred",\n "unknown",\n "unavailable"\n ],\n "type": "string"\n }\n },\n "required": [\n "authority",\n "state",\n "confidence",\n "artifact",\n "location",\n "extractor",\n "coverage",\n "limitations",\n "evidence_ids"\n ],\n "type": "object"\n },\n "identifier_strategy": {\n "additionalProperties": false,\n "properties": {\n "stability": {\n "const": "observation-exact",\n "type": "string"\n },\n "strategy": {\n "const": "semantic-content-sha256",\n "type": "string"\n }\n },\n "required": [\n "strategy",\n "stability"\n ],\n "type": "object"\n },\n "label": {\n "anyOf": [\n {\n "minLength": 1,\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "observation_id": {\n "pattern": "^jag_observation_[a-f0-9]{64}$",\n "type": "string"\n },\n "properties": {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "propertyNames": {\n "minLength": 1,\n "type": "string"\n },\n "type": "object"\n }\n },\n "required": [\n "label",\n "properties",\n "evidence",\n "observation_id",\n "identifier_strategy"\n ],\n "type": "object"\n },\n "minItems": 1,\n "type": "array"\n }\n },\n "required": [\n "node_id",\n "kind",\n "identity",\n "observations"\n ],\n "type": "object"\n },\n "minItems": 1,\n "type": "array"\n },\n "root_node_ids": {\n "items": {\n "pattern": "^jag_node_[a-f0-9]{64}$",\n "type": "string"\n },\n "minItems": 1,\n "type": "array"\n },\n "schema": {\n "const": "JavaScriptApplicationGraph",\n "type": "string"\n }\n },\n "required": [\n "schema",\n "root_node_ids",\n "nodes",\n "edges",\n "coverage",\n "limitations",\n "graph_id"\n ],\n "type": "object"\n },\n "limitations": {\n "items": {\n "minLength": 1,\n "type": "string"\n },\n "type": "array"\n },\n "projection_id": {\n "pattern": "^magp_[a-f0-9]{64}$",\n "type": "string"\n },\n "root_artifact_sha256": {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n },\n "source_evidence": {\n "additionalProperties": false,\n "properties": {\n "managed_artifact_evidence_id": {\n "anyOf": [\n {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "managed_members_evidence_id": {\n "anyOf": [\n {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "managed_native_boundaries_evidence_id": {\n "anyOf": [\n {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "managed_artifact_evidence_id",\n "managed_members_evidence_id",\n "managed_native_boundaries_evidence_id"\n ],\n "type": "object"\n },\n "summary": {\n "additionalProperties": false,\n "properties": {\n "assemblies": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "fields": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "graph_edges": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "graph_nodes": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "methods": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "modules": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "native_implementations": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "pinvoke_imports": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "types": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "graph_nodes",\n "graph_edges",\n "assemblies",\n "modules",\n "types",\n "methods",\n "fields",\n "pinvoke_imports",\n "native_implementations"\n ],\n "type": "object"\n }\n },\n "required": [\n "projection_id",\n "root_artifact_sha256",\n "source_evidence",\n "summary",\n "graph",\n "coverage",\n "evidence_links",\n "limitations"\n ],\n "type": "object"\n }\n },\n "required": [\n "result",\n "evidence_id",\n "evidence"\n ],\n "type": "object"\n },\n "requiresSession": true,\n "title": "Project Managed Application Graph"\n },\n {\n "analysisOperation": null,\n "annotations": {\n "destructiveHint": false,\n "idempotentHint": true,\n "openWorldHint": true,\n "readOnlyHint": false\n },\n "description": "List page targets exposed by the selected loopback Chrome DevTools Protocol endpoint. Optionally filter by exact origin. URLs preserve query values and fragments; only URL userinfo credentials are removed.",\n "effects": {\n "accessesNetwork": true,\n "changesUiState": false,\n "idempotent": true,\n "launchesProcess": false,\n "mayDiscardData": false,\n "mutatesSession": true,\n "mutatesTarget": false,\n "writesFilesystem": false\n },\n "inputSchema": {\n "$schema": "https://json-schema.org/draft/2020-12/schema",\n "examples": [\n {\n "cdp_endpoint": "http://127.0.0.1:9222"\n }\n ],\n "properties": {\n "allowed_origins": {\n "description": "Value for allowed origins.",\n "items": {\n "minLength": 1,\n "type": "string"\n },\n "type": "array"\n },\n "cdp_endpoint": {\n "description": "Literal loopback Chrome DevTools Protocol endpoint.",\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "cdp_endpoint"\n ],\n "type": "object"\n },\n "kind": "browser-provider",\n "name": "list_browser_targets",\n "outputSchema": {\n "$defs": {\n "__schema0": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "number"\n },\n {\n "type": "boolean"\n },\n {\n "type": "null"\n },\n {\n "items": {\n "$ref": "#/$defs/__schema0"\n },\n "type": "array"\n },\n {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n }\n ]\n }\n },\n "$schema": "https://json-schema.org/draft/2020-12/schema",\n "additionalProperties": false,\n "properties": {\n "evidence": {\n "additionalProperties": false,\n "properties": {\n "analysis_profile": {\n "additionalProperties": false,\n "properties": {\n "digest": {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n },\n "parameters": {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n },\n "provider": {\n "additionalProperties": false,\n "properties": {\n "id": {\n "minLength": 1,\n "type": "string"\n },\n "name": {\n "minLength": 1,\n "type": "string"\n },\n "version": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "id",\n "name",\n "version"\n ],\n "type": "object"\n }\n },\n "required": [\n "provider",\n "parameters",\n "digest"\n ],\n "type": "object"\n },\n "authority": {\n "enum": [\n "shipped-artifact",\n "controlled-replay",\n "historical-reference",\n "external-service",\n "analyst-inference"\n ],\n "type": "string"\n },\n "confidence": {\n "enum": [\n "observed",\n "derived",\n "inferred"\n ],\n "type": "string"\n },\n "environment": {\n "anyOf": [\n {\n "additionalProperties": false,\n "properties": {\n "architecture": {\n "minLength": 1,\n "type": "string"\n },\n "id": {\n "minLength": 1,\n "type": "string"\n },\n "isolation": {\n "enum": [\n "none",\n "process",\n "container",\n "virtual-machine"\n ],\n "type": "string"\n },\n "platform": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "id",\n "platform",\n "architecture",\n "isolation"\n ],\n "type": "object"\n },\n {\n "type": "null"\n }\n ]\n },\n "evidence_id": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "evidence_links": {\n "items": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "type": "array"\n },\n "limitations": {\n "items": {\n "type": "string"\n },\n "type": "array"\n },\n "locations": {\n "items": {\n "oneOf": [\n {\n "additionalProperties": false,\n "properties": {\n "address": {\n "minLength": 1,\n "type": "string"\n },\n "kind": {\n "const": "address",\n "type": "string"\n }\n },\n "required": [\n "kind",\n "address"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "end": {\n "minLength": 1,\n "type": "string"\n },\n "kind": {\n "const": "address-range",\n "type": "string"\n },\n "start": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "kind",\n "start",\n "end"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "kind": {\n "const": "artifact-path",\n "type": "string"\n },\n "path": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "kind",\n "path"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "kind": {\n "const": "file-offset",\n "type": "string"\n },\n "offset": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "kind",\n "offset"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "end": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "kind": {\n "const": "file-offset-range",\n "type": "string"\n },\n "start": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "kind",\n "start",\n "end"\n ],\n "type": "object"\n }\n ]\n },\n "type": "array"\n },\n "normalized_result": {\n "$ref": "#/$defs/__schema0"\n },\n "operation": {\n "minLength": 1,\n "type": "string"\n },\n "parameters": {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n },\n "predicate_type": {\n "minLength": 1,\n "type": "string"\n },\n "provider": {\n "additionalProperties": false,\n "properties": {\n "id": {\n "minLength": 1,\n "type": "string"\n },\n "name": {\n "minLength": 1,\n "type": "string"\n },\n "version": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "id",\n "name",\n "version"\n ],\n "type": "object"\n },\n "raw_result": {\n "anyOf": [\n {\n "$ref": "#/$defs/__schema0"\n },\n {\n "type": "null"\n }\n ]\n },\n "subject": {\n "anyOf": [\n {\n "additionalProperties": false,\n "properties": {\n "architecture": {\n "anyOf": [\n {\n "enum": [\n "x86",\n "x86_64",\n "arm",\n "arm64"\n ],\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "digest": {\n "additionalProperties": false,\n "properties": {\n "sha256": {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n }\n },\n "required": [\n "sha256"\n ],\n "type": "object"\n },\n "format": {\n "enum": [\n "hopper",\n "analysis-database",\n "mach-o",\n "elf",\n "pe",\n "dos-mz",\n "dos-com",\n "zip",\n "ipa",\n "apk",\n "msix",\n "appx",\n "asar",\n "dmg",\n "pkg",\n "plist",\n "javascript",\n "source-map",\n "directory",\n "file",\n "unknown",\n "mach-o-universal",\n "javascript-bundle",\n "entitlements"\n ],\n "type": "string"\n },\n "local_path": {\n "type": "string"\n },\n "name": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "name",\n "digest",\n "format",\n "architecture",\n "local_path"\n ],\n "type": "object"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "evidence_id",\n "subject",\n "provider",\n "predicate_type",\n "operation",\n "parameters",\n "raw_result",\n "normalized_result",\n "confidence",\n "authority",\n "environment",\n "limitations",\n "locations",\n "evidence_links"\n ],\n "type": "object"\n },\n "evidence_id": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "result": {\n "additionalProperties": false,\n "properties": {\n "browser": {\n "additionalProperties": false,\n "properties": {\n "js_version": {\n "type": "string"\n },\n "product": {\n "type": "string"\n },\n "protocol_version": {\n "type": "string"\n },\n "revision": {\n "type": "string"\n },\n "user_agent": {\n "type": "string"\n }\n },\n "required": [\n "product",\n "protocol_version",\n "revision",\n "user_agent",\n "js_version"\n ],\n "type": "object"\n },\n "excluded": {\n "additionalProperties": false,\n "properties": {\n "disallowed_origin": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "non_page": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "unsupported_url": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "disallowed_origin",\n "unsupported_url",\n "non_page"\n ],\n "type": "object"\n },\n "limitations": {\n "items": {\n "type": "string"\n },\n "type": "array"\n },\n "targets": {\n "items": {\n "additionalProperties": false,\n "properties": {\n "attached": {\n "type": "boolean"\n },\n "origin": {\n "type": "string"\n },\n "target_id": {\n "type": "string"\n },\n "title": {\n "type": "string"\n },\n "type": {\n "type": "string"\n },\n "url": {\n "type": "string"\n }\n },\n "required": [\n "target_id",\n "type",\n "title",\n "url",\n "origin",\n "attached"\n ],\n "type": "object"\n },\n "type": "array"\n }\n },\n "required": [\n "browser",\n "targets",\n "excluded",\n "limitations"\n ],\n "type": "object"\n }\n },\n "required": [\n "result",\n "evidence_id",\n "evidence"\n ],\n "type": "object"\n },\n "requiresSession": false,\n "title": "List Browser Targets"\n },\n {\n "analysisOperation": null,\n "annotations": {\n "destructiveHint": false,\n "idempotentHint": true,\n "openWorldHint": true,\n "readOnlyHint": false\n },\n "description": "Passively inspect one selected page target through CDP without evaluating JavaScript, navigating, clicking, closing, or mutating the page. If no origin filter is supplied, capture is scoped to the target\'s current origin. Returns DOM structure, accessibility, scripts, resources, attach-window network and console metadata, workers, and redacted storage inventory as Evidence.",\n "effects": {\n "accessesNetwork": true,\n "changesUiState": false,\n "idempotent": true,\n "launchesProcess": false,\n "mayDiscardData": false,\n "mutatesSession": true,\n "mutatesTarget": false,\n "writesFilesystem": false\n },\n "inputSchema": {\n "$schema": "https://json-schema.org/draft/2020-12/schema",\n "anyOf": [\n {\n "additionalProperties": false,\n "properties": {\n "allowed_origins": {\n "description": "Value for allowed origins.",\n "items": {\n "minLength": 1,\n "type": "string"\n },\n "type": "array"\n },\n "cdp_endpoint": {\n "description": "Literal loopback Chrome DevTools Protocol endpoint.",\n "minLength": 1,\n "type": "string"\n },\n "include_accessibility_text": {\n "default": false,\n "description": "Whether to include accessibility text in the result.",\n "type": "boolean"\n },\n "include_console_text": {\n "default": false,\n "description": "Whether to include console text in the result.",\n "type": "boolean"\n },\n "include_json_body_shapes": {\n "default": false,\n "description": "Whether to include json body shapes in the result.",\n "type": "boolean"\n },\n "include_script_sources": {\n "const": false,\n "default": false,\n "description": "Whether to include script sources in the result.",\n "type": "boolean"\n },\n "include_storage_fingerprints": {\n "default": false,\n "description": "Whether to include storage fingerprints in the result.",\n "type": "boolean"\n },\n "include_storage_keys": {\n "default": false,\n "description": "Whether to include storage keys in the result.",\n "type": "boolean"\n },\n "include_websocket_shapes": {\n "default": false,\n "description": "Whether to include websocket shapes in the result.",\n "type": "boolean"\n },\n "observation_ms": {\n "default": 500,\n "description": "Value for observation ms.",\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "target_id": {\n "description": "Exact CDP target identifier selected from the endpoint\'s target listing.",\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "cdp_endpoint",\n "target_id"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "allowed_origins": {\n "description": "Value for allowed origins.",\n "items": {\n "minLength": 1,\n "type": "string"\n },\n "type": "array"\n },\n "cdp_endpoint": {\n "description": "Literal loopback Chrome DevTools Protocol endpoint.",\n "minLength": 1,\n "type": "string"\n },\n "include_accessibility_text": {\n "default": false,\n "description": "Whether to include accessibility text in the result.",\n "type": "boolean"\n },\n "include_console_text": {\n "default": false,\n "description": "Whether to include console text in the result.",\n "type": "boolean"\n },\n "include_json_body_shapes": {\n "default": false,\n "description": "Whether to include json body shapes in the result.",\n "type": "boolean"\n },\n "include_script_sources": {\n "const": true,\n "default": true,\n "description": "Whether to include script sources in the result.",\n "type": "boolean"\n },\n "include_storage_fingerprints": {\n "default": false,\n "description": "Whether to include storage fingerprints in the result.",\n "type": "boolean"\n },\n "include_storage_keys": {\n "default": false,\n "description": "Whether to include storage keys in the result.",\n "type": "boolean"\n },\n "include_websocket_shapes": {\n "default": false,\n "description": "Whether to include websocket shapes in the result.",\n "type": "boolean"\n },\n "observation_ms": {\n "default": 500,\n "description": "Value for observation ms.",\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "target_id": {\n "description": "Exact CDP target identifier selected from the endpoint\'s target listing.",\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "cdp_endpoint",\n "target_id"\n ],\n "type": "object"\n }\n ],\n "examples": [\n {\n "cdp_endpoint": "http://127.0.0.1:9222",\n "target_id": "TARGET_ID_FROM_LIST_BROWSER_TARGETS"\n }\n ],\n "type": "object"\n },\n "kind": "browser-provider",\n "name": "inspect_web_page",\n "outputSchema": {\n "$defs": {\n "__schema0": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "number"\n },\n {\n "type": "boolean"\n },\n {\n "type": "null"\n },\n {\n "items": {\n "$ref": "#/$defs/__schema0"\n },\n "type": "array"\n },\n {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n }\n ]\n }\n },\n "$schema": "https://json-schema.org/draft/2020-12/schema",\n "additionalProperties": false,\n "properties": {\n "evidence": {\n "additionalProperties": false,\n "properties": {\n "analysis_profile": {\n "additionalProperties": false,\n "properties": {\n "digest": {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n },\n "parameters": {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n },\n "provider": {\n "additionalProperties": false,\n "properties": {\n "id": {\n "minLength": 1,\n "type": "string"\n },\n "name": {\n "minLength": 1,\n "type": "string"\n },\n "version": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "id",\n "name",\n "version"\n ],\n "type": "object"\n }\n },\n "required": [\n "provider",\n "parameters",\n "digest"\n ],\n "type": "object"\n },\n "authority": {\n "enum": [\n "shipped-artifact",\n "controlled-replay",\n "historical-reference",\n "external-service",\n "analyst-inference"\n ],\n "type": "string"\n },\n "confidence": {\n "enum": [\n "observed",\n "derived",\n "inferred"\n ],\n "type": "string"\n },\n "environment": {\n "anyOf": [\n {\n "additionalProperties": false,\n "properties": {\n "architecture": {\n "minLength": 1,\n "type": "string"\n },\n "id": {\n "minLength": 1,\n "type": "string"\n },\n "isolation": {\n "enum": [\n "none",\n "process",\n "container",\n "virtual-machine"\n ],\n "type": "string"\n },\n "platform": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "id",\n "platform",\n "architecture",\n "isolation"\n ],\n "type": "object"\n },\n {\n "type": "null"\n }\n ]\n },\n "evidence_id": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "evidence_links": {\n "items": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "type": "array"\n },\n "limitations": {\n "items": {\n "type": "string"\n },\n "type": "array"\n },\n "locations": {\n "items": {\n "oneOf": [\n {\n "additionalProperties": false,\n "properties": {\n "address": {\n "minLength": 1,\n "type": "string"\n },\n "kind": {\n "const": "address",\n "type": "string"\n }\n },\n "required": [\n "kind",\n "address"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "end": {\n "minLength": 1,\n "type": "string"\n },\n "kind": {\n "const": "address-range",\n "type": "string"\n },\n "start": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "kind",\n "start",\n "end"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "kind": {\n "const": "artifact-path",\n "type": "string"\n },\n "path": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "kind",\n "path"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "kind": {\n "const": "file-offset",\n "type": "string"\n },\n "offset": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "kind",\n "offset"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "end": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "kind": {\n "const": "file-offset-range",\n "type": "string"\n },\n "start": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "kind",\n "start",\n "end"\n ],\n "type": "object"\n }\n ]\n },\n "type": "array"\n },\n "normalized_result": {\n "$ref": "#/$defs/__schema0"\n },\n "operation": {\n "minLength": 1,\n "type": "string"\n },\n "parameters": {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n },\n "predicate_type": {\n "minLength": 1,\n "type": "string"\n },\n "provider": {\n "additionalProperties": false,\n "properties": {\n "id": {\n "minLength": 1,\n "type": "string"\n },\n "name": {\n "minLength": 1,\n "type": "string"\n },\n "version": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "id",\n "name",\n "version"\n ],\n "type": "object"\n },\n "raw_result": {\n "anyOf": [\n {\n "$ref": "#/$defs/__schema0"\n },\n {\n "type": "null"\n }\n ]\n },\n "subject": {\n "anyOf": [\n {\n "additionalProperties": false,\n "properties": {\n "architecture": {\n "anyOf": [\n {\n "enum": [\n "x86",\n "x86_64",\n "arm",\n "arm64"\n ],\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "digest": {\n "additionalProperties": false,\n "properties": {\n "sha256": {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n }\n },\n "required": [\n "sha256"\n ],\n "type": "object"\n },\n "format": {\n "enum": [\n "hopper",\n "analysis-database",\n "mach-o",\n "elf",\n "pe",\n "dos-mz",\n "dos-com",\n "zip",\n "ipa",\n "apk",\n "msix",\n "appx",\n "asar",\n "dmg",\n "pkg",\n "plist",\n "javascript",\n "source-map",\n "directory",\n "file",\n "unknown",\n "mach-o-universal",\n "javascript-bundle",\n "entitlements"\n ],\n "type": "string"\n },\n "local_path": {\n "type": "string"\n },\n "name": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "name",\n "digest",\n "format",\n "architecture",\n "local_path"\n ],\n "type": "object"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "evidence_id",\n "subject",\n "provider",\n "predicate_type",\n "operation",\n "parameters",\n "raw_result",\n "normalized_result",\n "confidence",\n "authority",\n "environment",\n "limitations",\n "locations",\n "evidence_links"\n ],\n "type": "object"\n },\n "evidence_id": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "result": {\n "additionalProperties": false,\n "properties": {\n "accessibility": {\n "additionalProperties": false,\n "properties": {\n "nodes": {\n "items": {\n "additionalProperties": false,\n "properties": {\n "description": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "ignored": {\n "type": "boolean"\n },\n "name": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "node_id": {\n "type": "string"\n },\n "parent_id": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "role": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "states": {\n "default": [],\n "items": {\n "additionalProperties": false,\n "properties": {\n "name": {\n "type": "string"\n },\n "value": {\n "anyOf": [\n {\n "type": "boolean"\n },\n {\n "type": "number"\n },\n {\n "type": "string"\n }\n ]\n }\n },\n "required": [\n "name",\n "value"\n ],\n "type": "object"\n },\n "type": "array"\n }\n },\n "required": [\n "node_id",\n "parent_id",\n "role",\n "name",\n "description",\n "ignored",\n "states"\n ],\n "type": "object"\n },\n "type": "array"\n },\n "text_capture": {\n "additionalProperties": false,\n "properties": {\n "excluded_fields": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "retained_bytes": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "status": {\n "enum": [\n "not_approved",\n "included",\n "unavailable"\n ],\n "type": "string"\n }\n },\n "required": [\n "status",\n "retained_bytes",\n "excluded_fields"\n ],\n "type": "object"\n },\n "total_nodes": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "total_nodes",\n "text_capture",\n "nodes"\n ],\n "type": "object"\n },\n "browser": {\n "additionalProperties": false,\n "properties": {\n "js_version": {\n "type": "string"\n },\n "product": {\n "type": "string"\n },\n "protocol_version": {\n "type": "string"\n },\n "revision": {\n "type": "string"\n },\n "user_agent": {\n "type": "string"\n }\n },\n "required": [\n "product",\n "protocol_version",\n "revision",\n "user_agent",\n "js_version"\n ],\n "type": "object"\n },\n "capture_window": {\n "additionalProperties": false,\n "properties": {\n "ended_at": {\n "format": "date-time",\n "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))$",\n "type": "string"\n },\n "observation_ms": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "started_at": {\n "format": "date-time",\n "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))$",\n "type": "string"\n }\n },\n "required": [\n "started_at",\n "ended_at",\n "observation_ms"\n ],\n "type": "object"\n },\n "completeness": {\n "additionalProperties": false,\n "properties": {\n "attach_limited_sections": {\n "items": {\n "enum": [\n "frames",\n "dom",\n "accessibility",\n "scripts",\n "script_sources",\n "resources",\n "network_requests",\n "network_initiators",\n "console_events",\n "console_text",\n "websocket_connections",\n "websocket_frames",\n "websocket_shapes",\n "json_body_shapes",\n "workers",\n "storage",\n "storage_keys",\n "metadata",\n "webmcp_tools",\n "screenshot",\n "source_maps",\n "timeline"\n ],\n "type": "string"\n },\n "type": "array"\n },\n "conditions": {\n "items": {\n "enum": [\n "complete_within_window",\n "policy_filtered",\n "attach_limited",\n "truncated"\n ],\n "type": "string"\n },\n "maxItems": 3,\n "minItems": 1,\n "type": "array"\n },\n "dropped_events": {\n "additionalProperties": false,\n "properties": {\n "console_events": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "network_requests": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "scripts": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "timeline_events": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "total": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "webmcp_tools": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "websocket_connections": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "websocket_frames": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "scripts",\n "network_requests",\n "console_events",\n "websocket_connections",\n "websocket_frames",\n "webmcp_tools",\n "timeline_events",\n "total"\n ],\n "type": "object"\n },\n "excluded": {\n "items": {\n "additionalProperties": false,\n "properties": {\n "count": {\n "anyOf": [\n {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n {\n "type": "null"\n }\n ]\n },\n "reason": {\n "enum": [\n "disallowed_origin",\n "unsupported_url",\n "unattributed_origin",\n "not_approved",\n "out_of_target_scope",\n "provider_unavailable",\n "invalid_protocol_value"\n ],\n "type": "string"\n },\n "section": {\n "enum": [\n "frames",\n "dom",\n "accessibility",\n "scripts",\n "script_sources",\n "resources",\n "network_requests",\n "network_initiators",\n "console_events",\n "console_text",\n "websocket_connections",\n "websocket_frames",\n "websocket_shapes",\n "json_body_shapes",\n "workers",\n "storage",\n "storage_keys",\n "metadata",\n "webmcp_tools",\n "screenshot",\n "source_maps",\n "timeline"\n ],\n "type": "string"\n }\n },\n "required": [\n "section",\n "reason",\n "count"\n ],\n "type": "object"\n },\n "type": "array"\n },\n "policy_filtered_sections": {\n "items": {\n "enum": [\n "frames",\n "dom",\n "accessibility",\n "scripts",\n "script_sources",\n "resources",\n "network_requests",\n "network_initiators",\n "console_events",\n "console_text",\n "websocket_connections",\n "websocket_frames",\n "websocket_shapes",\n "json_body_shapes",\n "workers",\n "storage",\n "storage_keys",\n "metadata",\n "webmcp_tools",\n "screenshot",\n "source_maps",\n "timeline"\n ],\n "type": "string"\n },\n "type": "array"\n },\n "status": {\n "enum": [\n "complete_within_window",\n "policy_filtered",\n "attach_limited",\n "truncated"\n ],\n "type": "string"\n },\n "truncated_sections": {\n "items": {\n "enum": [\n "frames",\n "dom",\n "accessibility",\n "scripts",\n "script_sources",\n "resources",\n "network_requests",\n "network_initiators",\n "console_events",\n "console_text",\n "websocket_connections",\n "websocket_frames",\n "websocket_shapes",\n "json_body_shapes",\n "workers",\n "storage",\n "storage_keys",\n "metadata",\n "webmcp_tools",\n "screenshot",\n "source_maps",\n "timeline"\n ],\n "type": "string"\n },\n "type": "array"\n },\n "unavailable_sections": {\n "items": {\n "enum": [\n "frames",\n "dom",\n "accessibility",\n "scripts",\n "script_sources",\n "resources",\n "network_requests",\n "network_initiators",\n "console_events",\n "console_text",\n "websocket_connections",\n "websocket_frames",\n "websocket_shapes",\n "json_body_shapes",\n "workers",\n "storage",\n "storage_keys",\n "metadata",\n "webmcp_tools",\n "screenshot",\n "source_maps",\n "timeline"\n ],\n "type": "string"\n },\n "type": "array"\n }\n },\n "required": [\n "status",\n "conditions",\n "policy_filtered_sections",\n "attach_limited_sections",\n "truncated_sections",\n "unavailable_sections",\n "excluded",\n "dropped_events"\n ],\n "type": "object"\n },\n "console": {\n "additionalProperties": false,\n "properties": {\n "coverage_started_at": {\n "format": "date-time",\n "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))$",\n "type": "string"\n },\n "events": {\n "items": {\n "additionalProperties": false,\n "properties": {\n "argument_types": {\n "items": {\n "type": "string"\n },\n "type": "array"\n },\n "column": {\n "anyOf": [\n {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n {\n "type": "null"\n }\n ]\n },\n "line": {\n "anyOf": [\n {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n {\n "type": "null"\n }\n ]\n },\n "text_capture": {\n "additionalProperties": false,\n "properties": {\n "retained_bytes": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "status": {\n "enum": [\n "not_approved",\n "included"\n ],\n "type": "string"\n },\n "values": {\n "items": {\n "additionalProperties": false,\n "properties": {\n "argument_index": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "text": {\n "type": "string"\n },\n "type": {\n "type": "string"\n }\n },\n "required": [\n "argument_index",\n "type",\n "text"\n ],\n "type": "object"\n },\n "type": "array"\n }\n },\n "required": [\n "status",\n "values",\n "retained_bytes"\n ],\n "type": "object"\n },\n "timestamp": {\n "type": "number"\n },\n "type": {\n "type": "string"\n },\n "url": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "type",\n "timestamp",\n "argument_types",\n "url",\n "line",\n "column",\n "text_capture"\n ],\n "type": "object"\n },\n "type": "array"\n },\n "prior_activity_available": {\n "const": false,\n "type": "boolean"\n }\n },\n "required": [\n "events",\n "coverage_started_at",\n "prior_activity_available"\n ],\n "type": "object"\n },\n "dom": {\n "additionalProperties": false,\n "properties": {\n "nodes": {\n "items": {\n "additionalProperties": false,\n "properties": {\n "attribute_names": {\n "items": {\n "type": "string"\n },\n "type": "array"\n },\n "index": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "node_name": {\n "type": "string"\n },\n "node_type": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "node_value_length": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "parent_index": {\n "maximum": 9007199254740991,\n "minimum": -1,\n "type": "integer"\n }\n },\n "required": [\n "index",\n "parent_index",\n "node_type",\n "node_name",\n "node_value_length",\n "attribute_names"\n ],\n "type": "object"\n },\n "type": "array"\n },\n "total_nodes": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "total_nodes",\n "nodes"\n ],\n "type": "object"\n },\n "frames": {\n "items": {\n "additionalProperties": false,\n "properties": {\n "frame_id": {\n "type": "string"\n },\n "origin": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "parent_frame_id": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "url": {\n "type": "string"\n }\n },\n "required": [\n "frame_id",\n "parent_frame_id",\n "url",\n "origin"\n ],\n "type": "object"\n },\n "type": "array"\n },\n "limitations": {\n "items": {\n "type": "string"\n },\n "type": "array"\n },\n "metadata": {\n "additionalProperties": false,\n "properties": {\n "agent_hints": {\n "items": {\n "additionalProperties": false,\n "properties": {\n "declaration": {\n "type": "string"\n },\n "mechanism": {\n "enum": [\n "link_rel",\n "dom_link_rel",\n "well_known_resource",\n "response_header"\n ],\n "type": "string"\n },\n "trust": {\n "const": "page-declared-untrusted",\n "type": "string"\n },\n "url": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "mechanism",\n "declaration",\n "url",\n "trust"\n ],\n "type": "object"\n },\n "type": "array"\n },\n "dom_urls": {\n "items": {\n "additionalProperties": false,\n "properties": {\n "attribute": {\n "enum": [\n "href",\n "src",\n "action",\n "formaction",\n "poster"\n ],\n "type": "string"\n },\n "destination_scope": {\n "enum": [\n "approved",\n "outside_policy",\n "unsupported"\n ],\n "type": "string"\n },\n "node_index": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "url": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "node_index",\n "attribute",\n "url",\n "destination_scope"\n ],\n "type": "object"\n },\n "type": "array"\n },\n "excluded_dom_urls": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "headers_allowlisted": {\n "const": true,\n "type": "boolean"\n },\n "responses": {\n "items": {\n "additionalProperties": false,\n "properties": {\n "content_encoding": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "content_length": {\n "anyOf": [\n {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n {\n "type": "null"\n }\n ]\n },\n "csp": {\n "additionalProperties": false,\n "properties": {\n "directives": {\n "items": {\n "additionalProperties": false,\n "properties": {\n "name": {\n "type": "string"\n },\n "sources": {\n "items": {\n "additionalProperties": false,\n "properties": {\n "kind": {\n "enum": [\n "keyword",\n "scheme",\n "approved_origin",\n "external_origin",\n "other"\n ],\n "type": "string"\n },\n "value": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "kind",\n "value"\n ],\n "type": "object"\n },\n "type": "array"\n }\n },\n "required": [\n "name",\n "sources"\n ],\n "type": "object"\n },\n "type": "array"\n },\n "hash_count": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "nonce_count": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "directives",\n "nonce_count",\n "hash_count"\n ],\n "type": "object"\n },\n "links": {\n "items": {\n "additionalProperties": false,\n "properties": {\n "as": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "crossorigin": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "destination_scope": {\n "enum": [\n "approved",\n "outside_policy",\n "unsupported"\n ],\n "type": "string"\n },\n "href": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "rel": {\n "items": {\n "type": "string"\n },\n "type": "array"\n },\n "type": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "href",\n "destination_scope",\n "rel",\n "as",\n "type",\n "crossorigin"\n ],\n "type": "object"\n },\n "type": "array"\n },\n "mime_type": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "policies": {\n "additionalProperties": false,\n "properties": {\n "coep": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "coop": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "corp": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "permissions_policy_features": {\n "items": {\n "type": "string"\n },\n "type": "array"\n },\n "referrer_policy": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "x_content_type_options": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "coop",\n "coep",\n "corp",\n "referrer_policy",\n "x_content_type_options",\n "permissions_policy_features"\n ],\n "type": "object"\n },\n "request_id": {\n "type": "string"\n },\n "url": {\n "type": "string"\n }\n },\n "required": [\n "request_id",\n "url",\n "mime_type",\n "content_length",\n "content_encoding",\n "csp",\n "links",\n "policies"\n ],\n "type": "object"\n },\n "type": "array"\n }\n },\n "required": [\n "responses",\n "dom_urls",\n "agent_hints",\n "excluded_dom_urls",\n "headers_allowlisted"\n ],\n "type": "object"\n },\n "network": {\n "additionalProperties": false,\n "properties": {\n "coverage_started_at": {\n "format": "date-time",\n "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))$",\n "type": "string"\n },\n "prior_activity_available": {\n "const": false,\n "type": "boolean"\n },\n "requests": {\n "items": {\n "additionalProperties": false,\n "properties": {\n "body_shapes": {\n "additionalProperties": false,\n "properties": {\n "request": {\n "anyOf": [\n {\n "additionalProperties": false,\n "properties": {\n "max_depth_observed": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "node_count": {\n "maximum": 9007199254740991,\n "minimum": 1,\n "type": "integer"\n },\n "properties": {\n "items": {\n "additionalProperties": false,\n "properties": {\n "observations": {\n "maximum": 9007199254740991,\n "minimum": 1,\n "type": "integer"\n },\n "path": {\n "type": "string"\n },\n "types": {\n "items": {\n "enum": [\n "object",\n "array",\n "string",\n "number",\n "boolean",\n "null"\n ],\n "type": "string"\n },\n "minItems": 1,\n "type": "array"\n }\n },\n "required": [\n "path",\n "types",\n "observations"\n ],\n "type": "object"\n },\n "type": "array"\n },\n "root_type": {\n "enum": [\n "object",\n "array",\n "string",\n "number",\n "boolean",\n "null"\n ],\n "type": "string"\n }\n },\n "required": [\n "root_type",\n "node_count",\n "max_depth_observed",\n "properties"\n ],\n "type": "object"\n },\n {\n "type": "null"\n }\n ]\n },\n "response": {\n "anyOf": [\n {\n "additionalProperties": false,\n "properties": {\n "max_depth_observed": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "node_count": {\n "maximum": 9007199254740991,\n "minimum": 1,\n "type": "integer"\n },\n "properties": {\n "items": {\n "additionalProperties": false,\n "properties": {\n "observations": {\n "maximum": 9007199254740991,\n "minimum": 1,\n "type": "integer"\n },\n "path": {\n "type": "string"\n },\n "types": {\n "items": {\n "enum": [\n "object",\n "array",\n "string",\n "number",\n "boolean",\n "null"\n ],\n "type": "string"\n },\n "minItems": 1,\n "type": "array"\n }\n },\n "required": [\n "path",\n "types",\n "observations"\n ],\n "type": "object"\n },\n "type": "array"\n },\n "root_type": {\n "enum": [\n "object",\n "array",\n "string",\n "number",\n "boolean",\n "null"\n ],\n "type": "string"\n }\n },\n "required": [\n "root_type",\n "node_count",\n "max_depth_observed",\n "properties"\n ],\n "type": "object"\n },\n {\n "type": "null"\n }\n ]\n },\n "status": {\n "enum": [\n "not_approved",\n "included",\n "partial",\n "unavailable"\n ],\n "type": "string"\n }\n },\n "required": [\n "status",\n "request",\n "response"\n ],\n "type": "object"\n },\n "encoded_data_length": {\n "anyOf": [\n {\n "minimum": 0,\n "type": "number"\n },\n {\n "type": "null"\n }\n ]\n },\n "initiator": {\n "additionalProperties": false,\n "properties": {\n "column": {\n "anyOf": [\n {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n {\n "type": "null"\n }\n ]\n },\n "line": {\n "anyOf": [\n {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n {\n "type": "null"\n }\n ]\n },\n "type": {\n "type": "string"\n },\n "url": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "type",\n "url",\n "line",\n "column"\n ],\n "type": "object"\n },\n "method": {\n "type": "string"\n },\n "mime_type": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "origin": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "request_id": {\n "type": "string"\n },\n "resource_type": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "status": {\n "anyOf": [\n {\n "type": "number"\n },\n {\n "type": "null"\n }\n ]\n },\n "url": {\n "type": "string"\n }\n },\n "required": [\n "request_id",\n "url",\n "origin",\n "method",\n "resource_type",\n "status",\n "mime_type",\n "encoded_data_length",\n "initiator",\n "body_shapes"\n ],\n "type": "object"\n },\n "type": "array"\n },\n "websocket_events": {\n "items": {\n "additionalProperties": false,\n "properties": {\n "direction": {\n "enum": [\n "sent",\n "received"\n ],\n "type": "string"\n },\n "opcode": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "payload_bytes": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "payload_shape": {\n "anyOf": [\n {\n "additionalProperties": false,\n "properties": {\n "format": {\n "enum": [\n "json",\n "text",\n "binary"\n ],\n "type": "string"\n },\n "json_shape": {\n "anyOf": [\n {\n "additionalProperties": false,\n "properties": {\n "max_depth_observed": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "node_count": {\n "maximum": 9007199254740991,\n "minimum": 1,\n "type": "integer"\n },\n "properties": {\n "items": {\n "additionalProperties": false,\n "properties": {\n "observations": {\n "maximum": 9007199254740991,\n "minimum": 1,\n "type": "integer"\n },\n "path": {\n "type": "string"\n },\n "types": {\n "items": {\n "enum": [\n "object",\n "array",\n "string",\n "number",\n "boolean",\n "null"\n ],\n "type": "string"\n },\n "minItems": 1,\n "type": "array"\n }\n },\n "required": [\n "path",\n "types",\n "observations"\n ],\n "type": "object"\n },\n "type": "array"\n },\n "root_type": {\n "enum": [\n "object",\n "array",\n "string",\n "number",\n "boolean",\n "null"\n ],\n "type": "string"\n }\n },\n "required": [\n "root_type",\n "node_count",\n "max_depth_observed",\n "properties"\n ],\n "type": "object"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "format",\n "json_shape"\n ],\n "type": "object"\n },\n {\n "type": "null"\n }\n ]\n },\n "request_id": {\n "type": "string"\n }\n },\n "required": [\n "request_id",\n "direction",\n "opcode",\n "payload_bytes",\n "payload_shape"\n ],\n "type": "object"\n },\n "type": "array"\n }\n },\n "required": [\n "requests",\n "websocket_events",\n "coverage_started_at",\n "prior_activity_available"\n ],\n "type": "object"\n },\n "resources": {\n "items": {\n "additionalProperties": false,\n "properties": {\n "content_size": {\n "anyOf": [\n {\n "minimum": 0,\n "type": "number"\n },\n {\n "type": "null"\n }\n ]\n },\n "mime_type": {\n "type": "string"\n },\n "origin": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "resource_key": {\n "pattern": "^res_[a-f0-9]{64}$",\n "type": "string"\n },\n "type": {\n "type": "string"\n },\n "url": {\n "type": "string"\n }\n },\n "required": [\n "resource_key",\n "url",\n "origin",\n "type",\n "mime_type",\n "content_size"\n ],\n "type": "object"\n },\n "type": "array"\n },\n "scripts": {\n "additionalProperties": false,\n "properties": {\n "items": {\n "items": {\n "additionalProperties": false,\n "properties": {\n "cdp_hash": {\n "type": "string"\n },\n "frame_id": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ],\n "default": null\n },\n "is_module": {\n "type": "boolean"\n },\n "language": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "length": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "origin": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "resource_reconciliation": {\n "oneOf": [\n {\n "additionalProperties": false,\n "properties": {\n "resource_key": {\n "type": "string"\n },\n "status": {\n "const": "exact",\n "type": "string"\n }\n },\n "required": [\n "status",\n "resource_key"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "candidate_resource_keys": {\n "items": {\n "type": "string"\n },\n "type": "array"\n },\n "status": {\n "const": "ambiguous",\n "type": "string"\n }\n },\n "required": [\n "status",\n "candidate_resource_keys"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "reason": {\n "const": "no_exact_sanitized_url",\n "type": "string"\n },\n "status": {\n "const": "unmatched",\n "type": "string"\n }\n },\n "required": [\n "status",\n "reason"\n ],\n "type": "object"\n }\n ]\n },\n "script_key": {\n "pattern": "^scr_[a-f0-9]{64}(?:_[0-9]+)?$",\n "type": "string"\n },\n "source": {\n "oneOf": [\n {\n "additionalProperties": false,\n "properties": {\n "included": {\n "const": false,\n "type": "boolean"\n },\n "reason": {\n "type": "string"\n }\n },\n "required": [\n "included",\n "reason"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "artifact": {\n "additionalProperties": false,\n "properties": {\n "bytes": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "charset": {\n "const": "utf-8",\n "type": "string"\n },\n "media_type": {\n "minLength": 1,\n "type": "string"\n },\n "sha256": {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n },\n "text": {\n "type": "string"\n }\n },\n "required": [\n "sha256",\n "bytes",\n "media_type",\n "charset",\n "text"\n ],\n "type": "object"\n },\n "included": {\n "const": true,\n "type": "boolean"\n }\n },\n "required": [\n "included",\n "artifact"\n ],\n "type": "object"\n }\n ]\n },\n "source_map_url": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "url": {\n "type": "string"\n }\n },\n "required": [\n "script_key",\n "frame_id",\n "url",\n "origin",\n "cdp_hash",\n "length",\n "is_module",\n "language",\n "source_map_url",\n "resource_reconciliation",\n "source"\n ],\n "type": "object"\n },\n "type": "array"\n },\n "total": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "total",\n "items"\n ],\n "type": "object"\n },\n "storage": {\n "additionalProperties": false,\n "properties": {\n "cache_names": {\n "items": {\n "type": "string"\n },\n "type": "array"\n },\n "content_fingerprints": {\n "default": [],\n "items": {\n "additionalProperties": false,\n "properties": {\n "complete": {\n "type": "boolean"\n },\n "identity_sha256": {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n },\n "scope": {\n "enum": [\n "cookie",\n "local_storage",\n "session_storage",\n "indexed_db_schema",\n "indexed_db_record",\n "cache_entry"\n ],\n "type": "string"\n },\n "value_sha256": {\n "anyOf": [\n {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "scope",\n "identity_sha256",\n "value_sha256",\n "complete"\n ],\n "type": "object"\n },\n "type": "array"\n },\n "fingerprint_algorithm": {\n "const": "sha256",\n "default": "sha256",\n "type": "string"\n },\n "fingerprints_complete": {\n "default": false,\n "type": "boolean"\n },\n "indexed_db_names": {\n "items": {\n "type": "string"\n },\n "type": "array"\n },\n "local_storage_keys": {\n "items": {\n "type": "string"\n },\n "type": "array"\n },\n "origin": {\n "type": "string"\n },\n "quota_bytes": {\n "anyOf": [\n {\n "minimum": 0,\n "type": "number"\n },\n {\n "type": "null"\n }\n ]\n },\n "session_storage_keys": {\n "items": {\n "type": "string"\n },\n "type": "array"\n },\n "usage_bytes": {\n "anyOf": [\n {\n "minimum": 0,\n "type": "number"\n },\n {\n "type": "null"\n }\n ]\n },\n "values_redacted": {\n "const": true,\n "type": "boolean"\n }\n },\n "required": [\n "origin",\n "usage_bytes",\n "quota_bytes",\n "local_storage_keys",\n "session_storage_keys",\n "indexed_db_names",\n "cache_names",\n "content_fingerprints",\n "fingerprint_algorithm",\n "fingerprints_complete",\n "values_redacted"\n ],\n "type": "object"\n },\n "target": {\n "additionalProperties": false,\n "properties": {\n "attached": {\n "type": "boolean"\n },\n "origin": {\n "type": "string"\n },\n "target_id": {\n "type": "string"\n },\n "title": {\n "type": "string"\n },\n "type": {\n "type": "string"\n },\n "url": {\n "type": "string"\n }\n },\n "required": [\n "target_id",\n "type",\n "title",\n "url",\n "origin",\n "attached"\n ],\n "type": "object"\n },\n "workers": {\n "items": {\n "additionalProperties": false,\n "properties": {\n "attached": {\n "type": "boolean"\n },\n "opener_target_id": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ],\n "default": null\n },\n "origin": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "parent_frame_id": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ],\n "default": null\n },\n "target_id": {\n "type": "string"\n },\n "type": {\n "type": "string"\n },\n "url": {\n "type": "string"\n }\n },\n "required": [\n "target_id",\n "type",\n "url",\n "origin",\n "attached",\n "opener_target_id",\n "parent_frame_id"\n ],\n "type": "object"\n },\n "type": "array"\n }\n },\n "required": [\n "browser",\n "target",\n "capture_window",\n "completeness",\n "frames",\n "dom",\n "accessibility",\n "scripts",\n "resources",\n "network",\n "console",\n "workers",\n "metadata",\n "storage",\n "limitations"\n ],\n "type": "object"\n }\n },\n "required": [\n "result",\n "evidence_id",\n "evidence"\n ],\n "type": "object"\n },\n "requiresSession": false,\n "title": "Inspect Web Page"\n },\n {\n "analysisOperation": null,\n "annotations": {\n "destructiveHint": false,\n "idempotentHint": true,\n "openWorldHint": true,\n "readOnlyHint": false\n },\n "description": "Capture JavaScript source from one selected CDP page and statically derive a chunk graph, route and endpoint candidates, vendor fingerprints, page-declared WebMCP metadata, and optionally fetch source maps from the selected target origin or explicitly requested origins. JavaScript is parsed but never executed.",\n "effects": {\n "accessesNetwork": true,\n "changesUiState": false,\n "idempotent": true,\n "launchesProcess": false,\n "mayDiscardData": false,\n "mutatesSession": true,\n "mutatesTarget": false,\n "writesFilesystem": false\n },\n "inputSchema": {\n "$schema": "https://json-schema.org/draft/2020-12/schema",\n "additionalProperties": false,\n "examples": [\n {\n "cdp_endpoint": "http://127.0.0.1:9222",\n "fetch_source_maps": false,\n "include_accessibility_text": false,\n "include_script_sources": true,\n "include_storage_keys": false,\n "observation_ms": 500,\n "target_id": "TARGET_ID_FROM_LIST_BROWSER_TARGETS"\n }\n ],\n "properties": {\n "allowed_origins": {\n "description": "Value for allowed origins.",\n "items": {\n "minLength": 1,\n "type": "string"\n },\n "type": "array"\n },\n "cdp_endpoint": {\n "description": "Literal loopback Chrome DevTools Protocol endpoint.",\n "minLength": 1,\n "type": "string"\n },\n "fetch_source_maps": {\n "default": false,\n "description": "Value for fetch source maps.",\n "type": "boolean"\n },\n "include_accessibility_text": {\n "default": false,\n "description": "Whether to include accessibility text in the result.",\n "type": "boolean"\n },\n "include_console_text": {\n "default": false,\n "description": "Whether to include console text in the result.",\n "type": "boolean"\n },\n "include_json_body_shapes": {\n "default": false,\n "description": "Whether to include json body shapes in the result.",\n "type": "boolean"\n },\n "include_script_sources": {\n "const": true,\n "default": true,\n "description": "Whether to include script sources in the result.",\n "type": "boolean"\n },\n "include_storage_fingerprints": {\n "default": false,\n "description": "Whether to include storage fingerprints in the result.",\n "type": "boolean"\n },\n "include_storage_keys": {\n "default": false,\n "description": "Whether to include storage keys in the result.",\n "type": "boolean"\n },\n "include_websocket_shapes": {\n "default": false,\n "description": "Whether to include websocket shapes in the result.",\n "type": "boolean"\n },\n "observation_ms": {\n "default": 500,\n "description": "Value for observation ms.",\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "target_id": {\n "description": "Exact CDP target identifier selected from the endpoint\'s target listing.",\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "cdp_endpoint",\n "target_id"\n ],\n "type": "object"\n },\n "kind": "browser-provider",\n "name": "analyze_web_bundle",\n "outputSchema": {\n "$defs": {\n "__schema0": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "number"\n },\n {\n "type": "boolean"\n },\n {\n "type": "null"\n },\n {\n "items": {\n "$ref": "#/$defs/__schema0"\n },\n "type": "array"\n },\n {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n }\n ]\n }\n },\n "$schema": "https://json-schema.org/draft/2020-12/schema",\n "additionalProperties": false,\n "properties": {\n "evidence": {\n "additionalProperties": false,\n "properties": {\n "analysis_profile": {\n "additionalProperties": false,\n "properties": {\n "digest": {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n },\n "parameters": {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n },\n "provider": {\n "additionalProperties": false,\n "properties": {\n "id": {\n "minLength": 1,\n "type": "string"\n },\n "name": {\n "minLength": 1,\n "type": "string"\n },\n "version": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "id",\n "name",\n "version"\n ],\n "type": "object"\n }\n },\n "required": [\n "provider",\n "parameters",\n "digest"\n ],\n "type": "object"\n },\n "authority": {\n "enum": [\n "shipped-artifact",\n "controlled-replay",\n "historical-reference",\n "external-service",\n "analyst-inference"\n ],\n "type": "string"\n },\n "confidence": {\n "enum": [\n "observed",\n "derived",\n "inferred"\n ],\n "type": "string"\n },\n "environment": {\n "anyOf": [\n {\n "additionalProperties": false,\n "properties": {\n "architecture": {\n "minLength": 1,\n "type": "string"\n },\n "id": {\n "minLength": 1,\n "type": "string"\n },\n "isolation": {\n "enum": [\n "none",\n "process",\n "container",\n "virtual-machine"\n ],\n "type": "string"\n },\n "platform": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "id",\n "platform",\n "architecture",\n "isolation"\n ],\n "type": "object"\n },\n {\n "type": "null"\n }\n ]\n },\n "evidence_id": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "evidence_links": {\n "items": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "type": "array"\n },\n "limitations": {\n "items": {\n "type": "string"\n },\n "type": "array"\n },\n "locations": {\n "items": {\n "oneOf": [\n {\n "additionalProperties": false,\n "properties": {\n "address": {\n "minLength": 1,\n "type": "string"\n },\n "kind": {\n "const": "address",\n "type": "string"\n }\n },\n "required": [\n "kind",\n "address"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "end": {\n "minLength": 1,\n "type": "string"\n },\n "kind": {\n "const": "address-range",\n "type": "string"\n },\n "start": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "kind",\n "start",\n "end"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "kind": {\n "const": "artifact-path",\n "type": "string"\n },\n "path": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "kind",\n "path"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "kind": {\n "const": "file-offset",\n "type": "string"\n },\n "offset": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "kind",\n "offset"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "end": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "kind": {\n "const": "file-offset-range",\n "type": "string"\n },\n "start": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "kind",\n "start",\n "end"\n ],\n "type": "object"\n }\n ]\n },\n "type": "array"\n },\n "normalized_result": {\n "$ref": "#/$defs/__schema0"\n },\n "operation": {\n "minLength": 1,\n "type": "string"\n },\n "parameters": {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n },\n "predicate_type": {\n "minLength": 1,\n "type": "string"\n },\n "provider": {\n "additionalProperties": false,\n "properties": {\n "id": {\n "minLength": 1,\n "type": "string"\n },\n "name": {\n "minLength": 1,\n "type": "string"\n },\n "version": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "id",\n "name",\n "version"\n ],\n "type": "object"\n },\n "raw_result": {\n "anyOf": [\n {\n "$ref": "#/$defs/__schema0"\n },\n {\n "type": "null"\n }\n ]\n },\n "subject": {\n "anyOf": [\n {\n "additionalProperties": false,\n "properties": {\n "architecture": {\n "anyOf": [\n {\n "enum": [\n "x86",\n "x86_64",\n "arm",\n "arm64"\n ],\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "digest": {\n "additionalProperties": false,\n "properties": {\n "sha256": {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n }\n },\n "required": [\n "sha256"\n ],\n "type": "object"\n },\n "format": {\n "enum": [\n "hopper",\n "analysis-database",\n "mach-o",\n "elf",\n "pe",\n "dos-mz",\n "dos-com",\n "zip",\n "ipa",\n "apk",\n "msix",\n "appx",\n "asar",\n "dmg",\n "pkg",\n "plist",\n "javascript",\n "source-map",\n "directory",\n "file",\n "unknown",\n "mach-o-universal",\n "javascript-bundle",\n "entitlements"\n ],\n "type": "string"\n },\n "local_path": {\n "type": "string"\n },\n "name": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "name",\n "digest",\n "format",\n "architecture",\n "local_path"\n ],\n "type": "object"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "evidence_id",\n "subject",\n "provider",\n "predicate_type",\n "operation",\n "parameters",\n "raw_result",\n "normalized_result",\n "confidence",\n "authority",\n "environment",\n "limitations",\n "locations",\n "evidence_links"\n ],\n "type": "object"\n },\n "evidence_id": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "result": {\n "additionalProperties": false,\n "properties": {\n "capture": {\n "additionalProperties": false,\n "properties": {\n "scripts_analyzed": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "scripts_observed": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "source_artifacts": {\n "items": {\n "additionalProperties": false,\n "properties": {\n "bytes": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "charset": {\n "const": "utf-8",\n "type": "string"\n },\n "media_type": {\n "minLength": 1,\n "type": "string"\n },\n "sha256": {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n },\n "text_available": {\n "const": true,\n "type": "boolean"\n }\n },\n "required": [\n "sha256",\n "bytes",\n "media_type",\n "charset",\n "text_available"\n ],\n "type": "object"\n },\n "type": "array"\n },\n "target_url": {\n "type": "string"\n }\n },\n "required": [\n "target_url",\n "scripts_observed",\n "scripts_analyzed",\n "source_artifacts"\n ],\n "type": "object"\n },\n "completeness": {\n "additionalProperties": false,\n "properties": {\n "parse_failures": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "parsed_scripts": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "status": {\n "enum": [\n "complete",\n "partial"\n ],\n "type": "string"\n },\n "visited_ast_nodes": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "status",\n "parsed_scripts",\n "parse_failures",\n "visited_ast_nodes"\n ],\n "type": "object"\n },\n "inferences": {\n "items": {\n "additionalProperties": false,\n "properties": {\n "basis": {\n "items": {\n "additionalProperties": false,\n "properties": {\n "artifact_sha256": {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n },\n "column": {\n "anyOf": [\n {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n {\n "type": "null"\n }\n ]\n },\n "detector": {\n "type": "string"\n },\n "line": {\n "anyOf": [\n {\n "maximum": 9007199254740991,\n "minimum": 1,\n "type": "integer"\n },\n {\n "type": "null"\n }\n ]\n },\n "script_key": {\n "type": "string"\n }\n },\n "required": [\n "script_key",\n "artifact_sha256",\n "line",\n "column",\n "detector"\n ],\n "type": "object"\n },\n "minItems": 1,\n "type": "array"\n },\n "confidence": {\n "enum": [\n "low",\n "medium",\n "high"\n ],\n "type": "string"\n },\n "kind": {\n "enum": [\n "vendor_fingerprint",\n "route_framework",\n "bundle_runtime"\n ],\n "type": "string"\n },\n "value": {\n "type": "string"\n }\n },\n "required": [\n "kind",\n "value",\n "confidence",\n "basis"\n ],\n "type": "object"\n },\n "type": "array"\n },\n "limitations": {\n "items": {\n "type": "string"\n },\n "type": "array"\n },\n "observations": {\n "additionalProperties": false,\n "properties": {\n "chunks": {\n "additionalProperties": false,\n "properties": {\n "edges": {\n "items": {\n "additionalProperties": false,\n "properties": {\n "from_script_key": {\n "type": "string"\n },\n "kind": {\n "enum": [\n "static_import",\n "dynamic_import",\n "require",\n "worker_import"\n ],\n "type": "string"\n },\n "location": {\n "additionalProperties": false,\n "properties": {\n "column": {\n "anyOf": [\n {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n {\n "type": "null"\n }\n ]\n },\n "line": {\n "anyOf": [\n {\n "maximum": 9007199254740991,\n "minimum": 1,\n "type": "integer"\n },\n {\n "type": "null"\n }\n ]\n },\n "script_key": {\n "type": "string"\n }\n },\n "required": [\n "script_key",\n "line",\n "column"\n ],\n "type": "object"\n },\n "resolved_url": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "specifier": {\n "type": "string"\n }\n },\n "required": [\n "from_script_key",\n "kind",\n "specifier",\n "resolved_url",\n "location"\n ],\n "type": "object"\n },\n "type": "array"\n },\n "nodes": {\n "items": {\n "additionalProperties": false,\n "properties": {\n "artifact_sha256": {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n },\n "bytes": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "script_key": {\n "type": "string"\n },\n "url": {\n "type": "string"\n }\n },\n "required": [\n "script_key",\n "url",\n "artifact_sha256",\n "bytes"\n ],\n "type": "object"\n },\n "type": "array"\n }\n },\n "required": [\n "nodes",\n "edges"\n ],\n "type": "object"\n },\n "endpoints": {\n "items": {\n "additionalProperties": false,\n "properties": {\n "location": {\n "additionalProperties": false,\n "properties": {\n "column": {\n "anyOf": [\n {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n {\n "type": "null"\n }\n ]\n },\n "line": {\n "anyOf": [\n {\n "maximum": 9007199254740991,\n "minimum": 1,\n "type": "integer"\n },\n {\n "type": "null"\n }\n ]\n },\n "script_key": {\n "type": "string"\n }\n },\n "required": [\n "script_key",\n "line",\n "column"\n ],\n "type": "object"\n },\n "mechanism": {\n "type": "string"\n },\n "value": {\n "type": "string"\n }\n },\n "required": [\n "value",\n "mechanism",\n "location"\n ],\n "type": "object"\n },\n "type": "array"\n },\n "routes": {\n "items": {\n "additionalProperties": false,\n "properties": {\n "location": {\n "additionalProperties": false,\n "properties": {\n "column": {\n "anyOf": [\n {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n {\n "type": "null"\n }\n ]\n },\n "line": {\n "anyOf": [\n {\n "maximum": 9007199254740991,\n "minimum": 1,\n "type": "integer"\n },\n {\n "type": "null"\n }\n ]\n },\n "script_key": {\n "type": "string"\n }\n },\n "required": [\n "script_key",\n "line",\n "column"\n ],\n "type": "object"\n },\n "mechanism": {\n "type": "string"\n },\n "value": {\n "type": "string"\n }\n },\n "required": [\n "value",\n "mechanism",\n "location"\n ],\n "type": "object"\n },\n "type": "array"\n },\n "source_maps": {\n "additionalProperties": false,\n "properties": {\n "items": {\n "items": {\n "anyOf": [\n {\n "additionalProperties": false,\n "properties": {\n "artifact": {\n "additionalProperties": false,\n "properties": {\n "bytes": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "charset": {\n "const": "utf-8",\n "type": "string"\n },\n "media_type": {\n "minLength": 1,\n "type": "string"\n },\n "sha256": {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n },\n "text": {\n "type": "string"\n }\n },\n "required": [\n "sha256",\n "bytes",\n "media_type",\n "charset",\n "text"\n ],\n "type": "object"\n },\n "declared_url": {\n "type": "string"\n },\n "limitation": {\n "type": "null"\n },\n "mappings": {\n "items": {\n "additionalProperties": false,\n "properties": {\n "generated_column": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "generated_line": {\n "maximum": 9007199254740991,\n "minimum": 1,\n "type": "integer"\n },\n "name": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "original_column": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "original_line": {\n "maximum": 9007199254740991,\n "minimum": 1,\n "type": "integer"\n },\n "source": {\n "type": "string"\n }\n },\n "required": [\n "generated_line",\n "generated_column",\n "source",\n "original_line",\n "original_column",\n "name"\n ],\n "type": "object"\n },\n "type": "array"\n },\n "original_module_edges": {\n "items": {\n "additionalProperties": false,\n "properties": {\n "from_source": {\n "type": "string"\n },\n "kind": {\n "enum": [\n "static_import",\n "dynamic_import",\n "require"\n ],\n "type": "string"\n },\n "resolved_source": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "specifier": {\n "type": "string"\n }\n },\n "required": [\n "from_source",\n "kind",\n "specifier",\n "resolved_source"\n ],\n "type": "object"\n },\n "type": "array"\n },\n "original_sources": {\n "items": {\n "additionalProperties": false,\n "properties": {\n "artifact": {\n "anyOf": [\n {\n "additionalProperties": false,\n "properties": {\n "bytes": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "charset": {\n "const": "utf-8",\n "type": "string"\n },\n "media_type": {\n "minLength": 1,\n "type": "string"\n },\n "sha256": {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n },\n "text": {\n "type": "string"\n }\n },\n "required": [\n "sha256",\n "bytes",\n "media_type",\n "charset",\n "text"\n ],\n "type": "object"\n },\n {\n "type": "null"\n }\n ]\n },\n "source": {\n "type": "string"\n }\n },\n "required": [\n "source",\n "artifact"\n ],\n "type": "object"\n },\n "type": "array"\n },\n "script_key": {\n "type": "string"\n },\n "status": {\n "const": "included",\n "type": "string"\n }\n },\n "required": [\n "script_key",\n "declared_url",\n "artifact",\n "original_sources",\n "original_module_edges",\n "mappings",\n "status",\n "limitation"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "artifact": {\n "additionalProperties": false,\n "properties": {\n "bytes": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "charset": {\n "const": "utf-8",\n "type": "string"\n },\n "media_type": {\n "minLength": 1,\n "type": "string"\n },\n "sha256": {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n },\n "text": {\n "type": "string"\n }\n },\n "required": [\n "sha256",\n "bytes",\n "media_type",\n "charset",\n "text"\n ],\n "type": "object"\n },\n "declared_url": {\n "type": "string"\n },\n "limitation": {\n "type": "string"\n },\n "mappings": {\n "items": {\n "additionalProperties": false,\n "properties": {\n "generated_column": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "generated_line": {\n "maximum": 9007199254740991,\n "minimum": 1,\n "type": "integer"\n },\n "name": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "original_column": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "original_line": {\n "maximum": 9007199254740991,\n "minimum": 1,\n "type": "integer"\n },\n "source": {\n "type": "string"\n }\n },\n "required": [\n "generated_line",\n "generated_column",\n "source",\n "original_line",\n "original_column",\n "name"\n ],\n "type": "object"\n },\n "type": "array"\n },\n "original_module_edges": {\n "items": {\n "additionalProperties": false,\n "properties": {\n "from_source": {\n "type": "string"\n },\n "kind": {\n "enum": [\n "static_import",\n "dynamic_import",\n "require"\n ],\n "type": "string"\n },\n "resolved_source": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "specifier": {\n "type": "string"\n }\n },\n "required": [\n "from_source",\n "kind",\n "specifier",\n "resolved_source"\n ],\n "type": "object"\n },\n "type": "array"\n },\n "original_sources": {\n "items": {\n "additionalProperties": false,\n "properties": {\n "artifact": {\n "anyOf": [\n {\n "additionalProperties": false,\n "properties": {\n "bytes": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "charset": {\n "const": "utf-8",\n "type": "string"\n },\n "media_type": {\n "minLength": 1,\n "type": "string"\n },\n "sha256": {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n },\n "text": {\n "type": "string"\n }\n },\n "required": [\n "sha256",\n "bytes",\n "media_type",\n "charset",\n "text"\n ],\n "type": "object"\n },\n {\n "type": "null"\n }\n ]\n },\n "source": {\n "type": "string"\n }\n },\n "required": [\n "source",\n "artifact"\n ],\n "type": "object"\n },\n "type": "array"\n },\n "script_key": {\n "type": "string"\n },\n "status": {\n "const": "partial",\n "type": "string"\n }\n },\n "required": [\n "script_key",\n "declared_url",\n "artifact",\n "original_sources",\n "original_module_edges",\n "mappings",\n "status",\n "limitation"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "artifact": {\n "type": "null"\n },\n "declared_url": {\n "type": "string"\n },\n "limitation": {\n "type": "string"\n },\n "mappings": {\n "items": {\n "not": {}\n },\n "maxItems": 0,\n "minItems": 0,\n "type": "array"\n },\n "original_module_edges": {\n "items": {\n "not": {}\n },\n "maxItems": 0,\n "minItems": 0,\n "type": "array"\n },\n "original_sources": {\n "items": {\n "not": {}\n },\n "maxItems": 0,\n "minItems": 0,\n "type": "array"\n },\n "script_key": {\n "type": "string"\n },\n "status": {\n "enum": [\n "fetch_failed",\n "invalid",\n "policy_filtered"\n ],\n "type": "string"\n }\n },\n "required": [\n "script_key",\n "declared_url",\n "artifact",\n "original_sources",\n "original_module_edges",\n "mappings",\n "status",\n "limitation"\n ],\n "type": "object"\n }\n ]\n },\n "type": "array"\n },\n "processed": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "requested": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "status": {\n "enum": [\n "not_requested",\n "included",\n "partial",\n "unavailable"\n ],\n "type": "string"\n }\n },\n "required": [\n "status",\n "requested",\n "processed",\n "items"\n ],\n "type": "object"\n },\n "webmcp_declarations": {\n "items": {\n "additionalProperties": false,\n "properties": {\n "description": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "location": {\n "additionalProperties": false,\n "properties": {\n "column": {\n "anyOf": [\n {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n {\n "type": "null"\n }\n ]\n },\n "line": {\n "anyOf": [\n {\n "maximum": 9007199254740991,\n "minimum": 1,\n "type": "integer"\n },\n {\n "type": "null"\n }\n ]\n },\n "script_key": {\n "type": "string"\n }\n },\n "required": [\n "script_key",\n "line",\n "column"\n ],\n "type": "object"\n },\n "name": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "schema_property_names": {\n "items": {\n "type": "string"\n },\n "type": "array"\n },\n "trust": {\n "const": "page-declared-untrusted",\n "type": "string"\n }\n },\n "required": [\n "name",\n "description",\n "schema_property_names",\n "trust",\n "location"\n ],\n "type": "object"\n },\n "type": "array"\n }\n },\n "required": [\n "chunks",\n "routes",\n "endpoints",\n "webmcp_declarations",\n "source_maps"\n ],\n "type": "object"\n },\n "unknowns": {\n "items": {\n "additionalProperties": false,\n "properties": {\n "affected_script_keys": {\n "items": {\n "type": "string"\n },\n "type": "array"\n },\n "dimension": {\n "type": "string"\n },\n "reason": {\n "type": "string"\n }\n },\n "required": [\n "dimension",\n "reason",\n "affected_script_keys"\n ],\n "type": "object"\n },\n "type": "array"\n }\n },\n "required": [\n "capture",\n "observations",\n "inferences",\n "unknowns",\n "completeness",\n "limitations"\n ],\n "type": "object"\n }\n },\n "required": [\n "result",\n "evidence_id",\n "evidence"\n ],\n "type": "object"\n },\n "requiresSession": false,\n "title": "Analyze Web Bundle"\n },\n {\n "analysisOperation": null,\n "annotations": {\n "destructiveHint": false,\n "idempotentHint": true,\n "openWorldHint": true,\n "readOnlyHint": false\n },\n "description": "Arm a CDP observation window of the requested duration while the user operates the page. By default it follows the selected target\'s current origin; an explicit origin list controls which origins may be retained. Records navigation, redirect, lifecycle, and failure events.",\n "effects": {\n "accessesNetwork": true,\n "changesUiState": false,\n "idempotent": true,\n "launchesProcess": false,\n "mayDiscardData": false,\n "mutatesSession": true,\n "mutatesTarget": false,\n "writesFilesystem": false\n },\n "inputSchema": {\n "$schema": "https://json-schema.org/draft/2020-12/schema",\n "additionalProperties": false,\n "examples": [\n {\n "cdp_endpoint": "http://127.0.0.1:9222",\n "observation_ms": 10000,\n "target_id": "TARGET_ID_FROM_LIST_BROWSER_TARGETS"\n }\n ],\n "properties": {\n "allowed_origins": {\n "description": "Value for allowed origins.",\n "items": {\n "minLength": 1,\n "type": "string"\n },\n "type": "array"\n },\n "cdp_endpoint": {\n "description": "Literal loopback Chrome DevTools Protocol endpoint.",\n "minLength": 1,\n "type": "string"\n },\n "observation_ms": {\n "default": 10000,\n "description": "Value for observation ms.",\n "maximum": 9007199254740991,\n "minimum": 1,\n "type": "integer"\n },\n "target_id": {\n "description": "Exact CDP target identifier selected from the endpoint\'s target listing.",\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "cdp_endpoint",\n "target_id"\n ],\n "type": "object"\n },\n "kind": "browser-provider",\n "name": "observe_web_session",\n "outputSchema": {\n "$defs": {\n "__schema0": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "number"\n },\n {\n "type": "boolean"\n },\n {\n "type": "null"\n },\n {\n "items": {\n "$ref": "#/$defs/__schema0"\n },\n "type": "array"\n },\n {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n }\n ]\n }\n },\n "$schema": "https://json-schema.org/draft/2020-12/schema",\n "additionalProperties": false,\n "properties": {\n "evidence": {\n "additionalProperties": false,\n "properties": {\n "analysis_profile": {\n "additionalProperties": false,\n "properties": {\n "digest": {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n },\n "parameters": {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n },\n "provider": {\n "additionalProperties": false,\n "properties": {\n "id": {\n "minLength": 1,\n "type": "string"\n },\n "name": {\n "minLength": 1,\n "type": "string"\n },\n "version": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "id",\n "name",\n "version"\n ],\n "type": "object"\n }\n },\n "required": [\n "provider",\n "parameters",\n "digest"\n ],\n "type": "object"\n },\n "authority": {\n "enum": [\n "shipped-artifact",\n "controlled-replay",\n "historical-reference",\n "external-service",\n "analyst-inference"\n ],\n "type": "string"\n },\n "confidence": {\n "enum": [\n "observed",\n "derived",\n "inferred"\n ],\n "type": "string"\n },\n "environment": {\n "anyOf": [\n {\n "additionalProperties": false,\n "properties": {\n "architecture": {\n "minLength": 1,\n "type": "string"\n },\n "id": {\n "minLength": 1,\n "type": "string"\n },\n "isolation": {\n "enum": [\n "none",\n "process",\n "container",\n "virtual-machine"\n ],\n "type": "string"\n },\n "platform": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "id",\n "platform",\n "architecture",\n "isolation"\n ],\n "type": "object"\n },\n {\n "type": "null"\n }\n ]\n },\n "evidence_id": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "evidence_links": {\n "items": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "type": "array"\n },\n "limitations": {\n "items": {\n "type": "string"\n },\n "type": "array"\n },\n "locations": {\n "items": {\n "oneOf": [\n {\n "additionalProperties": false,\n "properties": {\n "address": {\n "minLength": 1,\n "type": "string"\n },\n "kind": {\n "const": "address",\n "type": "string"\n }\n },\n "required": [\n "kind",\n "address"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "end": {\n "minLength": 1,\n "type": "string"\n },\n "kind": {\n "const": "address-range",\n "type": "string"\n },\n "start": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "kind",\n "start",\n "end"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "kind": {\n "const": "artifact-path",\n "type": "string"\n },\n "path": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "kind",\n "path"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "kind": {\n "const": "file-offset",\n "type": "string"\n },\n "offset": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "kind",\n "offset"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "end": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "kind": {\n "const": "file-offset-range",\n "type": "string"\n },\n "start": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "kind",\n "start",\n "end"\n ],\n "type": "object"\n }\n ]\n },\n "type": "array"\n },\n "normalized_result": {\n "$ref": "#/$defs/__schema0"\n },\n "operation": {\n "minLength": 1,\n "type": "string"\n },\n "parameters": {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n },\n "predicate_type": {\n "minLength": 1,\n "type": "string"\n },\n "provider": {\n "additionalProperties": false,\n "properties": {\n "id": {\n "minLength": 1,\n "type": "string"\n },\n "name": {\n "minLength": 1,\n "type": "string"\n },\n "version": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "id",\n "name",\n "version"\n ],\n "type": "object"\n },\n "raw_result": {\n "anyOf": [\n {\n "$ref": "#/$defs/__schema0"\n },\n {\n "type": "null"\n }\n ]\n },\n "subject": {\n "anyOf": [\n {\n "additionalProperties": false,\n "properties": {\n "architecture": {\n "anyOf": [\n {\n "enum": [\n "x86",\n "x86_64",\n "arm",\n "arm64"\n ],\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "digest": {\n "additionalProperties": false,\n "properties": {\n "sha256": {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n }\n },\n "required": [\n "sha256"\n ],\n "type": "object"\n },\n "format": {\n "enum": [\n "hopper",\n "analysis-database",\n "mach-o",\n "elf",\n "pe",\n "dos-mz",\n "dos-com",\n "zip",\n "ipa",\n "apk",\n "msix",\n "appx",\n "asar",\n "dmg",\n "pkg",\n "plist",\n "javascript",\n "source-map",\n "directory",\n "file",\n "unknown",\n "mach-o-universal",\n "javascript-bundle",\n "entitlements"\n ],\n "type": "string"\n },\n "local_path": {\n "type": "string"\n },\n "name": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "name",\n "digest",\n "format",\n "architecture",\n "local_path"\n ],\n "type": "object"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "evidence_id",\n "subject",\n "provider",\n "predicate_type",\n "operation",\n "parameters",\n "raw_result",\n "normalized_result",\n "confidence",\n "authority",\n "environment",\n "limitations",\n "locations",\n "evidence_links"\n ],\n "type": "object"\n },\n "evidence_id": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "result": {\n "additionalProperties": false,\n "properties": {\n "browser": {\n "additionalProperties": false,\n "properties": {\n "js_version": {\n "type": "string"\n },\n "product": {\n "type": "string"\n },\n "protocol_version": {\n "type": "string"\n },\n "revision": {\n "type": "string"\n },\n "user_agent": {\n "type": "string"\n }\n },\n "required": [\n "product",\n "protocol_version",\n "revision",\n "user_agent",\n "js_version"\n ],\n "type": "object"\n },\n "completeness": {\n "additionalProperties": false,\n "properties": {\n "attach_limited_sections": {\n "items": {\n "enum": [\n "frames",\n "dom",\n "accessibility",\n "scripts",\n "script_sources",\n "resources",\n "network_requests",\n "network_initiators",\n "console_events",\n "console_text",\n "websocket_connections",\n "websocket_frames",\n "websocket_shapes",\n "json_body_shapes",\n "workers",\n "storage",\n "storage_keys",\n "metadata",\n "webmcp_tools",\n "screenshot",\n "source_maps",\n "timeline"\n ],\n "type": "string"\n },\n "type": "array"\n },\n "conditions": {\n "items": {\n "enum": [\n "complete_within_window",\n "policy_filtered",\n "attach_limited",\n "truncated"\n ],\n "type": "string"\n },\n "maxItems": 3,\n "minItems": 1,\n "type": "array"\n },\n "dropped_events": {\n "additionalProperties": false,\n "properties": {\n "console_events": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "network_requests": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "scripts": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "timeline_events": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "total": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "webmcp_tools": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "websocket_connections": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "websocket_frames": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "scripts",\n "network_requests",\n "console_events",\n "websocket_connections",\n "websocket_frames",\n "webmcp_tools",\n "timeline_events",\n "total"\n ],\n "type": "object"\n },\n "excluded": {\n "items": {\n "additionalProperties": false,\n "properties": {\n "count": {\n "anyOf": [\n {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n {\n "type": "null"\n }\n ]\n },\n "reason": {\n "enum": [\n "disallowed_origin",\n "unsupported_url",\n "unattributed_origin",\n "not_approved",\n "out_of_target_scope",\n "provider_unavailable",\n "invalid_protocol_value"\n ],\n "type": "string"\n },\n "section": {\n "enum": [\n "frames",\n "dom",\n "accessibility",\n "scripts",\n "script_sources",\n "resources",\n "network_requests",\n "network_initiators",\n "console_events",\n "console_text",\n "websocket_connections",\n "websocket_frames",\n "websocket_shapes",\n "json_body_shapes",\n "workers",\n "storage",\n "storage_keys",\n "metadata",\n "webmcp_tools",\n "screenshot",\n "source_maps",\n "timeline"\n ],\n "type": "string"\n }\n },\n "required": [\n "section",\n "reason",\n "count"\n ],\n "type": "object"\n },\n "type": "array"\n },\n "policy_filtered_sections": {\n "items": {\n "enum": [\n "frames",\n "dom",\n "accessibility",\n "scripts",\n "script_sources",\n "resources",\n "network_requests",\n "network_initiators",\n "console_events",\n "console_text",\n "websocket_connections",\n "websocket_frames",\n "websocket_shapes",\n "json_body_shapes",\n "workers",\n "storage",\n "storage_keys",\n "metadata",\n "webmcp_tools",\n "screenshot",\n "source_maps",\n "timeline"\n ],\n "type": "string"\n },\n "type": "array"\n },\n "status": {\n "enum": [\n "complete_within_window",\n "policy_filtered",\n "attach_limited",\n "truncated"\n ],\n "type": "string"\n },\n "truncated_sections": {\n "items": {\n "enum": [\n "frames",\n "dom",\n "accessibility",\n "scripts",\n "script_sources",\n "resources",\n "network_requests",\n "network_initiators",\n "console_events",\n "console_text",\n "websocket_connections",\n "websocket_frames",\n "websocket_shapes",\n "json_body_shapes",\n "workers",\n "storage",\n "storage_keys",\n "metadata",\n "webmcp_tools",\n "screenshot",\n "source_maps",\n "timeline"\n ],\n "type": "string"\n },\n "type": "array"\n },\n "unavailable_sections": {\n "items": {\n "enum": [\n "frames",\n "dom",\n "accessibility",\n "scripts",\n "script_sources",\n "resources",\n "network_requests",\n "network_initiators",\n "console_events",\n "console_text",\n "websocket_connections",\n "websocket_frames",\n "websocket_shapes",\n "json_body_shapes",\n "workers",\n "storage",\n "storage_keys",\n "metadata",\n "webmcp_tools",\n "screenshot",\n "source_maps",\n "timeline"\n ],\n "type": "string"\n },\n "type": "array"\n }\n },\n "required": [\n "status",\n "conditions",\n "policy_filtered_sections",\n "attach_limited_sections",\n "truncated_sections",\n "unavailable_sections",\n "excluded",\n "dropped_events"\n ],\n "type": "object"\n },\n "limitations": {\n "items": {\n "type": "string"\n },\n "type": "array"\n },\n "target": {\n "additionalProperties": false,\n "properties": {\n "final_url": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "initial_url": {\n "type": "string"\n },\n "target_id": {\n "type": "string"\n }\n },\n "required": [\n "target_id",\n "initial_url",\n "final_url"\n ],\n "type": "object"\n },\n "timeline": {\n "items": {\n "additionalProperties": false,\n "properties": {\n "destination_scope": {\n "anyOf": [\n {\n "enum": [\n "approved",\n "outside_policy",\n "unsupported"\n ],\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "detail": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "frame_id": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "loader_id": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "request_id": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "sequence": {\n "maximum": 9007199254740991,\n "minimum": 1,\n "type": "integer"\n },\n "timestamp": {\n "minimum": 0,\n "type": "number"\n },\n "type": {\n "enum": [\n "navigation_requested",\n "navigation_committed",\n "same_origin_reload",\n "same_document_navigation",\n "redirect",\n "load_failed",\n "lifecycle",\n "target_terminated"\n ],\n "type": "string"\n },\n "url": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "sequence",\n "type",\n "timestamp",\n "frame_id",\n "loader_id",\n "request_id",\n "url",\n "destination_scope",\n "detail"\n ],\n "type": "object"\n },\n "type": "array"\n },\n "window": {\n "additionalProperties": false,\n "properties": {\n "armed_at": {\n "format": "date-time",\n "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))$",\n "type": "string"\n },\n "end_reason": {\n "enum": [\n "window_elapsed",\n "target_left_scope",\n "target_terminated"\n ],\n "type": "string"\n },\n "ended_at": {\n "format": "date-time",\n "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))$",\n "type": "string"\n },\n "requested_ms": {\n "maximum": 9007199254740991,\n "minimum": 1,\n "type": "integer"\n }\n },\n "required": [\n "armed_at",\n "ended_at",\n "requested_ms",\n "end_reason"\n ],\n "type": "object"\n }\n },\n "required": [\n "browser",\n "target",\n "window",\n "timeline",\n "completeness",\n "limitations"\n ],\n "type": "object"\n }\n },\n "required": [\n "result",\n "evidence_id",\n "evidence"\n ],\n "type": "object"\n },\n "requiresSession": false,\n "title": "Observe Web Session"\n },\n {\n "analysisOperation": null,\n "annotations": {\n "destructiveHint": false,\n "idempotentHint": true,\n "openWorldHint": true,\n "readOnlyHint": false\n },\n "description": "Passively inventory every page-registered WebMCP tool and its complete structural input-schema summary using the experimental CDP WebMCP domain. Metadata is page-declared-untrusted; REA never registers or invokes discovered tools.",\n "effects": {\n "accessesNetwork": true,\n "changesUiState": false,\n "idempotent": true,\n "launchesProcess": false,\n "mayDiscardData": false,\n "mutatesSession": true,\n "mutatesTarget": false,\n "writesFilesystem": false\n },\n "inputSchema": {\n "$schema": "https://json-schema.org/draft/2020-12/schema",\n "additionalProperties": false,\n "examples": [\n {\n "cdp_endpoint": "http://127.0.0.1:9222",\n "observation_ms": 100,\n "target_id": "TARGET_ID_FROM_LIST_BROWSER_TARGETS"\n }\n ],\n "properties": {\n "allowed_origins": {\n "description": "Value for allowed origins.",\n "items": {\n "minLength": 1,\n "type": "string"\n },\n "type": "array"\n },\n "cdp_endpoint": {\n "description": "Literal loopback Chrome DevTools Protocol endpoint.",\n "minLength": 1,\n "type": "string"\n },\n "observation_ms": {\n "default": 100,\n "description": "Value for observation ms.",\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "target_id": {\n "description": "Exact CDP target identifier selected from the endpoint\'s target listing.",\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "cdp_endpoint",\n "target_id"\n ],\n "type": "object"\n },\n "kind": "browser-provider",\n "name": "discover_webmcp_tools",\n "outputSchema": {\n "$defs": {\n "__schema0": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "number"\n },\n {\n "type": "boolean"\n },\n {\n "type": "null"\n },\n {\n "items": {\n "$ref": "#/$defs/__schema0"\n },\n "type": "array"\n },\n {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n }\n ]\n }\n },\n "$schema": "https://json-schema.org/draft/2020-12/schema",\n "additionalProperties": false,\n "properties": {\n "evidence": {\n "additionalProperties": false,\n "properties": {\n "analysis_profile": {\n "additionalProperties": false,\n "properties": {\n "digest": {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n },\n "parameters": {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n },\n "provider": {\n "additionalProperties": false,\n "properties": {\n "id": {\n "minLength": 1,\n "type": "string"\n },\n "name": {\n "minLength": 1,\n "type": "string"\n },\n "version": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "id",\n "name",\n "version"\n ],\n "type": "object"\n }\n },\n "required": [\n "provider",\n "parameters",\n "digest"\n ],\n "type": "object"\n },\n "authority": {\n "enum": [\n "shipped-artifact",\n "controlled-replay",\n "historical-reference",\n "external-service",\n "analyst-inference"\n ],\n "type": "string"\n },\n "confidence": {\n "enum": [\n "observed",\n "derived",\n "inferred"\n ],\n "type": "string"\n },\n "environment": {\n "anyOf": [\n {\n "additionalProperties": false,\n "properties": {\n "architecture": {\n "minLength": 1,\n "type": "string"\n },\n "id": {\n "minLength": 1,\n "type": "string"\n },\n "isolation": {\n "enum": [\n "none",\n "process",\n "container",\n "virtual-machine"\n ],\n "type": "string"\n },\n "platform": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "id",\n "platform",\n "architecture",\n "isolation"\n ],\n "type": "object"\n },\n {\n "type": "null"\n }\n ]\n },\n "evidence_id": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "evidence_links": {\n "items": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "type": "array"\n },\n "limitations": {\n "items": {\n "type": "string"\n },\n "type": "array"\n },\n "locations": {\n "items": {\n "oneOf": [\n {\n "additionalProperties": false,\n "properties": {\n "address": {\n "minLength": 1,\n "type": "string"\n },\n "kind": {\n "const": "address",\n "type": "string"\n }\n },\n "required": [\n "kind",\n "address"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "end": {\n "minLength": 1,\n "type": "string"\n },\n "kind": {\n "const": "address-range",\n "type": "string"\n },\n "start": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "kind",\n "start",\n "end"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "kind": {\n "const": "artifact-path",\n "type": "string"\n },\n "path": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "kind",\n "path"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "kind": {\n "const": "file-offset",\n "type": "string"\n },\n "offset": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "kind",\n "offset"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "end": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "kind": {\n "const": "file-offset-range",\n "type": "string"\n },\n "start": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "kind",\n "start",\n "end"\n ],\n "type": "object"\n }\n ]\n },\n "type": "array"\n },\n "normalized_result": {\n "$ref": "#/$defs/__schema0"\n },\n "operation": {\n "minLength": 1,\n "type": "string"\n },\n "parameters": {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n },\n "predicate_type": {\n "minLength": 1,\n "type": "string"\n },\n "provider": {\n "additionalProperties": false,\n "properties": {\n "id": {\n "minLength": 1,\n "type": "string"\n },\n "name": {\n "minLength": 1,\n "type": "string"\n },\n "version": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "id",\n "name",\n "version"\n ],\n "type": "object"\n },\n "raw_result": {\n "anyOf": [\n {\n "$ref": "#/$defs/__schema0"\n },\n {\n "type": "null"\n }\n ]\n },\n "subject": {\n "anyOf": [\n {\n "additionalProperties": false,\n "properties": {\n "architecture": {\n "anyOf": [\n {\n "enum": [\n "x86",\n "x86_64",\n "arm",\n "arm64"\n ],\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "digest": {\n "additionalProperties": false,\n "properties": {\n "sha256": {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n }\n },\n "required": [\n "sha256"\n ],\n "type": "object"\n },\n "format": {\n "enum": [\n "hopper",\n "analysis-database",\n "mach-o",\n "elf",\n "pe",\n "dos-mz",\n "dos-com",\n "zip",\n "ipa",\n "apk",\n "msix",\n "appx",\n "asar",\n "dmg",\n "pkg",\n "plist",\n "javascript",\n "source-map",\n "directory",\n "file",\n "unknown",\n "mach-o-universal",\n "javascript-bundle",\n "entitlements"\n ],\n "type": "string"\n },\n "local_path": {\n "type": "string"\n },\n "name": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "name",\n "digest",\n "format",\n "architecture",\n "local_path"\n ],\n "type": "object"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "evidence_id",\n "subject",\n "provider",\n "predicate_type",\n "operation",\n "parameters",\n "raw_result",\n "normalized_result",\n "confidence",\n "authority",\n "environment",\n "limitations",\n "locations",\n "evidence_links"\n ],\n "type": "object"\n },\n "evidence_id": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "result": {\n "additionalProperties": false,\n "properties": {\n "browser": {\n "additionalProperties": false,\n "properties": {\n "js_version": {\n "type": "string"\n },\n "product": {\n "type": "string"\n },\n "protocol_version": {\n "type": "string"\n },\n "revision": {\n "type": "string"\n },\n "user_agent": {\n "type": "string"\n }\n },\n "required": [\n "product",\n "protocol_version",\n "revision",\n "user_agent",\n "js_version"\n ],\n "type": "object"\n },\n "completeness": {\n "additionalProperties": false,\n "properties": {\n "attach_limited_sections": {\n "items": {\n "enum": [\n "frames",\n "dom",\n "accessibility",\n "scripts",\n "script_sources",\n "resources",\n "network_requests",\n "network_initiators",\n "console_events",\n "console_text",\n "websocket_connections",\n "websocket_frames",\n "websocket_shapes",\n "json_body_shapes",\n "workers",\n "storage",\n "storage_keys",\n "metadata",\n "webmcp_tools",\n "screenshot",\n "source_maps",\n "timeline"\n ],\n "type": "string"\n },\n "type": "array"\n },\n "conditions": {\n "items": {\n "enum": [\n "complete_within_window",\n "policy_filtered",\n "attach_limited",\n "truncated"\n ],\n "type": "string"\n },\n "maxItems": 3,\n "minItems": 1,\n "type": "array"\n },\n "dropped_events": {\n "additionalProperties": false,\n "properties": {\n "console_events": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "network_requests": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "scripts": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "timeline_events": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "total": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "webmcp_tools": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "websocket_connections": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "websocket_frames": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "scripts",\n "network_requests",\n "console_events",\n "websocket_connections",\n "websocket_frames",\n "webmcp_tools",\n "timeline_events",\n "total"\n ],\n "type": "object"\n },\n "excluded": {\n "items": {\n "additionalProperties": false,\n "properties": {\n "count": {\n "anyOf": [\n {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n {\n "type": "null"\n }\n ]\n },\n "reason": {\n "enum": [\n "disallowed_origin",\n "unsupported_url",\n "unattributed_origin",\n "not_approved",\n "out_of_target_scope",\n "provider_unavailable",\n "invalid_protocol_value"\n ],\n "type": "string"\n },\n "section": {\n "enum": [\n "frames",\n "dom",\n "accessibility",\n "scripts",\n "script_sources",\n "resources",\n "network_requests",\n "network_initiators",\n "console_events",\n "console_text",\n "websocket_connections",\n "websocket_frames",\n "websocket_shapes",\n "json_body_shapes",\n "workers",\n "storage",\n "storage_keys",\n "metadata",\n "webmcp_tools",\n "screenshot",\n "source_maps",\n "timeline"\n ],\n "type": "string"\n }\n },\n "required": [\n "section",\n "reason",\n "count"\n ],\n "type": "object"\n },\n "type": "array"\n },\n "policy_filtered_sections": {\n "items": {\n "enum": [\n "frames",\n "dom",\n "accessibility",\n "scripts",\n "script_sources",\n "resources",\n "network_requests",\n "network_initiators",\n "console_events",\n "console_text",\n "websocket_connections",\n "websocket_frames",\n "websocket_shapes",\n "json_body_shapes",\n "workers",\n "storage",\n "storage_keys",\n "metadata",\n "webmcp_tools",\n "screenshot",\n "source_maps",\n "timeline"\n ],\n "type": "string"\n },\n "type": "array"\n },\n "status": {\n "enum": [\n "complete_within_window",\n "policy_filtered",\n "attach_limited",\n "truncated"\n ],\n "type": "string"\n },\n "truncated_sections": {\n "items": {\n "enum": [\n "frames",\n "dom",\n "accessibility",\n "scripts",\n "script_sources",\n "resources",\n "network_requests",\n "network_initiators",\n "console_events",\n "console_text",\n "websocket_connections",\n "websocket_frames",\n "websocket_shapes",\n "json_body_shapes",\n "workers",\n "storage",\n "storage_keys",\n "metadata",\n "webmcp_tools",\n "screenshot",\n "source_maps",\n "timeline"\n ],\n "type": "string"\n },\n "type": "array"\n },\n "unavailable_sections": {\n "items": {\n "enum": [\n "frames",\n "dom",\n "accessibility",\n "scripts",\n "script_sources",\n "resources",\n "network_requests",\n "network_initiators",\n "console_events",\n "console_text",\n "websocket_connections",\n "websocket_frames",\n "websocket_shapes",\n "json_body_shapes",\n "workers",\n "storage",\n "storage_keys",\n "metadata",\n "webmcp_tools",\n "screenshot",\n "source_maps",\n "timeline"\n ],\n "type": "string"\n },\n "type": "array"\n }\n },\n "required": [\n "status",\n "conditions",\n "policy_filtered_sections",\n "attach_limited_sections",\n "truncated_sections",\n "unavailable_sections",\n "excluded",\n "dropped_events"\n ],\n "type": "object"\n },\n "limitations": {\n "items": {\n "type": "string"\n },\n "type": "array"\n },\n "status": {\n "enum": [\n "available",\n "unavailable"\n ],\n "type": "string"\n },\n "target": {\n "additionalProperties": false,\n "properties": {\n "origin": {\n "type": "string"\n },\n "target_id": {\n "type": "string"\n },\n "url": {\n "type": "string"\n }\n },\n "required": [\n "target_id",\n "url",\n "origin"\n ],\n "type": "object"\n },\n "tools": {\n "additionalProperties": false,\n "properties": {\n "items": {\n "items": {\n "additionalProperties": false,\n "properties": {\n "annotations": {\n "additionalProperties": false,\n "properties": {\n "autosubmit": {\n "anyOf": [\n {\n "type": "boolean"\n },\n {\n "type": "null"\n }\n ]\n },\n "read_only": {\n "anyOf": [\n {\n "type": "boolean"\n },\n {\n "type": "null"\n }\n ]\n },\n "untrusted_content": {\n "anyOf": [\n {\n "type": "boolean"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "read_only",\n "untrusted_content",\n "autosubmit"\n ],\n "type": "object"\n },\n "declaration_kind": {\n "enum": [\n "declarative",\n "imperative"\n ],\n "type": "string"\n },\n "description": {\n "type": "string"\n },\n "frame_id": {\n "type": "string"\n },\n "frame_url": {\n "type": "string"\n },\n "input_schema_shape": {\n "anyOf": [\n {\n "additionalProperties": false,\n "properties": {\n "max_depth_observed": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "node_count": {\n "maximum": 9007199254740991,\n "minimum": 1,\n "type": "integer"\n },\n "properties": {\n "items": {\n "additionalProperties": false,\n "properties": {\n "observations": {\n "maximum": 9007199254740991,\n "minimum": 1,\n "type": "integer"\n },\n "path": {\n "type": "string"\n },\n "types": {\n "items": {\n "enum": [\n "object",\n "array",\n "string",\n "number",\n "boolean",\n "null"\n ],\n "type": "string"\n },\n "minItems": 1,\n "type": "array"\n }\n },\n "required": [\n "path",\n "types",\n "observations"\n ],\n "type": "object"\n },\n "type": "array"\n },\n "root_type": {\n "enum": [\n "object",\n "array",\n "string",\n "number",\n "boolean",\n "null"\n ],\n "type": "string"\n }\n },\n "required": [\n "root_type",\n "node_count",\n "max_depth_observed",\n "properties"\n ],\n "type": "object"\n },\n {\n "type": "null"\n }\n ]\n },\n "name": {\n "type": "string"\n },\n "owner_origin": {\n "type": "string"\n },\n "registration_source": {\n "anyOf": [\n {\n "additionalProperties": false,\n "properties": {\n "column": {\n "anyOf": [\n {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n {\n "type": "null"\n }\n ]\n },\n "line": {\n "anyOf": [\n {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n {\n "type": "null"\n }\n ]\n },\n "url": {\n "type": "string"\n }\n },\n "required": [\n "url",\n "line",\n "column"\n ],\n "type": "object"\n },\n {\n "type": "null"\n }\n ]\n },\n "tool_key": {\n "pattern": "^webmcp_[a-f0-9]{64}$",\n "type": "string"\n },\n "trust": {\n "const": "page-declared-untrusted",\n "type": "string"\n }\n },\n "required": [\n "tool_key",\n "name",\n "description",\n "frame_id",\n "frame_url",\n "owner_origin",\n "declaration_kind",\n "input_schema_shape",\n "annotations",\n "registration_source",\n "trust"\n ],\n "type": "object"\n },\n "type": "array"\n },\n "total": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "total",\n "items"\n ],\n "type": "object"\n }\n },\n "required": [\n "browser",\n "target",\n "status",\n "tools",\n "completeness",\n "limitations"\n ],\n "type": "object"\n }\n },\n "required": [\n "result",\n "evidence_id",\n "evidence"\n ],\n "type": "object"\n },\n "requiresSession": false,\n "title": "Discover Webmcp Tools"\n },\n {\n "analysisOperation": null,\n "annotations": {\n "destructiveHint": false,\n "idempotentHint": true,\n "openWorldHint": false,\n "readOnlyHint": false\n },\n "description": "Compare passive web captures by providing before and after, or compare recorded scenarios by providing before_scenario and after_scenario with an optional normalization policy. Use exactly one input group. Scenario comparison aligns exact step IDs, records deterministic literal normalization, and returns every artifact-level difference plus alignment failures inline. Missing or truncated evidence never proves equality.",\n "effects": {\n "accessesNetwork": false,\n "changesUiState": false,\n "idempotent": true,\n "launchesProcess": false,\n "mayDiscardData": false,\n "mutatesSession": true,\n "mutatesTarget": false,\n "writesFilesystem": false\n },\n "inputSchema": {\n "$schema": "https://json-schema.org/draft/2020-12/schema",\n "additionalProperties": false,\n "examples": [\n {\n "after_scenario": {\n "browser": {\n "cleanup": "disconnected-external",\n "mode": "connect",\n "process_ownership": "external",\n "product": "Chromium",\n "version": "149"\n },\n "completeness": {\n "equality_eligible": true,\n "missing_sections": [],\n "status": "complete",\n "truncated_sections": []\n },\n "duration_ms": 10,\n "events": {\n "dropped": 0,\n "items": [],\n "retained": 0\n },\n "limitations": [],\n "scenario": {\n "action_count": 1,\n "secret_references": [],\n "start_origin": "https://app.example.test"\n },\n "steps": [\n {\n "action": "scenario_start",\n "after_url": {\n "origin": "https://app.example.test",\n "query_parameter_names": [],\n "redacted": false,\n "url": "https://app.example.test/"\n },\n "artifacts": {\n "accessibility": {\n "state": "not_requested"\n },\n "dom": {\n "state": "not_requested"\n },\n "history": {\n "state": "not_requested"\n },\n "screenshot": {\n "state": "not_requested"\n },\n "storage": {\n "state": "not_requested"\n },\n "url": {\n "state": "not_requested"\n }\n },\n "before_url": {\n "origin": "https://app.example.test",\n "query_parameter_names": [],\n "redacted": false,\n "url": "https://app.example.test/"\n },\n "completeness": {\n "equality_eligible": true,\n "missing_sections": [],\n "status": "complete",\n "truncated_sections": []\n },\n "elapsed_ms": 0,\n "error": null,\n "event_sequence_end": 0,\n "event_sequence_start": 1,\n "status": "completed",\n "step_id": "scenario_start",\n "step_index": 0\n },\n {\n "action": "click",\n "after_url": {\n "origin": "https://app.example.test",\n "query_parameter_names": [],\n "redacted": false,\n "url": "https://app.example.test/"\n },\n "artifacts": {\n "accessibility": {\n "state": "not_requested"\n },\n "dom": {\n "state": "not_requested"\n },\n "history": {\n "state": "not_requested"\n },\n "screenshot": {\n "state": "not_requested"\n },\n "storage": {\n "state": "not_requested"\n },\n "url": {\n "state": "not_requested"\n }\n },\n "before_url": {\n "origin": "https://app.example.test",\n "query_parameter_names": [],\n "redacted": false,\n "url": "https://app.example.test/"\n },\n "completeness": {\n "equality_eligible": true,\n "missing_sections": [],\n "status": "complete",\n "truncated_sections": []\n },\n "elapsed_ms": 10,\n "error": null,\n "event_sequence_end": 0,\n "event_sequence_start": 1,\n "status": "completed",\n "step_id": "open-settings",\n "step_index": 1\n }\n ]\n },\n "before_scenario": {\n "browser": {\n "cleanup": "disconnected-external",\n "mode": "connect",\n "process_ownership": "external",\n "product": "Chromium",\n "version": "149"\n },\n "completeness": {\n "equality_eligible": true,\n "missing_sections": [],\n "status": "complete",\n "truncated_sections": []\n },\n "duration_ms": 10,\n "events": {\n "dropped": 0,\n "items": [],\n "retained": 0\n },\n "limitations": [],\n "scenario": {\n "action_count": 1,\n "secret_references": [],\n "start_origin": "https://app.example.test"\n },\n "steps": [\n {\n "action": "scenario_start",\n "after_url": {\n "origin": "https://app.example.test",\n "query_parameter_names": [],\n "redacted": false,\n "url": "https://app.example.test/"\n },\n "artifacts": {\n "accessibility": {\n "state": "not_requested"\n },\n "dom": {\n "state": "not_requested"\n },\n "history": {\n "state": "not_requested"\n },\n "screenshot": {\n "state": "not_requested"\n },\n "storage": {\n "state": "not_requested"\n },\n "url": {\n "state": "not_requested"\n }\n },\n "before_url": {\n "origin": "https://app.example.test",\n "query_parameter_names": [],\n "redacted": false,\n "url": "https://app.example.test/"\n },\n "completeness": {\n "equality_eligible": true,\n "missing_sections": [],\n "status": "complete",\n "truncated_sections": []\n },\n "elapsed_ms": 0,\n "error": null,\n "event_sequence_end": 0,\n "event_sequence_start": 1,\n "status": "completed",\n "step_id": "scenario_start",\n "step_index": 0\n },\n {\n "action": "click",\n "after_url": {\n "origin": "https://app.example.test",\n "query_parameter_names": [],\n "redacted": false,\n "url": "https://app.example.test/"\n },\n "artifacts": {\n "accessibility": {\n "state": "not_requested"\n },\n "dom": {\n "state": "not_requested"\n },\n "history": {\n "state": "not_requested"\n },\n "screenshot": {\n "state": "not_requested"\n },\n "storage": {\n "state": "not_requested"\n },\n "url": {\n "state": "not_requested"\n }\n },\n "before_url": {\n "origin": "https://app.example.test",\n "query_parameter_names": [],\n "redacted": false,\n "url": "https://app.example.test/"\n },\n "completeness": {\n "equality_eligible": true,\n "missing_sections": [],\n "status": "complete",\n "truncated_sections": []\n },\n "elapsed_ms": 10,\n "error": null,\n "event_sequence_end": 0,\n "event_sequence_start": 1,\n "status": "completed",\n "step_id": "open-settings",\n "step_index": 1\n }\n ]\n },\n "normalization": {\n "rules": [\n {\n "artifacts": [\n "dom",\n "accessibility"\n ],\n "match": "build-123",\n "replacement": "[BUILD_ID]",\n "rule_id": "volatile-build-id"\n }\n ]\n }\n }\n ],\n "properties": {\n "after": {\n "description": "Later passive web-page capture.",\n "properties": {\n "inspection": {\n "description": "Value for inspection.",\n "properties": {\n "accessibility": {\n "description": "Value for accessibility.",\n "properties": {\n "nodes": {\n "description": "Value for nodes.",\n "items": {\n "properties": {\n "description": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ],\n "description": "Value for description."\n },\n "ignored": {\n "description": "Value for ignored.",\n "type": "boolean"\n },\n "name": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ],\n "description": "Exact name used by this operation."\n },\n "node_id": {\n "description": "Value for node id.",\n "type": "string"\n },\n "parent_id": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ],\n "description": "Value for parent id."\n },\n "role": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ],\n "description": "Value for role."\n },\n "states": {\n "default": [],\n "description": "Value for states.",\n "items": {\n "properties": {\n "name": {\n "description": "Exact name used by this operation.",\n "type": "string"\n },\n "value": {\n "anyOf": [\n {\n "type": "boolean"\n },\n {\n "type": "number"\n },\n {\n "type": "string"\n }\n ],\n "description": "Value for value."\n }\n },\n "required": [\n "name",\n "value"\n ],\n "type": "object"\n },\n "type": "array"\n }\n },\n "required": [\n "node_id",\n "parent_id",\n "role",\n "name",\n "description",\n "ignored"\n ],\n "type": "object"\n },\n "type": "array"\n },\n "text_capture": {\n "description": "Value for text capture.",\n "properties": {\n "excluded_fields": {\n "description": "Value for excluded fields.",\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "retained_bytes": {\n "description": "Byte count for retained.",\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "status": {\n "description": "Current lifecycle or verification status.",\n "enum": [\n "not_approved",\n "included",\n "unavailable"\n ],\n "type": "string"\n }\n },\n "required": [\n "status",\n "retained_bytes",\n "excluded_fields"\n ],\n "type": "object"\n },\n "total_nodes": {\n "description": "Value for total nodes.",\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "total_nodes",\n "text_capture",\n "nodes"\n ],\n "type": "object"\n },\n "browser": {\n "description": "Value for browser.",\n "properties": {\n "js_version": {\n "description": "Value for js version.",\n "type": "string"\n },\n "product": {\n "description": "Value for product.",\n "type": "string"\n },\n "protocol_version": {\n "description": "Value for protocol version.",\n "type": "string"\n },\n "revision": {\n "description": "Value for revision.",\n "type": "string"\n },\n "user_agent": {\n "description": "Value for user agent.",\n "type": "string"\n }\n },\n "required": [\n "product",\n "protocol_version",\n "revision",\n "user_agent",\n "js_version"\n ],\n "type": "object"\n },\n "capture_window": {\n "description": "Value for capture window.",\n "properties": {\n "ended_at": {\n "description": "Value for ended at.",\n "format": "date-time",\n "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))$",\n "type": "string"\n },\n "observation_ms": {\n "description": "Value for observation ms.",\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "started_at": {\n "description": "Value for started at.",\n "format": "date-time",\n "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))$",\n "type": "string"\n }\n },\n "required": [\n "started_at",\n "ended_at",\n "observation_ms"\n ],\n "type": "object"\n },\n "completeness": {\n "description": "Value for completeness.",\n "properties": {\n "attach_limited_sections": {\n "description": "Value for attach limited sections.",\n "items": {\n "enum": [\n "frames",\n "dom",\n "accessibility",\n "scripts",\n "script_sources",\n "resources",\n "network_requests",\n "network_initiators",\n "console_events",\n "console_text",\n "websocket_connections",\n "websocket_frames",\n "websocket_shapes",\n "json_body_shapes",\n "workers",\n "storage",\n "storage_keys",\n "metadata",\n "webmcp_tools",\n "screenshot",\n "source_maps",\n "timeline"\n ],\n "type": "string"\n },\n "type": "array"\n },\n "conditions": {\n "description": "Value for conditions.",\n "items": {\n "enum": [\n "complete_within_window",\n "policy_filtered",\n "attach_limited",\n "truncated"\n ],\n "type": "string"\n },\n "maxItems": 3,\n "minItems": 1,\n "type": "array"\n },\n "dropped_events": {\n "description": "Value for dropped events.",\n "properties": {\n "console_events": {\n "description": "Value for console events.",\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "network_requests": {\n "description": "Value for network requests.",\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "scripts": {\n "description": "Value for scripts.",\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "timeline_events": {\n "description": "Value for timeline events.",\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "total": {\n "description": "Value for total.",\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "webmcp_tools": {\n "description": "Value for webmcp tools.",\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "websocket_connections": {\n "description": "Value for websocket connections.",\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "websocket_frames": {\n "description": "Value for websocket frames.",\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "scripts",\n "network_requests",\n "console_events",\n "websocket_connections",\n "websocket_frames",\n "webmcp_tools",\n "timeline_events",\n "total"\n ],\n "type": "object"\n },\n "excluded": {\n "description": "Value for excluded.",\n "items": {\n "properties": {\n "count": {\n "anyOf": [\n {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n {\n "type": "null"\n }\n ],\n "description": "Value for count."\n },\n "reason": {\n "description": "Value for reason.",\n "enum": [\n "disallowed_origin",\n "unsupported_url",\n "unattributed_origin",\n "not_approved",\n "out_of_target_scope",\n "provider_unavailable",\n "invalid_protocol_value"\n ],\n "type": "string"\n },\n "section": {\n "description": "Value for section.",\n "enum": [\n "frames",\n "dom",\n "accessibility",\n "scripts",\n "script_sources",\n "resources",\n "network_requests",\n "network_initiators",\n "console_events",\n "console_text",\n "websocket_connections",\n "websocket_frames",\n "websocket_shapes",\n "json_body_shapes",\n "workers",\n "storage",\n "storage_keys",\n "metadata",\n "webmcp_tools",\n "screenshot",\n "source_maps",\n "timeline"\n ],\n "type": "string"\n }\n },\n "required": [\n "section",\n "reason",\n "count"\n ],\n "type": "object"\n },\n "type": "array"\n },\n "policy_filtered_sections": {\n "description": "Value for policy filtered sections.",\n "items": {\n "enum": [\n "frames",\n "dom",\n "accessibility",\n "scripts",\n "script_sources",\n "resources",\n "network_requests",\n "network_initiators",\n "console_events",\n "console_text",\n "websocket_connections",\n "websocket_frames",\n "websocket_shapes",\n "json_body_shapes",\n "workers",\n "storage",\n "storage_keys",\n "metadata",\n "webmcp_tools",\n "screenshot",\n "source_maps",\n "timeline"\n ],\n "type": "string"\n },\n "type": "array"\n },\n "status": {\n "description": "Current lifecycle or verification status.",\n "enum": [\n "complete_within_window",\n "policy_filtered",\n "attach_limited",\n "truncated"\n ],\n "type": "string"\n },\n "truncated_sections": {\n "description": "Value for truncated sections.",\n "items": {\n "enum": [\n "frames",\n "dom",\n "accessibility",\n "scripts",\n "script_sources",\n "resources",\n "network_requests",\n "network_initiators",\n "console_events",\n "console_text",\n "websocket_connections",\n "websocket_frames",\n "websocket_shapes",\n "json_body_shapes",\n "workers",\n "storage",\n "storage_keys",\n "metadata",\n "webmcp_tools",\n "screenshot",\n "source_maps",\n "timeline"\n ],\n "type": "string"\n },\n "type": "array"\n },\n "unavailable_sections": {\n "description": "Value for unavailable sections.",\n "items": {\n "enum": [\n "frames",\n "dom",\n "accessibility",\n "scripts",\n "script_sources",\n "resources",\n "network_requests",\n "network_initiators",\n "console_events",\n "console_text",\n "websocket_connections",\n "websocket_frames",\n "websocket_shapes",\n "json_body_shapes",\n "workers",\n "storage",\n "storage_keys",\n "metadata",\n "webmcp_tools",\n "screenshot",\n "source_maps",\n "timeline"\n ],\n "type": "string"\n },\n "type": "array"\n }\n },\n "required": [\n "status",\n "conditions",\n "policy_filtered_sections",\n "attach_limited_sections",\n "truncated_sections",\n "unavailable_sections",\n "excluded",\n "dropped_events"\n ],\n "type": "object"\n },\n "console": {\n "description": "Value for console.",\n "properties": {\n "coverage_started_at": {\n "description": "Value for coverage started at.",\n "format": "date-time",\n "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))$",\n "type": "string"\n },\n "events": {\n "description": "Value for events.",\n "items": {\n "properties": {\n "argument_types": {\n "description": "Value for argument types.",\n "items": {\n "type": "string"\n },\n "type": "array"\n },\n "column": {\n "anyOf": [\n {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n {\n "type": "null"\n }\n ],\n "description": "Value for column."\n },\n "line": {\n "anyOf": [\n {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n {\n "type": "null"\n }\n ],\n "description": "Value for line."\n },\n "text_capture": {\n "description": "Value for text capture.",\n "properties": {\n "retained_bytes": {\n "description": "Byte count for retained.",\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "status": {\n "description": "Current lifecycle or verification status.",\n "enum": [\n "not_approved",\n "included"\n ],\n "type": "string"\n },\n "values": {\n "description": "Value for values.",\n "items": {\n "properties": {\n "argument_index": {\n "description": "Value for argument index.",\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "text": {\n "description": "Value for text.",\n "type": "string"\n },\n "type": {\n "description": "Value for type.",\n "type": "string"\n }\n },\n "required": [\n "argument_index",\n "type",\n "text"\n ],\n "type": "object"\n },\n "type": "array"\n }\n },\n "required": [\n "status",\n "values",\n "retained_bytes"\n ],\n "type": "object"\n },\n "timestamp": {\n "description": "Value for timestamp.",\n "type": "number"\n },\n "type": {\n "description": "Value for type.",\n "type": "string"\n },\n "url": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ],\n "description": "Value for url."\n }\n },\n "required": [\n "type",\n "timestamp",\n "argument_types",\n "url",\n "line",\n "column",\n "text_capture"\n ],\n "type": "object"\n },\n "type": "array"\n },\n "prior_activity_available": {\n "const": false,\n "description": "Value for prior activity available.",\n "type": "boolean"\n }\n },\n "required": [\n "events",\n "coverage_started_at",\n "prior_activity_available"\n ],\n "type": "object"\n },\n "dom": {\n "description": "Value for dom.",\n "properties": {\n "nodes": {\n "description": "Value for nodes.",\n "items": {\n "properties": {\n "attribute_names": {\n "description": "Value for attribute names.",\n "items": {\n "type": "string"\n },\n "type": "array"\n },\n "index": {\n "description": "Value for index.",\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "node_name": {\n "description": "Value for node name.",\n "type": "string"\n },\n "node_type": {\n "description": "Value for node type.",\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "node_value_length": {\n "description": "Value for node value length.",\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "parent_index": {\n "description": "Value for parent index.",\n "maximum": 9007199254740991,\n "minimum": -1,\n "type": "integer"\n }\n },\n "required": [\n "index",\n "parent_index",\n "node_type",\n "node_name",\n "node_value_length",\n "attribute_names"\n ],\n "type": "object"\n },\n "type": "array"\n },\n "total_nodes": {\n "description": "Value for total nodes.",\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "total_nodes",\n "nodes"\n ],\n "type": "object"\n },\n "frames": {\n "description": "Value for frames.",\n "items": {\n "properties": {\n "frame_id": {\n "description": "Value for frame id.",\n "type": "string"\n },\n "origin": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ],\n "description": "Value for origin."\n },\n "parent_frame_id": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ],\n "description": "Value for parent frame id."\n },\n "url": {\n "description": "Value for url.",\n "type": "string"\n }\n },\n "required": [\n "frame_id",\n "parent_frame_id",\n "url",\n "origin"\n ],\n "type": "object"\n },\n "type": "array"\n },\n "limitations": {\n "description": "Value for limitations.",\n "items": {\n "type": "string"\n },\n "type": "array"\n },\n "metadata": {\n "description": "Value for metadata.",\n "properties": {\n "agent_hints": {\n "description": "Value for agent hints.",\n "items": {\n "properties": {\n "declaration": {\n "description": "Value for declaration.",\n "type": "string"\n },\n "mechanism": {\n "description": "Value for mechanism.",\n "enum": [\n "link_rel",\n "dom_link_rel",\n "well_known_resource",\n "response_header"\n ],\n "type": "string"\n },\n "trust": {\n "const": "page-declared-untrusted",\n "description": "Value for trust.",\n "type": "string"\n },\n "url": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ],\n "description": "Value for url."\n }\n },\n "required": [\n "mechanism",\n "declaration",\n "url",\n "trust"\n ],\n "type": "object"\n },\n "type": "array"\n },\n "dom_urls": {\n "description": "Value for dom urls.",\n "items": {\n "properties": {\n "attribute": {\n "description": "Value for attribute.",\n "enum": [\n "href",\n "src",\n "action",\n "formaction",\n "poster"\n ],\n "type": "string"\n },\n "destination_scope": {\n "description": "Value for destination scope.",\n "enum": [\n "approved",\n "outside_policy",\n "unsupported"\n ],\n "type": "string"\n },\n "node_index": {\n "description": "Value for node index.",\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "url": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ],\n "description": "Value for url."\n }\n },\n "required": [\n "node_index",\n "attribute",\n "url",\n "destination_scope"\n ],\n "type": "object"\n },\n "type": "array"\n },\n "excluded_dom_urls": {\n "description": "Value for excluded dom urls.",\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "headers_allowlisted": {\n "const": true,\n "description": "Value for headers allowlisted.",\n "type": "boolean"\n },\n "responses": {\n "description": "Value for responses.",\n "items": {\n "properties": {\n "content_encoding": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ],\n "description": "Value for content encoding."\n },\n "content_length": {\n "anyOf": [\n {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n {\n "type": "null"\n }\n ],\n "description": "Value for content length."\n },\n "csp": {\n "description": "Value for csp.",\n "properties": {\n "directives": {\n "description": "Value for directives.",\n "items": {\n "properties": {\n "name": {\n "description": "Exact name used by this operation.",\n "type": "string"\n },\n "sources": {\n "description": "Value for sources.",\n "items": {\n "properties": {\n "kind": {\n "description": "Value for kind.",\n "enum": [\n "keyword",\n "scheme",\n "approved_origin",\n "external_origin",\n "other"\n ],\n "type": "string"\n },\n "value": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ],\n "description": "Value for value."\n }\n },\n "required": [\n "kind",\n "value"\n ],\n "type": "object"\n },\n "type": "array"\n }\n },\n "required": [\n "name",\n "sources"\n ],\n "type": "object"\n },\n "type": "array"\n },\n "hash_count": {\n "description": "Value for hash count.",\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "nonce_count": {\n "description": "Value for nonce count.",\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "directives",\n "nonce_count",\n "hash_count"\n ],\n "type": "object"\n },\n "links": {\n "description": "Value for links.",\n "items": {\n "properties": {\n "as": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ],\n "description": "Value for as."\n },\n "crossorigin": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ],\n "description": "Value for crossorigin."\n },\n "destination_scope": {\n "description": "Value for destination scope.",\n "enum": [\n "approved",\n "outside_policy",\n "unsupported"\n ],\n "type": "string"\n },\n "href": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ],\n "description": "Value for href."\n },\n "rel": {\n "description": "Value for rel.",\n "items": {\n "type": "string"\n },\n "type": "array"\n },\n "type": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ],\n "description": "Value for type."\n }\n },\n "required": [\n "href",\n "destination_scope",\n "rel",\n "as",\n "type",\n "crossorigin"\n ],\n "type": "object"\n },\n "type": "array"\n },\n "mime_type": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ],\n "description": "Value for mime type."\n },\n "policies": {\n "description": "Value for policies.",\n "properties": {\n "coep": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ],\n "description": "Value for coep."\n },\n "coop": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ],\n "description": "Value for coop."\n },\n "corp": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ],\n "description": "Value for corp."\n },\n "permissions_policy_features": {\n "description": "Value for permissions policy features.",\n "items": {\n "type": "string"\n },\n "type": "array"\n },\n "referrer_policy": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ],\n "description": "Value for referrer policy."\n },\n "x_content_type_options": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ],\n "description": "Value for x content type options."\n }\n },\n "required": [\n "coop",\n "coep",\n "corp",\n "referrer_policy",\n "x_content_type_options",\n "permissions_policy_features"\n ],\n "type": "object"\n },\n "request_id": {\n "description": "Value for request id.",\n "type": "string"\n },\n "url": {\n "description": "Value for url.",\n "type": "string"\n }\n },\n "required": [\n "request_id",\n "url",\n "mime_type",\n "content_length",\n "content_encoding",\n "csp",\n "links",\n "policies"\n ],\n "type": "object"\n },\n "type": "array"\n }\n },\n "required": [\n "responses",\n "dom_urls",\n "agent_hints",\n "excluded_dom_urls",\n "headers_allowlisted"\n ],\n "type": "object"\n },\n "network": {\n "description": "Value for network.",\n "properties": {\n "coverage_started_at": {\n "description": "Value for coverage started at.",\n "format": "date-time",\n "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))$",\n "type": "string"\n },\n "prior_activity_available": {\n "const": false,\n "description": "Value for prior activity available.",\n "type": "boolean"\n },\n "requests": {\n "description": "Value for requests.",\n "items": {\n "properties": {\n "body_shapes": {\n "description": "Value for body shapes.",\n "properties": {\n "request": {\n "anyOf": [\n {\n "properties": {\n "max_depth_observed": {\n "description": "Maximum permitted depth observed for this operation.",\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "node_count": {\n "description": "Value for node count.",\n "maximum": 9007199254740991,\n "minimum": 1,\n "type": "integer"\n },\n "properties": {\n "description": "Value for properties.",\n "items": {\n "properties": {\n "observations": {\n "description": "Value for observations.",\n "maximum": 9007199254740991,\n "minimum": 1,\n "type": "integer"\n },\n "path": {\n "description": "Local filesystem path used by this operation.",\n "type": "string"\n },\n "types": {\n "description": "Value for types.",\n "items": {\n "enum": [\n "object",\n "array",\n "string",\n "number",\n "boolean",\n "null"\n ],\n "type": "string"\n },\n "minItems": 1,\n "type": "array"\n }\n },\n "required": [\n "path",\n "types",\n "observations"\n ],\n "type": "object"\n },\n "type": "array"\n },\n "root_type": {\n "description": "Value for root type.",\n "enum": [\n "object",\n "array",\n "string",\n "number",\n "boolean",\n "null"\n ],\n "type": "string"\n }\n },\n "required": [\n "root_type",\n "node_count",\n "max_depth_observed",\n "properties"\n ],\n "type": "object"\n },\n {\n "type": "null"\n }\n ],\n "description": "Value for request."\n },\n "response": {\n "anyOf": [\n {\n "properties": {\n "max_depth_observed": {\n "description": "Maximum permitted depth observed for this operation.",\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "node_count": {\n "description": "Value for node count.",\n "maximum": 9007199254740991,\n "minimum": 1,\n "type": "integer"\n },\n "properties": {\n "description": "Value for properties.",\n "items": {\n "properties": {\n "observations": {\n "description": "Value for observations.",\n "maximum": 9007199254740991,\n "minimum": 1,\n "type": "integer"\n },\n "path": {\n "description": "Local filesystem path used by this operation.",\n "type": "string"\n },\n "types": {\n "description": "Value for types.",\n "items": {\n "enum": [\n "object",\n "array",\n "string",\n "number",\n "boolean",\n "null"\n ],\n "type": "string"\n },\n "minItems": 1,\n "type": "array"\n }\n },\n "required": [\n "path",\n "types",\n "observations"\n ],\n "type": "object"\n },\n "type": "array"\n },\n "root_type": {\n "description": "Value for root type.",\n "enum": [\n "object",\n "array",\n "string",\n "number",\n "boolean",\n "null"\n ],\n "type": "string"\n }\n },\n "required": [\n "root_type",\n "node_count",\n "max_depth_observed",\n "properties"\n ],\n "type": "object"\n },\n {\n "type": "null"\n }\n ],\n "description": "Value for response."\n },\n "status": {\n "description": "Current lifecycle or verification status.",\n "enum": [\n "not_approved",\n "included",\n "partial",\n "unavailable"\n ],\n "type": "string"\n }\n },\n "required": [\n "status",\n "request",\n "response"\n ],\n "type": "object"\n },\n "encoded_data_length": {\n "anyOf": [\n {\n "minimum": 0,\n "type": "number"\n },\n {\n "type": "null"\n }\n ],\n "description": "Value for encoded data length."\n },\n "initiator": {\n "description": "Value for initiator.",\n "properties": {\n "column": {\n "anyOf": [\n {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n {\n "type": "null"\n }\n ],\n "description": "Value for column."\n },\n "line": {\n "anyOf": [\n {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n {\n "type": "null"\n }\n ],\n "description": "Value for line."\n },\n "type": {\n "description": "Value for type.",\n "type": "string"\n },\n "url": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ],\n "description": "Value for url."\n }\n },\n "required": [\n "type",\n "url",\n "line",\n "column"\n ],\n "type": "object"\n },\n "method": {\n "description": "Value for method.",\n "type": "string"\n },\n "mime_type": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ],\n "description": "Value for mime type."\n },\n "origin": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ],\n "description": "Value for origin."\n },\n "request_id": {\n "description": "Value for request id.",\n "type": "string"\n },\n "resource_type": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ],\n "description": "Value for resource type."\n },\n "status": {\n "anyOf": [\n {\n "type": "number"\n },\n {\n "type": "null"\n }\n ],\n "description": "Current lifecycle or verification status."\n },\n "url": {\n "description": "Value for url.",\n "type": "string"\n }\n },\n "required": [\n "request_id",\n "url",\n "origin",\n "method",\n "resource_type",\n "status",\n "mime_type",\n "encoded_data_length",\n "initiator",\n "body_shapes"\n ],\n "type": "object"\n },\n "type": "array"\n },\n "websocket_events": {\n "description": "Value for websocket events.",\n "items": {\n "properties": {\n "direction": {\n "description": "Direction in which to traverse or compare relationships.",\n "enum": [\n "sent",\n "received"\n ],\n "type": "string"\n },\n "opcode": {\n "description": "Value for opcode.",\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "payload_bytes": {\n "description": "Byte count for payload.",\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "payload_shape": {\n "anyOf": [\n {\n "properties": {\n "format": {\n "description": "Declared input artifact format.",\n "enum": [\n "json",\n "text",\n "binary"\n ],\n "type": "string"\n },\n "json_shape": {\n "anyOf": [\n {\n "properties": {\n "max_depth_observed": {\n "description": "Maximum permitted depth observed for this operation.",\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "node_count": {\n "description": "Value for node count.",\n "maximum": 9007199254740991,\n "minimum": 1,\n "type": "integer"\n },\n "properties": {\n "description": "Value for properties.",\n "items": {\n "properties": {\n "observations": {\n "description": "Value for observations.",\n "maximum": 9007199254740991,\n "minimum": 1,\n "type": "integer"\n },\n "path": {\n "description": "Local filesystem path used by this operation.",\n "type": "string"\n },\n "types": {\n "description": "Value for types.",\n "items": {\n "enum": [\n "object",\n "array",\n "string",\n "number",\n "boolean",\n "null"\n ],\n "type": "string"\n },\n "minItems": 1,\n "type": "array"\n }\n },\n "required": [\n "path",\n "types",\n "observations"\n ],\n "type": "object"\n },\n "type": "array"\n },\n "root_type": {\n "description": "Value for root type.",\n "enum": [\n "object",\n "array",\n "string",\n "number",\n "boolean",\n "null"\n ],\n "type": "string"\n }\n },\n "required": [\n "root_type",\n "node_count",\n "max_depth_observed",\n "properties"\n ],\n "type": "object"\n },\n {\n "type": "null"\n }\n ],\n "description": "Value for json shape."\n }\n },\n "required": [\n "format",\n "json_shape"\n ],\n "type": "object"\n },\n {\n "type": "null"\n }\n ],\n "description": "Value for payload shape."\n },\n "request_id": {\n "description": "Value for request id.",\n "type": "string"\n }\n },\n "required": [\n "request_id",\n "direction",\n "opcode",\n "payload_bytes",\n "payload_shape"\n ],\n "type": "object"\n },\n "type": "array"\n }\n },\n "required": [\n "requests",\n "websocket_events",\n "coverage_started_at",\n "prior_activity_available"\n ],\n "type": "object"\n },\n "resources": {\n "description": "Value for resources.",\n "items": {\n "properties": {\n "content_size": {\n "anyOf": [\n {\n "minimum": 0,\n "type": "number"\n },\n {\n "type": "null"\n }\n ],\n "description": "Value for content size."\n },\n "mime_type": {\n "description": "Value for mime type.",\n "type": "string"\n },\n "origin": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ],\n "description": "Value for origin."\n },\n "resource_key": {\n "description": "Value for resource key.",\n "pattern": "^res_[a-f0-9]{64}$",\n "type": "string"\n },\n "type": {\n "description": "Value for type.",\n "type": "string"\n },\n "url": {\n "description": "Value for url.",\n "type": "string"\n }\n },\n "required": [\n "resource_key",\n "url",\n "origin",\n "type",\n "mime_type",\n "content_size"\n ],\n "type": "object"\n },\n "type": "array"\n },\n "scripts": {\n "description": "Value for scripts.",\n "properties": {\n "items": {\n "description": "Value for items.",\n "items": {\n "properties": {\n "cdp_hash": {\n "description": "Value for cdp hash.",\n "type": "string"\n },\n "frame_id": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ],\n "default": null,\n "description": "Value for frame id."\n },\n "is_module": {\n "description": "Whether is module.",\n "type": "boolean"\n },\n "language": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ],\n "description": "Value for language."\n },\n "length": {\n "description": "Value for length.",\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "origin": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ],\n "description": "Value for origin."\n },\n "resource_reconciliation": {\n "description": "Value for resource reconciliation.",\n "oneOf": [\n {\n "properties": {\n "resource_key": {\n "description": "Value for resource key.",\n "type": "string"\n },\n "status": {\n "const": "exact",\n "description": "Current lifecycle or verification status.",\n "type": "string"\n }\n },\n "required": [\n "status",\n "resource_key"\n ],\n "type": "object"\n },\n {\n "properties": {\n "candidate_resource_keys": {\n "description": "Value for candidate resource keys.",\n "items": {\n "type": "string"\n },\n "type": "array"\n },\n "status": {\n "const": "ambiguous",\n "description": "Current lifecycle or verification status.",\n "type": "string"\n }\n },\n "required": [\n "status",\n "candidate_resource_keys"\n ],\n "type": "object"\n },\n {\n "properties": {\n "reason": {\n "const": "no_exact_sanitized_url",\n "description": "Value for reason.",\n "type": "string"\n },\n "status": {\n "const": "unmatched",\n "description": "Current lifecycle or verification status.",\n "type": "string"\n }\n },\n "required": [\n "status",\n "reason"\n ],\n "type": "object"\n }\n ]\n },\n "script_key": {\n "description": "Value for script key.",\n "pattern": "^scr_[a-f0-9]{64}(?:_[0-9]+)?$",\n "type": "string"\n },\n "source": {\n "description": "Value for source.",\n "oneOf": [\n {\n "properties": {\n "included": {\n "const": false,\n "description": "Value for included.",\n "type": "boolean"\n },\n "reason": {\n "description": "Value for reason.",\n "type": "string"\n }\n },\n "required": [\n "included",\n "reason"\n ],\n "type": "object"\n },\n {\n "properties": {\n "artifact": {\n "description": "Value for artifact.",\n "properties": {\n "bytes": {\n "description": "Value for bytes.",\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "charset": {\n "const": "utf-8",\n "description": "Value for charset.",\n "type": "string"\n },\n "media_type": {\n "description": "Value for media type.",\n "minLength": 1,\n "type": "string"\n },\n "sha256": {\n "description": "Value for sha256.",\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n },\n "text": {\n "description": "Value for text.",\n "type": "string"\n }\n },\n "required": [\n "sha256",\n "bytes",\n "media_type",\n "charset",\n "text"\n ],\n "type": "object"\n },\n "included": {\n "const": true,\n "description": "Value for included.",\n "type": "boolean"\n }\n },\n "required": [\n "included",\n "artifact"\n ],\n "type": "object"\n }\n ]\n },\n "source_map_url": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ],\n "description": "Value for source map url."\n },\n "url": {\n "description": "Value for url.",\n "type": "string"\n }\n },\n "required": [\n "script_key",\n "url",\n "origin",\n "cdp_hash",\n "length",\n "is_module",\n "language",\n "source_map_url",\n "resource_reconciliation",\n "source"\n ],\n "type": "object"\n },\n "type": "array"\n },\n "total": {\n "description": "Value for total.",\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "total",\n "items"\n ],\n "type": "object"\n },\n "storage": {\n "description": "Value for storage.",\n "properties": {\n "cache_names": {\n "description": "Value for cache names.",\n "items": {\n "type": "string"\n },\n "type": "array"\n },\n "content_fingerprints": {\n "default": [],\n "description": "Value for content fingerprints.",\n "items": {\n "properties": {\n "complete": {\n "description": "Value for complete.",\n "type": "boolean"\n },\n "identity_sha256": {\n "description": "Exact SHA-256 digest of identity.",\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n },\n "scope": {\n "description": "Value for scope.",\n "enum": [\n "cookie",\n "local_storage",\n "session_storage",\n "indexed_db_schema",\n "indexed_db_record",\n "cache_entry"\n ],\n "type": "string"\n },\n "value_sha256": {\n "anyOf": [\n {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n },\n {\n "type": "null"\n }\n ],\n "description": "Exact SHA-256 digest of value."\n }\n },\n "required": [\n "scope",\n "identity_sha256",\n "value_sha256",\n "complete"\n ],\n "type": "object"\n },\n "type": "array"\n },\n "fingerprint_algorithm": {\n "const": "sha256",\n "default": "sha256",\n "description": "Value for fingerprint algorithm.",\n "type": "string"\n },\n "fingerprints_complete": {\n "default": false,\n "description": "Value for fingerprints complete.",\n "type": "boolean"\n },\n "indexed_db_names": {\n "description": "Value for indexed db names.",\n "items": {\n "type": "string"\n },\n "type": "array"\n },\n "local_storage_keys": {\n "description": "Value for local storage keys.",\n "items": {\n "type": "string"\n },\n "type": "array"\n },\n "origin": {\n "description": "Value for origin.",\n "type": "string"\n },\n "quota_bytes": {\n "anyOf": [\n {\n "minimum": 0,\n "type": "number"\n },\n {\n "type": "null"\n }\n ],\n "description": "Byte count for quota."\n },\n "session_storage_keys": {\n "description": "Value for session storage keys.",\n "items": {\n "type": "string"\n },\n "type": "array"\n },\n "usage_bytes": {\n "anyOf": [\n {\n "minimum": 0,\n "type": "number"\n },\n {\n "type": "null"\n }\n ],\n "description": "Byte count for usage."\n },\n "values_redacted": {\n "const": true,\n "description": "Value for values redacted.",\n "type": "boolean"\n }\n },\n "required": [\n "origin",\n "usage_bytes",\n "quota_bytes",\n "local_storage_keys",\n "session_storage_keys",\n "indexed_db_names",\n "cache_names",\n "values_redacted"\n ],\n "type": "object"\n },\n "target": {\n "description": "Value for target.",\n "properties": {\n "attached": {\n "description": "Value for attached.",\n "type": "boolean"\n },\n "origin": {\n "description": "Value for origin.",\n "type": "string"\n },\n "target_id": {\n "description": "Exact CDP target identifier selected from the endpoint\'s target listing.",\n "type": "string"\n },\n "title": {\n "description": "Value for title.",\n "type": "string"\n },\n "type": {\n "description": "Value for type.",\n "type": "string"\n },\n "url": {\n "description": "Value for url.",\n "type": "string"\n }\n },\n "required": [\n "target_id",\n "type",\n "title",\n "url",\n "origin",\n "attached"\n ],\n "type": "object"\n },\n "workers": {\n "description": "Value for workers.",\n "items": {\n "properties": {\n "attached": {\n "description": "Value for attached.",\n "type": "boolean"\n },\n "opener_target_id": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ],\n "default": null,\n "description": "Value for opener target id."\n },\n "origin": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ],\n "description": "Value for origin."\n },\n "parent_frame_id": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ],\n "default": null,\n "description": "Value for parent frame id."\n },\n "target_id": {\n "description": "Exact CDP target identifier selected from the endpoint\'s target listing.",\n "type": "string"\n },\n "type": {\n "description": "Value for type.",\n "type": "string"\n },\n "url": {\n "description": "Value for url.",\n "type": "string"\n }\n },\n "required": [\n "target_id",\n "type",\n "url",\n "origin",\n "attached"\n ],\n "type": "object"\n },\n "type": "array"\n }\n },\n "required": [\n "browser",\n "target",\n "capture_window",\n "completeness",\n "frames",\n "dom",\n "accessibility",\n "scripts",\n "resources",\n "network",\n "console",\n "workers",\n "metadata",\n "storage",\n "limitations"\n ],\n "type": "object"\n },\n "webmcp": {\n "anyOf": [\n {\n "properties": {\n "browser": {\n "description": "Value for browser.",\n "properties": {\n "js_version": {\n "description": "Value for js version.",\n "type": "string"\n },\n "product": {\n "description": "Value for product.",\n "type": "string"\n },\n "protocol_version": {\n "description": "Value for protocol version.",\n "type": "string"\n },\n "revision": {\n "description": "Value for revision.",\n "type": "string"\n },\n "user_agent": {\n "description": "Value for user agent.",\n "type": "string"\n }\n },\n "required": [\n "product",\n "protocol_version",\n "revision",\n "user_agent",\n "js_version"\n ],\n "type": "object"\n },\n "completeness": {\n "description": "Value for completeness.",\n "properties": {\n "attach_limited_sections": {\n "description": "Value for attach limited sections.",\n "items": {\n "enum": [\n "frames",\n "dom",\n "accessibility",\n "scripts",\n "script_sources",\n "resources",\n "network_requests",\n "network_initiators",\n "console_events",\n "console_text",\n "websocket_connections",\n "websocket_frames",\n "websocket_shapes",\n "json_body_shapes",\n "workers",\n "storage",\n "storage_keys",\n "metadata",\n "webmcp_tools",\n "screenshot",\n "source_maps",\n "timeline"\n ],\n "type": "string"\n },\n "type": "array"\n },\n "conditions": {\n "description": "Value for conditions.",\n "items": {\n "enum": [\n "complete_within_window",\n "policy_filtered",\n "attach_limited",\n "truncated"\n ],\n "type": "string"\n },\n "maxItems": 3,\n "minItems": 1,\n "type": "array"\n },\n "dropped_events": {\n "description": "Value for dropped events.",\n "properties": {\n "console_events": {\n "description": "Value for console events.",\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "network_requests": {\n "description": "Value for network requests.",\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "scripts": {\n "description": "Value for scripts.",\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "timeline_events": {\n "description": "Value for timeline events.",\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "total": {\n "description": "Value for total.",\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "webmcp_tools": {\n "description": "Value for webmcp tools.",\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "websocket_connections": {\n "description": "Value for websocket connections.",\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "websocket_frames": {\n "description": "Value for websocket frames.",\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "scripts",\n "network_requests",\n "console_events",\n "websocket_connections",\n "websocket_frames",\n "webmcp_tools",\n "timeline_events",\n "total"\n ],\n "type": "object"\n },\n "excluded": {\n "description": "Value for excluded.",\n "items": {\n "properties": {\n "count": {\n "anyOf": [\n {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n {\n "type": "null"\n }\n ],\n "description": "Value for count."\n },\n "reason": {\n "description": "Value for reason.",\n "enum": [\n "disallowed_origin",\n "unsupported_url",\n "unattributed_origin",\n "not_approved",\n "out_of_target_scope",\n "provider_unavailable",\n "invalid_protocol_value"\n ],\n "type": "string"\n },\n "section": {\n "description": "Value for section.",\n "enum": [\n "frames",\n "dom",\n "accessibility",\n "scripts",\n "script_sources",\n "resources",\n "network_requests",\n "network_initiators",\n "console_events",\n "console_text",\n "websocket_connections",\n "websocket_frames",\n "websocket_shapes",\n "json_body_shapes",\n "workers",\n "storage",\n "storage_keys",\n "metadata",\n "webmcp_tools",\n "screenshot",\n "source_maps",\n "timeline"\n ],\n "type": "string"\n }\n },\n "required": [\n "section",\n "reason",\n "count"\n ],\n "type": "object"\n },\n "type": "array"\n },\n "policy_filtered_sections": {\n "description": "Value for policy filtered sections.",\n "items": {\n "enum": [\n "frames",\n "dom",\n "accessibility",\n "scripts",\n "script_sources",\n "resources",\n "network_requests",\n "network_initiators",\n "console_events",\n "console_text",\n "websocket_connections",\n "websocket_frames",\n "websocket_shapes",\n "json_body_shapes",\n "workers",\n "storage",\n "storage_keys",\n "metadata",\n "webmcp_tools",\n "screenshot",\n "source_maps",\n "timeline"\n ],\n "type": "string"\n },\n "type": "array"\n },\n "status": {\n "description": "Current lifecycle or verification status.",\n "enum": [\n "complete_within_window",\n "policy_filtered",\n "attach_limited",\n "truncated"\n ],\n "type": "string"\n },\n "truncated_sections": {\n "description": "Value for truncated sections.",\n "items": {\n "enum": [\n "frames",\n "dom",\n "accessibility",\n "scripts",\n "script_sources",\n "resources",\n "network_requests",\n "network_initiators",\n "console_events",\n "console_text",\n "websocket_connections",\n "websocket_frames",\n "websocket_shapes",\n "json_body_shapes",\n "workers",\n "storage",\n "storage_keys",\n "metadata",\n "webmcp_tools",\n "screenshot",\n "source_maps",\n "timeline"\n ],\n "type": "string"\n },\n "type": "array"\n },\n "unavailable_sections": {\n "description": "Value for unavailable sections.",\n "items": {\n "enum": [\n "frames",\n "dom",\n "accessibility",\n "scripts",\n "script_sources",\n "resources",\n "network_requests",\n "network_initiators",\n "console_events",\n "console_text",\n "websocket_connections",\n "websocket_frames",\n "websocket_shapes",\n "json_body_shapes",\n "workers",\n "storage",\n "storage_keys",\n "metadata",\n "webmcp_tools",\n "screenshot",\n "source_maps",\n "timeline"\n ],\n "type": "string"\n },\n "type": "array"\n }\n },\n "required": [\n "status",\n "conditions",\n "policy_filtered_sections",\n "attach_limited_sections",\n "truncated_sections",\n "unavailable_sections",\n "excluded",\n "dropped_events"\n ],\n "type": "object"\n },\n "limitations": {\n "description": "Value for limitations.",\n "items": {\n "type": "string"\n },\n "type": "array"\n },\n "status": {\n "description": "Current lifecycle or verification status.",\n "enum": [\n "available",\n "unavailable"\n ],\n "type": "string"\n },\n "target": {\n "description": "Value for target.",\n "properties": {\n "origin": {\n "description": "Value for origin.",\n "type": "string"\n },\n "target_id": {\n "description": "Exact CDP target identifier selected from the endpoint\'s target listing.",\n "type": "string"\n },\n "url": {\n "description": "Value for url.",\n "type": "string"\n }\n },\n "required": [\n "target_id",\n "url",\n "origin"\n ],\n "type": "object"\n },\n "tools": {\n "description": "Value for tools.",\n "properties": {\n "items": {\n "description": "Value for items.",\n "items": {\n "properties": {\n "annotations": {\n "description": "Value for annotations.",\n "properties": {\n "autosubmit": {\n "anyOf": [\n {\n "type": "boolean"\n },\n {\n "type": "null"\n }\n ],\n "description": "Value for autosubmit."\n },\n "read_only": {\n "anyOf": [\n {\n "type": "boolean"\n },\n {\n "type": "null"\n }\n ],\n "description": "Value for read only."\n },\n "untrusted_content": {\n "anyOf": [\n {\n "type": "boolean"\n },\n {\n "type": "null"\n }\n ],\n "description": "Value for untrusted content."\n }\n },\n "required": [\n "read_only",\n "untrusted_content",\n "autosubmit"\n ],\n "type": "object"\n },\n "declaration_kind": {\n "description": "Value for declaration kind.",\n "enum": [\n "declarative",\n "imperative"\n ],\n "type": "string"\n },\n "description": {\n "description": "Value for description.",\n "type": "string"\n },\n "frame_id": {\n "description": "Value for frame id.",\n "type": "string"\n },\n "frame_url": {\n "description": "Value for frame url.",\n "type": "string"\n },\n "input_schema_shape": {\n "anyOf": [\n {\n "properties": {\n "max_depth_observed": {\n "description": "Maximum permitted depth observed for this operation.",\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "node_count": {\n "description": "Value for node count.",\n "maximum": 9007199254740991,\n "minimum": 1,\n "type": "integer"\n },\n "properties": {\n "description": "Value for properties.",\n "items": {\n "properties": {\n "observations": {\n "description": "Value for observations.",\n "maximum": 9007199254740991,\n "minimum": 1,\n "type": "integer"\n },\n "path": {\n "description": "Local filesystem path used by this operation.",\n "type": "string"\n },\n "types": {\n "description": "Value for types.",\n "items": {\n "enum": [\n "object",\n "array",\n "string",\n "number",\n "boolean",\n "null"\n ],\n "type": "string"\n },\n "minItems": 1,\n "type": "array"\n }\n },\n "required": [\n "path",\n "types",\n "observations"\n ],\n "type": "object"\n },\n "type": "array"\n },\n "root_type": {\n "description": "Value for root type.",\n "enum": [\n "object",\n "array",\n "string",\n "number",\n "boolean",\n "null"\n ],\n "type": "string"\n }\n },\n "required": [\n "root_type",\n "node_count",\n "max_depth_observed",\n "properties"\n ],\n "type": "object"\n },\n {\n "type": "null"\n }\n ],\n "description": "Value for input schema shape."\n },\n "name": {\n "description": "Exact name used by this operation.",\n "type": "string"\n },\n "owner_origin": {\n "description": "Value for owner origin.",\n "type": "string"\n },\n "registration_source": {\n "anyOf": [\n {\n "properties": {\n "column": {\n "anyOf": [\n {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n {\n "type": "null"\n }\n ],\n "description": "Value for column."\n },\n "line": {\n "anyOf": [\n {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n {\n "type": "null"\n }\n ],\n "description": "Value for line."\n },\n "url": {\n "description": "Value for url.",\n "type": "string"\n }\n },\n "required": [\n "url",\n "line",\n "column"\n ],\n "type": "object"\n },\n {\n "type": "null"\n }\n ],\n "description": "Value for registration source."\n },\n "tool_key": {\n "description": "Value for tool key.",\n "pattern": "^webmcp_[a-f0-9]{64}$",\n "type": "string"\n },\n "trust": {\n "const": "page-declared-untrusted",\n "description": "Value for trust.",\n "type": "string"\n }\n },\n "required": [\n "tool_key",\n "name",\n "description",\n "frame_id",\n "frame_url",\n "owner_origin",\n "declaration_kind",\n "input_schema_shape",\n "annotations",\n "registration_source",\n "trust"\n ],\n "type": "object"\n },\n "type": "array"\n },\n "total": {\n "description": "Value for total.",\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "total",\n "items"\n ],\n "type": "object"\n }\n },\n "required": [\n "browser",\n "target",\n "status",\n "tools",\n "completeness",\n "limitations"\n ],\n "type": "object"\n },\n {\n "type": "null"\n }\n ],\n "default": null,\n "description": "Value for webmcp."\n }\n },\n "required": [\n "inspection"\n ],\n "type": "object"\n },\n "after_scenario": {\n "additionalProperties": false,\n "description": "Later browser scenario capture.",\n "properties": {\n "browser": {\n "additionalProperties": false,\n "description": "Value for browser.",\n "properties": {\n "cleanup": {\n "description": "Value for cleanup.",\n "enum": [\n "terminated-owned-process",\n "disconnected-external"\n ],\n "type": "string"\n },\n "mode": {\n "description": "Operation mode that selects the requested behavior.",\n "enum": [\n "launch",\n "connect"\n ],\n "type": "string"\n },\n "process_ownership": {\n "description": "Value for process ownership.",\n "enum": [\n "provider-owned",\n "external"\n ],\n "type": "string"\n },\n "product": {\n "description": "Value for product.",\n "minLength": 1,\n "type": "string"\n },\n "version": {\n "description": "Value for version.",\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "mode",\n "process_ownership",\n "cleanup",\n "product",\n "version"\n ],\n "type": "object"\n },\n "completeness": {\n "description": "Value for completeness.",\n "oneOf": [\n {\n "additionalProperties": false,\n "properties": {\n "equality_eligible": {\n "const": true,\n "description": "Value for equality eligible.",\n "type": "boolean"\n },\n "missing_sections": {\n "description": "Value for missing sections.",\n "items": {\n "not": {}\n },\n "maxItems": 0,\n "minItems": 0,\n "type": "array"\n },\n "status": {\n "const": "complete",\n "description": "Current lifecycle or verification status.",\n "type": "string"\n },\n "truncated_sections": {\n "description": "Value for truncated sections.",\n "items": {\n "not": {}\n },\n "maxItems": 0,\n "minItems": 0,\n "type": "array"\n }\n },\n "required": [\n "status",\n "equality_eligible",\n "missing_sections",\n "truncated_sections"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "equality_eligible": {\n "const": false,\n "description": "Value for equality eligible.",\n "type": "boolean"\n },\n "missing_sections": {\n "description": "Value for missing sections.",\n "items": {\n "enum": [\n "action",\n "screenshot",\n "dom",\n "accessibility",\n "url",\n "history",\n "storage",\n "events",\n "frames",\n "workers",\n "popups",\n "websockets"\n ],\n "type": "string"\n },\n "minItems": 1,\n "type": "array"\n },\n "status": {\n "const": "incomplete",\n "description": "Current lifecycle or verification status.",\n "type": "string"\n },\n "truncated_sections": {\n "description": "Value for truncated sections.",\n "items": {\n "not": {}\n },\n "maxItems": 0,\n "minItems": 0,\n "type": "array"\n }\n },\n "required": [\n "status",\n "equality_eligible",\n "missing_sections",\n "truncated_sections"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "equality_eligible": {\n "const": false,\n "description": "Value for equality eligible.",\n "type": "boolean"\n },\n "missing_sections": {\n "description": "Value for missing sections.",\n "items": {\n "enum": [\n "action",\n "screenshot",\n "dom",\n "accessibility",\n "url",\n "history",\n "storage",\n "events",\n "frames",\n "workers",\n "popups",\n "websockets"\n ],\n "type": "string"\n },\n "type": "array"\n },\n "status": {\n "const": "truncated",\n "description": "Current lifecycle or verification status.",\n "type": "string"\n },\n "truncated_sections": {\n "description": "Value for truncated sections.",\n "items": {\n "enum": [\n "action",\n "screenshot",\n "dom",\n "accessibility",\n "url",\n "history",\n "storage",\n "events",\n "frames",\n "workers",\n "popups",\n "websockets"\n ],\n "type": "string"\n },\n "minItems": 1,\n "type": "array"\n }\n },\n "required": [\n "status",\n "equality_eligible",\n "missing_sections",\n "truncated_sections"\n ],\n "type": "object"\n }\n ]\n },\n "duration_ms": {\n "description": "Value for duration ms.",\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "events": {\n "additionalProperties": false,\n "description": "Value for events.",\n "properties": {\n "dropped": {\n "description": "Value for dropped.",\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "items": {\n "description": "Value for items.",\n "items": {\n "anyOf": [\n {\n "additionalProperties": false,\n "properties": {\n "kind": {\n "const": "console",\n "description": "Value for kind.",\n "type": "string"\n },\n "level": {\n "description": "Value for level.",\n "minLength": 1,\n "type": "string"\n },\n "sequence": {\n "description": "Value for sequence.",\n "maximum": 9007199254740991,\n "minimum": 1,\n "type": "integer"\n },\n "step_index": {\n "description": "Value for step index.",\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "text": {\n "description": "Value for text.",\n "type": "string"\n },\n "url": {\n "anyOf": [\n {\n "properties": {\n "origin": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ],\n "description": "Value for origin."\n },\n "query_parameter_names": {\n "description": "Value for query parameter names.",\n "items": {\n "type": "string"\n },\n "type": "array"\n },\n "redacted": {\n "description": "Value for redacted.",\n "type": "boolean"\n },\n "url": {\n "description": "Value for url.",\n "type": "string"\n }\n },\n "required": [\n "url",\n "origin",\n "query_parameter_names",\n "redacted"\n ],\n "type": "object"\n },\n {\n "type": "null"\n }\n ],\n "description": "Value for url."\n }\n },\n "required": [\n "sequence",\n "step_index",\n "kind",\n "level",\n "text",\n "url"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "kind": {\n "const": "page-error",\n "description": "Value for kind.",\n "type": "string"\n },\n "message": {\n "description": "Value for message.",\n "type": "string"\n },\n "sequence": {\n "description": "Value for sequence.",\n "maximum": 9007199254740991,\n "minimum": 1,\n "type": "integer"\n },\n "stack": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ],\n "description": "Value for stack."\n },\n "step_index": {\n "description": "Value for step index.",\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "sequence",\n "step_index",\n "kind",\n "message",\n "stack"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "failure": {\n "description": "Value for failure.",\n "type": "null"\n },\n "header_names": {\n "description": "Value for header names.",\n "items": {\n "type": "string"\n },\n "type": "array"\n },\n "kind": {\n "const": "request",\n "description": "Value for kind.",\n "type": "string"\n },\n "method": {\n "description": "Value for method.",\n "minLength": 1,\n "type": "string"\n },\n "redirected_from_transaction_id": {\n "anyOf": [\n {\n "minLength": 1,\n "type": "string"\n },\n {\n "type": "null"\n }\n ],\n "description": "Value for redirected from transaction id."\n },\n "resource_type": {\n "description": "Value for resource type.",\n "minLength": 1,\n "type": "string"\n },\n "sequence": {\n "description": "Value for sequence.",\n "maximum": 9007199254740991,\n "minimum": 1,\n "type": "integer"\n },\n "status": {\n "description": "Current lifecycle or verification status.",\n "type": "null"\n },\n "step_index": {\n "description": "Value for step index.",\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "transaction_id": {\n "description": "Value for transaction id.",\n "minLength": 1,\n "type": "string"\n },\n "url": {\n "description": "Value for url.",\n "properties": {\n "origin": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ],\n "description": "Value for origin."\n },\n "query_parameter_names": {\n "description": "Value for query parameter names.",\n "items": {\n "type": "string"\n },\n "type": "array"\n },\n "redacted": {\n "description": "Value for redacted.",\n "type": "boolean"\n },\n "url": {\n "description": "Value for url.",\n "type": "string"\n }\n },\n "required": [\n "url",\n "origin",\n "query_parameter_names",\n "redacted"\n ],\n "type": "object"\n }\n },\n "required": [\n "sequence",\n "step_index",\n "method",\n "url",\n "resource_type",\n "header_names",\n "kind",\n "status",\n "failure"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "failure": {\n "description": "Value for failure.",\n "type": "null"\n },\n "header_names": {\n "description": "Value for header names.",\n "items": {\n "type": "string"\n },\n "type": "array"\n },\n "kind": {\n "const": "response",\n "description": "Value for kind.",\n "type": "string"\n },\n "method": {\n "description": "Value for method.",\n "minLength": 1,\n "type": "string"\n },\n "redirected_from_transaction_id": {\n "anyOf": [\n {\n "minLength": 1,\n "type": "string"\n },\n {\n "type": "null"\n }\n ],\n "description": "Value for redirected from transaction id."\n },\n "resource_type": {\n "description": "Value for resource type.",\n "minLength": 1,\n "type": "string"\n },\n "sequence": {\n "description": "Value for sequence.",\n "maximum": 9007199254740991,\n "minimum": 1,\n "type": "integer"\n },\n "status": {\n "description": "Current lifecycle or verification status.",\n "maximum": 599,\n "minimum": 100,\n "type": "integer"\n },\n "step_index": {\n "description": "Value for step index.",\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "transaction_id": {\n "description": "Value for transaction id.",\n "minLength": 1,\n "type": "string"\n },\n "url": {\n "description": "Value for url.",\n "properties": {\n "origin": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ],\n "description": "Value for origin."\n },\n "query_parameter_names": {\n "description": "Value for query parameter names.",\n "items": {\n "type": "string"\n },\n "type": "array"\n },\n "redacted": {\n "description": "Value for redacted.",\n "type": "boolean"\n },\n "url": {\n "description": "Value for url.",\n "type": "string"\n }\n },\n "required": [\n "url",\n "origin",\n "query_parameter_names",\n "redacted"\n ],\n "type": "object"\n }\n },\n "required": [\n "sequence",\n "step_index",\n "method",\n "url",\n "resource_type",\n "header_names",\n "kind",\n "status",\n "failure"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "failure": {\n "description": "Value for failure.",\n "minLength": 1,\n "type": "string"\n },\n "header_names": {\n "description": "Value for header names.",\n "items": {\n "type": "string"\n },\n "type": "array"\n },\n "kind": {\n "const": "request-failed",\n "description": "Value for kind.",\n "type": "string"\n },\n "method": {\n "description": "Value for method.",\n "minLength": 1,\n "type": "string"\n },\n "redirected_from_transaction_id": {\n "anyOf": [\n {\n "minLength": 1,\n "type": "string"\n },\n {\n "type": "null"\n }\n ],\n "description": "Value for redirected from transaction id."\n },\n "resource_type": {\n "description": "Value for resource type.",\n "minLength": 1,\n "type": "string"\n },\n "sequence": {\n "description": "Value for sequence.",\n "maximum": 9007199254740991,\n "minimum": 1,\n "type": "integer"\n },\n "status": {\n "description": "Current lifecycle or verification status.",\n "type": "null"\n },\n "step_index": {\n "description": "Value for step index.",\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "transaction_id": {\n "description": "Value for transaction id.",\n "minLength": 1,\n "type": "string"\n },\n "url": {\n "description": "Value for url.",\n "properties": {\n "origin": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ],\n "description": "Value for origin."\n },\n "query_parameter_names": {\n "description": "Value for query parameter names.",\n "items": {\n "type": "string"\n },\n "type": "array"\n },\n "redacted": {\n "description": "Value for redacted.",\n "type": "boolean"\n },\n "url": {\n "description": "Value for url.",\n "type": "string"\n }\n },\n "required": [\n "url",\n "origin",\n "query_parameter_names",\n "redacted"\n ],\n "type": "object"\n }\n },\n "required": [\n "sequence",\n "step_index",\n "method",\n "url",\n "resource_type",\n "header_names",\n "kind",\n "status",\n "failure"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "failure": {\n "description": "Value for failure.",\n "type": "null"\n },\n "header_names": {\n "description": "Value for header names.",\n "items": {\n "type": "string"\n },\n "type": "array"\n },\n "kind": {\n "const": "request-finished",\n "description": "Value for kind.",\n "type": "string"\n },\n "method": {\n "description": "Value for method.",\n "minLength": 1,\n "type": "string"\n },\n "redirected_from_transaction_id": {\n "anyOf": [\n {\n "minLength": 1,\n "type": "string"\n },\n {\n "type": "null"\n }\n ],\n "description": "Value for redirected from transaction id."\n },\n "resource_type": {\n "description": "Value for resource type.",\n "minLength": 1,\n "type": "string"\n },\n "sequence": {\n "description": "Value for sequence.",\n "maximum": 9007199254740991,\n "minimum": 1,\n "type": "integer"\n },\n "status": {\n "description": "Current lifecycle or verification status.",\n "type": "null"\n },\n "step_index": {\n "description": "Value for step index.",\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "transaction_id": {\n "description": "Value for transaction id.",\n "minLength": 1,\n "type": "string"\n },\n "url": {\n "description": "Value for url.",\n "properties": {\n "origin": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ],\n "description": "Value for origin."\n },\n "query_parameter_names": {\n "description": "Value for query parameter names.",\n "items": {\n "type": "string"\n },\n "type": "array"\n },\n "redacted": {\n "description": "Value for redacted.",\n "type": "boolean"\n },\n "url": {\n "description": "Value for url.",\n "type": "string"\n }\n },\n "required": [\n "url",\n "origin",\n "query_parameter_names",\n "redacted"\n ],\n "type": "object"\n }\n },\n "required": [\n "sequence",\n "step_index",\n "method",\n "url",\n "resource_type",\n "header_names",\n "kind",\n "status",\n "failure"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "failure": {\n "description": "Value for failure.",\n "type": "null"\n },\n "header_names": {\n "description": "Value for header names.",\n "items": {\n "type": "string"\n },\n "type": "array"\n },\n "kind": {\n "const": "request-unfinished",\n "description": "Value for kind.",\n "type": "string"\n },\n "method": {\n "description": "Value for method.",\n "minLength": 1,\n "type": "string"\n },\n "reason": {\n "description": "Value for reason.",\n "enum": [\n "capture-ended",\n "cancelled"\n ],\n "type": "string"\n },\n "redirected_from_transaction_id": {\n "anyOf": [\n {\n "minLength": 1,\n "type": "string"\n },\n {\n "type": "null"\n }\n ],\n "description": "Value for redirected from transaction id."\n },\n "resource_type": {\n "description": "Value for resource type.",\n "minLength": 1,\n "type": "string"\n },\n "sequence": {\n "description": "Value for sequence.",\n "maximum": 9007199254740991,\n "minimum": 1,\n "type": "integer"\n },\n "status": {\n "description": "Current lifecycle or verification status.",\n "type": "null"\n },\n "step_index": {\n "description": "Value for step index.",\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "transaction_id": {\n "description": "Value for transaction id.",\n "minLength": 1,\n "type": "string"\n },\n "url": {\n "description": "Value for url.",\n "properties": {\n "origin": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ],\n "description": "Value for origin."\n },\n "query_parameter_names": {\n "description": "Value for query parameter names.",\n "items": {\n "type": "string"\n },\n "type": "array"\n },\n "redacted": {\n "description": "Value for redacted.",\n "type": "boolean"\n },\n "url": {\n "description": "Value for url.",\n "type": "string"\n }\n },\n "required": [\n "url",\n "origin",\n "query_parameter_names",\n "redacted"\n ],\n "type": "object"\n }\n },\n "required": [\n "sequence",\n "step_index",\n "method",\n "url",\n "resource_type",\n "header_names",\n "kind",\n "status",\n "failure",\n "reason"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "body": {\n "anyOf": [\n {\n "additionalProperties": false,\n "properties": {\n "state": {\n "const": "not_requested",\n "description": "Value for state.",\n "type": "string"\n }\n },\n "required": [\n "state"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "state": {\n "const": "not_exposed",\n "description": "Value for state.",\n "type": "string"\n }\n },\n "required": [\n "state"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "message": {\n "description": "Value for message.",\n "minLength": 1,\n "type": "string"\n },\n "reason": {\n "description": "Value for reason.",\n "enum": [\n "request-failed",\n "response-unfinished",\n "body-read-failed",\n "body-read-timeout",\n "cancelled",\n "capture-ended"\n ],\n "type": "string"\n },\n "state": {\n "const": "unavailable",\n "description": "Value for state.",\n "type": "string"\n }\n },\n "required": [\n "state",\n "reason",\n "message"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "bytes": {\n "description": "Value for bytes.",\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "content": {\n "description": "Value for content.",\n "type": "string"\n },\n "encoding": {\n "const": "base64",\n "description": "Value for encoding.",\n "type": "string"\n },\n "media_type": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ],\n "description": "Value for media type."\n },\n "redacted": {\n "description": "Value for redacted.",\n "type": "boolean"\n },\n "representation": {\n "description": "Value for representation.",\n "enum": [\n "browser-exposed-request-bytes",\n "browser-decoded-response-bytes"\n ],\n "type": "string"\n },\n "sha256": {\n "description": "Value for sha256.",\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n },\n "state": {\n "const": "captured",\n "description": "Value for state.",\n "type": "string"\n }\n },\n "required": [\n "state",\n "representation",\n "encoding",\n "content",\n "bytes",\n "sha256",\n "media_type",\n "redacted"\n ],\n "type": "object"\n }\n ],\n "description": "Value for body."\n },\n "headers": {\n "anyOf": [\n {\n "additionalProperties": false,\n "properties": {\n "state": {\n "const": "not_requested",\n "description": "Value for state.",\n "type": "string"\n }\n },\n "required": [\n "state"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "message": {\n "description": "Value for message.",\n "minLength": 1,\n "type": "string"\n },\n "state": {\n "const": "unavailable",\n "description": "Value for state.",\n "type": "string"\n }\n },\n "required": [\n "state",\n "message"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "items": {\n "description": "Value for items.",\n "items": {\n "additionalProperties": false,\n "properties": {\n "name": {\n "description": "Exact name used by this operation.",\n "minLength": 1,\n "type": "string"\n },\n "redacted": {\n "description": "Value for redacted.",\n "type": "boolean"\n },\n "value": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ],\n "description": "Value for value."\n }\n },\n "required": [\n "name",\n "value",\n "redacted"\n ],\n "type": "object"\n },\n "type": "array"\n },\n "state": {\n "const": "captured",\n "description": "Value for state.",\n "type": "string"\n }\n },\n "required": [\n "state",\n "items"\n ],\n "type": "object"\n }\n ],\n "description": "Value for headers."\n },\n "kind": {\n "const": "network-content",\n "description": "Value for kind.",\n "type": "string"\n },\n "phase": {\n "description": "Current plan or execution phase of the operation.",\n "enum": [\n "request",\n "response"\n ],\n "type": "string"\n },\n "sequence": {\n "description": "Value for sequence.",\n "maximum": 9007199254740991,\n "minimum": 1,\n "type": "integer"\n },\n "source_event_sequence": {\n "description": "Value for source event sequence.",\n "maximum": 9007199254740991,\n "minimum": 1,\n "type": "integer"\n },\n "step_index": {\n "description": "Value for step index.",\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "transaction_id": {\n "description": "Value for transaction id.",\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "sequence",\n "step_index",\n "kind",\n "transaction_id",\n "source_event_sequence",\n "phase",\n "headers",\n "body"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "kind": {\n "description": "Value for kind.",\n "enum": [\n "websocket-opened",\n "websocket-closed"\n ],\n "type": "string"\n },\n "sequence": {\n "description": "Value for sequence.",\n "maximum": 9007199254740991,\n "minimum": 1,\n "type": "integer"\n },\n "step_index": {\n "description": "Value for step index.",\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "url": {\n "description": "Value for url.",\n "properties": {\n "origin": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ],\n "description": "Value for origin."\n },\n "query_parameter_names": {\n "description": "Value for query parameter names.",\n "items": {\n "type": "string"\n },\n "type": "array"\n },\n "redacted": {\n "description": "Value for redacted.",\n "type": "boolean"\n },\n "url": {\n "description": "Value for url.",\n "type": "string"\n }\n },\n "required": [\n "url",\n "origin",\n "query_parameter_names",\n "redacted"\n ],\n "type": "object"\n }\n },\n "required": [\n "sequence",\n "step_index",\n "kind",\n "url"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "kind": {\n "description": "Value for kind.",\n "enum": [\n "websocket-frame-sent",\n "websocket-frame-received"\n ],\n "type": "string"\n },\n "payload_bytes": {\n "description": "Byte count for payload.",\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "payload_text": {\n "description": "Value for payload text.",\n "type": "string"\n },\n "payload_type": {\n "const": "text",\n "description": "Value for payload type.",\n "type": "string"\n },\n "sequence": {\n "description": "Value for sequence.",\n "maximum": 9007199254740991,\n "minimum": 1,\n "type": "integer"\n },\n "step_index": {\n "description": "Value for step index.",\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "truncated": {\n "description": "Value for truncated.",\n "type": "boolean"\n },\n "url": {\n "description": "Value for url.",\n "properties": {\n "origin": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ],\n "description": "Value for origin."\n },\n "query_parameter_names": {\n "description": "Value for query parameter names.",\n "items": {\n "type": "string"\n },\n "type": "array"\n },\n "redacted": {\n "description": "Value for redacted.",\n "type": "boolean"\n },\n "url": {\n "description": "Value for url.",\n "type": "string"\n }\n },\n "required": [\n "url",\n "origin",\n "query_parameter_names",\n "redacted"\n ],\n "type": "object"\n }\n },\n "required": [\n "sequence",\n "step_index",\n "kind",\n "url",\n "payload_bytes",\n "truncated",\n "payload_type",\n "payload_text"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "kind": {\n "description": "Value for kind.",\n "enum": [\n "websocket-frame-sent",\n "websocket-frame-received"\n ],\n "type": "string"\n },\n "payload_bytes": {\n "description": "Byte count for payload.",\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "payload_text": {\n "description": "Value for payload text.",\n "type": "null"\n },\n "payload_type": {\n "const": "binary",\n "description": "Value for payload type.",\n "type": "string"\n },\n "sequence": {\n "description": "Value for sequence.",\n "maximum": 9007199254740991,\n "minimum": 1,\n "type": "integer"\n },\n "step_index": {\n "description": "Value for step index.",\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "truncated": {\n "description": "Value for truncated.",\n "type": "boolean"\n },\n "url": {\n "description": "Value for url.",\n "properties": {\n "origin": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ],\n "description": "Value for origin."\n },\n "query_parameter_names": {\n "description": "Value for query parameter names.",\n "items": {\n "type": "string"\n },\n "type": "array"\n },\n "redacted": {\n "description": "Value for redacted.",\n "type": "boolean"\n },\n "url": {\n "description": "Value for url.",\n "type": "string"\n }\n },\n "required": [\n "url",\n "origin",\n "query_parameter_names",\n "redacted"\n ],\n "type": "object"\n }\n },\n "required": [\n "sequence",\n "step_index",\n "kind",\n "url",\n "payload_bytes",\n "truncated",\n "payload_type",\n "payload_text"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "kind": {\n "description": "Value for kind.",\n "enum": [\n "frame-attached",\n "frame-detached",\n "frame-navigated",\n "worker-created",\n "worker-closed",\n "popup-opened",\n "popup-closed"\n ],\n "type": "string"\n },\n "name": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ],\n "description": "Exact name used by this operation."\n },\n "sequence": {\n "description": "Value for sequence.",\n "maximum": 9007199254740991,\n "minimum": 1,\n "type": "integer"\n },\n "step_index": {\n "description": "Value for step index.",\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "url": {\n "anyOf": [\n {\n "properties": {\n "origin": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ],\n "description": "Value for origin."\n },\n "query_parameter_names": {\n "description": "Value for query parameter names.",\n "items": {\n "type": "string"\n },\n "type": "array"\n },\n "redacted": {\n "description": "Value for redacted.",\n "type": "boolean"\n },\n "url": {\n "description": "Value for url.",\n "type": "string"\n }\n },\n "required": [\n "url",\n "origin",\n "query_parameter_names",\n "redacted"\n ],\n "type": "object"\n },\n {\n "type": "null"\n }\n ],\n "description": "Value for url."\n }\n },\n "required": [\n "sequence",\n "step_index",\n "kind",\n "url",\n "name"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "kind": {\n "const": "download-cancelled",\n "description": "Value for kind.",\n "type": "string"\n },\n "sequence": {\n "description": "Value for sequence.",\n "maximum": 9007199254740991,\n "minimum": 1,\n "type": "integer"\n },\n "step_index": {\n "description": "Value for step index.",\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "suggested_filename": {\n "description": "Value for suggested filename.",\n "type": "string"\n },\n "url": {\n "description": "Value for url.",\n "properties": {\n "origin": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ],\n "description": "Value for origin."\n },\n "query_parameter_names": {\n "description": "Value for query parameter names.",\n "items": {\n "type": "string"\n },\n "type": "array"\n },\n "redacted": {\n "description": "Value for redacted.",\n "type": "boolean"\n },\n "url": {\n "description": "Value for url.",\n "type": "string"\n }\n },\n "required": [\n "url",\n "origin",\n "query_parameter_names",\n "redacted"\n ],\n "type": "object"\n }\n },\n "required": [\n "sequence",\n "step_index",\n "kind",\n "suggested_filename",\n "url"\n ],\n "type": "object"\n }\n ]\n },\n "type": "array"\n },\n "retained": {\n "description": "Value for retained.",\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "retained",\n "dropped",\n "items"\n ],\n "type": "object"\n },\n "limitations": {\n "description": "Value for limitations.",\n "items": {\n "minLength": 1,\n "type": "string"\n },\n "type": "array"\n },\n "scenario": {\n "additionalProperties": false,\n "description": "Value for scenario.",\n "properties": {\n "action_count": {\n "description": "Value for action count.",\n "maximum": 9007199254740991,\n "minimum": 1,\n "type": "integer"\n },\n "network_content": {\n "additionalProperties": false,\n "description": "Value for network content.",\n "properties": {\n "header_values": {\n "default": false,\n "description": "Value for header values.",\n "type": "boolean"\n },\n "request_body": {\n "default": false,\n "description": "Value for request body.",\n "type": "boolean"\n },\n "response_body": {\n "default": false,\n "description": "Value for response body.",\n "type": "boolean"\n }\n },\n "type": "object"\n },\n "secret_references": {\n "description": "Value for secret references.",\n "items": {\n "minLength": 1,\n "type": "string"\n },\n "type": "array"\n },\n "start_origin": {\n "description": "Value for start origin.",\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "start_origin",\n "action_count",\n "secret_references"\n ],\n "type": "object"\n },\n "steps": {\n "description": "Value for steps.",\n "items": {\n "anyOf": [\n {\n "additionalProperties": false,\n "properties": {\n "action": {\n "description": "Value for action.",\n "minLength": 1,\n "type": "string"\n },\n "after_url": {\n "description": "Value for after url.",\n "properties": {\n "origin": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ],\n "description": "Value for origin."\n },\n "query_parameter_names": {\n "description": "Value for query parameter names.",\n "items": {\n "type": "string"\n },\n "type": "array"\n },\n "redacted": {\n "description": "Value for redacted.",\n "type": "boolean"\n },\n "url": {\n "description": "Value for url.",\n "type": "string"\n }\n },\n "required": [\n "url",\n "origin",\n "query_parameter_names",\n "redacted"\n ],\n "type": "object"\n },\n "artifacts": {\n "additionalProperties": false,\n "description": "Value for artifacts.",\n "properties": {\n "accessibility": {\n "description": "Value for accessibility.",\n "oneOf": [\n {\n "additionalProperties": false,\n "properties": {\n "state": {\n "const": "captured",\n "description": "Value for state.",\n "type": "string"\n },\n "value": {\n "additionalProperties": false,\n "description": "Value for value.",\n "properties": {\n "bytes": {\n "description": "Value for bytes.",\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "sha256": {\n "description": "Value for sha256.",\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n },\n "text": {\n "description": "Value for text.",\n "type": "string"\n }\n },\n "required": [\n "sha256",\n "bytes",\n "text"\n ],\n "type": "object"\n }\n },\n "required": [\n "state",\n "value"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "state": {\n "const": "not_requested",\n "description": "Value for state.",\n "type": "string"\n }\n },\n "required": [\n "state"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "reason": {\n "description": "Value for reason.",\n "minLength": 1,\n "type": "string"\n },\n "state": {\n "const": "missing",\n "description": "Value for state.",\n "type": "string"\n }\n },\n "required": [\n "state",\n "reason"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "observed": {\n "description": "Value for observed.",\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "reason": {\n "description": "Value for reason.",\n "minLength": 1,\n "type": "string"\n },\n "retained": {\n "description": "Value for retained.",\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "state": {\n "const": "truncated",\n "description": "Value for state.",\n "type": "string"\n }\n },\n "required": [\n "state",\n "observed",\n "retained",\n "reason"\n ],\n "type": "object"\n }\n ]\n },\n "dom": {\n "description": "Value for dom.",\n "oneOf": [\n {\n "additionalProperties": false,\n "properties": {\n "state": {\n "const": "captured",\n "description": "Value for state.",\n "type": "string"\n },\n "value": {\n "additionalProperties": false,\n "description": "Value for value.",\n "properties": {\n "bytes": {\n "description": "Value for bytes.",\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "sha256": {\n "description": "Value for sha256.",\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n },\n "text": {\n "description": "Value for text.",\n "type": "string"\n }\n },\n "required": [\n "sha256",\n "bytes",\n "text"\n ],\n "type": "object"\n }\n },\n "required": [\n "state",\n "value"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "state": {\n "const": "not_requested",\n "description": "Value for state.",\n "type": "string"\n }\n },\n "required": [\n "state"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "reason": {\n "description": "Value for reason.",\n "minLength": 1,\n "type": "string"\n },\n "state": {\n "const": "missing",\n "description": "Value for state.",\n "type": "string"\n }\n },\n "required": [\n "state",\n "reason"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "observed": {\n "description": "Value for observed.",\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "reason": {\n "description": "Value for reason.",\n "minLength": 1,\n "type": "string"\n },\n "retained": {\n "description": "Value for retained.",\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "state": {\n "const": "truncated",\n "description": "Value for state.",\n "type": "string"\n }\n },\n "required": [\n "state",\n "observed",\n "retained",\n "reason"\n ],\n "type": "object"\n }\n ]\n },\n "history": {\n "description": "Value for history.",\n "oneOf": [\n {\n "additionalProperties": false,\n "properties": {\n "state": {\n "const": "captured",\n "description": "Value for state.",\n "type": "string"\n },\n "value": {\n "additionalProperties": false,\n "description": "Value for value.",\n "properties": {\n "current_url": {\n "description": "Value for current url.",\n "properties": {\n "origin": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ],\n "description": "Value for origin."\n },\n "query_parameter_names": {\n "description": "Value for query parameter names.",\n "items": {\n "type": "string"\n },\n "type": "array"\n },\n "redacted": {\n "description": "Value for redacted.",\n "type": "boolean"\n },\n "url": {\n "description": "Value for url.",\n "type": "string"\n }\n },\n "required": [\n "url",\n "origin",\n "query_parameter_names",\n "redacted"\n ],\n "type": "object"\n },\n "length": {\n "description": "Value for length.",\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "navigation_entries": {\n "description": "Value for navigation entries.",\n "items": {\n "additionalProperties": false,\n "properties": {\n "name": {\n "description": "Exact name used by this operation.",\n "properties": {\n "origin": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ],\n "description": "Value for origin."\n },\n "query_parameter_names": {\n "description": "Value for query parameter names.",\n "items": {\n "type": "string"\n },\n "type": "array"\n },\n "redacted": {\n "description": "Value for redacted.",\n "type": "boolean"\n },\n "url": {\n "description": "Value for url.",\n "type": "string"\n }\n },\n "required": [\n "url",\n "origin",\n "query_parameter_names",\n "redacted"\n ],\n "type": "object"\n },\n "type": {\n "description": "Value for type.",\n "enum": [\n "navigate",\n "reload",\n "back_forward",\n "prerender",\n "unknown"\n ],\n "type": "string"\n }\n },\n "required": [\n "type",\n "name"\n ],\n "type": "object"\n },\n "type": "array"\n }\n },\n "required": [\n "length",\n "current_url",\n "navigation_entries"\n ],\n "type": "object"\n }\n },\n "required": [\n "state",\n "value"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "state": {\n "const": "not_requested",\n "description": "Value for state.",\n "type": "string"\n }\n },\n "required": [\n "state"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "reason": {\n "description": "Value for reason.",\n "minLength": 1,\n "type": "string"\n },\n "state": {\n "const": "missing",\n "description": "Value for state.",\n "type": "string"\n }\n },\n "required": [\n "state",\n "reason"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "observed": {\n "description": "Value for observed.",\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "reason": {\n "description": "Value for reason.",\n "minLength": 1,\n "type": "string"\n },\n "retained": {\n "description": "Value for retained.",\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "state": {\n "const": "truncated",\n "description": "Value for state.",\n "type": "string"\n }\n },\n "required": [\n "state",\n "observed",\n "retained",\n "reason"\n ],\n "type": "object"\n }\n ]\n },\n "screenshot": {\n "description": "Value for screenshot.",\n "oneOf": [\n {\n "additionalProperties": false,\n "properties": {\n "state": {\n "const": "captured",\n "description": "Value for state.",\n "type": "string"\n },\n "value": {\n "description": "Value for value.",\n "properties": {\n "bytes": {\n "description": "Value for bytes.",\n "maximum": 9007199254740991,\n "minimum": 1,\n "type": "integer"\n },\n "data_base64": {\n "description": "Value for data base64.",\n "type": "string"\n },\n "media_type": {\n "const": "image/png",\n "description": "Value for media type.",\n "type": "string"\n },\n "sha256": {\n "description": "Value for sha256.",\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n }\n },\n "required": [\n "sha256",\n "bytes",\n "media_type",\n "data_base64"\n ],\n "type": "object"\n }\n },\n "required": [\n "state",\n "value"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "state": {\n "const": "not_requested",\n "description": "Value for state.",\n "type": "string"\n }\n },\n "required": [\n "state"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "reason": {\n "description": "Value for reason.",\n "minLength": 1,\n "type": "string"\n },\n "state": {\n "const": "missing",\n "description": "Value for state.",\n "type": "string"\n }\n },\n "required": [\n "state",\n "reason"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "observed": {\n "description": "Value for observed.",\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "reason": {\n "description": "Value for reason.",\n "minLength": 1,\n "type": "string"\n },\n "retained": {\n "description": "Value for retained.",\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "state": {\n "const": "truncated",\n "description": "Value for state.",\n "type": "string"\n }\n },\n "required": [\n "state",\n "observed",\n "retained",\n "reason"\n ],\n "type": "object"\n }\n ]\n },\n "storage": {\n "description": "Value for storage.",\n "oneOf": [\n {\n "additionalProperties": false,\n "properties": {\n "state": {\n "const": "captured",\n "description": "Value for state.",\n "type": "string"\n },\n "value": {\n "additionalProperties": false,\n "description": "Value for value.",\n "properties": {\n "cookies": {\n "description": "Value for cookies.",\n "items": {\n "oneOf": [\n {\n "additionalProperties": false,\n "properties": {\n "domain": {\n "description": "Value for domain.",\n "type": "string"\n },\n "http_only": {\n "description": "Value for http only.",\n "type": "boolean"\n },\n "name": {\n "description": "Exact name used by this operation.",\n "type": "string"\n },\n "path": {\n "description": "Local filesystem path used by this operation.",\n "type": "string"\n },\n "same_site": {\n "description": "Value for same site.",\n "enum": [\n "Strict",\n "Lax",\n "None"\n ],\n "type": "string"\n },\n "secure": {\n "description": "Value for secure.",\n "type": "boolean"\n },\n "value_sha256": {\n "description": "Exact SHA-256 digest of value.",\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n },\n "value_state": {\n "const": "hashed",\n "description": "Value for value state.",\n "type": "string"\n }\n },\n "required": [\n "name",\n "domain",\n "path",\n "secure",\n "http_only",\n "same_site",\n "value_state",\n "value_sha256"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "domain": {\n "description": "Value for domain.",\n "type": "string"\n },\n "http_only": {\n "description": "Value for http only.",\n "type": "boolean"\n },\n "name": {\n "description": "Exact name used by this operation.",\n "type": "string"\n },\n "path": {\n "description": "Local filesystem path used by this operation.",\n "type": "string"\n },\n "same_site": {\n "description": "Value for same site.",\n "enum": [\n "Strict",\n "Lax",\n "None"\n ],\n "type": "string"\n },\n "secure": {\n "description": "Value for secure.",\n "type": "boolean"\n },\n "value_sha256": {\n "description": "Exact SHA-256 digest of value.",\n "type": "null"\n },\n "value_state": {\n "const": "redacted-secret",\n "description": "Value for value state.",\n "type": "string"\n }\n },\n "required": [\n "name",\n "domain",\n "path",\n "secure",\n "http_only",\n "same_site",\n "value_state",\n "value_sha256"\n ],\n "type": "object"\n }\n ]\n },\n "type": "array"\n },\n "local_storage": {\n "description": "Value for local storage.",\n "items": {\n "oneOf": [\n {\n "additionalProperties": false,\n "properties": {\n "name": {\n "description": "Exact name used by this operation.",\n "type": "string"\n },\n "value_sha256": {\n "description": "Exact SHA-256 digest of value.",\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n },\n "value_state": {\n "const": "hashed",\n "description": "Value for value state.",\n "type": "string"\n }\n },\n "required": [\n "name",\n "value_state",\n "value_sha256"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "name": {\n "description": "Exact name used by this operation.",\n "type": "string"\n },\n "value_sha256": {\n "description": "Exact SHA-256 digest of value.",\n "type": "null"\n },\n "value_state": {\n "const": "redacted-secret",\n "description": "Value for value state.",\n "type": "string"\n }\n },\n "required": [\n "name",\n "value_state",\n "value_sha256"\n ],\n "type": "object"\n }\n ]\n },\n "type": "array"\n },\n "session_storage": {\n "description": "Value for session storage.",\n "items": {\n "oneOf": [\n {\n "additionalProperties": false,\n "properties": {\n "name": {\n "description": "Exact name used by this operation.",\n "type": "string"\n },\n "value_sha256": {\n "description": "Exact SHA-256 digest of value.",\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n },\n "value_state": {\n "const": "hashed",\n "description": "Value for value state.",\n "type": "string"\n }\n },\n "required": [\n "name",\n "value_state",\n "value_sha256"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "name": {\n "description": "Exact name used by this operation.",\n "type": "string"\n },\n "value_sha256": {\n "description": "Exact SHA-256 digest of value.",\n "type": "null"\n },\n "value_state": {\n "const": "redacted-secret",\n "description": "Value for value state.",\n "type": "string"\n }\n },\n "required": [\n "name",\n "value_state",\n "value_sha256"\n ],\n "type": "object"\n }\n ]\n },\n "type": "array"\n }\n },\n "required": [\n "cookies",\n "local_storage",\n "session_storage"\n ],\n "type": "object"\n }\n },\n "required": [\n "state",\n "value"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "state": {\n "const": "not_requested",\n "description": "Value for state.",\n "type": "string"\n }\n },\n "required": [\n "state"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "reason": {\n "description": "Value for reason.",\n "minLength": 1,\n "type": "string"\n },\n "state": {\n "const": "missing",\n "description": "Value for state.",\n "type": "string"\n }\n },\n "required": [\n "state",\n "reason"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "observed": {\n "description": "Value for observed.",\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "reason": {\n "description": "Value for reason.",\n "minLength": 1,\n "type": "string"\n },\n "retained": {\n "description": "Value for retained.",\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "state": {\n "const": "truncated",\n "description": "Value for state.",\n "type": "string"\n }\n },\n "required": [\n "state",\n "observed",\n "retained",\n "reason"\n ],\n "type": "object"\n }\n ]\n },\n "url": {\n "description": "Value for url.",\n "oneOf": [\n {\n "additionalProperties": false,\n "properties": {\n "state": {\n "const": "captured",\n "description": "Value for state.",\n "type": "string"\n },\n "value": {\n "description": "Value for value.",\n "properties": {\n "origin": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ],\n "description": "Value for origin."\n },\n "query_parameter_names": {\n "description": "Value for query parameter names.",\n "items": {\n "type": "string"\n },\n "type": "array"\n },\n "redacted": {\n "description": "Value for redacted.",\n "type": "boolean"\n },\n "url": {\n "description": "Value for url.",\n "type": "string"\n }\n },\n "required": [\n "url",\n "origin",\n "query_parameter_names",\n "redacted"\n ],\n "type": "object"\n }\n },\n "required": [\n "state",\n "value"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "state": {\n "const": "not_requested",\n "description": "Value for state.",\n "type": "string"\n }\n },\n "required": [\n "state"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "reason": {\n "description": "Value for reason.",\n "minLength": 1,\n "type": "string"\n },\n "state": {\n "const": "missing",\n "description": "Value for state.",\n "type": "string"\n }\n },\n "required": [\n "state",\n "reason"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "observed": {\n "description": "Value for observed.",\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "reason": {\n "description": "Value for reason.",\n "minLength": 1,\n "type": "string"\n },\n "retained": {\n "description": "Value for retained.",\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "state": {\n "const": "truncated",\n "description": "Value for state.",\n "type": "string"\n }\n },\n "required": [\n "state",\n "observed",\n "retained",\n "reason"\n ],\n "type": "object"\n }\n ]\n }\n },\n "required": [\n "screenshot",\n "dom",\n "accessibility",\n "url",\n "history",\n "storage"\n ],\n "type": "object"\n },\n "before_url": {\n "description": "Value for before url.",\n "properties": {\n "origin": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ],\n "description": "Value for origin."\n },\n "query_parameter_names": {\n "description": "Value for query parameter names.",\n "items": {\n "type": "string"\n },\n "type": "array"\n },\n "redacted": {\n "description": "Value for redacted.",\n "type": "boolean"\n },\n "url": {\n "description": "Value for url.",\n "type": "string"\n }\n },\n "required": [\n "url",\n "origin",\n "query_parameter_names",\n "redacted"\n ],\n "type": "object"\n },\n "completeness": {\n "description": "Value for completeness.",\n "oneOf": [\n {\n "additionalProperties": false,\n "properties": {\n "equality_eligible": {\n "const": true,\n "description": "Value for equality eligible.",\n "type": "boolean"\n },\n "missing_sections": {\n "description": "Value for missing sections.",\n "items": {\n "not": {}\n },\n "maxItems": 0,\n "minItems": 0,\n "type": "array"\n },\n "status": {\n "const": "complete",\n "description": "Current lifecycle or verification status.",\n "type": "string"\n },\n "truncated_sections": {\n "description": "Value for truncated sections.",\n "items": {\n "not": {}\n },\n "maxItems": 0,\n "minItems": 0,\n "type": "array"\n }\n },\n "required": [\n "status",\n "equality_eligible",\n "missing_sections",\n "truncated_sections"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "equality_eligible": {\n "const": false,\n "description": "Value for equality eligible.",\n "type": "boolean"\n },\n "missing_sections": {\n "description": "Value for missing sections.",\n "items": {\n "enum": [\n "action",\n "screenshot",\n "dom",\n "accessibility",\n "url",\n "history",\n "storage",\n "events",\n "frames",\n "workers",\n "popups",\n "websockets"\n ],\n "type": "string"\n },\n "minItems": 1,\n "type": "array"\n },\n "status": {\n "const": "incomplete",\n "description": "Current lifecycle or verification status.",\n "type": "string"\n },\n "truncated_sections": {\n "description": "Value for truncated sections.",\n "items": {\n "not": {}\n },\n "maxItems": 0,\n "minItems": 0,\n "type": "array"\n }\n },\n "required": [\n "status",\n "equality_eligible",\n "missing_sections",\n "truncated_sections"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "equality_eligible": {\n "const": false,\n "description": "Value for equality eligible.",\n "type": "boolean"\n },\n "missing_sections": {\n "description": "Value for missing sections.",\n "items": {\n "enum": [\n "action",\n "screenshot",\n "dom",\n "accessibility",\n "url",\n "history",\n "storage",\n "events",\n "frames",\n "workers",\n "popups",\n "websockets"\n ],\n "type": "string"\n },\n "type": "array"\n },\n "status": {\n "const": "truncated",\n "description": "Current lifecycle or verification status.",\n "type": "string"\n },\n "truncated_sections": {\n "description": "Value for truncated sections.",\n "items": {\n "enum": [\n "action",\n "screenshot",\n "dom",\n "accessibility",\n "url",\n "history",\n "storage",\n "events",\n "frames",\n "workers",\n "popups",\n "websockets"\n ],\n "type": "string"\n },\n "minItems": 1,\n "type": "array"\n }\n },\n "required": [\n "status",\n "equality_eligible",\n "missing_sections",\n "truncated_sections"\n ],\n "type": "object"\n }\n ]\n },\n "elapsed_ms": {\n "description": "Value for elapsed ms.",\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "error": {\n "description": "Structured, caller-actionable error when the operation fails.",\n "type": "null"\n },\n "event_sequence_end": {\n "description": "Value for event sequence end.",\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "event_sequence_start": {\n "description": "Value for event sequence start.",\n "maximum": 9007199254740991,\n "minimum": 1,\n "type": "integer"\n },\n "status": {\n "const": "completed",\n "description": "Current lifecycle or verification status.",\n "type": "string"\n },\n "step_id": {\n "description": "Value for step id.",\n "minLength": 1,\n "type": "string"\n },\n "step_index": {\n "description": "Value for step index.",\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "step_index",\n "step_id",\n "action",\n "elapsed_ms",\n "before_url",\n "after_url",\n "event_sequence_start",\n "event_sequence_end",\n "artifacts",\n "completeness",\n "status",\n "error"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "action": {\n "description": "Value for action.",\n "minLength": 1,\n "type": "string"\n },\n "after_url": {\n "description": "Value for after url.",\n "properties": {\n "origin": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ],\n "description": "Value for origin."\n },\n "query_parameter_names": {\n "description": "Value for query parameter names.",\n "items": {\n "type": "string"\n },\n "type": "array"\n },\n "redacted": {\n "description": "Value for redacted.",\n "type": "boolean"\n },\n "url": {\n "description": "Value for url.",\n "type": "string"\n }\n },\n "required": [\n "url",\n "origin",\n "query_parameter_names",\n "redacted"\n ],\n "type": "object"\n },\n "artifacts": {\n "additionalProperties": false,\n "description": "Value for artifacts.",\n "properties": {\n "accessibility": {\n "description": "Value for accessibility.",\n "oneOf": [\n {\n "additionalProperties": false,\n "properties": {\n "state": {\n "const": "captured",\n "description": "Value for state.",\n "type": "string"\n },\n "value": {\n "additionalProperties": false,\n "description": "Value for value.",\n "properties": {\n "bytes": {\n "description": "Value for bytes.",\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "sha256": {\n "description": "Value for sha256.",\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n },\n "text": {\n "description": "Value for text.",\n "type": "string"\n }\n },\n "required": [\n "sha256",\n "bytes",\n "text"\n ],\n "type": "object"\n }\n },\n "required": [\n "state",\n "value"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "state": {\n "const": "not_requested",\n "description": "Value for state.",\n "type": "string"\n }\n },\n "required": [\n "state"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "reason": {\n "description": "Value for reason.",\n "minLength": 1,\n "type": "string"\n },\n "state": {\n "const": "missing",\n "description": "Value for state.",\n "type": "string"\n }\n },\n "required": [\n "state",\n "reason"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "observed": {\n "description": "Value for observed.",\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "reason": {\n "description": "Value for reason.",\n "minLength": 1,\n "type": "string"\n },\n "retained": {\n "description": "Value for retained.",\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "state": {\n "const": "truncated",\n "description": "Value for state.",\n "type": "string"\n }\n },\n "required": [\n "state",\n "observed",\n "retained",\n "reason"\n ],\n "type": "object"\n }\n ]\n },\n "dom": {\n "description": "Value for dom.",\n "oneOf": [\n {\n "additionalProperties": false,\n "properties": {\n "state": {\n "const": "captured",\n "description": "Value for state.",\n "type": "string"\n },\n "value": {\n "additionalProperties": false,\n "description": "Value for value.",\n "properties": {\n "bytes": {\n "description": "Value for bytes.",\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "sha256": {\n "description": "Value for sha256.",\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n },\n "text": {\n "description": "Value for text.",\n "type": "string"\n }\n },\n "required": [\n "sha256",\n "bytes",\n "text"\n ],\n "type": "object"\n }\n },\n "required": [\n "state",\n "value"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "state": {\n "const": "not_requested",\n "description": "Value for state.",\n "type": "string"\n }\n },\n "required": [\n "state"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "reason": {\n "description": "Value for reason.",\n "minLength": 1,\n "type": "string"\n },\n "state": {\n "const": "missing",\n "description": "Value for state.",\n "type": "string"\n }\n },\n "required": [\n "state",\n "reason"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "observed": {\n "description": "Value for observed.",\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "reason": {\n "description": "Value for reason.",\n "minLength": 1,\n "type": "string"\n },\n "retained": {\n "description": "Value for retained.",\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "state": {\n "const": "truncated",\n "description": "Value for state.",\n "type": "string"\n }\n },\n "required": [\n "state",\n "observed",\n "retained",\n "reason"\n ],\n "type": "object"\n }\n ]\n },\n "history": {\n "description": "Value for history.",\n "oneOf": [\n {\n "additionalProperties": false,\n "properties": {\n "state": {\n "const": "captured",\n "description": "Value for state.",\n "type": "string"\n },\n "value": {\n "additionalProperties": false,\n "description": "Value for value.",\n "properties": {\n "current_url": {\n "description": "Value for current url.",\n "properties": {\n "origin": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ],\n "description": "Value for origin."\n },\n "query_parameter_names": {\n "description": "Value for query parameter names.",\n "items": {\n "type": "string"\n },\n "type": "array"\n },\n "redacted": {\n "description": "Value for redacted.",\n "type": "boolean"\n },\n "url": {\n "description": "Value for url.",\n "type": "string"\n }\n },\n "required": [\n "url",\n "origin",\n "query_parameter_names",\n "redacted"\n ],\n "type": "object"\n },\n "length": {\n "description": "Value for length.",\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "navigation_entries": {\n "description": "Value for navigation entries.",\n "items": {\n "additionalProperties": false,\n "properties": {\n "name": {\n "description": "Exact name used by this operation.",\n "properties": {\n "origin": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ],\n "description": "Value for origin."\n },\n "query_parameter_names": {\n "description": "Value for query parameter names.",\n "items": {\n "type": "string"\n },\n "type": "array"\n },\n "redacted": {\n "description": "Value for redacted.",\n "type": "boolean"\n },\n "url": {\n "description": "Value for url.",\n "type": "string"\n }\n },\n "required": [\n "url",\n "origin",\n "query_parameter_names",\n "redacted"\n ],\n "type": "object"\n },\n "type": {\n "description": "Value for type.",\n "enum": [\n "navigate",\n "reload",\n "back_forward",\n "prerender",\n "unknown"\n ],\n "type": "string"\n }\n },\n "required": [\n "type",\n "name"\n ],\n "type": "object"\n },\n "type": "array"\n }\n },\n "required": [\n "length",\n "current_url",\n "navigation_entries"\n ],\n "type": "object"\n }\n },\n "required": [\n "state",\n "value"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "state": {\n "const": "not_requested",\n "description": "Value for state.",\n "type": "string"\n }\n },\n "required": [\n "state"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "reason": {\n "description": "Value for reason.",\n "minLength": 1,\n "type": "string"\n },\n "state": {\n "const": "missing",\n "description": "Value for state.",\n "type": "string"\n }\n },\n "required": [\n "state",\n "reason"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "observed": {\n "description": "Value for observed.",\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "reason": {\n "description": "Value for reason.",\n "minLength": 1,\n "type": "string"\n },\n "retained": {\n "description": "Value for retained.",\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "state": {\n "const": "truncated",\n "description": "Value for state.",\n "type": "string"\n }\n },\n "required": [\n "state",\n "observed",\n "retained",\n "reason"\n ],\n "type": "object"\n }\n ]\n },\n "screenshot": {\n "description": "Value for screenshot.",\n "oneOf": [\n {\n "additionalProperties": false,\n "properties": {\n "state": {\n "const": "captured",\n "description": "Value for state.",\n "type": "string"\n },\n "value": {\n "description": "Value for value.",\n "properties": {\n "bytes": {\n "description": "Value for bytes.",\n "maximum": 9007199254740991,\n "minimum": 1,\n "type": "integer"\n },\n "data_base64": {\n "description": "Value for data base64.",\n "type": "string"\n },\n "media_type": {\n "const": "image/png",\n "description": "Value for media type.",\n "type": "string"\n },\n "sha256": {\n "description": "Value for sha256.",\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n }\n },\n "required": [\n "sha256",\n "bytes",\n "media_type",\n "data_base64"\n ],\n "type": "object"\n }\n },\n "required": [\n "state",\n "value"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "state": {\n "const": "not_requested",\n "description": "Value for state.",\n "type": "string"\n }\n },\n "required": [\n "state"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "reason": {\n "description": "Value for reason.",\n "minLength": 1,\n "type": "string"\n },\n "state": {\n "const": "missing",\n "description": "Value for state.",\n "type": "string"\n }\n },\n "required": [\n "state",\n "reason"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "observed": {\n "description": "Value for observed.",\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "reason": {\n "description": "Value for reason.",\n "minLength": 1,\n "type": "string"\n },\n "retained": {\n "description": "Value for retained.",\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "state": {\n "const": "truncated",\n "description": "Value for state.",\n "type": "string"\n }\n },\n "required": [\n "state",\n "observed",\n "retained",\n "reason"\n ],\n "type": "object"\n }\n ]\n },\n "storage": {\n "description": "Value for storage.",\n "oneOf": [\n {\n "additionalProperties": false,\n "properties": {\n "state": {\n "const": "captured",\n "description": "Value for state.",\n "type": "string"\n },\n "value": {\n "additionalProperties": false,\n "description": "Value for value.",\n "properties": {\n "cookies": {\n "description": "Value for cookies.",\n "items": {\n "oneOf": [\n {\n "additionalProperties": false,\n "properties": {\n "domain": {\n "description": "Value for domain.",\n "type": "string"\n },\n "http_only": {\n "description": "Value for http only.",\n "type": "boolean"\n },\n "name": {\n "description": "Exact name used by this operation.",\n "type": "string"\n },\n "path": {\n "description": "Local filesystem path used by this operation.",\n "type": "string"\n },\n "same_site": {\n "description": "Value for same site.",\n "enum": [\n "Strict",\n "Lax",\n "None"\n ],\n "type": "string"\n },\n "secure": {\n "description": "Value for secure.",\n "type": "boolean"\n },\n "value_sha256": {\n "description": "Exact SHA-256 digest of value.",\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n },\n "value_state": {\n "const": "hashed",\n "description": "Value for value state.",\n "type": "string"\n }\n },\n "required": [\n "name",\n "domain",\n "path",\n "secure",\n "http_only",\n "same_site",\n "value_state",\n "value_sha256"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "domain": {\n "description": "Value for domain.",\n "type": "string"\n },\n "http_only": {\n "description": "Value for http only.",\n "type": "boolean"\n },\n "name": {\n "description": "Exact name used by this operation.",\n "type": "string"\n },\n "path": {\n "description": "Local filesystem path used by this operation.",\n "type": "string"\n },\n "same_site": {\n "description": "Value for same site.",\n "enum": [\n "Strict",\n "Lax",\n "None"\n ],\n "type": "string"\n },\n "secure": {\n "description": "Value for secure.",\n "type": "boolean"\n },\n "value_sha256": {\n "description": "Exact SHA-256 digest of value.",\n "type": "null"\n },\n "value_state": {\n "const": "redacted-secret",\n "description": "Value for value state.",\n "type": "string"\n }\n },\n "required": [\n "name",\n "domain",\n "path",\n "secure",\n "http_only",\n "same_site",\n "value_state",\n "value_sha256"\n ],\n "type": "object"\n }\n ]\n },\n "type": "array"\n },\n "local_storage": {\n "description": "Value for local storage.",\n "items": {\n "oneOf": [\n {\n "additionalProperties": false,\n "properties": {\n "name": {\n "description": "Exact name used by this operation.",\n "type": "string"\n },\n "value_sha256": {\n "description": "Exact SHA-256 digest of value.",\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n },\n "value_state": {\n "const": "hashed",\n "description": "Value for value state.",\n "type": "string"\n }\n },\n "required": [\n "name",\n "value_state",\n "value_sha256"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "name": {\n "description": "Exact name used by this operation.",\n "type": "string"\n },\n "value_sha256": {\n "description": "Exact SHA-256 digest of value.",\n "type": "null"\n },\n "value_state": {\n "const": "redacted-secret",\n "description": "Value for value state.",\n "type": "string"\n }\n },\n "required": [\n "name",\n "value_state",\n "value_sha256"\n ],\n "type": "object"\n }\n ]\n },\n "type": "array"\n },\n "session_storage": {\n "description": "Value for session storage.",\n "items": {\n "oneOf": [\n {\n "additionalProperties": false,\n "properties": {\n "name": {\n "description": "Exact name used by this operation.",\n "type": "string"\n },\n "value_sha256": {\n "description": "Exact SHA-256 digest of value.",\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n },\n "value_state": {\n "const": "hashed",\n "description": "Value for value state.",\n "type": "string"\n }\n },\n "required": [\n "name",\n "value_state",\n "value_sha256"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "name": {\n "description": "Exact name used by this operation.",\n "type": "string"\n },\n "value_sha256": {\n "description": "Exact SHA-256 digest of value.",\n "type": "null"\n },\n "value_state": {\n "const": "redacted-secret",\n "description": "Value for value state.",\n "type": "string"\n }\n },\n "required": [\n "name",\n "value_state",\n "value_sha256"\n ],\n "type": "object"\n }\n ]\n },\n "type": "array"\n }\n },\n "required": [\n "cookies",\n "local_storage",\n "session_storage"\n ],\n "type": "object"\n }\n },\n "required": [\n "state",\n "value"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "state": {\n "const": "not_requested",\n "description": "Value for state.",\n "type": "string"\n }\n },\n "required": [\n "state"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "reason": {\n "description": "Value for reason.",\n "minLength": 1,\n "type": "string"\n },\n "state": {\n "const": "missing",\n "description": "Value for state.",\n "type": "string"\n }\n },\n "required": [\n "state",\n "reason"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "observed": {\n "description": "Value for observed.",\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "reason": {\n "description": "Value for reason.",\n "minLength": 1,\n "type": "string"\n },\n "retained": {\n "description": "Value for retained.",\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "state": {\n "const": "truncated",\n "description": "Value for state.",\n "type": "string"\n }\n },\n "required": [\n "state",\n "observed",\n "retained",\n "reason"\n ],\n "type": "object"\n }\n ]\n },\n "url": {\n "description": "Value for url.",\n "oneOf": [\n {\n "additionalProperties": false,\n "properties": {\n "state": {\n "const": "captured",\n "description": "Value for state.",\n "type": "string"\n },\n "value": {\n "description": "Value for value.",\n "properties": {\n "origin": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ],\n "description": "Value for origin."\n },\n "query_parameter_names": {\n "description": "Value for query parameter names.",\n "items": {\n "type": "string"\n },\n "type": "array"\n },\n "redacted": {\n "description": "Value for redacted.",\n "type": "boolean"\n },\n "url": {\n "description": "Value for url.",\n "type": "string"\n }\n },\n "required": [\n "url",\n "origin",\n "query_parameter_names",\n "redacted"\n ],\n "type": "object"\n }\n },\n "required": [\n "state",\n "value"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "state": {\n "const": "not_requested",\n "description": "Value for state.",\n "type": "string"\n }\n },\n "required": [\n "state"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "reason": {\n "description": "Value for reason.",\n "minLength": 1,\n "type": "string"\n },\n "state": {\n "const": "missing",\n "description": "Value for state.",\n "type": "string"\n }\n },\n "required": [\n "state",\n "reason"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "observed": {\n "description": "Value for observed.",\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "reason": {\n "description": "Value for reason.",\n "minLength": 1,\n "type": "string"\n },\n "retained": {\n "description": "Value for retained.",\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "state": {\n "const": "truncated",\n "description": "Value for state.",\n "type": "string"\n }\n },\n "required": [\n "state",\n "observed",\n "retained",\n "reason"\n ],\n "type": "object"\n }\n ]\n }\n },\n "required": [\n "screenshot",\n "dom",\n "accessibility",\n "url",\n "history",\n "storage"\n ],\n "type": "object"\n },\n "before_url": {\n "description": "Value for before url.",\n "properties": {\n "origin": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ],\n "description": "Value for origin."\n },\n "query_parameter_names": {\n "description": "Value for query parameter names.",\n "items": {\n "type": "string"\n },\n "type": "array"\n },\n "redacted": {\n "description": "Value for redacted.",\n "type": "boolean"\n },\n "url": {\n "description": "Value for url.",\n "type": "string"\n }\n },\n "required": [\n "url",\n "origin",\n "query_parameter_names",\n "redacted"\n ],\n "type": "object"\n },\n "completeness": {\n "description": "Value for completeness.",\n "oneOf": [\n {\n "additionalProperties": false,\n "properties": {\n "equality_eligible": {\n "const": true,\n "description": "Value for equality eligible.",\n "type": "boolean"\n },\n "missing_sections": {\n "description": "Value for missing sections.",\n "items": {\n "not": {}\n },\n "maxItems": 0,\n "minItems": 0,\n "type": "array"\n },\n "status": {\n "const": "complete",\n "description": "Current lifecycle or verification status.",\n "type": "string"\n },\n "truncated_sections": {\n "description": "Value for truncated sections.",\n "items": {\n "not": {}\n },\n "maxItems": 0,\n "minItems": 0,\n "type": "array"\n }\n },\n "required": [\n "status",\n "equality_eligible",\n "missing_sections",\n "truncated_sections"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "equality_eligible": {\n "const": false,\n "description": "Value for equality eligible.",\n "type": "boolean"\n },\n "missing_sections": {\n "description": "Value for missing sections.",\n "items": {\n "enum": [\n "action",\n "screenshot",\n "dom",\n "accessibility",\n "url",\n "history",\n "storage",\n "events",\n "frames",\n "workers",\n "popups",\n "websockets"\n ],\n "type": "string"\n },\n "minItems": 1,\n "type": "array"\n },\n "status": {\n "const": "incomplete",\n "description": "Current lifecycle or verification status.",\n "type": "string"\n },\n "truncated_sections": {\n "description": "Value for truncated sections.",\n "items": {\n "not": {}\n },\n "maxItems": 0,\n "minItems": 0,\n "type": "array"\n }\n },\n "required": [\n "status",\n "equality_eligible",\n "missing_sections",\n "truncated_sections"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "equality_eligible": {\n "const": false,\n "description": "Value for equality eligible.",\n "type": "boolean"\n },\n "missing_sections": {\n "description": "Value for missing sections.",\n "items": {\n "enum": [\n "action",\n "screenshot",\n "dom",\n "accessibility",\n "url",\n "history",\n "storage",\n "events",\n "frames",\n "workers",\n "popups",\n "websockets"\n ],\n "type": "string"\n },\n "type": "array"\n },\n "status": {\n "const": "truncated",\n "description": "Current lifecycle or verification status.",\n "type": "string"\n },\n "truncated_sections": {\n "description": "Value for truncated sections.",\n "items": {\n "enum": [\n "action",\n "screenshot",\n "dom",\n "accessibility",\n "url",\n "history",\n "storage",\n "events",\n "frames",\n "workers",\n "popups",\n "websockets"\n ],\n "type": "string"\n },\n "minItems": 1,\n "type": "array"\n }\n },\n "required": [\n "status",\n "equality_eligible",\n "missing_sections",\n "truncated_sections"\n ],\n "type": "object"\n }\n ]\n },\n "elapsed_ms": {\n "description": "Value for elapsed ms.",\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "error": {\n "description": "Structured, caller-actionable error when the operation fails.",\n "type": "string"\n },\n "event_sequence_end": {\n "description": "Value for event sequence end.",\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "event_sequence_start": {\n "description": "Value for event sequence start.",\n "maximum": 9007199254740991,\n "minimum": 1,\n "type": "integer"\n },\n "status": {\n "description": "Current lifecycle or verification status.",\n "enum": [\n "failed",\n "cancelled"\n ],\n "type": "string"\n },\n "step_id": {\n "description": "Value for step id.",\n "minLength": 1,\n "type": "string"\n },\n "step_index": {\n "description": "Value for step index.",\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "step_index",\n "step_id",\n "action",\n "elapsed_ms",\n "before_url",\n "after_url",\n "event_sequence_start",\n "event_sequence_end",\n "artifacts",\n "completeness",\n "status",\n "error"\n ],\n "type": "object"\n }\n ]\n },\n "minItems": 1,\n "type": "array"\n }\n },\n "required": [\n "browser",\n "scenario",\n "duration_ms",\n "steps",\n "events",\n "completeness",\n "limitations"\n ],\n "type": "object"\n },\n "before": {\n "description": "Earlier passive web-page capture.",\n "properties": {\n "inspection": {\n "description": "Value for inspection.",\n "properties": {\n "accessibility": {\n "description": "Value for accessibility.",\n "properties": {\n "nodes": {\n "description": "Value for nodes.",\n "items": {\n "properties": {\n "description": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ],\n "description": "Value for description."\n },\n "ignored": {\n "description": "Value for ignored.",\n "type": "boolean"\n },\n "name": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ],\n "description": "Exact name used by this operation."\n },\n "node_id": {\n "description": "Value for node id.",\n "type": "string"\n },\n "parent_id": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ],\n "description": "Value for parent id."\n },\n "role": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ],\n "description": "Value for role."\n },\n "states": {\n "default": [],\n "description": "Value for states.",\n "items": {\n "properties": {\n "name": {\n "description": "Exact name used by this operation.",\n "type": "string"\n },\n "value": {\n "anyOf": [\n {\n "type": "boolean"\n },\n {\n "type": "number"\n },\n {\n "type": "string"\n }\n ],\n "description": "Value for value."\n }\n },\n "required": [\n "name",\n "value"\n ],\n "type": "object"\n },\n "type": "array"\n }\n },\n "required": [\n "node_id",\n "parent_id",\n "role",\n "name",\n "description",\n "ignored"\n ],\n "type": "object"\n },\n "type": "array"\n },\n "text_capture": {\n "description": "Value for text capture.",\n "properties": {\n "excluded_fields": {\n "description": "Value for excluded fields.",\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "retained_bytes": {\n "description": "Byte count for retained.",\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "status": {\n "description": "Current lifecycle or verification status.",\n "enum": [\n "not_approved",\n "included",\n "unavailable"\n ],\n "type": "string"\n }\n },\n "required": [\n "status",\n "retained_bytes",\n "excluded_fields"\n ],\n "type": "object"\n },\n "total_nodes": {\n "description": "Value for total nodes.",\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "total_nodes",\n "text_capture",\n "nodes"\n ],\n "type": "object"\n },\n "browser": {\n "description": "Value for browser.",\n "properties": {\n "js_version": {\n "description": "Value for js version.",\n "type": "string"\n },\n "product": {\n "description": "Value for product.",\n "type": "string"\n },\n "protocol_version": {\n "description": "Value for protocol version.",\n "type": "string"\n },\n "revision": {\n "description": "Value for revision.",\n "type": "string"\n },\n "user_agent": {\n "description": "Value for user agent.",\n "type": "string"\n }\n },\n "required": [\n "product",\n "protocol_version",\n "revision",\n "user_agent",\n "js_version"\n ],\n "type": "object"\n },\n "capture_window": {\n "description": "Value for capture window.",\n "properties": {\n "ended_at": {\n "description": "Value for ended at.",\n "format": "date-time",\n "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))$",\n "type": "string"\n },\n "observation_ms": {\n "description": "Value for observation ms.",\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "started_at": {\n "description": "Value for started at.",\n "format": "date-time",\n "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))$",\n "type": "string"\n }\n },\n "required": [\n "started_at",\n "ended_at",\n "observation_ms"\n ],\n "type": "object"\n },\n "completeness": {\n "description": "Value for completeness.",\n "properties": {\n "attach_limited_sections": {\n "description": "Value for attach limited sections.",\n "items": {\n "enum": [\n "frames",\n "dom",\n "accessibility",\n "scripts",\n "script_sources",\n "resources",\n "network_requests",\n "network_initiators",\n "console_events",\n "console_text",\n "websocket_connections",\n "websocket_frames",\n "websocket_shapes",\n "json_body_shapes",\n "workers",\n "storage",\n "storage_keys",\n "metadata",\n "webmcp_tools",\n "screenshot",\n "source_maps",\n "timeline"\n ],\n "type": "string"\n },\n "type": "array"\n },\n "conditions": {\n "description": "Value for conditions.",\n "items": {\n "enum": [\n "complete_within_window",\n "policy_filtered",\n "attach_limited",\n "truncated"\n ],\n "type": "string"\n },\n "maxItems": 3,\n "minItems": 1,\n "type": "array"\n },\n "dropped_events": {\n "description": "Value for dropped events.",\n "properties": {\n "console_events": {\n "description": "Value for console events.",\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "network_requests": {\n "description": "Value for network requests.",\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "scripts": {\n "description": "Value for scripts.",\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "timeline_events": {\n "description": "Value for timeline events.",\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "total": {\n "description": "Value for total.",\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "webmcp_tools": {\n "description": "Value for webmcp tools.",\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "websocket_connections": {\n "description": "Value for websocket connections.",\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "websocket_frames": {\n "description": "Value for websocket frames.",\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "scripts",\n "network_requests",\n "console_events",\n "websocket_connections",\n "websocket_frames",\n "webmcp_tools",\n "timeline_events",\n "total"\n ],\n "type": "object"\n },\n "excluded": {\n "description": "Value for excluded.",\n "items": {\n "properties": {\n "count": {\n "anyOf": [\n {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n {\n "type": "null"\n }\n ],\n "description": "Value for count."\n },\n "reason": {\n "description": "Value for reason.",\n "enum": [\n "disallowed_origin",\n "unsupported_url",\n "unattributed_origin",\n "not_approved",\n "out_of_target_scope",\n "provider_unavailable",\n "invalid_protocol_value"\n ],\n "type": "string"\n },\n "section": {\n "description": "Value for section.",\n "enum": [\n "frames",\n "dom",\n "accessibility",\n "scripts",\n "script_sources",\n "resources",\n "network_requests",\n "network_initiators",\n "console_events",\n "console_text",\n "websocket_connections",\n "websocket_frames",\n "websocket_shapes",\n "json_body_shapes",\n "workers",\n "storage",\n "storage_keys",\n "metadata",\n "webmcp_tools",\n "screenshot",\n "source_maps",\n "timeline"\n ],\n "type": "string"\n }\n },\n "required": [\n "section",\n "reason",\n "count"\n ],\n "type": "object"\n },\n "type": "array"\n },\n "policy_filtered_sections": {\n "description": "Value for policy filtered sections.",\n "items": {\n "enum": [\n "frames",\n "dom",\n "accessibility",\n "scripts",\n "script_sources",\n "resources",\n "network_requests",\n "network_initiators",\n "console_events",\n "console_text",\n "websocket_connections",\n "websocket_frames",\n "websocket_shapes",\n "json_body_shapes",\n "workers",\n "storage",\n "storage_keys",\n "metadata",\n "webmcp_tools",\n "screenshot",\n "source_maps",\n "timeline"\n ],\n "type": "string"\n },\n "type": "array"\n },\n "status": {\n "description": "Current lifecycle or verification status.",\n "enum": [\n "complete_within_window",\n "policy_filtered",\n "attach_limited",\n "truncated"\n ],\n "type": "string"\n },\n "truncated_sections": {\n "description": "Value for truncated sections.",\n "items": {\n "enum": [\n "frames",\n "dom",\n "accessibility",\n "scripts",\n "script_sources",\n "resources",\n "network_requests",\n "network_initiators",\n "console_events",\n "console_text",\n "websocket_connections",\n "websocket_frames",\n "websocket_shapes",\n "json_body_shapes",\n "workers",\n "storage",\n "storage_keys",\n "metadata",\n "webmcp_tools",\n "screenshot",\n "source_maps",\n "timeline"\n ],\n "type": "string"\n },\n "type": "array"\n },\n "unavailable_sections": {\n "description": "Value for unavailable sections.",\n "items": {\n "enum": [\n "frames",\n "dom",\n "accessibility",\n "scripts",\n "script_sources",\n "resources",\n "network_requests",\n "network_initiators",\n "console_events",\n "console_text",\n "websocket_connections",\n "websocket_frames",\n "websocket_shapes",\n "json_body_shapes",\n "workers",\n "storage",\n "storage_keys",\n "metadata",\n "webmcp_tools",\n "screenshot",\n "source_maps",\n "timeline"\n ],\n "type": "string"\n },\n "type": "array"\n }\n },\n "required": [\n "status",\n "conditions",\n "policy_filtered_sections",\n "attach_limited_sections",\n "truncated_sections",\n "unavailable_sections",\n "excluded",\n "dropped_events"\n ],\n "type": "object"\n },\n "console": {\n "description": "Value for console.",\n "properties": {\n "coverage_started_at": {\n "description": "Value for coverage started at.",\n "format": "date-time",\n "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))$",\n "type": "string"\n },\n "events": {\n "description": "Value for events.",\n "items": {\n "properties": {\n "argument_types": {\n "description": "Value for argument types.",\n "items": {\n "type": "string"\n },\n "type": "array"\n },\n "column": {\n "anyOf": [\n {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n {\n "type": "null"\n }\n ],\n "description": "Value for column."\n },\n "line": {\n "anyOf": [\n {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n {\n "type": "null"\n }\n ],\n "description": "Value for line."\n },\n "text_capture": {\n "description": "Value for text capture.",\n "properties": {\n "retained_bytes": {\n "description": "Byte count for retained.",\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "status": {\n "description": "Current lifecycle or verification status.",\n "enum": [\n "not_approved",\n "included"\n ],\n "type": "string"\n },\n "values": {\n "description": "Value for values.",\n "items": {\n "properties": {\n "argument_index": {\n "description": "Value for argument index.",\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "text": {\n "description": "Value for text.",\n "type": "string"\n },\n "type": {\n "description": "Value for type.",\n "type": "string"\n }\n },\n "required": [\n "argument_index",\n "type",\n "text"\n ],\n "type": "object"\n },\n "type": "array"\n }\n },\n "required": [\n "status",\n "values",\n "retained_bytes"\n ],\n "type": "object"\n },\n "timestamp": {\n "description": "Value for timestamp.",\n "type": "number"\n },\n "type": {\n "description": "Value for type.",\n "type": "string"\n },\n "url": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ],\n "description": "Value for url."\n }\n },\n "required": [\n "type",\n "timestamp",\n "argument_types",\n "url",\n "line",\n "column",\n "text_capture"\n ],\n "type": "object"\n },\n "type": "array"\n },\n "prior_activity_available": {\n "const": false,\n "description": "Value for prior activity available.",\n "type": "boolean"\n }\n },\n "required": [\n "events",\n "coverage_started_at",\n "prior_activity_available"\n ],\n "type": "object"\n },\n "dom": {\n "description": "Value for dom.",\n "properties": {\n "nodes": {\n "description": "Value for nodes.",\n "items": {\n "properties": {\n "attribute_names": {\n "description": "Value for attribute names.",\n "items": {\n "type": "string"\n },\n "type": "array"\n },\n "index": {\n "description": "Value for index.",\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "node_name": {\n "description": "Value for node name.",\n "type": "string"\n },\n "node_type": {\n "description": "Value for node type.",\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "node_value_length": {\n "description": "Value for node value length.",\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "parent_index": {\n "description": "Value for parent index.",\n "maximum": 9007199254740991,\n "minimum": -1,\n "type": "integer"\n }\n },\n "required": [\n "index",\n "parent_index",\n "node_type",\n "node_name",\n "node_value_length",\n "attribute_names"\n ],\n "type": "object"\n },\n "type": "array"\n },\n "total_nodes": {\n "description": "Value for total nodes.",\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "total_nodes",\n "nodes"\n ],\n "type": "object"\n },\n "frames": {\n "description": "Value for frames.",\n "items": {\n "properties": {\n "frame_id": {\n "description": "Value for frame id.",\n "type": "string"\n },\n "origin": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ],\n "description": "Value for origin."\n },\n "parent_frame_id": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ],\n "description": "Value for parent frame id."\n },\n "url": {\n "description": "Value for url.",\n "type": "string"\n }\n },\n "required": [\n "frame_id",\n "parent_frame_id",\n "url",\n "origin"\n ],\n "type": "object"\n },\n "type": "array"\n },\n "limitations": {\n "description": "Value for limitations.",\n "items": {\n "type": "string"\n },\n "type": "array"\n },\n "metadata": {\n "description": "Value for metadata.",\n "properties": {\n "agent_hints": {\n "description": "Value for agent hints.",\n "items": {\n "properties": {\n "declaration": {\n "description": "Value for declaration.",\n "type": "string"\n },\n "mechanism": {\n "description": "Value for mechanism.",\n "enum": [\n "link_rel",\n "dom_link_rel",\n "well_known_resource",\n "response_header"\n ],\n "type": "string"\n },\n "trust": {\n "const": "page-declared-untrusted",\n "description": "Value for trust.",\n "type": "string"\n },\n "url": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ],\n "description": "Value for url."\n }\n },\n "required": [\n "mechanism",\n "declaration",\n "url",\n "trust"\n ],\n "type": "object"\n },\n "type": "array"\n },\n "dom_urls": {\n "description": "Value for dom urls.",\n "items": {\n "properties": {\n "attribute": {\n "description": "Value for attribute.",\n "enum": [\n "href",\n "src",\n "action",\n "formaction",\n "poster"\n ],\n "type": "string"\n },\n "destination_scope": {\n "description": "Value for destination scope.",\n "enum": [\n "approved",\n "outside_policy",\n "unsupported"\n ],\n "type": "string"\n },\n "node_index": {\n "description": "Value for node index.",\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "url": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ],\n "description": "Value for url."\n }\n },\n "required": [\n "node_index",\n "attribute",\n "url",\n "destination_scope"\n ],\n "type": "object"\n },\n "type": "array"\n },\n "excluded_dom_urls": {\n "description": "Value for excluded dom urls.",\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "headers_allowlisted": {\n "const": true,\n "description": "Value for headers allowlisted.",\n "type": "boolean"\n },\n "responses": {\n "description": "Value for responses.",\n "items": {\n "properties": {\n "content_encoding": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ],\n "description": "Value for content encoding."\n },\n "content_length": {\n "anyOf": [\n {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n {\n "type": "null"\n }\n ],\n "description": "Value for content length."\n },\n "csp": {\n "description": "Value for csp.",\n "properties": {\n "directives": {\n "description": "Value for directives.",\n "items": {\n "properties": {\n "name": {\n "description": "Exact name used by this operation.",\n "type": "string"\n },\n "sources": {\n "description": "Value for sources.",\n "items": {\n "properties": {\n "kind": {\n "description": "Value for kind.",\n "enum": [\n "keyword",\n "scheme",\n "approved_origin",\n "external_origin",\n "other"\n ],\n "type": "string"\n },\n "value": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ],\n "description": "Value for value."\n }\n },\n "required": [\n "kind",\n "value"\n ],\n "type": "object"\n },\n "type": "array"\n }\n },\n "required": [\n "name",\n "sources"\n ],\n "type": "object"\n },\n "type": "array"\n },\n "hash_count": {\n "description": "Value for hash count.",\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "nonce_count": {\n "description": "Value for nonce count.",\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "directives",\n "nonce_count",\n "hash_count"\n ],\n "type": "object"\n },\n "links": {\n "description": "Value for links.",\n "items": {\n "properties": {\n "as": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ],\n "description": "Value for as."\n },\n "crossorigin": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ],\n "description": "Value for crossorigin."\n },\n "destination_scope": {\n "description": "Value for destination scope.",\n "enum": [\n "approved",\n "outside_policy",\n "unsupported"\n ],\n "type": "string"\n },\n "href": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ],\n "description": "Value for href."\n },\n "rel": {\n "description": "Value for rel.",\n "items": {\n "type": "string"\n },\n "type": "array"\n },\n "type": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ],\n "description": "Value for type."\n }\n },\n "required": [\n "href",\n "destination_scope",\n "rel",\n "as",\n "type",\n "crossorigin"\n ],\n "type": "object"\n },\n "type": "array"\n },\n "mime_type": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ],\n "description": "Value for mime type."\n },\n "policies": {\n "description": "Value for policies.",\n "properties": {\n "coep": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ],\n "description": "Value for coep."\n },\n "coop": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ],\n "description": "Value for coop."\n },\n "corp": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ],\n "description": "Value for corp."\n },\n "permissions_policy_features": {\n "description": "Value for permissions policy features.",\n "items": {\n "type": "string"\n },\n "type": "array"\n },\n "referrer_policy": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ],\n "description": "Value for referrer policy."\n },\n "x_content_type_options": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ],\n "description": "Value for x content type options."\n }\n },\n "required": [\n "coop",\n "coep",\n "corp",\n "referrer_policy",\n "x_content_type_options",\n "permissions_policy_features"\n ],\n "type": "object"\n },\n "request_id": {\n "description": "Value for request id.",\n "type": "string"\n },\n "url": {\n "description": "Value for url.",\n "type": "string"\n }\n },\n "required": [\n "request_id",\n "url",\n "mime_type",\n "content_length",\n "content_encoding",\n "csp",\n "links",\n "policies"\n ],\n "type": "object"\n },\n "type": "array"\n }\n },\n "required": [\n "responses",\n "dom_urls",\n "agent_hints",\n "excluded_dom_urls",\n "headers_allowlisted"\n ],\n "type": "object"\n },\n "network": {\n "description": "Value for network.",\n "properties": {\n "coverage_started_at": {\n "description": "Value for coverage started at.",\n "format": "date-time",\n "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))$",\n "type": "string"\n },\n "prior_activity_available": {\n "const": false,\n "description": "Value for prior activity available.",\n "type": "boolean"\n },\n "requests": {\n "description": "Value for requests.",\n "items": {\n "properties": {\n "body_shapes": {\n "description": "Value for body shapes.",\n "properties": {\n "request": {\n "anyOf": [\n {\n "properties": {\n "max_depth_observed": {\n "description": "Maximum permitted depth observed for this operation.",\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "node_count": {\n "description": "Value for node count.",\n "maximum": 9007199254740991,\n "minimum": 1,\n "type": "integer"\n },\n "properties": {\n "description": "Value for properties.",\n "items": {\n "properties": {\n "observations": {\n "description": "Value for observations.",\n "maximum": 9007199254740991,\n "minimum": 1,\n "type": "integer"\n },\n "path": {\n "description": "Local filesystem path used by this operation.",\n "type": "string"\n },\n "types": {\n "description": "Value for types.",\n "items": {\n "enum": [\n "object",\n "array",\n "string",\n "number",\n "boolean",\n "null"\n ],\n "type": "string"\n },\n "minItems": 1,\n "type": "array"\n }\n },\n "required": [\n "path",\n "types",\n "observations"\n ],\n "type": "object"\n },\n "type": "array"\n },\n "root_type": {\n "description": "Value for root type.",\n "enum": [\n "object",\n "array",\n "string",\n "number",\n "boolean",\n "null"\n ],\n "type": "string"\n }\n },\n "required": [\n "root_type",\n "node_count",\n "max_depth_observed",\n "properties"\n ],\n "type": "object"\n },\n {\n "type": "null"\n }\n ],\n "description": "Value for request."\n },\n "response": {\n "anyOf": [\n {\n "properties": {\n "max_depth_observed": {\n "description": "Maximum permitted depth observed for this operation.",\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "node_count": {\n "description": "Value for node count.",\n "maximum": 9007199254740991,\n "minimum": 1,\n "type": "integer"\n },\n "properties": {\n "description": "Value for properties.",\n "items": {\n "properties": {\n "observations": {\n "description": "Value for observations.",\n "maximum": 9007199254740991,\n "minimum": 1,\n "type": "integer"\n },\n "path": {\n "description": "Local filesystem path used by this operation.",\n "type": "string"\n },\n "types": {\n "description": "Value for types.",\n "items": {\n "enum": [\n "object",\n "array",\n "string",\n "number",\n "boolean",\n "null"\n ],\n "type": "string"\n },\n "minItems": 1,\n "type": "array"\n }\n },\n "required": [\n "path",\n "types",\n "observations"\n ],\n "type": "object"\n },\n "type": "array"\n },\n "root_type": {\n "description": "Value for root type.",\n "enum": [\n "object",\n "array",\n "string",\n "number",\n "boolean",\n "null"\n ],\n "type": "string"\n }\n },\n "required": [\n "root_type",\n "node_count",\n "max_depth_observed",\n "properties"\n ],\n "type": "object"\n },\n {\n "type": "null"\n }\n ],\n "description": "Value for response."\n },\n "status": {\n "description": "Current lifecycle or verification status.",\n "enum": [\n "not_approved",\n "included",\n "partial",\n "unavailable"\n ],\n "type": "string"\n }\n },\n "required": [\n "status",\n "request",\n "response"\n ],\n "type": "object"\n },\n "encoded_data_length": {\n "anyOf": [\n {\n "minimum": 0,\n "type": "number"\n },\n {\n "type": "null"\n }\n ],\n "description": "Value for encoded data length."\n },\n "initiator": {\n "description": "Value for initiator.",\n "properties": {\n "column": {\n "anyOf": [\n {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n {\n "type": "null"\n }\n ],\n "description": "Value for column."\n },\n "line": {\n "anyOf": [\n {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n {\n "type": "null"\n }\n ],\n "description": "Value for line."\n },\n "type": {\n "description": "Value for type.",\n "type": "string"\n },\n "url": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ],\n "description": "Value for url."\n }\n },\n "required": [\n "type",\n "url",\n "line",\n "column"\n ],\n "type": "object"\n },\n "method": {\n "description": "Value for method.",\n "type": "string"\n },\n "mime_type": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ],\n "description": "Value for mime type."\n },\n "origin": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ],\n "description": "Value for origin."\n },\n "request_id": {\n "description": "Value for request id.",\n "type": "string"\n },\n "resource_type": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ],\n "description": "Value for resource type."\n },\n "status": {\n "anyOf": [\n {\n "type": "number"\n },\n {\n "type": "null"\n }\n ],\n "description": "Current lifecycle or verification status."\n },\n "url": {\n "description": "Value for url.",\n "type": "string"\n }\n },\n "required": [\n "request_id",\n "url",\n "origin",\n "method",\n "resource_type",\n "status",\n "mime_type",\n "encoded_data_length",\n "initiator",\n "body_shapes"\n ],\n "type": "object"\n },\n "type": "array"\n },\n "websocket_events": {\n "description": "Value for websocket events.",\n "items": {\n "properties": {\n "direction": {\n "description": "Direction in which to traverse or compare relationships.",\n "enum": [\n "sent",\n "received"\n ],\n "type": "string"\n },\n "opcode": {\n "description": "Value for opcode.",\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "payload_bytes": {\n "description": "Byte count for payload.",\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "payload_shape": {\n "anyOf": [\n {\n "properties": {\n "format": {\n "description": "Declared input artifact format.",\n "enum": [\n "json",\n "text",\n "binary"\n ],\n "type": "string"\n },\n "json_shape": {\n "anyOf": [\n {\n "properties": {\n "max_depth_observed": {\n "description": "Maximum permitted depth observed for this operation.",\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "node_count": {\n "description": "Value for node count.",\n "maximum": 9007199254740991,\n "minimum": 1,\n "type": "integer"\n },\n "properties": {\n "description": "Value for properties.",\n "items": {\n "properties": {\n "observations": {\n "description": "Value for observations.",\n "maximum": 9007199254740991,\n "minimum": 1,\n "type": "integer"\n },\n "path": {\n "description": "Local filesystem path used by this operation.",\n "type": "string"\n },\n "types": {\n "description": "Value for types.",\n "items": {\n "enum": [\n "object",\n "array",\n "string",\n "number",\n "boolean",\n "null"\n ],\n "type": "string"\n },\n "minItems": 1,\n "type": "array"\n }\n },\n "required": [\n "path",\n "types",\n "observations"\n ],\n "type": "object"\n },\n "type": "array"\n },\n "root_type": {\n "description": "Value for root type.",\n "enum": [\n "object",\n "array",\n "string",\n "number",\n "boolean",\n "null"\n ],\n "type": "string"\n }\n },\n "required": [\n "root_type",\n "node_count",\n "max_depth_observed",\n "properties"\n ],\n "type": "object"\n },\n {\n "type": "null"\n }\n ],\n "description": "Value for json shape."\n }\n },\n "required": [\n "format",\n "json_shape"\n ],\n "type": "object"\n },\n {\n "type": "null"\n }\n ],\n "description": "Value for payload shape."\n },\n "request_id": {\n "description": "Value for request id.",\n "type": "string"\n }\n },\n "required": [\n "request_id",\n "direction",\n "opcode",\n "payload_bytes",\n "payload_shape"\n ],\n "type": "object"\n },\n "type": "array"\n }\n },\n "required": [\n "requests",\n "websocket_events",\n "coverage_started_at",\n "prior_activity_available"\n ],\n "type": "object"\n },\n "resources": {\n "description": "Value for resources.",\n "items": {\n "properties": {\n "content_size": {\n "anyOf": [\n {\n "minimum": 0,\n "type": "number"\n },\n {\n "type": "null"\n }\n ],\n "description": "Value for content size."\n },\n "mime_type": {\n "description": "Value for mime type.",\n "type": "string"\n },\n "origin": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ],\n "description": "Value for origin."\n },\n "resource_key": {\n "description": "Value for resource key.",\n "pattern": "^res_[a-f0-9]{64}$",\n "type": "string"\n },\n "type": {\n "description": "Value for type.",\n "type": "string"\n },\n "url": {\n "description": "Value for url.",\n "type": "string"\n }\n },\n "required": [\n "resource_key",\n "url",\n "origin",\n "type",\n "mime_type",\n "content_size"\n ],\n "type": "object"\n },\n "type": "array"\n },\n "scripts": {\n "description": "Value for scripts.",\n "properties": {\n "items": {\n "description": "Value for items.",\n "items": {\n "properties": {\n "cdp_hash": {\n "description": "Value for cdp hash.",\n "type": "string"\n },\n "frame_id": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ],\n "default": null,\n "description": "Value for frame id."\n },\n "is_module": {\n "description": "Whether is module.",\n "type": "boolean"\n },\n "language": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ],\n "description": "Value for language."\n },\n "length": {\n "description": "Value for length.",\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "origin": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ],\n "description": "Value for origin."\n },\n "resource_reconciliation": {\n "description": "Value for resource reconciliation.",\n "oneOf": [\n {\n "properties": {\n "resource_key": {\n "description": "Value for resource key.",\n "type": "string"\n },\n "status": {\n "const": "exact",\n "description": "Current lifecycle or verification status.",\n "type": "string"\n }\n },\n "required": [\n "status",\n "resource_key"\n ],\n "type": "object"\n },\n {\n "properties": {\n "candidate_resource_keys": {\n "description": "Value for candidate resource keys.",\n "items": {\n "type": "string"\n },\n "type": "array"\n },\n "status": {\n "const": "ambiguous",\n "description": "Current lifecycle or verification status.",\n "type": "string"\n }\n },\n "required": [\n "status",\n "candidate_resource_keys"\n ],\n "type": "object"\n },\n {\n "properties": {\n "reason": {\n "const": "no_exact_sanitized_url",\n "description": "Value for reason.",\n "type": "string"\n },\n "status": {\n "const": "unmatched",\n "description": "Current lifecycle or verification status.",\n "type": "string"\n }\n },\n "required": [\n "status",\n "reason"\n ],\n "type": "object"\n }\n ]\n },\n "script_key": {\n "description": "Value for script key.",\n "pattern": "^scr_[a-f0-9]{64}(?:_[0-9]+)?$",\n "type": "string"\n },\n "source": {\n "description": "Value for source.",\n "oneOf": [\n {\n "properties": {\n "included": {\n "const": false,\n "description": "Value for included.",\n "type": "boolean"\n },\n "reason": {\n "description": "Value for reason.",\n "type": "string"\n }\n },\n "required": [\n "included",\n "reason"\n ],\n "type": "object"\n },\n {\n "properties": {\n "artifact": {\n "description": "Value for artifact.",\n "properties": {\n "bytes": {\n "description": "Value for bytes.",\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "charset": {\n "const": "utf-8",\n "description": "Value for charset.",\n "type": "string"\n },\n "media_type": {\n "description": "Value for media type.",\n "minLength": 1,\n "type": "string"\n },\n "sha256": {\n "description": "Value for sha256.",\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n },\n "text": {\n "description": "Value for text.",\n "type": "string"\n }\n },\n "required": [\n "sha256",\n "bytes",\n "media_type",\n "charset",\n "text"\n ],\n "type": "object"\n },\n "included": {\n "const": true,\n "description": "Value for included.",\n "type": "boolean"\n }\n },\n "required": [\n "included",\n "artifact"\n ],\n "type": "object"\n }\n ]\n },\n "source_map_url": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ],\n "description": "Value for source map url."\n },\n "url": {\n "description": "Value for url.",\n "type": "string"\n }\n },\n "required": [\n "script_key",\n "url",\n "origin",\n "cdp_hash",\n "length",\n "is_module",\n "language",\n "source_map_url",\n "resource_reconciliation",\n "source"\n ],\n "type": "object"\n },\n "type": "array"\n },\n "total": {\n "description": "Value for total.",\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "total",\n "items"\n ],\n "type": "object"\n },\n "storage": {\n "description": "Value for storage.",\n "properties": {\n "cache_names": {\n "description": "Value for cache names.",\n "items": {\n "type": "string"\n },\n "type": "array"\n },\n "content_fingerprints": {\n "default": [],\n "description": "Value for content fingerprints.",\n "items": {\n "properties": {\n "complete": {\n "description": "Value for complete.",\n "type": "boolean"\n },\n "identity_sha256": {\n "description": "Exact SHA-256 digest of identity.",\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n },\n "scope": {\n "description": "Value for scope.",\n "enum": [\n "cookie",\n "local_storage",\n "session_storage",\n "indexed_db_schema",\n "indexed_db_record",\n "cache_entry"\n ],\n "type": "string"\n },\n "value_sha256": {\n "anyOf": [\n {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n },\n {\n "type": "null"\n }\n ],\n "description": "Exact SHA-256 digest of value."\n }\n },\n "required": [\n "scope",\n "identity_sha256",\n "value_sha256",\n "complete"\n ],\n "type": "object"\n },\n "type": "array"\n },\n "fingerprint_algorithm": {\n "const": "sha256",\n "default": "sha256",\n "description": "Value for fingerprint algorithm.",\n "type": "string"\n },\n "fingerprints_complete": {\n "default": false,\n "description": "Value for fingerprints complete.",\n "type": "boolean"\n },\n "indexed_db_names": {\n "description": "Value for indexed db names.",\n "items": {\n "type": "string"\n },\n "type": "array"\n },\n "local_storage_keys": {\n "description": "Value for local storage keys.",\n "items": {\n "type": "string"\n },\n "type": "array"\n },\n "origin": {\n "description": "Value for origin.",\n "type": "string"\n },\n "quota_bytes": {\n "anyOf": [\n {\n "minimum": 0,\n "type": "number"\n },\n {\n "type": "null"\n }\n ],\n "description": "Byte count for quota."\n },\n "session_storage_keys": {\n "description": "Value for session storage keys.",\n "items": {\n "type": "string"\n },\n "type": "array"\n },\n "usage_bytes": {\n "anyOf": [\n {\n "minimum": 0,\n "type": "number"\n },\n {\n "type": "null"\n }\n ],\n "description": "Byte count for usage."\n },\n "values_redacted": {\n "const": true,\n "description": "Value for values redacted.",\n "type": "boolean"\n }\n },\n "required": [\n "origin",\n "usage_bytes",\n "quota_bytes",\n "local_storage_keys",\n "session_storage_keys",\n "indexed_db_names",\n "cache_names",\n "values_redacted"\n ],\n "type": "object"\n },\n "target": {\n "description": "Value for target.",\n "properties": {\n "attached": {\n "description": "Value for attached.",\n "type": "boolean"\n },\n "origin": {\n "description": "Value for origin.",\n "type": "string"\n },\n "target_id": {\n "description": "Exact CDP target identifier selected from the endpoint\'s target listing.",\n "type": "string"\n },\n "title": {\n "description": "Value for title.",\n "type": "string"\n },\n "type": {\n "description": "Value for type.",\n "type": "string"\n },\n "url": {\n "description": "Value for url.",\n "type": "string"\n }\n },\n "required": [\n "target_id",\n "type",\n "title",\n "url",\n "origin",\n "attached"\n ],\n "type": "object"\n },\n "workers": {\n "description": "Value for workers.",\n "items": {\n "properties": {\n "attached": {\n "description": "Value for attached.",\n "type": "boolean"\n },\n "opener_target_id": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ],\n "default": null,\n "description": "Value for opener target id."\n },\n "origin": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ],\n "description": "Value for origin."\n },\n "parent_frame_id": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ],\n "default": null,\n "description": "Value for parent frame id."\n },\n "target_id": {\n "description": "Exact CDP target identifier selected from the endpoint\'s target listing.",\n "type": "string"\n },\n "type": {\n "description": "Value for type.",\n "type": "string"\n },\n "url": {\n "description": "Value for url.",\n "type": "string"\n }\n },\n "required": [\n "target_id",\n "type",\n "url",\n "origin",\n "attached"\n ],\n "type": "object"\n },\n "type": "array"\n }\n },\n "required": [\n "browser",\n "target",\n "capture_window",\n "completeness",\n "frames",\n "dom",\n "accessibility",\n "scripts",\n "resources",\n "network",\n "console",\n "workers",\n "metadata",\n "storage",\n "limitations"\n ],\n "type": "object"\n },\n "webmcp": {\n "anyOf": [\n {\n "properties": {\n "browser": {\n "description": "Value for browser.",\n "properties": {\n "js_version": {\n "description": "Value for js version.",\n "type": "string"\n },\n "product": {\n "description": "Value for product.",\n "type": "string"\n },\n "protocol_version": {\n "description": "Value for protocol version.",\n "type": "string"\n },\n "revision": {\n "description": "Value for revision.",\n "type": "string"\n },\n "user_agent": {\n "description": "Value for user agent.",\n "type": "string"\n }\n },\n "required": [\n "product",\n "protocol_version",\n "revision",\n "user_agent",\n "js_version"\n ],\n "type": "object"\n },\n "completeness": {\n "description": "Value for completeness.",\n "properties": {\n "attach_limited_sections": {\n "description": "Value for attach limited sections.",\n "items": {\n "enum": [\n "frames",\n "dom",\n "accessibility",\n "scripts",\n "script_sources",\n "resources",\n "network_requests",\n "network_initiators",\n "console_events",\n "console_text",\n "websocket_connections",\n "websocket_frames",\n "websocket_shapes",\n "json_body_shapes",\n "workers",\n "storage",\n "storage_keys",\n "metadata",\n "webmcp_tools",\n "screenshot",\n "source_maps",\n "timeline"\n ],\n "type": "string"\n },\n "type": "array"\n },\n "conditions": {\n "description": "Value for conditions.",\n "items": {\n "enum": [\n "complete_within_window",\n "policy_filtered",\n "attach_limited",\n "truncated"\n ],\n "type": "string"\n },\n "maxItems": 3,\n "minItems": 1,\n "type": "array"\n },\n "dropped_events": {\n "description": "Value for dropped events.",\n "properties": {\n "console_events": {\n "description": "Value for console events.",\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "network_requests": {\n "description": "Value for network requests.",\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "scripts": {\n "description": "Value for scripts.",\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "timeline_events": {\n "description": "Value for timeline events.",\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "total": {\n "description": "Value for total.",\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "webmcp_tools": {\n "description": "Value for webmcp tools.",\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "websocket_connections": {\n "description": "Value for websocket connections.",\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "websocket_frames": {\n "description": "Value for websocket frames.",\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "scripts",\n "network_requests",\n "console_events",\n "websocket_connections",\n "websocket_frames",\n "webmcp_tools",\n "timeline_events",\n "total"\n ],\n "type": "object"\n },\n "excluded": {\n "description": "Value for excluded.",\n "items": {\n "properties": {\n "count": {\n "anyOf": [\n {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n {\n "type": "null"\n }\n ],\n "description": "Value for count."\n },\n "reason": {\n "description": "Value for reason.",\n "enum": [\n "disallowed_origin",\n "unsupported_url",\n "unattributed_origin",\n "not_approved",\n "out_of_target_scope",\n "provider_unavailable",\n "invalid_protocol_value"\n ],\n "type": "string"\n },\n "section": {\n "description": "Value for section.",\n "enum": [\n "frames",\n "dom",\n "accessibility",\n "scripts",\n "script_sources",\n "resources",\n "network_requests",\n "network_initiators",\n "console_events",\n "console_text",\n "websocket_connections",\n "websocket_frames",\n "websocket_shapes",\n "json_body_shapes",\n "workers",\n "storage",\n "storage_keys",\n "metadata",\n "webmcp_tools",\n "screenshot",\n "source_maps",\n "timeline"\n ],\n "type": "string"\n }\n },\n "required": [\n "section",\n "reason",\n "count"\n ],\n "type": "object"\n },\n "type": "array"\n },\n "policy_filtered_sections": {\n "description": "Value for policy filtered sections.",\n "items": {\n "enum": [\n "frames",\n "dom",\n "accessibility",\n "scripts",\n "script_sources",\n "resources",\n "network_requests",\n "network_initiators",\n "console_events",\n "console_text",\n "websocket_connections",\n "websocket_frames",\n "websocket_shapes",\n "json_body_shapes",\n "workers",\n "storage",\n "storage_keys",\n "metadata",\n "webmcp_tools",\n "screenshot",\n "source_maps",\n "timeline"\n ],\n "type": "string"\n },\n "type": "array"\n },\n "status": {\n "description": "Current lifecycle or verification status.",\n "enum": [\n "complete_within_window",\n "policy_filtered",\n "attach_limited",\n "truncated"\n ],\n "type": "string"\n },\n "truncated_sections": {\n "description": "Value for truncated sections.",\n "items": {\n "enum": [\n "frames",\n "dom",\n "accessibility",\n "scripts",\n "script_sources",\n "resources",\n "network_requests",\n "network_initiators",\n "console_events",\n "console_text",\n "websocket_connections",\n "websocket_frames",\n "websocket_shapes",\n "json_body_shapes",\n "workers",\n "storage",\n "storage_keys",\n "metadata",\n "webmcp_tools",\n "screenshot",\n "source_maps",\n "timeline"\n ],\n "type": "string"\n },\n "type": "array"\n },\n "unavailable_sections": {\n "description": "Value for unavailable sections.",\n "items": {\n "enum": [\n "frames",\n "dom",\n "accessibility",\n "scripts",\n "script_sources",\n "resources",\n "network_requests",\n "network_initiators",\n "console_events",\n "console_text",\n "websocket_connections",\n "websocket_frames",\n "websocket_shapes",\n "json_body_shapes",\n "workers",\n "storage",\n "storage_keys",\n "metadata",\n "webmcp_tools",\n "screenshot",\n "source_maps",\n "timeline"\n ],\n "type": "string"\n },\n "type": "array"\n }\n },\n "required": [\n "status",\n "conditions",\n "policy_filtered_sections",\n "attach_limited_sections",\n "truncated_sections",\n "unavailable_sections",\n "excluded",\n "dropped_events"\n ],\n "type": "object"\n },\n "limitations": {\n "description": "Value for limitations.",\n "items": {\n "type": "string"\n },\n "type": "array"\n },\n "status": {\n "description": "Current lifecycle or verification status.",\n "enum": [\n "available",\n "unavailable"\n ],\n "type": "string"\n },\n "target": {\n "description": "Value for target.",\n "properties": {\n "origin": {\n "description": "Value for origin.",\n "type": "string"\n },\n "target_id": {\n "description": "Exact CDP target identifier selected from the endpoint\'s target listing.",\n "type": "string"\n },\n "url": {\n "description": "Value for url.",\n "type": "string"\n }\n },\n "required": [\n "target_id",\n "url",\n "origin"\n ],\n "type": "object"\n },\n "tools": {\n "description": "Value for tools.",\n "properties": {\n "items": {\n "description": "Value for items.",\n "items": {\n "properties": {\n "annotations": {\n "description": "Value for annotations.",\n "properties": {\n "autosubmit": {\n "anyOf": [\n {\n "type": "boolean"\n },\n {\n "type": "null"\n }\n ],\n "description": "Value for autosubmit."\n },\n "read_only": {\n "anyOf": [\n {\n "type": "boolean"\n },\n {\n "type": "null"\n }\n ],\n "description": "Value for read only."\n },\n "untrusted_content": {\n "anyOf": [\n {\n "type": "boolean"\n },\n {\n "type": "null"\n }\n ],\n "description": "Value for untrusted content."\n }\n },\n "required": [\n "read_only",\n "untrusted_content",\n "autosubmit"\n ],\n "type": "object"\n },\n "declaration_kind": {\n "description": "Value for declaration kind.",\n "enum": [\n "declarative",\n "imperative"\n ],\n "type": "string"\n },\n "description": {\n "description": "Value for description.",\n "type": "string"\n },\n "frame_id": {\n "description": "Value for frame id.",\n "type": "string"\n },\n "frame_url": {\n "description": "Value for frame url.",\n "type": "string"\n },\n "input_schema_shape": {\n "anyOf": [\n {\n "properties": {\n "max_depth_observed": {\n "description": "Maximum permitted depth observed for this operation.",\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "node_count": {\n "description": "Value for node count.",\n "maximum": 9007199254740991,\n "minimum": 1,\n "type": "integer"\n },\n "properties": {\n "description": "Value for properties.",\n "items": {\n "properties": {\n "observations": {\n "description": "Value for observations.",\n "maximum": 9007199254740991,\n "minimum": 1,\n "type": "integer"\n },\n "path": {\n "description": "Local filesystem path used by this operation.",\n "type": "string"\n },\n "types": {\n "description": "Value for types.",\n "items": {\n "enum": [\n "object",\n "array",\n "string",\n "number",\n "boolean",\n "null"\n ],\n "type": "string"\n },\n "minItems": 1,\n "type": "array"\n }\n },\n "required": [\n "path",\n "types",\n "observations"\n ],\n "type": "object"\n },\n "type": "array"\n },\n "root_type": {\n "description": "Value for root type.",\n "enum": [\n "object",\n "array",\n "string",\n "number",\n "boolean",\n "null"\n ],\n "type": "string"\n }\n },\n "required": [\n "root_type",\n "node_count",\n "max_depth_observed",\n "properties"\n ],\n "type": "object"\n },\n {\n "type": "null"\n }\n ],\n "description": "Value for input schema shape."\n },\n "name": {\n "description": "Exact name used by this operation.",\n "type": "string"\n },\n "owner_origin": {\n "description": "Value for owner origin.",\n "type": "string"\n },\n "registration_source": {\n "anyOf": [\n {\n "properties": {\n "column": {\n "anyOf": [\n {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n {\n "type": "null"\n }\n ],\n "description": "Value for column."\n },\n "line": {\n "anyOf": [\n {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n {\n "type": "null"\n }\n ],\n "description": "Value for line."\n },\n "url": {\n "description": "Value for url.",\n "type": "string"\n }\n },\n "required": [\n "url",\n "line",\n "column"\n ],\n "type": "object"\n },\n {\n "type": "null"\n }\n ],\n "description": "Value for registration source."\n },\n "tool_key": {\n "description": "Value for tool key.",\n "pattern": "^webmcp_[a-f0-9]{64}$",\n "type": "string"\n },\n "trust": {\n "const": "page-declared-untrusted",\n "description": "Value for trust.",\n "type": "string"\n }\n },\n "required": [\n "tool_key",\n "name",\n "description",\n "frame_id",\n "frame_url",\n "owner_origin",\n "declaration_kind",\n "input_schema_shape",\n "annotations",\n "registration_source",\n "trust"\n ],\n "type": "object"\n },\n "type": "array"\n },\n "total": {\n "description": "Value for total.",\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "total",\n "items"\n ],\n "type": "object"\n }\n },\n "required": [\n "browser",\n "target",\n "status",\n "tools",\n "completeness",\n "limitations"\n ],\n "type": "object"\n },\n {\n "type": "null"\n }\n ],\n "default": null,\n "description": "Value for webmcp."\n }\n },\n "required": [\n "inspection"\n ],\n "type": "object"\n },\n "before_scenario": {\n "additionalProperties": false,\n "description": "Earlier browser scenario capture.",\n "properties": {\n "browser": {\n "additionalProperties": false,\n "description": "Value for browser.",\n "properties": {\n "cleanup": {\n "description": "Value for cleanup.",\n "enum": [\n "terminated-owned-process",\n "disconnected-external"\n ],\n "type": "string"\n },\n "mode": {\n "description": "Operation mode that selects the requested behavior.",\n "enum": [\n "launch",\n "connect"\n ],\n "type": "string"\n },\n "process_ownership": {\n "description": "Value for process ownership.",\n "enum": [\n "provider-owned",\n "external"\n ],\n "type": "string"\n },\n "product": {\n "description": "Value for product.",\n "minLength": 1,\n "type": "string"\n },\n "version": {\n "description": "Value for version.",\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "mode",\n "process_ownership",\n "cleanup",\n "product",\n "version"\n ],\n "type": "object"\n },\n "completeness": {\n "description": "Value for completeness.",\n "oneOf": [\n {\n "additionalProperties": false,\n "properties": {\n "equality_eligible": {\n "const": true,\n "description": "Value for equality eligible.",\n "type": "boolean"\n },\n "missing_sections": {\n "description": "Value for missing sections.",\n "items": {\n "not": {}\n },\n "maxItems": 0,\n "minItems": 0,\n "type": "array"\n },\n "status": {\n "const": "complete",\n "description": "Current lifecycle or verification status.",\n "type": "string"\n },\n "truncated_sections": {\n "description": "Value for truncated sections.",\n "items": {\n "not": {}\n },\n "maxItems": 0,\n "minItems": 0,\n "type": "array"\n }\n },\n "required": [\n "status",\n "equality_eligible",\n "missing_sections",\n "truncated_sections"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "equality_eligible": {\n "const": false,\n "description": "Value for equality eligible.",\n "type": "boolean"\n },\n "missing_sections": {\n "description": "Value for missing sections.",\n "items": {\n "enum": [\n "action",\n "screenshot",\n "dom",\n "accessibility",\n "url",\n "history",\n "storage",\n "events",\n "frames",\n "workers",\n "popups",\n "websockets"\n ],\n "type": "string"\n },\n "minItems": 1,\n "type": "array"\n },\n "status": {\n "const": "incomplete",\n "description": "Current lifecycle or verification status.",\n "type": "string"\n },\n "truncated_sections": {\n "description": "Value for truncated sections.",\n "items": {\n "not": {}\n },\n "maxItems": 0,\n "minItems": 0,\n "type": "array"\n }\n },\n "required": [\n "status",\n "equality_eligible",\n "missing_sections",\n "truncated_sections"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "equality_eligible": {\n "const": false,\n "description": "Value for equality eligible.",\n "type": "boolean"\n },\n "missing_sections": {\n "description": "Value for missing sections.",\n "items": {\n "enum": [\n "action",\n "screenshot",\n "dom",\n "accessibility",\n "url",\n "history",\n "storage",\n "events",\n "frames",\n "workers",\n "popups",\n "websockets"\n ],\n "type": "string"\n },\n "type": "array"\n },\n "status": {\n "const": "truncated",\n "description": "Current lifecycle or verification status.",\n "type": "string"\n },\n "truncated_sections": {\n "description": "Value for truncated sections.",\n "items": {\n "enum": [\n "action",\n "screenshot",\n "dom",\n "accessibility",\n "url",\n "history",\n "storage",\n "events",\n "frames",\n "workers",\n "popups",\n "websockets"\n ],\n "type": "string"\n },\n "minItems": 1,\n "type": "array"\n }\n },\n "required": [\n "status",\n "equality_eligible",\n "missing_sections",\n "truncated_sections"\n ],\n "type": "object"\n }\n ]\n },\n "duration_ms": {\n "description": "Value for duration ms.",\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "events": {\n "additionalProperties": false,\n "description": "Value for events.",\n "properties": {\n "dropped": {\n "description": "Value for dropped.",\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "items": {\n "description": "Value for items.",\n "items": {\n "anyOf": [\n {\n "additionalProperties": false,\n "properties": {\n "kind": {\n "const": "console",\n "description": "Value for kind.",\n "type": "string"\n },\n "level": {\n "description": "Value for level.",\n "minLength": 1,\n "type": "string"\n },\n "sequence": {\n "description": "Value for sequence.",\n "maximum": 9007199254740991,\n "minimum": 1,\n "type": "integer"\n },\n "step_index": {\n "description": "Value for step index.",\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "text": {\n "description": "Value for text.",\n "type": "string"\n },\n "url": {\n "anyOf": [\n {\n "properties": {\n "origin": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ],\n "description": "Value for origin."\n },\n "query_parameter_names": {\n "description": "Value for query parameter names.",\n "items": {\n "type": "string"\n },\n "type": "array"\n },\n "redacted": {\n "description": "Value for redacted.",\n "type": "boolean"\n },\n "url": {\n "description": "Value for url.",\n "type": "string"\n }\n },\n "required": [\n "url",\n "origin",\n "query_parameter_names",\n "redacted"\n ],\n "type": "object"\n },\n {\n "type": "null"\n }\n ],\n "description": "Value for url."\n }\n },\n "required": [\n "sequence",\n "step_index",\n "kind",\n "level",\n "text",\n "url"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "kind": {\n "const": "page-error",\n "description": "Value for kind.",\n "type": "string"\n },\n "message": {\n "description": "Value for message.",\n "type": "string"\n },\n "sequence": {\n "description": "Value for sequence.",\n "maximum": 9007199254740991,\n "minimum": 1,\n "type": "integer"\n },\n "stack": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ],\n "description": "Value for stack."\n },\n "step_index": {\n "description": "Value for step index.",\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "sequence",\n "step_index",\n "kind",\n "message",\n "stack"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "failure": {\n "description": "Value for failure.",\n "type": "null"\n },\n "header_names": {\n "description": "Value for header names.",\n "items": {\n "type": "string"\n },\n "type": "array"\n },\n "kind": {\n "const": "request",\n "description": "Value for kind.",\n "type": "string"\n },\n "method": {\n "description": "Value for method.",\n "minLength": 1,\n "type": "string"\n },\n "redirected_from_transaction_id": {\n "anyOf": [\n {\n "minLength": 1,\n "type": "string"\n },\n {\n "type": "null"\n }\n ],\n "description": "Value for redirected from transaction id."\n },\n "resource_type": {\n "description": "Value for resource type.",\n "minLength": 1,\n "type": "string"\n },\n "sequence": {\n "description": "Value for sequence.",\n "maximum": 9007199254740991,\n "minimum": 1,\n "type": "integer"\n },\n "status": {\n "description": "Current lifecycle or verification status.",\n "type": "null"\n },\n "step_index": {\n "description": "Value for step index.",\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "transaction_id": {\n "description": "Value for transaction id.",\n "minLength": 1,\n "type": "string"\n },\n "url": {\n "description": "Value for url.",\n "properties": {\n "origin": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ],\n "description": "Value for origin."\n },\n "query_parameter_names": {\n "description": "Value for query parameter names.",\n "items": {\n "type": "string"\n },\n "type": "array"\n },\n "redacted": {\n "description": "Value for redacted.",\n "type": "boolean"\n },\n "url": {\n "description": "Value for url.",\n "type": "string"\n }\n },\n "required": [\n "url",\n "origin",\n "query_parameter_names",\n "redacted"\n ],\n "type": "object"\n }\n },\n "required": [\n "sequence",\n "step_index",\n "method",\n "url",\n "resource_type",\n "header_names",\n "kind",\n "status",\n "failure"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "failure": {\n "description": "Value for failure.",\n "type": "null"\n },\n "header_names": {\n "description": "Value for header names.",\n "items": {\n "type": "string"\n },\n "type": "array"\n },\n "kind": {\n "const": "response",\n "description": "Value for kind.",\n "type": "string"\n },\n "method": {\n "description": "Value for method.",\n "minLength": 1,\n "type": "string"\n },\n "redirected_from_transaction_id": {\n "anyOf": [\n {\n "minLength": 1,\n "type": "string"\n },\n {\n "type": "null"\n }\n ],\n "description": "Value for redirected from transaction id."\n },\n "resource_type": {\n "description": "Value for resource type.",\n "minLength": 1,\n "type": "string"\n },\n "sequence": {\n "description": "Value for sequence.",\n "maximum": 9007199254740991,\n "minimum": 1,\n "type": "integer"\n },\n "status": {\n "description": "Current lifecycle or verification status.",\n "maximum": 599,\n "minimum": 100,\n "type": "integer"\n },\n "step_index": {\n "description": "Value for step index.",\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "transaction_id": {\n "description": "Value for transaction id.",\n "minLength": 1,\n "type": "string"\n },\n "url": {\n "description": "Value for url.",\n "properties": {\n "origin": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ],\n "description": "Value for origin."\n },\n "query_parameter_names": {\n "description": "Value for query parameter names.",\n "items": {\n "type": "string"\n },\n "type": "array"\n },\n "redacted": {\n "description": "Value for redacted.",\n "type": "boolean"\n },\n "url": {\n "description": "Value for url.",\n "type": "string"\n }\n },\n "required": [\n "url",\n "origin",\n "query_parameter_names",\n "redacted"\n ],\n "type": "object"\n }\n },\n "required": [\n "sequence",\n "step_index",\n "method",\n "url",\n "resource_type",\n "header_names",\n "kind",\n "status",\n "failure"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "failure": {\n "description": "Value for failure.",\n "minLength": 1,\n "type": "string"\n },\n "header_names": {\n "description": "Value for header names.",\n "items": {\n "type": "string"\n },\n "type": "array"\n },\n "kind": {\n "const": "request-failed",\n "description": "Value for kind.",\n "type": "string"\n },\n "method": {\n "description": "Value for method.",\n "minLength": 1,\n "type": "string"\n },\n "redirected_from_transaction_id": {\n "anyOf": [\n {\n "minLength": 1,\n "type": "string"\n },\n {\n "type": "null"\n }\n ],\n "description": "Value for redirected from transaction id."\n },\n "resource_type": {\n "description": "Value for resource type.",\n "minLength": 1,\n "type": "string"\n },\n "sequence": {\n "description": "Value for sequence.",\n "maximum": 9007199254740991,\n "minimum": 1,\n "type": "integer"\n },\n "status": {\n "description": "Current lifecycle or verification status.",\n "type": "null"\n },\n "step_index": {\n "description": "Value for step index.",\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "transaction_id": {\n "description": "Value for transaction id.",\n "minLength": 1,\n "type": "string"\n },\n "url": {\n "description": "Value for url.",\n "properties": {\n "origin": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ],\n "description": "Value for origin."\n },\n "query_parameter_names": {\n "description": "Value for query parameter names.",\n "items": {\n "type": "string"\n },\n "type": "array"\n },\n "redacted": {\n "description": "Value for redacted.",\n "type": "boolean"\n },\n "url": {\n "description": "Value for url.",\n "type": "string"\n }\n },\n "required": [\n "url",\n "origin",\n "query_parameter_names",\n "redacted"\n ],\n "type": "object"\n }\n },\n "required": [\n "sequence",\n "step_index",\n "method",\n "url",\n "resource_type",\n "header_names",\n "kind",\n "status",\n "failure"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "failure": {\n "description": "Value for failure.",\n "type": "null"\n },\n "header_names": {\n "description": "Value for header names.",\n "items": {\n "type": "string"\n },\n "type": "array"\n },\n "kind": {\n "const": "request-finished",\n "description": "Value for kind.",\n "type": "string"\n },\n "method": {\n "description": "Value for method.",\n "minLength": 1,\n "type": "string"\n },\n "redirected_from_transaction_id": {\n "anyOf": [\n {\n "minLength": 1,\n "type": "string"\n },\n {\n "type": "null"\n }\n ],\n "description": "Value for redirected from transaction id."\n },\n "resource_type": {\n "description": "Value for resource type.",\n "minLength": 1,\n "type": "string"\n },\n "sequence": {\n "description": "Value for sequence.",\n "maximum": 9007199254740991,\n "minimum": 1,\n "type": "integer"\n },\n "status": {\n "description": "Current lifecycle or verification status.",\n "type": "null"\n },\n "step_index": {\n "description": "Value for step index.",\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "transaction_id": {\n "description": "Value for transaction id.",\n "minLength": 1,\n "type": "string"\n },\n "url": {\n "description": "Value for url.",\n "properties": {\n "origin": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ],\n "description": "Value for origin."\n },\n "query_parameter_names": {\n "description": "Value for query parameter names.",\n "items": {\n "type": "string"\n },\n "type": "array"\n },\n "redacted": {\n "description": "Value for redacted.",\n "type": "boolean"\n },\n "url": {\n "description": "Value for url.",\n "type": "string"\n }\n },\n "required": [\n "url",\n "origin",\n "query_parameter_names",\n "redacted"\n ],\n "type": "object"\n }\n },\n "required": [\n "sequence",\n "step_index",\n "method",\n "url",\n "resource_type",\n "header_names",\n "kind",\n "status",\n "failure"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "failure": {\n "description": "Value for failure.",\n "type": "null"\n },\n "header_names": {\n "description": "Value for header names.",\n "items": {\n "type": "string"\n },\n "type": "array"\n },\n "kind": {\n "const": "request-unfinished",\n "description": "Value for kind.",\n "type": "string"\n },\n "method": {\n "description": "Value for method.",\n "minLength": 1,\n "type": "string"\n },\n "reason": {\n "description": "Value for reason.",\n "enum": [\n "capture-ended",\n "cancelled"\n ],\n "type": "string"\n },\n "redirected_from_transaction_id": {\n "anyOf": [\n {\n "minLength": 1,\n "type": "string"\n },\n {\n "type": "null"\n }\n ],\n "description": "Value for redirected from transaction id."\n },\n "resource_type": {\n "description": "Value for resource type.",\n "minLength": 1,\n "type": "string"\n },\n "sequence": {\n "description": "Value for sequence.",\n "maximum": 9007199254740991,\n "minimum": 1,\n "type": "integer"\n },\n "status": {\n "description": "Current lifecycle or verification status.",\n "type": "null"\n },\n "step_index": {\n "description": "Value for step index.",\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "transaction_id": {\n "description": "Value for transaction id.",\n "minLength": 1,\n "type": "string"\n },\n "url": {\n "description": "Value for url.",\n "properties": {\n "origin": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ],\n "description": "Value for origin."\n },\n "query_parameter_names": {\n "description": "Value for query parameter names.",\n "items": {\n "type": "string"\n },\n "type": "array"\n },\n "redacted": {\n "description": "Value for redacted.",\n "type": "boolean"\n },\n "url": {\n "description": "Value for url.",\n "type": "string"\n }\n },\n "required": [\n "url",\n "origin",\n "query_parameter_names",\n "redacted"\n ],\n "type": "object"\n }\n },\n "required": [\n "sequence",\n "step_index",\n "method",\n "url",\n "resource_type",\n "header_names",\n "kind",\n "status",\n "failure",\n "reason"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "body": {\n "anyOf": [\n {\n "additionalProperties": false,\n "properties": {\n "state": {\n "const": "not_requested",\n "description": "Value for state.",\n "type": "string"\n }\n },\n "required": [\n "state"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "state": {\n "const": "not_exposed",\n "description": "Value for state.",\n "type": "string"\n }\n },\n "required": [\n "state"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "message": {\n "description": "Value for message.",\n "minLength": 1,\n "type": "string"\n },\n "reason": {\n "description": "Value for reason.",\n "enum": [\n "request-failed",\n "response-unfinished",\n "body-read-failed",\n "body-read-timeout",\n "cancelled",\n "capture-ended"\n ],\n "type": "string"\n },\n "state": {\n "const": "unavailable",\n "description": "Value for state.",\n "type": "string"\n }\n },\n "required": [\n "state",\n "reason",\n "message"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "bytes": {\n "description": "Value for bytes.",\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "content": {\n "description": "Value for content.",\n "type": "string"\n },\n "encoding": {\n "const": "base64",\n "description": "Value for encoding.",\n "type": "string"\n },\n "media_type": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ],\n "description": "Value for media type."\n },\n "redacted": {\n "description": "Value for redacted.",\n "type": "boolean"\n },\n "representation": {\n "description": "Value for representation.",\n "enum": [\n "browser-exposed-request-bytes",\n "browser-decoded-response-bytes"\n ],\n "type": "string"\n },\n "sha256": {\n "description": "Value for sha256.",\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n },\n "state": {\n "const": "captured",\n "description": "Value for state.",\n "type": "string"\n }\n },\n "required": [\n "state",\n "representation",\n "encoding",\n "content",\n "bytes",\n "sha256",\n "media_type",\n "redacted"\n ],\n "type": "object"\n }\n ],\n "description": "Value for body."\n },\n "headers": {\n "anyOf": [\n {\n "additionalProperties": false,\n "properties": {\n "state": {\n "const": "not_requested",\n "description": "Value for state.",\n "type": "string"\n }\n },\n "required": [\n "state"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "message": {\n "description": "Value for message.",\n "minLength": 1,\n "type": "string"\n },\n "state": {\n "const": "unavailable",\n "description": "Value for state.",\n "type": "string"\n }\n },\n "required": [\n "state",\n "message"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "items": {\n "description": "Value for items.",\n "items": {\n "additionalProperties": false,\n "properties": {\n "name": {\n "description": "Exact name used by this operation.",\n "minLength": 1,\n "type": "string"\n },\n "redacted": {\n "description": "Value for redacted.",\n "type": "boolean"\n },\n "value": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ],\n "description": "Value for value."\n }\n },\n "required": [\n "name",\n "value",\n "redacted"\n ],\n "type": "object"\n },\n "type": "array"\n },\n "state": {\n "const": "captured",\n "description": "Value for state.",\n "type": "string"\n }\n },\n "required": [\n "state",\n "items"\n ],\n "type": "object"\n }\n ],\n "description": "Value for headers."\n },\n "kind": {\n "const": "network-content",\n "description": "Value for kind.",\n "type": "string"\n },\n "phase": {\n "description": "Current plan or execution phase of the operation.",\n "enum": [\n "request",\n "response"\n ],\n "type": "string"\n },\n "sequence": {\n "description": "Value for sequence.",\n "maximum": 9007199254740991,\n "minimum": 1,\n "type": "integer"\n },\n "source_event_sequence": {\n "description": "Value for source event sequence.",\n "maximum": 9007199254740991,\n "minimum": 1,\n "type": "integer"\n },\n "step_index": {\n "description": "Value for step index.",\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "transaction_id": {\n "description": "Value for transaction id.",\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "sequence",\n "step_index",\n "kind",\n "transaction_id",\n "source_event_sequence",\n "phase",\n "headers",\n "body"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "kind": {\n "description": "Value for kind.",\n "enum": [\n "websocket-opened",\n "websocket-closed"\n ],\n "type": "string"\n },\n "sequence": {\n "description": "Value for sequence.",\n "maximum": 9007199254740991,\n "minimum": 1,\n "type": "integer"\n },\n "step_index": {\n "description": "Value for step index.",\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "url": {\n "description": "Value for url.",\n "properties": {\n "origin": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ],\n "description": "Value for origin."\n },\n "query_parameter_names": {\n "description": "Value for query parameter names.",\n "items": {\n "type": "string"\n },\n "type": "array"\n },\n "redacted": {\n "description": "Value for redacted.",\n "type": "boolean"\n },\n "url": {\n "description": "Value for url.",\n "type": "string"\n }\n },\n "required": [\n "url",\n "origin",\n "query_parameter_names",\n "redacted"\n ],\n "type": "object"\n }\n },\n "required": [\n "sequence",\n "step_index",\n "kind",\n "url"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "kind": {\n "description": "Value for kind.",\n "enum": [\n "websocket-frame-sent",\n "websocket-frame-received"\n ],\n "type": "string"\n },\n "payload_bytes": {\n "description": "Byte count for payload.",\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "payload_text": {\n "description": "Value for payload text.",\n "type": "string"\n },\n "payload_type": {\n "const": "text",\n "description": "Value for payload type.",\n "type": "string"\n },\n "sequence": {\n "description": "Value for sequence.",\n "maximum": 9007199254740991,\n "minimum": 1,\n "type": "integer"\n },\n "step_index": {\n "description": "Value for step index.",\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "truncated": {\n "description": "Value for truncated.",\n "type": "boolean"\n },\n "url": {\n "description": "Value for url.",\n "properties": {\n "origin": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ],\n "description": "Value for origin."\n },\n "query_parameter_names": {\n "description": "Value for query parameter names.",\n "items": {\n "type": "string"\n },\n "type": "array"\n },\n "redacted": {\n "description": "Value for redacted.",\n "type": "boolean"\n },\n "url": {\n "description": "Value for url.",\n "type": "string"\n }\n },\n "required": [\n "url",\n "origin",\n "query_parameter_names",\n "redacted"\n ],\n "type": "object"\n }\n },\n "required": [\n "sequence",\n "step_index",\n "kind",\n "url",\n "payload_bytes",\n "truncated",\n "payload_type",\n "payload_text"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "kind": {\n "description": "Value for kind.",\n "enum": [\n "websocket-frame-sent",\n "websocket-frame-received"\n ],\n "type": "string"\n },\n "payload_bytes": {\n "description": "Byte count for payload.",\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "payload_text": {\n "description": "Value for payload text.",\n "type": "null"\n },\n "payload_type": {\n "const": "binary",\n "description": "Value for payload type.",\n "type": "string"\n },\n "sequence": {\n "description": "Value for sequence.",\n "maximum": 9007199254740991,\n "minimum": 1,\n "type": "integer"\n },\n "step_index": {\n "description": "Value for step index.",\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "truncated": {\n "description": "Value for truncated.",\n "type": "boolean"\n },\n "url": {\n "description": "Value for url.",\n "properties": {\n "origin": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ],\n "description": "Value for origin."\n },\n "query_parameter_names": {\n "description": "Value for query parameter names.",\n "items": {\n "type": "string"\n },\n "type": "array"\n },\n "redacted": {\n "description": "Value for redacted.",\n "type": "boolean"\n },\n "url": {\n "description": "Value for url.",\n "type": "string"\n }\n },\n "required": [\n "url",\n "origin",\n "query_parameter_names",\n "redacted"\n ],\n "type": "object"\n }\n },\n "required": [\n "sequence",\n "step_index",\n "kind",\n "url",\n "payload_bytes",\n "truncated",\n "payload_type",\n "payload_text"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "kind": {\n "description": "Value for kind.",\n "enum": [\n "frame-attached",\n "frame-detached",\n "frame-navigated",\n "worker-created",\n "worker-closed",\n "popup-opened",\n "popup-closed"\n ],\n "type": "string"\n },\n "name": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ],\n "description": "Exact name used by this operation."\n },\n "sequence": {\n "description": "Value for sequence.",\n "maximum": 9007199254740991,\n "minimum": 1,\n "type": "integer"\n },\n "step_index": {\n "description": "Value for step index.",\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "url": {\n "anyOf": [\n {\n "properties": {\n "origin": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ],\n "description": "Value for origin."\n },\n "query_parameter_names": {\n "description": "Value for query parameter names.",\n "items": {\n "type": "string"\n },\n "type": "array"\n },\n "redacted": {\n "description": "Value for redacted.",\n "type": "boolean"\n },\n "url": {\n "description": "Value for url.",\n "type": "string"\n }\n },\n "required": [\n "url",\n "origin",\n "query_parameter_names",\n "redacted"\n ],\n "type": "object"\n },\n {\n "type": "null"\n }\n ],\n "description": "Value for url."\n }\n },\n "required": [\n "sequence",\n "step_index",\n "kind",\n "url",\n "name"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "kind": {\n "const": "download-cancelled",\n "description": "Value for kind.",\n "type": "string"\n },\n "sequence": {\n "description": "Value for sequence.",\n "maximum": 9007199254740991,\n "minimum": 1,\n "type": "integer"\n },\n "step_index": {\n "description": "Value for step index.",\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "suggested_filename": {\n "description": "Value for suggested filename.",\n "type": "string"\n },\n "url": {\n "description": "Value for url.",\n "properties": {\n "origin": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ],\n "description": "Value for origin."\n },\n "query_parameter_names": {\n "description": "Value for query parameter names.",\n "items": {\n "type": "string"\n },\n "type": "array"\n },\n "redacted": {\n "description": "Value for redacted.",\n "type": "boolean"\n },\n "url": {\n "description": "Value for url.",\n "type": "string"\n }\n },\n "required": [\n "url",\n "origin",\n "query_parameter_names",\n "redacted"\n ],\n "type": "object"\n }\n },\n "required": [\n "sequence",\n "step_index",\n "kind",\n "suggested_filename",\n "url"\n ],\n "type": "object"\n }\n ]\n },\n "type": "array"\n },\n "retained": {\n "description": "Value for retained.",\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "retained",\n "dropped",\n "items"\n ],\n "type": "object"\n },\n "limitations": {\n "description": "Value for limitations.",\n "items": {\n "minLength": 1,\n "type": "string"\n },\n "type": "array"\n },\n "scenario": {\n "additionalProperties": false,\n "description": "Value for scenario.",\n "properties": {\n "action_count": {\n "description": "Value for action count.",\n "maximum": 9007199254740991,\n "minimum": 1,\n "type": "integer"\n },\n "network_content": {\n "additionalProperties": false,\n "description": "Value for network content.",\n "properties": {\n "header_values": {\n "default": false,\n "description": "Value for header values.",\n "type": "boolean"\n },\n "request_body": {\n "default": false,\n "description": "Value for request body.",\n "type": "boolean"\n },\n "response_body": {\n "default": false,\n "description": "Value for response body.",\n "type": "boolean"\n }\n },\n "type": "object"\n },\n "secret_references": {\n "description": "Value for secret references.",\n "items": {\n "minLength": 1,\n "type": "string"\n },\n "type": "array"\n },\n "start_origin": {\n "description": "Value for start origin.",\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "start_origin",\n "action_count",\n "secret_references"\n ],\n "type": "object"\n },\n "steps": {\n "description": "Value for steps.",\n "items": {\n "anyOf": [\n {\n "additionalProperties": false,\n "properties": {\n "action": {\n "description": "Value for action.",\n "minLength": 1,\n "type": "string"\n },\n "after_url": {\n "description": "Value for after url.",\n "properties": {\n "origin": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ],\n "description": "Value for origin."\n },\n "query_parameter_names": {\n "description": "Value for query parameter names.",\n "items": {\n "type": "string"\n },\n "type": "array"\n },\n "redacted": {\n "description": "Value for redacted.",\n "type": "boolean"\n },\n "url": {\n "description": "Value for url.",\n "type": "string"\n }\n },\n "required": [\n "url",\n "origin",\n "query_parameter_names",\n "redacted"\n ],\n "type": "object"\n },\n "artifacts": {\n "additionalProperties": false,\n "description": "Value for artifacts.",\n "properties": {\n "accessibility": {\n "description": "Value for accessibility.",\n "oneOf": [\n {\n "additionalProperties": false,\n "properties": {\n "state": {\n "const": "captured",\n "description": "Value for state.",\n "type": "string"\n },\n "value": {\n "additionalProperties": false,\n "description": "Value for value.",\n "properties": {\n "bytes": {\n "description": "Value for bytes.",\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "sha256": {\n "description": "Value for sha256.",\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n },\n "text": {\n "description": "Value for text.",\n "type": "string"\n }\n },\n "required": [\n "sha256",\n "bytes",\n "text"\n ],\n "type": "object"\n }\n },\n "required": [\n "state",\n "value"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "state": {\n "const": "not_requested",\n "description": "Value for state.",\n "type": "string"\n }\n },\n "required": [\n "state"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "reason": {\n "description": "Value for reason.",\n "minLength": 1,\n "type": "string"\n },\n "state": {\n "const": "missing",\n "description": "Value for state.",\n "type": "string"\n }\n },\n "required": [\n "state",\n "reason"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "observed": {\n "description": "Value for observed.",\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "reason": {\n "description": "Value for reason.",\n "minLength": 1,\n "type": "string"\n },\n "retained": {\n "description": "Value for retained.",\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "state": {\n "const": "truncated",\n "description": "Value for state.",\n "type": "string"\n }\n },\n "required": [\n "state",\n "observed",\n "retained",\n "reason"\n ],\n "type": "object"\n }\n ]\n },\n "dom": {\n "description": "Value for dom.",\n "oneOf": [\n {\n "additionalProperties": false,\n "properties": {\n "state": {\n "const": "captured",\n "description": "Value for state.",\n "type": "string"\n },\n "value": {\n "additionalProperties": false,\n "description": "Value for value.",\n "properties": {\n "bytes": {\n "description": "Value for bytes.",\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "sha256": {\n "description": "Value for sha256.",\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n },\n "text": {\n "description": "Value for text.",\n "type": "string"\n }\n },\n "required": [\n "sha256",\n "bytes",\n "text"\n ],\n "type": "object"\n }\n },\n "required": [\n "state",\n "value"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "state": {\n "const": "not_requested",\n "description": "Value for state.",\n "type": "string"\n }\n },\n "required": [\n "state"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "reason": {\n "description": "Value for reason.",\n "minLength": 1,\n "type": "string"\n },\n "state": {\n "const": "missing",\n "description": "Value for state.",\n "type": "string"\n }\n },\n "required": [\n "state",\n "reason"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "observed": {\n "description": "Value for observed.",\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "reason": {\n "description": "Value for reason.",\n "minLength": 1,\n "type": "string"\n },\n "retained": {\n "description": "Value for retained.",\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "state": {\n "const": "truncated",\n "description": "Value for state.",\n "type": "string"\n }\n },\n "required": [\n "state",\n "observed",\n "retained",\n "reason"\n ],\n "type": "object"\n }\n ]\n },\n "history": {\n "description": "Value for history.",\n "oneOf": [\n {\n "additionalProperties": false,\n "properties": {\n "state": {\n "const": "captured",\n "description": "Value for state.",\n "type": "string"\n },\n "value": {\n "additionalProperties": false,\n "description": "Value for value.",\n "properties": {\n "current_url": {\n "description": "Value for current url.",\n "properties": {\n "origin": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ],\n "description": "Value for origin."\n },\n "query_parameter_names": {\n "description": "Value for query parameter names.",\n "items": {\n "type": "string"\n },\n "type": "array"\n },\n "redacted": {\n "description": "Value for redacted.",\n "type": "boolean"\n },\n "url": {\n "description": "Value for url.",\n "type": "string"\n }\n },\n "required": [\n "url",\n "origin",\n "query_parameter_names",\n "redacted"\n ],\n "type": "object"\n },\n "length": {\n "description": "Value for length.",\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "navigation_entries": {\n "description": "Value for navigation entries.",\n "items": {\n "additionalProperties": false,\n "properties": {\n "name": {\n "description": "Exact name used by this operation.",\n "properties": {\n "origin": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ],\n "description": "Value for origin."\n },\n "query_parameter_names": {\n "description": "Value for query parameter names.",\n "items": {\n "type": "string"\n },\n "type": "array"\n },\n "redacted": {\n "description": "Value for redacted.",\n "type": "boolean"\n },\n "url": {\n "description": "Value for url.",\n "type": "string"\n }\n },\n "required": [\n "url",\n "origin",\n "query_parameter_names",\n "redacted"\n ],\n "type": "object"\n },\n "type": {\n "description": "Value for type.",\n "enum": [\n "navigate",\n "reload",\n "back_forward",\n "prerender",\n "unknown"\n ],\n "type": "string"\n }\n },\n "required": [\n "type",\n "name"\n ],\n "type": "object"\n },\n "type": "array"\n }\n },\n "required": [\n "length",\n "current_url",\n "navigation_entries"\n ],\n "type": "object"\n }\n },\n "required": [\n "state",\n "value"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "state": {\n "const": "not_requested",\n "description": "Value for state.",\n "type": "string"\n }\n },\n "required": [\n "state"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "reason": {\n "description": "Value for reason.",\n "minLength": 1,\n "type": "string"\n },\n "state": {\n "const": "missing",\n "description": "Value for state.",\n "type": "string"\n }\n },\n "required": [\n "state",\n "reason"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "observed": {\n "description": "Value for observed.",\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "reason": {\n "description": "Value for reason.",\n "minLength": 1,\n "type": "string"\n },\n "retained": {\n "description": "Value for retained.",\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "state": {\n "const": "truncated",\n "description": "Value for state.",\n "type": "string"\n }\n },\n "required": [\n "state",\n "observed",\n "retained",\n "reason"\n ],\n "type": "object"\n }\n ]\n },\n "screenshot": {\n "description": "Value for screenshot.",\n "oneOf": [\n {\n "additionalProperties": false,\n "properties": {\n "state": {\n "const": "captured",\n "description": "Value for state.",\n "type": "string"\n },\n "value": {\n "description": "Value for value.",\n "properties": {\n "bytes": {\n "description": "Value for bytes.",\n "maximum": 9007199254740991,\n "minimum": 1,\n "type": "integer"\n },\n "data_base64": {\n "description": "Value for data base64.",\n "type": "string"\n },\n "media_type": {\n "const": "image/png",\n "description": "Value for media type.",\n "type": "string"\n },\n "sha256": {\n "description": "Value for sha256.",\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n }\n },\n "required": [\n "sha256",\n "bytes",\n "media_type",\n "data_base64"\n ],\n "type": "object"\n }\n },\n "required": [\n "state",\n "value"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "state": {\n "const": "not_requested",\n "description": "Value for state.",\n "type": "string"\n }\n },\n "required": [\n "state"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "reason": {\n "description": "Value for reason.",\n "minLength": 1,\n "type": "string"\n },\n "state": {\n "const": "missing",\n "description": "Value for state.",\n "type": "string"\n }\n },\n "required": [\n "state",\n "reason"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "observed": {\n "description": "Value for observed.",\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "reason": {\n "description": "Value for reason.",\n "minLength": 1,\n "type": "string"\n },\n "retained": {\n "description": "Value for retained.",\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "state": {\n "const": "truncated",\n "description": "Value for state.",\n "type": "string"\n }\n },\n "required": [\n "state",\n "observed",\n "retained",\n "reason"\n ],\n "type": "object"\n }\n ]\n },\n "storage": {\n "description": "Value for storage.",\n "oneOf": [\n {\n "additionalProperties": false,\n "properties": {\n "state": {\n "const": "captured",\n "description": "Value for state.",\n "type": "string"\n },\n "value": {\n "additionalProperties": false,\n "description": "Value for value.",\n "properties": {\n "cookies": {\n "description": "Value for cookies.",\n "items": {\n "oneOf": [\n {\n "additionalProperties": false,\n "properties": {\n "domain": {\n "description": "Value for domain.",\n "type": "string"\n },\n "http_only": {\n "description": "Value for http only.",\n "type": "boolean"\n },\n "name": {\n "description": "Exact name used by this operation.",\n "type": "string"\n },\n "path": {\n "description": "Local filesystem path used by this operation.",\n "type": "string"\n },\n "same_site": {\n "description": "Value for same site.",\n "enum": [\n "Strict",\n "Lax",\n "None"\n ],\n "type": "string"\n },\n "secure": {\n "description": "Value for secure.",\n "type": "boolean"\n },\n "value_sha256": {\n "description": "Exact SHA-256 digest of value.",\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n },\n "value_state": {\n "const": "hashed",\n "description": "Value for value state.",\n "type": "string"\n }\n },\n "required": [\n "name",\n "domain",\n "path",\n "secure",\n "http_only",\n "same_site",\n "value_state",\n "value_sha256"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "domain": {\n "description": "Value for domain.",\n "type": "string"\n },\n "http_only": {\n "description": "Value for http only.",\n "type": "boolean"\n },\n "name": {\n "description": "Exact name used by this operation.",\n "type": "string"\n },\n "path": {\n "description": "Local filesystem path used by this operation.",\n "type": "string"\n },\n "same_site": {\n "description": "Value for same site.",\n "enum": [\n "Strict",\n "Lax",\n "None"\n ],\n "type": "string"\n },\n "secure": {\n "description": "Value for secure.",\n "type": "boolean"\n },\n "value_sha256": {\n "description": "Exact SHA-256 digest of value.",\n "type": "null"\n },\n "value_state": {\n "const": "redacted-secret",\n "description": "Value for value state.",\n "type": "string"\n }\n },\n "required": [\n "name",\n "domain",\n "path",\n "secure",\n "http_only",\n "same_site",\n "value_state",\n "value_sha256"\n ],\n "type": "object"\n }\n ]\n },\n "type": "array"\n },\n "local_storage": {\n "description": "Value for local storage.",\n "items": {\n "oneOf": [\n {\n "additionalProperties": false,\n "properties": {\n "name": {\n "description": "Exact name used by this operation.",\n "type": "string"\n },\n "value_sha256": {\n "description": "Exact SHA-256 digest of value.",\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n },\n "value_state": {\n "const": "hashed",\n "description": "Value for value state.",\n "type": "string"\n }\n },\n "required": [\n "name",\n "value_state",\n "value_sha256"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "name": {\n "description": "Exact name used by this operation.",\n "type": "string"\n },\n "value_sha256": {\n "description": "Exact SHA-256 digest of value.",\n "type": "null"\n },\n "value_state": {\n "const": "redacted-secret",\n "description": "Value for value state.",\n "type": "string"\n }\n },\n "required": [\n "name",\n "value_state",\n "value_sha256"\n ],\n "type": "object"\n }\n ]\n },\n "type": "array"\n },\n "session_storage": {\n "description": "Value for session storage.",\n "items": {\n "oneOf": [\n {\n "additionalProperties": false,\n "properties": {\n "name": {\n "description": "Exact name used by this operation.",\n "type": "string"\n },\n "value_sha256": {\n "description": "Exact SHA-256 digest of value.",\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n },\n "value_state": {\n "const": "hashed",\n "description": "Value for value state.",\n "type": "string"\n }\n },\n "required": [\n "name",\n "value_state",\n "value_sha256"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "name": {\n "description": "Exact name used by this operation.",\n "type": "string"\n },\n "value_sha256": {\n "description": "Exact SHA-256 digest of value.",\n "type": "null"\n },\n "value_state": {\n "const": "redacted-secret",\n "description": "Value for value state.",\n "type": "string"\n }\n },\n "required": [\n "name",\n "value_state",\n "value_sha256"\n ],\n "type": "object"\n }\n ]\n },\n "type": "array"\n }\n },\n "required": [\n "cookies",\n "local_storage",\n "session_storage"\n ],\n "type": "object"\n }\n },\n "required": [\n "state",\n "value"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "state": {\n "const": "not_requested",\n "description": "Value for state.",\n "type": "string"\n }\n },\n "required": [\n "state"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "reason": {\n "description": "Value for reason.",\n "minLength": 1,\n "type": "string"\n },\n "state": {\n "const": "missing",\n "description": "Value for state.",\n "type": "string"\n }\n },\n "required": [\n "state",\n "reason"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "observed": {\n "description": "Value for observed.",\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "reason": {\n "description": "Value for reason.",\n "minLength": 1,\n "type": "string"\n },\n "retained": {\n "description": "Value for retained.",\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "state": {\n "const": "truncated",\n "description": "Value for state.",\n "type": "string"\n }\n },\n "required": [\n "state",\n "observed",\n "retained",\n "reason"\n ],\n "type": "object"\n }\n ]\n },\n "url": {\n "description": "Value for url.",\n "oneOf": [\n {\n "additionalProperties": false,\n "properties": {\n "state": {\n "const": "captured",\n "description": "Value for state.",\n "type": "string"\n },\n "value": {\n "description": "Value for value.",\n "properties": {\n "origin": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ],\n "description": "Value for origin."\n },\n "query_parameter_names": {\n "description": "Value for query parameter names.",\n "items": {\n "type": "string"\n },\n "type": "array"\n },\n "redacted": {\n "description": "Value for redacted.",\n "type": "boolean"\n },\n "url": {\n "description": "Value for url.",\n "type": "string"\n }\n },\n "required": [\n "url",\n "origin",\n "query_parameter_names",\n "redacted"\n ],\n "type": "object"\n }\n },\n "required": [\n "state",\n "value"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "state": {\n "const": "not_requested",\n "description": "Value for state.",\n "type": "string"\n }\n },\n "required": [\n "state"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "reason": {\n "description": "Value for reason.",\n "minLength": 1,\n "type": "string"\n },\n "state": {\n "const": "missing",\n "description": "Value for state.",\n "type": "string"\n }\n },\n "required": [\n "state",\n "reason"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "observed": {\n "description": "Value for observed.",\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "reason": {\n "description": "Value for reason.",\n "minLength": 1,\n "type": "string"\n },\n "retained": {\n "description": "Value for retained.",\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "state": {\n "const": "truncated",\n "description": "Value for state.",\n "type": "string"\n }\n },\n "required": [\n "state",\n "observed",\n "retained",\n "reason"\n ],\n "type": "object"\n }\n ]\n }\n },\n "required": [\n "screenshot",\n "dom",\n "accessibility",\n "url",\n "history",\n "storage"\n ],\n "type": "object"\n },\n "before_url": {\n "description": "Value for before url.",\n "properties": {\n "origin": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ],\n "description": "Value for origin."\n },\n "query_parameter_names": {\n "description": "Value for query parameter names.",\n "items": {\n "type": "string"\n },\n "type": "array"\n },\n "redacted": {\n "description": "Value for redacted.",\n "type": "boolean"\n },\n "url": {\n "description": "Value for url.",\n "type": "string"\n }\n },\n "required": [\n "url",\n "origin",\n "query_parameter_names",\n "redacted"\n ],\n "type": "object"\n },\n "completeness": {\n "description": "Value for completeness.",\n "oneOf": [\n {\n "additionalProperties": false,\n "properties": {\n "equality_eligible": {\n "const": true,\n "description": "Value for equality eligible.",\n "type": "boolean"\n },\n "missing_sections": {\n "description": "Value for missing sections.",\n "items": {\n "not": {}\n },\n "maxItems": 0,\n "minItems": 0,\n "type": "array"\n },\n "status": {\n "const": "complete",\n "description": "Current lifecycle or verification status.",\n "type": "string"\n },\n "truncated_sections": {\n "description": "Value for truncated sections.",\n "items": {\n "not": {}\n },\n "maxItems": 0,\n "minItems": 0,\n "type": "array"\n }\n },\n "required": [\n "status",\n "equality_eligible",\n "missing_sections",\n "truncated_sections"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "equality_eligible": {\n "const": false,\n "description": "Value for equality eligible.",\n "type": "boolean"\n },\n "missing_sections": {\n "description": "Value for missing sections.",\n "items": {\n "enum": [\n "action",\n "screenshot",\n "dom",\n "accessibility",\n "url",\n "history",\n "storage",\n "events",\n "frames",\n "workers",\n "popups",\n "websockets"\n ],\n "type": "string"\n },\n "minItems": 1,\n "type": "array"\n },\n "status": {\n "const": "incomplete",\n "description": "Current lifecycle or verification status.",\n "type": "string"\n },\n "truncated_sections": {\n "description": "Value for truncated sections.",\n "items": {\n "not": {}\n },\n "maxItems": 0,\n "minItems": 0,\n "type": "array"\n }\n },\n "required": [\n "status",\n "equality_eligible",\n "missing_sections",\n "truncated_sections"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "equality_eligible": {\n "const": false,\n "description": "Value for equality eligible.",\n "type": "boolean"\n },\n "missing_sections": {\n "description": "Value for missing sections.",\n "items": {\n "enum": [\n "action",\n "screenshot",\n "dom",\n "accessibility",\n "url",\n "history",\n "storage",\n "events",\n "frames",\n "workers",\n "popups",\n "websockets"\n ],\n "type": "string"\n },\n "type": "array"\n },\n "status": {\n "const": "truncated",\n "description": "Current lifecycle or verification status.",\n "type": "string"\n },\n "truncated_sections": {\n "description": "Value for truncated sections.",\n "items": {\n "enum": [\n "action",\n "screenshot",\n "dom",\n "accessibility",\n "url",\n "history",\n "storage",\n "events",\n "frames",\n "workers",\n "popups",\n "websockets"\n ],\n "type": "string"\n },\n "minItems": 1,\n "type": "array"\n }\n },\n "required": [\n "status",\n "equality_eligible",\n "missing_sections",\n "truncated_sections"\n ],\n "type": "object"\n }\n ]\n },\n "elapsed_ms": {\n "description": "Value for elapsed ms.",\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "error": {\n "description": "Structured, caller-actionable error when the operation fails.",\n "type": "null"\n },\n "event_sequence_end": {\n "description": "Value for event sequence end.",\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "event_sequence_start": {\n "description": "Value for event sequence start.",\n "maximum": 9007199254740991,\n "minimum": 1,\n "type": "integer"\n },\n "status": {\n "const": "completed",\n "description": "Current lifecycle or verification status.",\n "type": "string"\n },\n "step_id": {\n "description": "Value for step id.",\n "minLength": 1,\n "type": "string"\n },\n "step_index": {\n "description": "Value for step index.",\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "step_index",\n "step_id",\n "action",\n "elapsed_ms",\n "before_url",\n "after_url",\n "event_sequence_start",\n "event_sequence_end",\n "artifacts",\n "completeness",\n "status",\n "error"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "action": {\n "description": "Value for action.",\n "minLength": 1,\n "type": "string"\n },\n "after_url": {\n "description": "Value for after url.",\n "properties": {\n "origin": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ],\n "description": "Value for origin."\n },\n "query_parameter_names": {\n "description": "Value for query parameter names.",\n "items": {\n "type": "string"\n },\n "type": "array"\n },\n "redacted": {\n "description": "Value for redacted.",\n "type": "boolean"\n },\n "url": {\n "description": "Value for url.",\n "type": "string"\n }\n },\n "required": [\n "url",\n "origin",\n "query_parameter_names",\n "redacted"\n ],\n "type": "object"\n },\n "artifacts": {\n "additionalProperties": false,\n "description": "Value for artifacts.",\n "properties": {\n "accessibility": {\n "description": "Value for accessibility.",\n "oneOf": [\n {\n "additionalProperties": false,\n "properties": {\n "state": {\n "const": "captured",\n "description": "Value for state.",\n "type": "string"\n },\n "value": {\n "additionalProperties": false,\n "description": "Value for value.",\n "properties": {\n "bytes": {\n "description": "Value for bytes.",\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "sha256": {\n "description": "Value for sha256.",\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n },\n "text": {\n "description": "Value for text.",\n "type": "string"\n }\n },\n "required": [\n "sha256",\n "bytes",\n "text"\n ],\n "type": "object"\n }\n },\n "required": [\n "state",\n "value"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "state": {\n "const": "not_requested",\n "description": "Value for state.",\n "type": "string"\n }\n },\n "required": [\n "state"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "reason": {\n "description": "Value for reason.",\n "minLength": 1,\n "type": "string"\n },\n "state": {\n "const": "missing",\n "description": "Value for state.",\n "type": "string"\n }\n },\n "required": [\n "state",\n "reason"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "observed": {\n "description": "Value for observed.",\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "reason": {\n "description": "Value for reason.",\n "minLength": 1,\n "type": "string"\n },\n "retained": {\n "description": "Value for retained.",\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "state": {\n "const": "truncated",\n "description": "Value for state.",\n "type": "string"\n }\n },\n "required": [\n "state",\n "observed",\n "retained",\n "reason"\n ],\n "type": "object"\n }\n ]\n },\n "dom": {\n "description": "Value for dom.",\n "oneOf": [\n {\n "additionalProperties": false,\n "properties": {\n "state": {\n "const": "captured",\n "description": "Value for state.",\n "type": "string"\n },\n "value": {\n "additionalProperties": false,\n "description": "Value for value.",\n "properties": {\n "bytes": {\n "description": "Value for bytes.",\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "sha256": {\n "description": "Value for sha256.",\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n },\n "text": {\n "description": "Value for text.",\n "type": "string"\n }\n },\n "required": [\n "sha256",\n "bytes",\n "text"\n ],\n "type": "object"\n }\n },\n "required": [\n "state",\n "value"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "state": {\n "const": "not_requested",\n "description": "Value for state.",\n "type": "string"\n }\n },\n "required": [\n "state"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "reason": {\n "description": "Value for reason.",\n "minLength": 1,\n "type": "string"\n },\n "state": {\n "const": "missing",\n "description": "Value for state.",\n "type": "string"\n }\n },\n "required": [\n "state",\n "reason"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "observed": {\n "description": "Value for observed.",\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "reason": {\n "description": "Value for reason.",\n "minLength": 1,\n "type": "string"\n },\n "retained": {\n "description": "Value for retained.",\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "state": {\n "const": "truncated",\n "description": "Value for state.",\n "type": "string"\n }\n },\n "required": [\n "state",\n "observed",\n "retained",\n "reason"\n ],\n "type": "object"\n }\n ]\n },\n "history": {\n "description": "Value for history.",\n "oneOf": [\n {\n "additionalProperties": false,\n "properties": {\n "state": {\n "const": "captured",\n "description": "Value for state.",\n "type": "string"\n },\n "value": {\n "additionalProperties": false,\n "description": "Value for value.",\n "properties": {\n "current_url": {\n "description": "Value for current url.",\n "properties": {\n "origin": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ],\n "description": "Value for origin."\n },\n "query_parameter_names": {\n "description": "Value for query parameter names.",\n "items": {\n "type": "string"\n },\n "type": "array"\n },\n "redacted": {\n "description": "Value for redacted.",\n "type": "boolean"\n },\n "url": {\n "description": "Value for url.",\n "type": "string"\n }\n },\n "required": [\n "url",\n "origin",\n "query_parameter_names",\n "redacted"\n ],\n "type": "object"\n },\n "length": {\n "description": "Value for length.",\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "navigation_entries": {\n "description": "Value for navigation entries.",\n "items": {\n "additionalProperties": false,\n "properties": {\n "name": {\n "description": "Exact name used by this operation.",\n "properties": {\n "origin": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ],\n "description": "Value for origin."\n },\n "query_parameter_names": {\n "description": "Value for query parameter names.",\n "items": {\n "type": "string"\n },\n "type": "array"\n },\n "redacted": {\n "description": "Value for redacted.",\n "type": "boolean"\n },\n "url": {\n "description": "Value for url.",\n "type": "string"\n }\n },\n "required": [\n "url",\n "origin",\n "query_parameter_names",\n "redacted"\n ],\n "type": "object"\n },\n "type": {\n "description": "Value for type.",\n "enum": [\n "navigate",\n "reload",\n "back_forward",\n "prerender",\n "unknown"\n ],\n "type": "string"\n }\n },\n "required": [\n "type",\n "name"\n ],\n "type": "object"\n },\n "type": "array"\n }\n },\n "required": [\n "length",\n "current_url",\n "navigation_entries"\n ],\n "type": "object"\n }\n },\n "required": [\n "state",\n "value"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "state": {\n "const": "not_requested",\n "description": "Value for state.",\n "type": "string"\n }\n },\n "required": [\n "state"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "reason": {\n "description": "Value for reason.",\n "minLength": 1,\n "type": "string"\n },\n "state": {\n "const": "missing",\n "description": "Value for state.",\n "type": "string"\n }\n },\n "required": [\n "state",\n "reason"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "observed": {\n "description": "Value for observed.",\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "reason": {\n "description": "Value for reason.",\n "minLength": 1,\n "type": "string"\n },\n "retained": {\n "description": "Value for retained.",\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "state": {\n "const": "truncated",\n "description": "Value for state.",\n "type": "string"\n }\n },\n "required": [\n "state",\n "observed",\n "retained",\n "reason"\n ],\n "type": "object"\n }\n ]\n },\n "screenshot": {\n "description": "Value for screenshot.",\n "oneOf": [\n {\n "additionalProperties": false,\n "properties": {\n "state": {\n "const": "captured",\n "description": "Value for state.",\n "type": "string"\n },\n "value": {\n "description": "Value for value.",\n "properties": {\n "bytes": {\n "description": "Value for bytes.",\n "maximum": 9007199254740991,\n "minimum": 1,\n "type": "integer"\n },\n "data_base64": {\n "description": "Value for data base64.",\n "type": "string"\n },\n "media_type": {\n "const": "image/png",\n "description": "Value for media type.",\n "type": "string"\n },\n "sha256": {\n "description": "Value for sha256.",\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n }\n },\n "required": [\n "sha256",\n "bytes",\n "media_type",\n "data_base64"\n ],\n "type": "object"\n }\n },\n "required": [\n "state",\n "value"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "state": {\n "const": "not_requested",\n "description": "Value for state.",\n "type": "string"\n }\n },\n "required": [\n "state"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "reason": {\n "description": "Value for reason.",\n "minLength": 1,\n "type": "string"\n },\n "state": {\n "const": "missing",\n "description": "Value for state.",\n "type": "string"\n }\n },\n "required": [\n "state",\n "reason"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "observed": {\n "description": "Value for observed.",\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "reason": {\n "description": "Value for reason.",\n "minLength": 1,\n "type": "string"\n },\n "retained": {\n "description": "Value for retained.",\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "state": {\n "const": "truncated",\n "description": "Value for state.",\n "type": "string"\n }\n },\n "required": [\n "state",\n "observed",\n "retained",\n "reason"\n ],\n "type": "object"\n }\n ]\n },\n "storage": {\n "description": "Value for storage.",\n "oneOf": [\n {\n "additionalProperties": false,\n "properties": {\n "state": {\n "const": "captured",\n "description": "Value for state.",\n "type": "string"\n },\n "value": {\n "additionalProperties": false,\n "description": "Value for value.",\n "properties": {\n "cookies": {\n "description": "Value for cookies.",\n "items": {\n "oneOf": [\n {\n "additionalProperties": false,\n "properties": {\n "domain": {\n "description": "Value for domain.",\n "type": "string"\n },\n "http_only": {\n "description": "Value for http only.",\n "type": "boolean"\n },\n "name": {\n "description": "Exact name used by this operation.",\n "type": "string"\n },\n "path": {\n "description": "Local filesystem path used by this operation.",\n "type": "string"\n },\n "same_site": {\n "description": "Value for same site.",\n "enum": [\n "Strict",\n "Lax",\n "None"\n ],\n "type": "string"\n },\n "secure": {\n "description": "Value for secure.",\n "type": "boolean"\n },\n "value_sha256": {\n "description": "Exact SHA-256 digest of value.",\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n },\n "value_state": {\n "const": "hashed",\n "description": "Value for value state.",\n "type": "string"\n }\n },\n "required": [\n "name",\n "domain",\n "path",\n "secure",\n "http_only",\n "same_site",\n "value_state",\n "value_sha256"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "domain": {\n "description": "Value for domain.",\n "type": "string"\n },\n "http_only": {\n "description": "Value for http only.",\n "type": "boolean"\n },\n "name": {\n "description": "Exact name used by this operation.",\n "type": "string"\n },\n "path": {\n "description": "Local filesystem path used by this operation.",\n "type": "string"\n },\n "same_site": {\n "description": "Value for same site.",\n "enum": [\n "Strict",\n "Lax",\n "None"\n ],\n "type": "string"\n },\n "secure": {\n "description": "Value for secure.",\n "type": "boolean"\n },\n "value_sha256": {\n "description": "Exact SHA-256 digest of value.",\n "type": "null"\n },\n "value_state": {\n "const": "redacted-secret",\n "description": "Value for value state.",\n "type": "string"\n }\n },\n "required": [\n "name",\n "domain",\n "path",\n "secure",\n "http_only",\n "same_site",\n "value_state",\n "value_sha256"\n ],\n "type": "object"\n }\n ]\n },\n "type": "array"\n },\n "local_storage": {\n "description": "Value for local storage.",\n "items": {\n "oneOf": [\n {\n "additionalProperties": false,\n "properties": {\n "name": {\n "description": "Exact name used by this operation.",\n "type": "string"\n },\n "value_sha256": {\n "description": "Exact SHA-256 digest of value.",\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n },\n "value_state": {\n "const": "hashed",\n "description": "Value for value state.",\n "type": "string"\n }\n },\n "required": [\n "name",\n "value_state",\n "value_sha256"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "name": {\n "description": "Exact name used by this operation.",\n "type": "string"\n },\n "value_sha256": {\n "description": "Exact SHA-256 digest of value.",\n "type": "null"\n },\n "value_state": {\n "const": "redacted-secret",\n "description": "Value for value state.",\n "type": "string"\n }\n },\n "required": [\n "name",\n "value_state",\n "value_sha256"\n ],\n "type": "object"\n }\n ]\n },\n "type": "array"\n },\n "session_storage": {\n "description": "Value for session storage.",\n "items": {\n "oneOf": [\n {\n "additionalProperties": false,\n "properties": {\n "name": {\n "description": "Exact name used by this operation.",\n "type": "string"\n },\n "value_sha256": {\n "description": "Exact SHA-256 digest of value.",\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n },\n "value_state": {\n "const": "hashed",\n "description": "Value for value state.",\n "type": "string"\n }\n },\n "required": [\n "name",\n "value_state",\n "value_sha256"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "name": {\n "description": "Exact name used by this operation.",\n "type": "string"\n },\n "value_sha256": {\n "description": "Exact SHA-256 digest of value.",\n "type": "null"\n },\n "value_state": {\n "const": "redacted-secret",\n "description": "Value for value state.",\n "type": "string"\n }\n },\n "required": [\n "name",\n "value_state",\n "value_sha256"\n ],\n "type": "object"\n }\n ]\n },\n "type": "array"\n }\n },\n "required": [\n "cookies",\n "local_storage",\n "session_storage"\n ],\n "type": "object"\n }\n },\n "required": [\n "state",\n "value"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "state": {\n "const": "not_requested",\n "description": "Value for state.",\n "type": "string"\n }\n },\n "required": [\n "state"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "reason": {\n "description": "Value for reason.",\n "minLength": 1,\n "type": "string"\n },\n "state": {\n "const": "missing",\n "description": "Value for state.",\n "type": "string"\n }\n },\n "required": [\n "state",\n "reason"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "observed": {\n "description": "Value for observed.",\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "reason": {\n "description": "Value for reason.",\n "minLength": 1,\n "type": "string"\n },\n "retained": {\n "description": "Value for retained.",\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "state": {\n "const": "truncated",\n "description": "Value for state.",\n "type": "string"\n }\n },\n "required": [\n "state",\n "observed",\n "retained",\n "reason"\n ],\n "type": "object"\n }\n ]\n },\n "url": {\n "description": "Value for url.",\n "oneOf": [\n {\n "additionalProperties": false,\n "properties": {\n "state": {\n "const": "captured",\n "description": "Value for state.",\n "type": "string"\n },\n "value": {\n "description": "Value for value.",\n "properties": {\n "origin": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ],\n "description": "Value for origin."\n },\n "query_parameter_names": {\n "description": "Value for query parameter names.",\n "items": {\n "type": "string"\n },\n "type": "array"\n },\n "redacted": {\n "description": "Value for redacted.",\n "type": "boolean"\n },\n "url": {\n "description": "Value for url.",\n "type": "string"\n }\n },\n "required": [\n "url",\n "origin",\n "query_parameter_names",\n "redacted"\n ],\n "type": "object"\n }\n },\n "required": [\n "state",\n "value"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "state": {\n "const": "not_requested",\n "description": "Value for state.",\n "type": "string"\n }\n },\n "required": [\n "state"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "reason": {\n "description": "Value for reason.",\n "minLength": 1,\n "type": "string"\n },\n "state": {\n "const": "missing",\n "description": "Value for state.",\n "type": "string"\n }\n },\n "required": [\n "state",\n "reason"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "observed": {\n "description": "Value for observed.",\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "reason": {\n "description": "Value for reason.",\n "minLength": 1,\n "type": "string"\n },\n "retained": {\n "description": "Value for retained.",\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "state": {\n "const": "truncated",\n "description": "Value for state.",\n "type": "string"\n }\n },\n "required": [\n "state",\n "observed",\n "retained",\n "reason"\n ],\n "type": "object"\n }\n ]\n }\n },\n "required": [\n "screenshot",\n "dom",\n "accessibility",\n "url",\n "history",\n "storage"\n ],\n "type": "object"\n },\n "before_url": {\n "description": "Value for before url.",\n "properties": {\n "origin": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ],\n "description": "Value for origin."\n },\n "query_parameter_names": {\n "description": "Value for query parameter names.",\n "items": {\n "type": "string"\n },\n "type": "array"\n },\n "redacted": {\n "description": "Value for redacted.",\n "type": "boolean"\n },\n "url": {\n "description": "Value for url.",\n "type": "string"\n }\n },\n "required": [\n "url",\n "origin",\n "query_parameter_names",\n "redacted"\n ],\n "type": "object"\n },\n "completeness": {\n "description": "Value for completeness.",\n "oneOf": [\n {\n "additionalProperties": false,\n "properties": {\n "equality_eligible": {\n "const": true,\n "description": "Value for equality eligible.",\n "type": "boolean"\n },\n "missing_sections": {\n "description": "Value for missing sections.",\n "items": {\n "not": {}\n },\n "maxItems": 0,\n "minItems": 0,\n "type": "array"\n },\n "status": {\n "const": "complete",\n "description": "Current lifecycle or verification status.",\n "type": "string"\n },\n "truncated_sections": {\n "description": "Value for truncated sections.",\n "items": {\n "not": {}\n },\n "maxItems": 0,\n "minItems": 0,\n "type": "array"\n }\n },\n "required": [\n "status",\n "equality_eligible",\n "missing_sections",\n "truncated_sections"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "equality_eligible": {\n "const": false,\n "description": "Value for equality eligible.",\n "type": "boolean"\n },\n "missing_sections": {\n "description": "Value for missing sections.",\n "items": {\n "enum": [\n "action",\n "screenshot",\n "dom",\n "accessibility",\n "url",\n "history",\n "storage",\n "events",\n "frames",\n "workers",\n "popups",\n "websockets"\n ],\n "type": "string"\n },\n "minItems": 1,\n "type": "array"\n },\n "status": {\n "const": "incomplete",\n "description": "Current lifecycle or verification status.",\n "type": "string"\n },\n "truncated_sections": {\n "description": "Value for truncated sections.",\n "items": {\n "not": {}\n },\n "maxItems": 0,\n "minItems": 0,\n "type": "array"\n }\n },\n "required": [\n "status",\n "equality_eligible",\n "missing_sections",\n "truncated_sections"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "equality_eligible": {\n "const": false,\n "description": "Value for equality eligible.",\n "type": "boolean"\n },\n "missing_sections": {\n "description": "Value for missing sections.",\n "items": {\n "enum": [\n "action",\n "screenshot",\n "dom",\n "accessibility",\n "url",\n "history",\n "storage",\n "events",\n "frames",\n "workers",\n "popups",\n "websockets"\n ],\n "type": "string"\n },\n "type": "array"\n },\n "status": {\n "const": "truncated",\n "description": "Current lifecycle or verification status.",\n "type": "string"\n },\n "truncated_sections": {\n "description": "Value for truncated sections.",\n "items": {\n "enum": [\n "action",\n "screenshot",\n "dom",\n "accessibility",\n "url",\n "history",\n "storage",\n "events",\n "frames",\n "workers",\n "popups",\n "websockets"\n ],\n "type": "string"\n },\n "minItems": 1,\n "type": "array"\n }\n },\n "required": [\n "status",\n "equality_eligible",\n "missing_sections",\n "truncated_sections"\n ],\n "type": "object"\n }\n ]\n },\n "elapsed_ms": {\n "description": "Value for elapsed ms.",\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "error": {\n "description": "Structured, caller-actionable error when the operation fails.",\n "type": "string"\n },\n "event_sequence_end": {\n "description": "Value for event sequence end.",\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "event_sequence_start": {\n "description": "Value for event sequence start.",\n "maximum": 9007199254740991,\n "minimum": 1,\n "type": "integer"\n },\n "status": {\n "description": "Current lifecycle or verification status.",\n "enum": [\n "failed",\n "cancelled"\n ],\n "type": "string"\n },\n "step_id": {\n "description": "Value for step id.",\n "minLength": 1,\n "type": "string"\n },\n "step_index": {\n "description": "Value for step index.",\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "step_index",\n "step_id",\n "action",\n "elapsed_ms",\n "before_url",\n "after_url",\n "event_sequence_start",\n "event_sequence_end",\n "artifacts",\n "completeness",\n "status",\n "error"\n ],\n "type": "object"\n }\n ]\n },\n "minItems": 1,\n "type": "array"\n }\n },\n "required": [\n "browser",\n "scenario",\n "duration_ms",\n "steps",\n "events",\n "completeness",\n "limitations"\n ],\n "type": "object"\n },\n "normalization": {\n "additionalProperties": false,\n "description": "Exact-literal normalization policy.",\n "properties": {\n "rules": {\n "default": [],\n "description": "Value for rules.",\n "items": {\n "additionalProperties": false,\n "properties": {\n "artifacts": {\n "description": "Artifact families whose durable string fields use this rule.",\n "items": {\n "enum": [\n "action_state",\n "dom",\n "accessibility",\n "url",\n "history",\n "storage",\n "events"\n ],\n "type": "string"\n },\n "minItems": 1,\n "type": "array"\n },\n "match": {\n "description": "Exact public literal to replace; regular expressions are not used.",\n "minLength": 1,\n "type": "string"\n },\n "replacement": {\n "description": "Recorded replacement text used in normalized comparison.",\n "type": "string"\n },\n "rule_id": {\n "description": "Stable rule identity; rules execute in rule_id order.",\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "rule_id",\n "artifacts",\n "match",\n "replacement"\n ],\n "type": "object"\n },\n "type": "array"\n }\n },\n "type": "object"\n }\n },\n "type": "object"\n },\n "kind": "browser-provider",\n "name": "compare_web_captures",\n "outputSchema": {\n "$defs": {\n "__schema0": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "number"\n },\n {\n "type": "boolean"\n },\n {\n "type": "null"\n },\n {\n "items": {\n "$ref": "#/$defs/__schema0"\n },\n "type": "array"\n },\n {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n }\n ]\n }\n },\n "$schema": "https://json-schema.org/draft/2020-12/schema",\n "additionalProperties": false,\n "properties": {\n "evidence": {\n "additionalProperties": false,\n "properties": {\n "analysis_profile": {\n "additionalProperties": false,\n "properties": {\n "digest": {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n },\n "parameters": {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n },\n "provider": {\n "additionalProperties": false,\n "properties": {\n "id": {\n "minLength": 1,\n "type": "string"\n },\n "name": {\n "minLength": 1,\n "type": "string"\n },\n "version": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "id",\n "name",\n "version"\n ],\n "type": "object"\n }\n },\n "required": [\n "provider",\n "parameters",\n "digest"\n ],\n "type": "object"\n },\n "authority": {\n "enum": [\n "shipped-artifact",\n "controlled-replay",\n "historical-reference",\n "external-service",\n "analyst-inference"\n ],\n "type": "string"\n },\n "confidence": {\n "enum": [\n "observed",\n "derived",\n "inferred"\n ],\n "type": "string"\n },\n "environment": {\n "anyOf": [\n {\n "additionalProperties": false,\n "properties": {\n "architecture": {\n "minLength": 1,\n "type": "string"\n },\n "id": {\n "minLength": 1,\n "type": "string"\n },\n "isolation": {\n "enum": [\n "none",\n "process",\n "container",\n "virtual-machine"\n ],\n "type": "string"\n },\n "platform": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "id",\n "platform",\n "architecture",\n "isolation"\n ],\n "type": "object"\n },\n {\n "type": "null"\n }\n ]\n },\n "evidence_id": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "evidence_links": {\n "items": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "type": "array"\n },\n "limitations": {\n "items": {\n "type": "string"\n },\n "type": "array"\n },\n "locations": {\n "items": {\n "oneOf": [\n {\n "additionalProperties": false,\n "properties": {\n "address": {\n "minLength": 1,\n "type": "string"\n },\n "kind": {\n "const": "address",\n "type": "string"\n }\n },\n "required": [\n "kind",\n "address"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "end": {\n "minLength": 1,\n "type": "string"\n },\n "kind": {\n "const": "address-range",\n "type": "string"\n },\n "start": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "kind",\n "start",\n "end"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "kind": {\n "const": "artifact-path",\n "type": "string"\n },\n "path": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "kind",\n "path"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "kind": {\n "const": "file-offset",\n "type": "string"\n },\n "offset": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "kind",\n "offset"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "end": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "kind": {\n "const": "file-offset-range",\n "type": "string"\n },\n "start": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "kind",\n "start",\n "end"\n ],\n "type": "object"\n }\n ]\n },\n "type": "array"\n },\n "normalized_result": {\n "$ref": "#/$defs/__schema0"\n },\n "operation": {\n "minLength": 1,\n "type": "string"\n },\n "parameters": {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n },\n "predicate_type": {\n "minLength": 1,\n "type": "string"\n },\n "provider": {\n "additionalProperties": false,\n "properties": {\n "id": {\n "minLength": 1,\n "type": "string"\n },\n "name": {\n "minLength": 1,\n "type": "string"\n },\n "version": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "id",\n "name",\n "version"\n ],\n "type": "object"\n },\n "raw_result": {\n "anyOf": [\n {\n "$ref": "#/$defs/__schema0"\n },\n {\n "type": "null"\n }\n ]\n },\n "subject": {\n "anyOf": [\n {\n "additionalProperties": false,\n "properties": {\n "architecture": {\n "anyOf": [\n {\n "enum": [\n "x86",\n "x86_64",\n "arm",\n "arm64"\n ],\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "digest": {\n "additionalProperties": false,\n "properties": {\n "sha256": {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n }\n },\n "required": [\n "sha256"\n ],\n "type": "object"\n },\n "format": {\n "enum": [\n "hopper",\n "analysis-database",\n "mach-o",\n "elf",\n "pe",\n "dos-mz",\n "dos-com",\n "zip",\n "ipa",\n "apk",\n "msix",\n "appx",\n "asar",\n "dmg",\n "pkg",\n "plist",\n "javascript",\n "source-map",\n "directory",\n "file",\n "unknown",\n "mach-o-universal",\n "javascript-bundle",\n "entitlements"\n ],\n "type": "string"\n },\n "local_path": {\n "type": "string"\n },\n "name": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "name",\n "digest",\n "format",\n "architecture",\n "local_path"\n ],\n "type": "object"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "evidence_id",\n "subject",\n "provider",\n "predicate_type",\n "operation",\n "parameters",\n "raw_result",\n "normalized_result",\n "confidence",\n "authority",\n "environment",\n "limitations",\n "locations",\n "evidence_links"\n ],\n "type": "object"\n },\n "evidence_id": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "result": {\n "anyOf": [\n {\n "additionalProperties": false,\n "properties": {\n "alignment": {\n "additionalProperties": false,\n "properties": {\n "after_only": {\n "items": {\n "minLength": 1,\n "type": "string"\n },\n "type": "array"\n },\n "aligned_steps": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "before_only": {\n "items": {\n "minLength": 1,\n "type": "string"\n },\n "type": "array"\n },\n "failures": {\n "items": {\n "additionalProperties": false,\n "properties": {\n "code": {\n "enum": [\n "duplicate_before_step_id",\n "duplicate_after_step_id",\n "missing_before_step",\n "missing_after_step",\n "action_mismatch",\n "capture_context_mismatch"\n ],\n "type": "string"\n },\n "reason": {\n "minLength": 1,\n "type": "string"\n },\n "step_id": {\n "anyOf": [\n {\n "minLength": 1,\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "code",\n "step_id",\n "reason"\n ],\n "type": "object"\n },\n "type": "array"\n },\n "status": {\n "enum": [\n "aligned",\n "partial",\n "failed"\n ],\n "type": "string"\n }\n },\n "required": [\n "status",\n "aligned_steps",\n "before_only",\n "after_only",\n "failures"\n ],\n "type": "object"\n },\n "artifact_diffs": {\n "additionalProperties": false,\n "properties": {\n "total": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "total"\n ],\n "type": "object"\n },\n "comparison_kind": {\n "const": "browser_scenario",\n "type": "string"\n },\n "limitations": {\n "items": {\n "minLength": 1,\n "type": "string"\n },\n "type": "array"\n },\n "normalization": {\n "additionalProperties": false,\n "properties": {\n "built_in_rules": {\n "items": {\n "enum": [\n "ignore_step_elapsed_ms",\n "ignore_event_sequence",\n "ignore_event_step_index",\n "compare_screenshot_content_digest",\n "compare_normalized_text_content"\n ],\n "type": "string"\n },\n "maxItems": 5,\n "minItems": 5,\n "type": "array"\n },\n "rules": {\n "items": {\n "additionalProperties": false,\n "properties": {\n "artifacts": {\n "description": "Artifact families whose durable string fields use this rule.",\n "items": {\n "enum": [\n "action_state",\n "dom",\n "accessibility",\n "url",\n "history",\n "storage",\n "events"\n ],\n "type": "string"\n },\n "minItems": 1,\n "type": "array"\n },\n "match": {\n "description": "Exact public literal to replace; regular expressions are not used.",\n "minLength": 1,\n "type": "string"\n },\n "replacement": {\n "description": "Recorded replacement text used in normalized comparison.",\n "type": "string"\n },\n "rule_id": {\n "description": "Stable rule identity; rules execute in rule_id order.",\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "rule_id",\n "artifacts",\n "match",\n "replacement"\n ],\n "type": "object"\n },\n "type": "array"\n },\n "sha256": {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n }\n },\n "required": [\n "built_in_rules",\n "rules",\n "sha256"\n ],\n "type": "object"\n },\n "overall_status": {\n "enum": [\n "changed",\n "unchanged",\n "unknown"\n ],\n "type": "string"\n },\n "steps": {\n "items": {\n "additionalProperties": false,\n "properties": {\n "after_action": {\n "minLength": 1,\n "type": "string"\n },\n "after_step_index": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "artifact_diffs": {\n "items": {\n "additionalProperties": false,\n "properties": {\n "after_sha256": {\n "anyOf": [\n {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "after_state": {\n "enum": [\n "captured",\n "not_requested",\n "missing",\n "truncated"\n ],\n "type": "string"\n },\n "artifact": {\n "enum": [\n "action_state",\n "screenshot",\n "dom",\n "accessibility",\n "url",\n "history",\n "storage",\n "events"\n ],\n "type": "string"\n },\n "before_sha256": {\n "anyOf": [\n {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "before_state": {\n "enum": [\n "captured",\n "not_requested",\n "missing",\n "truncated"\n ],\n "type": "string"\n },\n "reason": {\n "anyOf": [\n {\n "minLength": 1,\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "status": {\n "enum": [\n "changed",\n "unknown"\n ],\n "type": "string"\n }\n },\n "required": [\n "artifact",\n "status",\n "before_state",\n "after_state",\n "before_sha256",\n "after_sha256",\n "reason"\n ],\n "type": "object"\n },\n "type": "array"\n },\n "before_action": {\n "minLength": 1,\n "type": "string"\n },\n "before_step_index": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "status": {\n "enum": [\n "changed",\n "unchanged",\n "unknown"\n ],\n "type": "string"\n },\n "step_id": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "step_id",\n "before_step_index",\n "after_step_index",\n "before_action",\n "after_action",\n "status",\n "artifact_diffs"\n ],\n "type": "object"\n },\n "type": "array"\n }\n },\n "required": [\n "comparison_kind",\n "overall_status",\n "normalization",\n "alignment",\n "steps",\n "artifact_diffs",\n "limitations"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "after_target": {\n "additionalProperties": false,\n "properties": {\n "target_id": {\n "type": "string"\n },\n "url": {\n "type": "string"\n }\n },\n "required": [\n "target_id",\n "url"\n ],\n "type": "object"\n },\n "before_target": {\n "additionalProperties": false,\n "properties": {\n "target_id": {\n "type": "string"\n },\n "url": {\n "type": "string"\n }\n },\n "required": [\n "target_id",\n "url"\n ],\n "type": "object"\n },\n "dimensions": {\n "additionalProperties": false,\n "properties": {\n "accessibility": {\n "anyOf": [\n {\n "additionalProperties": false,\n "properties": {\n "changes": {\n "items": {\n "additionalProperties": false,\n "properties": {\n "change": {\n "enum": [\n "added",\n "removed",\n "modified"\n ],\n "type": "string"\n },\n "identity": {\n "type": "string"\n }\n },\n "required": [\n "identity",\n "change"\n ],\n "type": "object"\n },\n "type": "array"\n },\n "reason": {\n "type": "null"\n },\n "status": {\n "const": "changed",\n "type": "string"\n },\n "total_changes": {\n "maximum": 9007199254740991,\n "minimum": 1,\n "type": "integer"\n }\n },\n "required": [\n "status",\n "total_changes",\n "changes",\n "reason"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "changes": {\n "items": {\n "not": {}\n },\n "maxItems": 0,\n "minItems": 0,\n "type": "array"\n },\n "reason": {\n "type": "null"\n },\n "status": {\n "const": "unchanged",\n "type": "string"\n },\n "total_changes": {\n "const": 0,\n "type": "number"\n }\n },\n "required": [\n "total_changes",\n "changes",\n "status",\n "reason"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "changes": {\n "items": {\n "not": {}\n },\n "maxItems": 0,\n "minItems": 0,\n "type": "array"\n },\n "reason": {\n "type": "string"\n },\n "status": {\n "const": "unknown",\n "type": "string"\n },\n "total_changes": {\n "const": 0,\n "type": "number"\n }\n },\n "required": [\n "total_changes",\n "changes",\n "status",\n "reason"\n ],\n "type": "object"\n }\n ],\n "default": {\n "changes": [],\n "reason": "Dimension was not recorded by this version 1 capture diff.",\n "status": "unknown",\n "total_changes": 0\n }\n },\n "dom_structure": {\n "anyOf": [\n {\n "additionalProperties": false,\n "properties": {\n "changes": {\n "items": {\n "additionalProperties": false,\n "properties": {\n "change": {\n "enum": [\n "added",\n "removed",\n "modified"\n ],\n "type": "string"\n },\n "identity": {\n "type": "string"\n }\n },\n "required": [\n "identity",\n "change"\n ],\n "type": "object"\n },\n "type": "array"\n },\n "reason": {\n "type": "null"\n },\n "status": {\n "const": "changed",\n "type": "string"\n },\n "total_changes": {\n "maximum": 9007199254740991,\n "minimum": 1,\n "type": "integer"\n }\n },\n "required": [\n "status",\n "total_changes",\n "changes",\n "reason"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "changes": {\n "items": {\n "not": {}\n },\n "maxItems": 0,\n "minItems": 0,\n "type": "array"\n },\n "reason": {\n "type": "null"\n },\n "status": {\n "const": "unchanged",\n "type": "string"\n },\n "total_changes": {\n "const": 0,\n "type": "number"\n }\n },\n "required": [\n "total_changes",\n "changes",\n "status",\n "reason"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "changes": {\n "items": {\n "not": {}\n },\n "maxItems": 0,\n "minItems": 0,\n "type": "array"\n },\n "reason": {\n "type": "string"\n },\n "status": {\n "const": "unknown",\n "type": "string"\n },\n "total_changes": {\n "const": 0,\n "type": "number"\n }\n },\n "required": [\n "total_changes",\n "changes",\n "status",\n "reason"\n ],\n "type": "object"\n }\n ]\n },\n "metadata": {\n "anyOf": [\n {\n "additionalProperties": false,\n "properties": {\n "changes": {\n "items": {\n "additionalProperties": false,\n "properties": {\n "change": {\n "enum": [\n "added",\n "removed",\n "modified"\n ],\n "type": "string"\n },\n "identity": {\n "type": "string"\n }\n },\n "required": [\n "identity",\n "change"\n ],\n "type": "object"\n },\n "type": "array"\n },\n "reason": {\n "type": "null"\n },\n "status": {\n "const": "changed",\n "type": "string"\n },\n "total_changes": {\n "maximum": 9007199254740991,\n "minimum": 1,\n "type": "integer"\n }\n },\n "required": [\n "status",\n "total_changes",\n "changes",\n "reason"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "changes": {\n "items": {\n "not": {}\n },\n "maxItems": 0,\n "minItems": 0,\n "type": "array"\n },\n "reason": {\n "type": "null"\n },\n "status": {\n "const": "unchanged",\n "type": "string"\n },\n "total_changes": {\n "const": 0,\n "type": "number"\n }\n },\n "required": [\n "total_changes",\n "changes",\n "status",\n "reason"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "changes": {\n "items": {\n "not": {}\n },\n "maxItems": 0,\n "minItems": 0,\n "type": "array"\n },\n "reason": {\n "type": "string"\n },\n "status": {\n "const": "unknown",\n "type": "string"\n },\n "total_changes": {\n "const": 0,\n "type": "number"\n }\n },\n "required": [\n "total_changes",\n "changes",\n "status",\n "reason"\n ],\n "type": "object"\n }\n ]\n },\n "network": {\n "anyOf": [\n {\n "additionalProperties": false,\n "properties": {\n "changes": {\n "items": {\n "additionalProperties": false,\n "properties": {\n "change": {\n "enum": [\n "added",\n "removed",\n "modified"\n ],\n "type": "string"\n },\n "identity": {\n "type": "string"\n }\n },\n "required": [\n "identity",\n "change"\n ],\n "type": "object"\n },\n "type": "array"\n },\n "reason": {\n "type": "null"\n },\n "status": {\n "const": "changed",\n "type": "string"\n },\n "total_changes": {\n "maximum": 9007199254740991,\n "minimum": 1,\n "type": "integer"\n }\n },\n "required": [\n "status",\n "total_changes",\n "changes",\n "reason"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "changes": {\n "items": {\n "not": {}\n },\n "maxItems": 0,\n "minItems": 0,\n "type": "array"\n },\n "reason": {\n "type": "null"\n },\n "status": {\n "const": "unchanged",\n "type": "string"\n },\n "total_changes": {\n "const": 0,\n "type": "number"\n }\n },\n "required": [\n "total_changes",\n "changes",\n "status",\n "reason"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "changes": {\n "items": {\n "not": {}\n },\n "maxItems": 0,\n "minItems": 0,\n "type": "array"\n },\n "reason": {\n "type": "string"\n },\n "status": {\n "const": "unknown",\n "type": "string"\n },\n "total_changes": {\n "const": 0,\n "type": "number"\n }\n },\n "required": [\n "total_changes",\n "changes",\n "status",\n "reason"\n ],\n "type": "object"\n }\n ]\n },\n "resources": {\n "anyOf": [\n {\n "additionalProperties": false,\n "properties": {\n "changes": {\n "items": {\n "additionalProperties": false,\n "properties": {\n "change": {\n "enum": [\n "added",\n "removed",\n "modified"\n ],\n "type": "string"\n },\n "identity": {\n "type": "string"\n }\n },\n "required": [\n "identity",\n "change"\n ],\n "type": "object"\n },\n "type": "array"\n },\n "reason": {\n "type": "null"\n },\n "status": {\n "const": "changed",\n "type": "string"\n },\n "total_changes": {\n "maximum": 9007199254740991,\n "minimum": 1,\n "type": "integer"\n }\n },\n "required": [\n "status",\n "total_changes",\n "changes",\n "reason"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "changes": {\n "items": {\n "not": {}\n },\n "maxItems": 0,\n "minItems": 0,\n "type": "array"\n },\n "reason": {\n "type": "null"\n },\n "status": {\n "const": "unchanged",\n "type": "string"\n },\n "total_changes": {\n "const": 0,\n "type": "number"\n }\n },\n "required": [\n "total_changes",\n "changes",\n "status",\n "reason"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "changes": {\n "items": {\n "not": {}\n },\n "maxItems": 0,\n "minItems": 0,\n "type": "array"\n },\n "reason": {\n "type": "string"\n },\n "status": {\n "const": "unknown",\n "type": "string"\n },\n "total_changes": {\n "const": 0,\n "type": "number"\n }\n },\n "required": [\n "total_changes",\n "changes",\n "status",\n "reason"\n ],\n "type": "object"\n }\n ]\n },\n "scripts": {\n "anyOf": [\n {\n "additionalProperties": false,\n "properties": {\n "changes": {\n "items": {\n "additionalProperties": false,\n "properties": {\n "change": {\n "enum": [\n "added",\n "removed",\n "modified"\n ],\n "type": "string"\n },\n "identity": {\n "type": "string"\n }\n },\n "required": [\n "identity",\n "change"\n ],\n "type": "object"\n },\n "type": "array"\n },\n "reason": {\n "type": "null"\n },\n "status": {\n "const": "changed",\n "type": "string"\n },\n "total_changes": {\n "maximum": 9007199254740991,\n "minimum": 1,\n "type": "integer"\n }\n },\n "required": [\n "status",\n "total_changes",\n "changes",\n "reason"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "changes": {\n "items": {\n "not": {}\n },\n "maxItems": 0,\n "minItems": 0,\n "type": "array"\n },\n "reason": {\n "type": "null"\n },\n "status": {\n "const": "unchanged",\n "type": "string"\n },\n "total_changes": {\n "const": 0,\n "type": "number"\n }\n },\n "required": [\n "total_changes",\n "changes",\n "status",\n "reason"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "changes": {\n "items": {\n "not": {}\n },\n "maxItems": 0,\n "minItems": 0,\n "type": "array"\n },\n "reason": {\n "type": "string"\n },\n "status": {\n "const": "unknown",\n "type": "string"\n },\n "total_changes": {\n "const": 0,\n "type": "number"\n }\n },\n "required": [\n "total_changes",\n "changes",\n "status",\n "reason"\n ],\n "type": "object"\n }\n ]\n },\n "storage": {\n "anyOf": [\n {\n "additionalProperties": false,\n "properties": {\n "changes": {\n "items": {\n "additionalProperties": false,\n "properties": {\n "change": {\n "enum": [\n "added",\n "removed",\n "modified"\n ],\n "type": "string"\n },\n "identity": {\n "type": "string"\n }\n },\n "required": [\n "identity",\n "change"\n ],\n "type": "object"\n },\n "type": "array"\n },\n "reason": {\n "type": "null"\n },\n "status": {\n "const": "changed",\n "type": "string"\n },\n "total_changes": {\n "maximum": 9007199254740991,\n "minimum": 1,\n "type": "integer"\n }\n },\n "required": [\n "status",\n "total_changes",\n "changes",\n "reason"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "changes": {\n "items": {\n "not": {}\n },\n "maxItems": 0,\n "minItems": 0,\n "type": "array"\n },\n "reason": {\n "type": "null"\n },\n "status": {\n "const": "unchanged",\n "type": "string"\n },\n "total_changes": {\n "const": 0,\n "type": "number"\n }\n },\n "required": [\n "total_changes",\n "changes",\n "status",\n "reason"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "changes": {\n "items": {\n "not": {}\n },\n "maxItems": 0,\n "minItems": 0,\n "type": "array"\n },\n "reason": {\n "type": "string"\n },\n "status": {\n "const": "unknown",\n "type": "string"\n },\n "total_changes": {\n "const": 0,\n "type": "number"\n }\n },\n "required": [\n "total_changes",\n "changes",\n "status",\n "reason"\n ],\n "type": "object"\n }\n ],\n "default": {\n "changes": [],\n "reason": "Dimension was not recorded by this version 1 capture diff.",\n "status": "unknown",\n "total_changes": 0\n }\n },\n "webmcp": {\n "anyOf": [\n {\n "additionalProperties": false,\n "properties": {\n "changes": {\n "items": {\n "additionalProperties": false,\n "properties": {\n "change": {\n "enum": [\n "added",\n "removed",\n "modified"\n ],\n "type": "string"\n },\n "identity": {\n "type": "string"\n }\n },\n "required": [\n "identity",\n "change"\n ],\n "type": "object"\n },\n "type": "array"\n },\n "reason": {\n "type": "null"\n },\n "status": {\n "const": "changed",\n "type": "string"\n },\n "total_changes": {\n "maximum": 9007199254740991,\n "minimum": 1,\n "type": "integer"\n }\n },\n "required": [\n "status",\n "total_changes",\n "changes",\n "reason"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "changes": {\n "items": {\n "not": {}\n },\n "maxItems": 0,\n "minItems": 0,\n "type": "array"\n },\n "reason": {\n "type": "null"\n },\n "status": {\n "const": "unchanged",\n "type": "string"\n },\n "total_changes": {\n "const": 0,\n "type": "number"\n }\n },\n "required": [\n "total_changes",\n "changes",\n "status",\n "reason"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "changes": {\n "items": {\n "not": {}\n },\n "maxItems": 0,\n "minItems": 0,\n "type": "array"\n },\n "reason": {\n "type": "string"\n },\n "status": {\n "const": "unknown",\n "type": "string"\n },\n "total_changes": {\n "const": 0,\n "type": "number"\n }\n },\n "required": [\n "total_changes",\n "changes",\n "status",\n "reason"\n ],\n "type": "object"\n }\n ]\n }\n },\n "required": [\n "dom_structure",\n "scripts",\n "resources",\n "network",\n "metadata",\n "webmcp",\n "accessibility",\n "storage"\n ],\n "type": "object"\n },\n "limitations": {\n "items": {\n "type": "string"\n },\n "type": "array"\n },\n "overall_status": {\n "enum": [\n "changed",\n "unchanged",\n "unknown"\n ],\n "type": "string"\n }\n },\n "required": [\n "overall_status",\n "before_target",\n "after_target",\n "dimensions",\n "limitations"\n ],\n "type": "object"\n }\n ]\n }\n },\n "required": [\n "result",\n "evidence_id",\n "evidence"\n ],\n "type": "object"\n },\n "requiresSession": false,\n "title": "Compare Web Captures"\n },\n {\n "analysisOperation": null,\n "annotations": {\n "destructiveHint": false,\n "idempotentHint": true,\n "openWorldHint": true,\n "readOnlyHint": false\n },\n "description": "Capture the current visible viewport of one configured page as an inline, content-addressed PNG artifact. The operation never scrolls, navigates, or evaluates page JavaScript.",\n "effects": {\n "accessesNetwork": true,\n "changesUiState": false,\n "idempotent": true,\n "launchesProcess": false,\n "mayDiscardData": false,\n "mutatesSession": true,\n "mutatesTarget": false,\n "writesFilesystem": false\n },\n "inputSchema": {\n "$schema": "https://json-schema.org/draft/2020-12/schema",\n "additionalProperties": false,\n "examples": [\n {\n "cdp_endpoint": "http://127.0.0.1:9222",\n "target_id": "TARGET_ID_FROM_LIST_BROWSER_TARGETS"\n }\n ],\n "properties": {\n "allowed_origins": {\n "description": "Value for allowed origins.",\n "items": {\n "minLength": 1,\n "type": "string"\n },\n "type": "array"\n },\n "cdp_endpoint": {\n "description": "Literal loopback Chrome DevTools Protocol endpoint.",\n "minLength": 1,\n "type": "string"\n },\n "target_id": {\n "description": "Exact CDP target identifier selected from the endpoint\'s target listing.",\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "cdp_endpoint",\n "target_id"\n ],\n "type": "object"\n },\n "kind": "browser-provider",\n "name": "capture_web_screenshot",\n "outputSchema": {\n "$defs": {\n "__schema0": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "number"\n },\n {\n "type": "boolean"\n },\n {\n "type": "null"\n },\n {\n "items": {\n "$ref": "#/$defs/__schema0"\n },\n "type": "array"\n },\n {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n }\n ]\n }\n },\n "$schema": "https://json-schema.org/draft/2020-12/schema",\n "additionalProperties": false,\n "properties": {\n "evidence": {\n "additionalProperties": false,\n "properties": {\n "analysis_profile": {\n "additionalProperties": false,\n "properties": {\n "digest": {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n },\n "parameters": {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n },\n "provider": {\n "additionalProperties": false,\n "properties": {\n "id": {\n "minLength": 1,\n "type": "string"\n },\n "name": {\n "minLength": 1,\n "type": "string"\n },\n "version": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "id",\n "name",\n "version"\n ],\n "type": "object"\n }\n },\n "required": [\n "provider",\n "parameters",\n "digest"\n ],\n "type": "object"\n },\n "authority": {\n "enum": [\n "shipped-artifact",\n "controlled-replay",\n "historical-reference",\n "external-service",\n "analyst-inference"\n ],\n "type": "string"\n },\n "confidence": {\n "enum": [\n "observed",\n "derived",\n "inferred"\n ],\n "type": "string"\n },\n "environment": {\n "anyOf": [\n {\n "additionalProperties": false,\n "properties": {\n "architecture": {\n "minLength": 1,\n "type": "string"\n },\n "id": {\n "minLength": 1,\n "type": "string"\n },\n "isolation": {\n "enum": [\n "none",\n "process",\n "container",\n "virtual-machine"\n ],\n "type": "string"\n },\n "platform": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "id",\n "platform",\n "architecture",\n "isolation"\n ],\n "type": "object"\n },\n {\n "type": "null"\n }\n ]\n },\n "evidence_id": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "evidence_links": {\n "items": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "type": "array"\n },\n "limitations": {\n "items": {\n "type": "string"\n },\n "type": "array"\n },\n "locations": {\n "items": {\n "oneOf": [\n {\n "additionalProperties": false,\n "properties": {\n "address": {\n "minLength": 1,\n "type": "string"\n },\n "kind": {\n "const": "address",\n "type": "string"\n }\n },\n "required": [\n "kind",\n "address"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "end": {\n "minLength": 1,\n "type": "string"\n },\n "kind": {\n "const": "address-range",\n "type": "string"\n },\n "start": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "kind",\n "start",\n "end"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "kind": {\n "const": "artifact-path",\n "type": "string"\n },\n "path": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "kind",\n "path"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "kind": {\n "const": "file-offset",\n "type": "string"\n },\n "offset": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "kind",\n "offset"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "end": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "kind": {\n "const": "file-offset-range",\n "type": "string"\n },\n "start": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "kind",\n "start",\n "end"\n ],\n "type": "object"\n }\n ]\n },\n "type": "array"\n },\n "normalized_result": {\n "$ref": "#/$defs/__schema0"\n },\n "operation": {\n "minLength": 1,\n "type": "string"\n },\n "parameters": {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n },\n "predicate_type": {\n "minLength": 1,\n "type": "string"\n },\n "provider": {\n "additionalProperties": false,\n "properties": {\n "id": {\n "minLength": 1,\n "type": "string"\n },\n "name": {\n "minLength": 1,\n "type": "string"\n },\n "version": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "id",\n "name",\n "version"\n ],\n "type": "object"\n },\n "raw_result": {\n "anyOf": [\n {\n "$ref": "#/$defs/__schema0"\n },\n {\n "type": "null"\n }\n ]\n },\n "subject": {\n "anyOf": [\n {\n "additionalProperties": false,\n "properties": {\n "architecture": {\n "anyOf": [\n {\n "enum": [\n "x86",\n "x86_64",\n "arm",\n "arm64"\n ],\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "digest": {\n "additionalProperties": false,\n "properties": {\n "sha256": {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n }\n },\n "required": [\n "sha256"\n ],\n "type": "object"\n },\n "format": {\n "enum": [\n "hopper",\n "analysis-database",\n "mach-o",\n "elf",\n "pe",\n "dos-mz",\n "dos-com",\n "zip",\n "ipa",\n "apk",\n "msix",\n "appx",\n "asar",\n "dmg",\n "pkg",\n "plist",\n "javascript",\n "source-map",\n "directory",\n "file",\n "unknown",\n "mach-o-universal",\n "javascript-bundle",\n "entitlements"\n ],\n "type": "string"\n },\n "local_path": {\n "type": "string"\n },\n "name": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "name",\n "digest",\n "format",\n "architecture",\n "local_path"\n ],\n "type": "object"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "evidence_id",\n "subject",\n "provider",\n "predicate_type",\n "operation",\n "parameters",\n "raw_result",\n "normalized_result",\n "confidence",\n "authority",\n "environment",\n "limitations",\n "locations",\n "evidence_links"\n ],\n "type": "object"\n },\n "evidence_id": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "result": {\n "additionalProperties": false,\n "properties": {\n "artifact": {\n "additionalProperties": false,\n "properties": {\n "bytes": {\n "maximum": 9007199254740991,\n "minimum": 1,\n "type": "integer"\n },\n "data_base64": {\n "type": "string"\n },\n "media_type": {\n "const": "image/png",\n "type": "string"\n },\n "sha256": {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n }\n },\n "required": [\n "sha256",\n "bytes",\n "media_type",\n "data_base64"\n ],\n "type": "object"\n },\n "browser": {\n "additionalProperties": false,\n "properties": {\n "js_version": {\n "type": "string"\n },\n "product": {\n "type": "string"\n },\n "protocol_version": {\n "type": "string"\n },\n "revision": {\n "type": "string"\n },\n "user_agent": {\n "type": "string"\n }\n },\n "required": [\n "product",\n "protocol_version",\n "revision",\n "user_agent",\n "js_version"\n ],\n "type": "object"\n },\n "captured_at": {\n "format": "date-time",\n "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))$",\n "type": "string"\n },\n "completeness": {\n "additionalProperties": false,\n "properties": {\n "attach_limited_sections": {\n "items": {\n "enum": [\n "frames",\n "dom",\n "accessibility",\n "scripts",\n "script_sources",\n "resources",\n "network_requests",\n "network_initiators",\n "console_events",\n "console_text",\n "websocket_connections",\n "websocket_frames",\n "websocket_shapes",\n "json_body_shapes",\n "workers",\n "storage",\n "storage_keys",\n "metadata",\n "webmcp_tools",\n "screenshot",\n "source_maps",\n "timeline"\n ],\n "type": "string"\n },\n "type": "array"\n },\n "conditions": {\n "items": {\n "enum": [\n "complete_within_window",\n "policy_filtered",\n "attach_limited",\n "truncated"\n ],\n "type": "string"\n },\n "maxItems": 3,\n "minItems": 1,\n "type": "array"\n },\n "dropped_events": {\n "additionalProperties": false,\n "properties": {\n "console_events": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "network_requests": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "scripts": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "timeline_events": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "total": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "webmcp_tools": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "websocket_connections": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "websocket_frames": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "scripts",\n "network_requests",\n "console_events",\n "websocket_connections",\n "websocket_frames",\n "webmcp_tools",\n "timeline_events",\n "total"\n ],\n "type": "object"\n },\n "excluded": {\n "items": {\n "additionalProperties": false,\n "properties": {\n "count": {\n "anyOf": [\n {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n {\n "type": "null"\n }\n ]\n },\n "reason": {\n "enum": [\n "disallowed_origin",\n "unsupported_url",\n "unattributed_origin",\n "not_approved",\n "out_of_target_scope",\n "provider_unavailable",\n "invalid_protocol_value"\n ],\n "type": "string"\n },\n "section": {\n "enum": [\n "frames",\n "dom",\n "accessibility",\n "scripts",\n "script_sources",\n "resources",\n "network_requests",\n "network_initiators",\n "console_events",\n "console_text",\n "websocket_connections",\n "websocket_frames",\n "websocket_shapes",\n "json_body_shapes",\n "workers",\n "storage",\n "storage_keys",\n "metadata",\n "webmcp_tools",\n "screenshot",\n "source_maps",\n "timeline"\n ],\n "type": "string"\n }\n },\n "required": [\n "section",\n "reason",\n "count"\n ],\n "type": "object"\n },\n "type": "array"\n },\n "policy_filtered_sections": {\n "items": {\n "enum": [\n "frames",\n "dom",\n "accessibility",\n "scripts",\n "script_sources",\n "resources",\n "network_requests",\n "network_initiators",\n "console_events",\n "console_text",\n "websocket_connections",\n "websocket_frames",\n "websocket_shapes",\n "json_body_shapes",\n "workers",\n "storage",\n "storage_keys",\n "metadata",\n "webmcp_tools",\n "screenshot",\n "source_maps",\n "timeline"\n ],\n "type": "string"\n },\n "type": "array"\n },\n "status": {\n "enum": [\n "complete_within_window",\n "policy_filtered",\n "attach_limited",\n "truncated"\n ],\n "type": "string"\n },\n "truncated_sections": {\n "items": {\n "enum": [\n "frames",\n "dom",\n "accessibility",\n "scripts",\n "script_sources",\n "resources",\n "network_requests",\n "network_initiators",\n "console_events",\n "console_text",\n "websocket_connections",\n "websocket_frames",\n "websocket_shapes",\n "json_body_shapes",\n "workers",\n "storage",\n "storage_keys",\n "metadata",\n "webmcp_tools",\n "screenshot",\n "source_maps",\n "timeline"\n ],\n "type": "string"\n },\n "type": "array"\n },\n "unavailable_sections": {\n "items": {\n "enum": [\n "frames",\n "dom",\n "accessibility",\n "scripts",\n "script_sources",\n "resources",\n "network_requests",\n "network_initiators",\n "console_events",\n "console_text",\n "websocket_connections",\n "websocket_frames",\n "websocket_shapes",\n "json_body_shapes",\n "workers",\n "storage",\n "storage_keys",\n "metadata",\n "webmcp_tools",\n "screenshot",\n "source_maps",\n "timeline"\n ],\n "type": "string"\n },\n "type": "array"\n }\n },\n "required": [\n "status",\n "conditions",\n "policy_filtered_sections",\n "attach_limited_sections",\n "truncated_sections",\n "unavailable_sections",\n "excluded",\n "dropped_events"\n ],\n "type": "object"\n },\n "limitations": {\n "items": {\n "type": "string"\n },\n "type": "array"\n },\n "target": {\n "additionalProperties": false,\n "properties": {\n "origin": {\n "type": "string"\n },\n "target_id": {\n "type": "string"\n },\n "url": {\n "type": "string"\n }\n },\n "required": [\n "target_id",\n "url",\n "origin"\n ],\n "type": "object"\n },\n "viewport": {\n "additionalProperties": false,\n "properties": {\n "height": {\n "maximum": 9007199254740991,\n "minimum": 1,\n "type": "integer"\n },\n "width": {\n "maximum": 9007199254740991,\n "minimum": 1,\n "type": "integer"\n }\n },\n "required": [\n "width",\n "height"\n ],\n "type": "object"\n }\n },\n "required": [\n "browser",\n "target",\n "captured_at",\n "viewport",\n "artifact",\n "completeness",\n "limitations"\n ],\n "type": "object"\n }\n },\n "required": [\n "result",\n "evidence_id",\n "evidence"\n ],\n "type": "object"\n },\n "requiresSession": false,\n "title": "Capture Web Screenshot"\n },\n {\n "analysisOperation": null,\n "annotations": {\n "destructiveHint": false,\n "idempotentHint": true,\n "openWorldHint": false,\n "readOnlyHint": false\n },\n "description": "Compare two self-verifying PNG screenshot artifacts with local pixel metrics. Returns exact changed-pixel ratios and channel deltas without OCR or external services.",\n "effects": {\n "accessesNetwork": false,\n "changesUiState": false,\n "idempotent": true,\n "launchesProcess": false,\n "mayDiscardData": false,\n "mutatesSession": true,\n "mutatesTarget": false,\n "writesFilesystem": false\n },\n "inputSchema": {\n "$schema": "https://json-schema.org/draft/2020-12/schema",\n "additionalProperties": false,\n "examples": [\n {\n "after": {\n "bytes": 70,\n "data_base64": "iVBORw0KGgoAAAANSUhEUgAAAAEAAAABCAYAAAAfFcSJAAAADUlEQVR42mP8/5+hHgAHggJ/PzWvWQAAAABJRU5ErkJggg==",\n "media_type": "image/png",\n "sha256": "153cf6c9a526a63053a37b10234c2fd85df38887c2dc0a800d90abfa6631d01c"\n },\n "before": {\n "bytes": 70,\n "data_base64": "iVBORw0KGgoAAAANSUhEUgAAAAEAAAABCAYAAAAfFcSJAAAADUlEQVR42mP8/5+hHgAHggJ/PzWvWQAAAABJRU5ErkJggg==",\n "media_type": "image/png",\n "sha256": "153cf6c9a526a63053a37b10234c2fd85df38887c2dc0a800d90abfa6631d01c"\n },\n "channel_threshold": 0\n }\n ],\n "properties": {\n "after": {\n "description": "The later or right-hand observation to compare.",\n "properties": {\n "bytes": {\n "description": "Value for bytes.",\n "maximum": 9007199254740991,\n "minimum": 1,\n "type": "integer"\n },\n "data_base64": {\n "description": "Value for data base64.",\n "type": "string"\n },\n "media_type": {\n "const": "image/png",\n "description": "Value for media type.",\n "type": "string"\n },\n "sha256": {\n "description": "Value for sha256.",\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n }\n },\n "required": [\n "sha256",\n "bytes",\n "media_type",\n "data_base64"\n ],\n "type": "object"\n },\n "before": {\n "description": "The earlier or left-hand observation to compare.",\n "properties": {\n "bytes": {\n "description": "Value for bytes.",\n "maximum": 9007199254740991,\n "minimum": 1,\n "type": "integer"\n },\n "data_base64": {\n "description": "Value for data base64.",\n "type": "string"\n },\n "media_type": {\n "const": "image/png",\n "description": "Value for media type.",\n "type": "string"\n },\n "sha256": {\n "description": "Value for sha256.",\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n }\n },\n "required": [\n "sha256",\n "bytes",\n "media_type",\n "data_base64"\n ],\n "type": "object"\n },\n "channel_threshold": {\n "default": 0,\n "description": "Value for channel threshold.",\n "maximum": 255,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "before",\n "after"\n ],\n "type": "object"\n },\n "kind": "browser-provider",\n "name": "compare_web_screenshots",\n "outputSchema": {\n "$defs": {\n "__schema0": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "number"\n },\n {\n "type": "boolean"\n },\n {\n "type": "null"\n },\n {\n "items": {\n "$ref": "#/$defs/__schema0"\n },\n "type": "array"\n },\n {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n }\n ]\n }\n },\n "$schema": "https://json-schema.org/draft/2020-12/schema",\n "additionalProperties": false,\n "properties": {\n "evidence": {\n "additionalProperties": false,\n "properties": {\n "analysis_profile": {\n "additionalProperties": false,\n "properties": {\n "digest": {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n },\n "parameters": {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n },\n "provider": {\n "additionalProperties": false,\n "properties": {\n "id": {\n "minLength": 1,\n "type": "string"\n },\n "name": {\n "minLength": 1,\n "type": "string"\n },\n "version": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "id",\n "name",\n "version"\n ],\n "type": "object"\n }\n },\n "required": [\n "provider",\n "parameters",\n "digest"\n ],\n "type": "object"\n },\n "authority": {\n "enum": [\n "shipped-artifact",\n "controlled-replay",\n "historical-reference",\n "external-service",\n "analyst-inference"\n ],\n "type": "string"\n },\n "confidence": {\n "enum": [\n "observed",\n "derived",\n "inferred"\n ],\n "type": "string"\n },\n "environment": {\n "anyOf": [\n {\n "additionalProperties": false,\n "properties": {\n "architecture": {\n "minLength": 1,\n "type": "string"\n },\n "id": {\n "minLength": 1,\n "type": "string"\n },\n "isolation": {\n "enum": [\n "none",\n "process",\n "container",\n "virtual-machine"\n ],\n "type": "string"\n },\n "platform": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "id",\n "platform",\n "architecture",\n "isolation"\n ],\n "type": "object"\n },\n {\n "type": "null"\n }\n ]\n },\n "evidence_id": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "evidence_links": {\n "items": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "type": "array"\n },\n "limitations": {\n "items": {\n "type": "string"\n },\n "type": "array"\n },\n "locations": {\n "items": {\n "oneOf": [\n {\n "additionalProperties": false,\n "properties": {\n "address": {\n "minLength": 1,\n "type": "string"\n },\n "kind": {\n "const": "address",\n "type": "string"\n }\n },\n "required": [\n "kind",\n "address"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "end": {\n "minLength": 1,\n "type": "string"\n },\n "kind": {\n "const": "address-range",\n "type": "string"\n },\n "start": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "kind",\n "start",\n "end"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "kind": {\n "const": "artifact-path",\n "type": "string"\n },\n "path": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "kind",\n "path"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "kind": {\n "const": "file-offset",\n "type": "string"\n },\n "offset": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "kind",\n "offset"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "end": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "kind": {\n "const": "file-offset-range",\n "type": "string"\n },\n "start": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "kind",\n "start",\n "end"\n ],\n "type": "object"\n }\n ]\n },\n "type": "array"\n },\n "normalized_result": {\n "$ref": "#/$defs/__schema0"\n },\n "operation": {\n "minLength": 1,\n "type": "string"\n },\n "parameters": {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n },\n "predicate_type": {\n "minLength": 1,\n "type": "string"\n },\n "provider": {\n "additionalProperties": false,\n "properties": {\n "id": {\n "minLength": 1,\n "type": "string"\n },\n "name": {\n "minLength": 1,\n "type": "string"\n },\n "version": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "id",\n "name",\n "version"\n ],\n "type": "object"\n },\n "raw_result": {\n "anyOf": [\n {\n "$ref": "#/$defs/__schema0"\n },\n {\n "type": "null"\n }\n ]\n },\n "subject": {\n "anyOf": [\n {\n "additionalProperties": false,\n "properties": {\n "architecture": {\n "anyOf": [\n {\n "enum": [\n "x86",\n "x86_64",\n "arm",\n "arm64"\n ],\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "digest": {\n "additionalProperties": false,\n "properties": {\n "sha256": {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n }\n },\n "required": [\n "sha256"\n ],\n "type": "object"\n },\n "format": {\n "enum": [\n "hopper",\n "analysis-database",\n "mach-o",\n "elf",\n "pe",\n "dos-mz",\n "dos-com",\n "zip",\n "ipa",\n "apk",\n "msix",\n "appx",\n "asar",\n "dmg",\n "pkg",\n "plist",\n "javascript",\n "source-map",\n "directory",\n "file",\n "unknown",\n "mach-o-universal",\n "javascript-bundle",\n "entitlements"\n ],\n "type": "string"\n },\n "local_path": {\n "type": "string"\n },\n "name": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "name",\n "digest",\n "format",\n "architecture",\n "local_path"\n ],\n "type": "object"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "evidence_id",\n "subject",\n "provider",\n "predicate_type",\n "operation",\n "parameters",\n "raw_result",\n "normalized_result",\n "confidence",\n "authority",\n "environment",\n "limitations",\n "locations",\n "evidence_links"\n ],\n "type": "object"\n },\n "evidence_id": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "result": {\n "oneOf": [\n {\n "additionalProperties": false,\n "properties": {\n "after": {\n "additionalProperties": false,\n "properties": {\n "height": {\n "maximum": 9007199254740991,\n "minimum": 1,\n "type": "integer"\n },\n "width": {\n "maximum": 9007199254740991,\n "minimum": 1,\n "type": "integer"\n }\n },\n "required": [\n "width",\n "height"\n ],\n "type": "object"\n },\n "before": {\n "additionalProperties": false,\n "properties": {\n "height": {\n "maximum": 9007199254740991,\n "minimum": 1,\n "type": "integer"\n },\n "width": {\n "maximum": 9007199254740991,\n "minimum": 1,\n "type": "integer"\n }\n },\n "required": [\n "width",\n "height"\n ],\n "type": "object"\n },\n "changed_pixels": {\n "const": 0,\n "type": "number"\n },\n "changed_ratio": {\n "const": 0,\n "type": "number"\n },\n "channel_threshold": {\n "maximum": 255,\n "minimum": 0,\n "type": "integer"\n },\n "compared_pixels": {\n "exclusiveMinimum": 0,\n "maximum": 9007199254740991,\n "type": "integer"\n },\n "limitations": {\n "items": {\n "type": "string"\n },\n "type": "array"\n },\n "maximum_channel_delta": {\n "maximum": 255,\n "minimum": 0,\n "type": "integer"\n },\n "mean_absolute_channel_delta": {\n "maximum": 255,\n "minimum": 0,\n "type": "number"\n },\n "status": {\n "const": "identical",\n "type": "string"\n }\n },\n "required": [\n "before",\n "after",\n "channel_threshold",\n "limitations",\n "status",\n "compared_pixels",\n "changed_pixels",\n "changed_ratio",\n "maximum_channel_delta",\n "mean_absolute_channel_delta"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "after": {\n "additionalProperties": false,\n "properties": {\n "height": {\n "maximum": 9007199254740991,\n "minimum": 1,\n "type": "integer"\n },\n "width": {\n "maximum": 9007199254740991,\n "minimum": 1,\n "type": "integer"\n }\n },\n "required": [\n "width",\n "height"\n ],\n "type": "object"\n },\n "before": {\n "additionalProperties": false,\n "properties": {\n "height": {\n "maximum": 9007199254740991,\n "minimum": 1,\n "type": "integer"\n },\n "width": {\n "maximum": 9007199254740991,\n "minimum": 1,\n "type": "integer"\n }\n },\n "required": [\n "width",\n "height"\n ],\n "type": "object"\n },\n "changed_pixels": {\n "exclusiveMinimum": 0,\n "maximum": 9007199254740991,\n "type": "integer"\n },\n "changed_ratio": {\n "exclusiveMinimum": 0,\n "maximum": 1,\n "type": "number"\n },\n "channel_threshold": {\n "maximum": 255,\n "minimum": 0,\n "type": "integer"\n },\n "compared_pixels": {\n "exclusiveMinimum": 0,\n "maximum": 9007199254740991,\n "type": "integer"\n },\n "limitations": {\n "items": {\n "type": "string"\n },\n "type": "array"\n },\n "maximum_channel_delta": {\n "exclusiveMinimum": 0,\n "maximum": 255,\n "type": "integer"\n },\n "mean_absolute_channel_delta": {\n "exclusiveMinimum": 0,\n "maximum": 255,\n "type": "number"\n },\n "status": {\n "const": "different",\n "type": "string"\n }\n },\n "required": [\n "before",\n "after",\n "channel_threshold",\n "limitations",\n "status",\n "compared_pixels",\n "changed_pixels",\n "changed_ratio",\n "maximum_channel_delta",\n "mean_absolute_channel_delta"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "after": {\n "additionalProperties": false,\n "properties": {\n "height": {\n "maximum": 9007199254740991,\n "minimum": 1,\n "type": "integer"\n },\n "width": {\n "maximum": 9007199254740991,\n "minimum": 1,\n "type": "integer"\n }\n },\n "required": [\n "width",\n "height"\n ],\n "type": "object"\n },\n "before": {\n "additionalProperties": false,\n "properties": {\n "height": {\n "maximum": 9007199254740991,\n "minimum": 1,\n "type": "integer"\n },\n "width": {\n "maximum": 9007199254740991,\n "minimum": 1,\n "type": "integer"\n }\n },\n "required": [\n "width",\n "height"\n ],\n "type": "object"\n },\n "changed_pixels": {\n "type": "null"\n },\n "changed_ratio": {\n "type": "null"\n },\n "channel_threshold": {\n "maximum": 255,\n "minimum": 0,\n "type": "integer"\n },\n "compared_pixels": {\n "const": 0,\n "type": "number"\n },\n "limitations": {\n "items": {\n "type": "string"\n },\n "type": "array"\n },\n "maximum_channel_delta": {\n "type": "null"\n },\n "mean_absolute_channel_delta": {\n "type": "null"\n },\n "status": {\n "const": "dimension_mismatch",\n "type": "string"\n }\n },\n "required": [\n "before",\n "after",\n "channel_threshold",\n "limitations",\n "status",\n "compared_pixels",\n "changed_pixels",\n "changed_ratio",\n "maximum_channel_delta",\n "mean_absolute_channel_delta"\n ],\n "type": "object"\n }\n ]\n }\n },\n "required": [\n "result",\n "evidence_id",\n "evidence"\n ],\n "type": "object"\n },\n "requiresSession": false,\n "title": "Compare Web Screenshots"\n },\n {\n "analysisOperation": null,\n "annotations": {\n "destructiveHint": true,\n "idempotentHint": false,\n "openWorldHint": true,\n "readOnlyHint": false\n },\n "description": "Run a controlled browser scenario when passive observation cannot exercise the application. Launch the selected executable or connect to a loopback CDP target, provide a start URL and actions, and select storage or artifacts when needed. Environment, empty storage, and a URL-only final capture are defaults. capture.network selects request_body, response_body, and header_values independently; selected content is returned inline with transaction and event references, byte digests, and explicit unavailable states. Credentials and declared secrets are redacted. Agents can run their own local fixture servers to control application responses. Actions run until completion or cancellation unless timeout_ms is set. Results are returned inline.",\n "effects": {\n "accessesNetwork": true,\n "changesUiState": true,\n "idempotent": false,\n "launchesProcess": true,\n "mayDiscardData": true,\n "mutatesSession": true,\n "mutatesTarget": true,\n "writesFilesystem": true\n },\n "inputSchema": {\n "$schema": "https://json-schema.org/draft/2020-12/schema",\n "additionalProperties": false,\n "examples": [\n {\n "actions": [\n {\n "action": "wait_for_timeout",\n "duration_ms": 250,\n "step_id": "settle"\n }\n ],\n "browser": {\n "executable_path": "/opt/chromium/chrome",\n "mode": "launch"\n },\n "start_url": {\n "query": [],\n "url": "https://app.example.test/"\n }\n }\n ],\n "properties": {\n "actions": {\n "description": "Required sequence of explicit browser actions.",\n "items": {\n "oneOf": [\n {\n "additionalProperties": false,\n "properties": {\n "action": {\n "const": "goto",\n "description": "Value for action.",\n "type": "string"\n },\n "destination": {\n "additionalProperties": false,\n "description": "Value for destination.",\n "properties": {\n "query": {\n "default": [],\n "description": "Non-empty feature or text query to investigate.",\n "items": {\n "additionalProperties": false,\n "properties": {\n "name": {\n "description": "Exact name used by this operation.",\n "minLength": 1,\n "type": "string"\n },\n "value": {\n "description": "Value for value.",\n "oneOf": [\n {\n "additionalProperties": false,\n "properties": {\n "source": {\n "const": "literal",\n "description": "Value for source.",\n "type": "string"\n },\n "value": {\n "description": "Value for value.",\n "type": "string"\n }\n },\n "required": [\n "source",\n "value"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "secret_id": {\n "description": "Value for secret id.",\n "pattern": "^[A-Za-z][A-Za-z0-9._-]*$",\n "type": "string"\n },\n "source": {\n "const": "secret",\n "description": "Value for source.",\n "type": "string"\n }\n },\n "required": [\n "source",\n "secret_id"\n ],\n "type": "object"\n }\n ]\n }\n },\n "required": [\n "name",\n "value"\n ],\n "type": "object"\n },\n "type": "array"\n },\n "url": {\n "description": "Value for url.",\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "url"\n ],\n "type": "object"\n },\n "step_id": {\n "description": "Value for step id.",\n "pattern": "^[A-Za-z][A-Za-z0-9._-]*$",\n "type": "string"\n },\n "timeout_ms": {\n "description": "Optional action deadline in milliseconds; omitted means wait until completion or request cancellation.",\n "maximum": 9007199254740991,\n "minimum": 1,\n "type": "integer"\n },\n "wait_until": {\n "description": "Value for wait until.",\n "enum": [\n "commit",\n "domcontentloaded",\n "load"\n ],\n "type": "string"\n }\n },\n "required": [\n "step_id",\n "action",\n "destination",\n "wait_until"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "action": {\n "const": "click",\n "description": "Value for action.",\n "type": "string"\n },\n "button": {\n "default": "left",\n "description": "Value for button.",\n "enum": [\n "left",\n "middle",\n "right"\n ],\n "type": "string"\n },\n "click_count": {\n "default": 1,\n "description": "Value for click count.",\n "exclusiveMinimum": 0,\n "maximum": 9007199254740991,\n "type": "integer"\n },\n "locator": {\n "description": "Value for locator.",\n "oneOf": [\n {\n "additionalProperties": false,\n "properties": {\n "kind": {\n "const": "test_id",\n "description": "Value for kind.",\n "type": "string"\n },\n "value": {\n "description": "Value for value.",\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "kind",\n "value"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "kind": {\n "const": "role",\n "description": "Value for kind.",\n "type": "string"\n },\n "name": {\n "description": "Exact name used by this operation.",\n "minLength": 1,\n "type": "string"\n },\n "role": {\n "description": "Value for role.",\n "enum": [\n "button",\n "checkbox",\n "combobox",\n "dialog",\n "link",\n "listbox",\n "menuitem",\n "option",\n "radio",\n "slider",\n "spinbutton",\n "switch",\n "tab",\n "textbox"\n ],\n "type": "string"\n }\n },\n "required": [\n "kind",\n "role",\n "name"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "kind": {\n "const": "css",\n "description": "Value for kind.",\n "type": "string"\n },\n "selector": {\n "description": "Value for selector.",\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "kind",\n "selector"\n ],\n "type": "object"\n }\n ]\n },\n "step_id": {\n "description": "Value for step id.",\n "pattern": "^[A-Za-z][A-Za-z0-9._-]*$",\n "type": "string"\n },\n "timeout_ms": {\n "description": "Optional action deadline in milliseconds; omitted means wait until completion or request cancellation.",\n "maximum": 9007199254740991,\n "minimum": 1,\n "type": "integer"\n }\n },\n "required": [\n "step_id",\n "action",\n "locator"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "action": {\n "const": "fill",\n "description": "Value for action.",\n "type": "string"\n },\n "locator": {\n "description": "Value for locator.",\n "oneOf": [\n {\n "additionalProperties": false,\n "properties": {\n "kind": {\n "const": "test_id",\n "description": "Value for kind.",\n "type": "string"\n },\n "value": {\n "description": "Value for value.",\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "kind",\n "value"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "kind": {\n "const": "role",\n "description": "Value for kind.",\n "type": "string"\n },\n "name": {\n "description": "Exact name used by this operation.",\n "minLength": 1,\n "type": "string"\n },\n "role": {\n "description": "Value for role.",\n "enum": [\n "button",\n "checkbox",\n "combobox",\n "dialog",\n "link",\n "listbox",\n "menuitem",\n "option",\n "radio",\n "slider",\n "spinbutton",\n "switch",\n "tab",\n "textbox"\n ],\n "type": "string"\n }\n },\n "required": [\n "kind",\n "role",\n "name"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "kind": {\n "const": "css",\n "description": "Value for kind.",\n "type": "string"\n },\n "selector": {\n "description": "Value for selector.",\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "kind",\n "selector"\n ],\n "type": "object"\n }\n ]\n },\n "step_id": {\n "description": "Value for step id.",\n "pattern": "^[A-Za-z][A-Za-z0-9._-]*$",\n "type": "string"\n },\n "timeout_ms": {\n "description": "Optional action deadline in milliseconds; omitted means wait until completion or request cancellation.",\n "maximum": 9007199254740991,\n "minimum": 1,\n "type": "integer"\n },\n "value": {\n "description": "Value for value.",\n "oneOf": [\n {\n "additionalProperties": false,\n "properties": {\n "source": {\n "const": "literal",\n "description": "Value for source.",\n "type": "string"\n },\n "value": {\n "description": "Value for value.",\n "type": "string"\n }\n },\n "required": [\n "source",\n "value"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "secret_id": {\n "description": "Value for secret id.",\n "pattern": "^[A-Za-z][A-Za-z0-9._-]*$",\n "type": "string"\n },\n "source": {\n "const": "secret",\n "description": "Value for source.",\n "type": "string"\n }\n },\n "required": [\n "source",\n "secret_id"\n ],\n "type": "object"\n }\n ]\n }\n },\n "required": [\n "step_id",\n "action",\n "locator",\n "value"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "action": {\n "const": "press",\n "description": "Value for action.",\n "type": "string"\n },\n "key": {\n "description": "Value for key.",\n "minLength": 1,\n "type": "string"\n },\n "locator": {\n "description": "Value for locator.",\n "oneOf": [\n {\n "additionalProperties": false,\n "properties": {\n "kind": {\n "const": "test_id",\n "description": "Value for kind.",\n "type": "string"\n },\n "value": {\n "description": "Value for value.",\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "kind",\n "value"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "kind": {\n "const": "role",\n "description": "Value for kind.",\n "type": "string"\n },\n "name": {\n "description": "Exact name used by this operation.",\n "minLength": 1,\n "type": "string"\n },\n "role": {\n "description": "Value for role.",\n "enum": [\n "button",\n "checkbox",\n "combobox",\n "dialog",\n "link",\n "listbox",\n "menuitem",\n "option",\n "radio",\n "slider",\n "spinbutton",\n "switch",\n "tab",\n "textbox"\n ],\n "type": "string"\n }\n },\n "required": [\n "kind",\n "role",\n "name"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "kind": {\n "const": "css",\n "description": "Value for kind.",\n "type": "string"\n },\n "selector": {\n "description": "Value for selector.",\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "kind",\n "selector"\n ],\n "type": "object"\n }\n ]\n },\n "step_id": {\n "description": "Value for step id.",\n "pattern": "^[A-Za-z][A-Za-z0-9._-]*$",\n "type": "string"\n },\n "timeout_ms": {\n "description": "Optional action deadline in milliseconds; omitted means wait until completion or request cancellation.",\n "maximum": 9007199254740991,\n "minimum": 1,\n "type": "integer"\n }\n },\n "required": [\n "step_id",\n "action",\n "locator",\n "key"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "action": {\n "const": "select_option",\n "description": "Value for action.",\n "type": "string"\n },\n "locator": {\n "description": "Value for locator.",\n "oneOf": [\n {\n "additionalProperties": false,\n "properties": {\n "kind": {\n "const": "test_id",\n "description": "Value for kind.",\n "type": "string"\n },\n "value": {\n "description": "Value for value.",\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "kind",\n "value"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "kind": {\n "const": "role",\n "description": "Value for kind.",\n "type": "string"\n },\n "name": {\n "description": "Exact name used by this operation.",\n "minLength": 1,\n "type": "string"\n },\n "role": {\n "description": "Value for role.",\n "enum": [\n "button",\n "checkbox",\n "combobox",\n "dialog",\n "link",\n "listbox",\n "menuitem",\n "option",\n "radio",\n "slider",\n "spinbutton",\n "switch",\n "tab",\n "textbox"\n ],\n "type": "string"\n }\n },\n "required": [\n "kind",\n "role",\n "name"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "kind": {\n "const": "css",\n "description": "Value for kind.",\n "type": "string"\n },\n "selector": {\n "description": "Value for selector.",\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "kind",\n "selector"\n ],\n "type": "object"\n }\n ]\n },\n "step_id": {\n "description": "Value for step id.",\n "pattern": "^[A-Za-z][A-Za-z0-9._-]*$",\n "type": "string"\n },\n "timeout_ms": {\n "description": "Optional action deadline in milliseconds; omitted means wait until completion or request cancellation.",\n "maximum": 9007199254740991,\n "minimum": 1,\n "type": "integer"\n },\n "value": {\n "description": "Value for value.",\n "oneOf": [\n {\n "additionalProperties": false,\n "properties": {\n "source": {\n "const": "literal",\n "description": "Value for source.",\n "type": "string"\n },\n "value": {\n "description": "Value for value.",\n "type": "string"\n }\n },\n "required": [\n "source",\n "value"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "secret_id": {\n "description": "Value for secret id.",\n "pattern": "^[A-Za-z][A-Za-z0-9._-]*$",\n "type": "string"\n },\n "source": {\n "const": "secret",\n "description": "Value for source.",\n "type": "string"\n }\n },\n "required": [\n "source",\n "secret_id"\n ],\n "type": "object"\n }\n ]\n }\n },\n "required": [\n "step_id",\n "action",\n "locator",\n "value"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "action": {\n "description": "Value for action.",\n "enum": [\n "check",\n "uncheck"\n ],\n "type": "string"\n },\n "locator": {\n "description": "Value for locator.",\n "oneOf": [\n {\n "additionalProperties": false,\n "properties": {\n "kind": {\n "const": "test_id",\n "description": "Value for kind.",\n "type": "string"\n },\n "value": {\n "description": "Value for value.",\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "kind",\n "value"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "kind": {\n "const": "role",\n "description": "Value for kind.",\n "type": "string"\n },\n "name": {\n "description": "Exact name used by this operation.",\n "minLength": 1,\n "type": "string"\n },\n "role": {\n "description": "Value for role.",\n "enum": [\n "button",\n "checkbox",\n "combobox",\n "dialog",\n "link",\n "listbox",\n "menuitem",\n "option",\n "radio",\n "slider",\n "spinbutton",\n "switch",\n "tab",\n "textbox"\n ],\n "type": "string"\n }\n },\n "required": [\n "kind",\n "role",\n "name"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "kind": {\n "const": "css",\n "description": "Value for kind.",\n "type": "string"\n },\n "selector": {\n "description": "Value for selector.",\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "kind",\n "selector"\n ],\n "type": "object"\n }\n ]\n },\n "step_id": {\n "description": "Value for step id.",\n "pattern": "^[A-Za-z][A-Za-z0-9._-]*$",\n "type": "string"\n },\n "timeout_ms": {\n "description": "Optional action deadline in milliseconds; omitted means wait until completion or request cancellation.",\n "maximum": 9007199254740991,\n "minimum": 1,\n "type": "integer"\n }\n },\n "required": [\n "step_id",\n "action",\n "locator"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "action": {\n "const": "wait_for",\n "description": "Value for action.",\n "type": "string"\n },\n "locator": {\n "description": "Value for locator.",\n "oneOf": [\n {\n "additionalProperties": false,\n "properties": {\n "kind": {\n "const": "test_id",\n "description": "Value for kind.",\n "type": "string"\n },\n "value": {\n "description": "Value for value.",\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "kind",\n "value"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "kind": {\n "const": "role",\n "description": "Value for kind.",\n "type": "string"\n },\n "name": {\n "description": "Exact name used by this operation.",\n "minLength": 1,\n "type": "string"\n },\n "role": {\n "description": "Value for role.",\n "enum": [\n "button",\n "checkbox",\n "combobox",\n "dialog",\n "link",\n "listbox",\n "menuitem",\n "option",\n "radio",\n "slider",\n "spinbutton",\n "switch",\n "tab",\n "textbox"\n ],\n "type": "string"\n }\n },\n "required": [\n "kind",\n "role",\n "name"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "kind": {\n "const": "css",\n "description": "Value for kind.",\n "type": "string"\n },\n "selector": {\n "description": "Value for selector.",\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "kind",\n "selector"\n ],\n "type": "object"\n }\n ]\n },\n "state": {\n "description": "Value for state.",\n "enum": [\n "attached",\n "detached",\n "visible",\n "hidden"\n ],\n "type": "string"\n },\n "step_id": {\n "description": "Value for step id.",\n "pattern": "^[A-Za-z][A-Za-z0-9._-]*$",\n "type": "string"\n },\n "timeout_ms": {\n "description": "Optional action deadline in milliseconds; omitted means wait until completion or request cancellation.",\n "maximum": 9007199254740991,\n "minimum": 1,\n "type": "integer"\n }\n },\n "required": [\n "step_id",\n "action",\n "locator",\n "state"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "action": {\n "const": "wait_for_timeout",\n "description": "Value for action.",\n "type": "string"\n },\n "duration_ms": {\n "description": "Wait this many milliseconds; the wait ends early on cancellation.",\n "maximum": 9007199254740991,\n "minimum": 1,\n "type": "integer"\n },\n "step_id": {\n "description": "Value for step id.",\n "pattern": "^[A-Za-z][A-Za-z0-9._-]*$",\n "type": "string"\n }\n },\n "required": [\n "step_id",\n "action",\n "duration_ms"\n ],\n "type": "object"\n }\n ]\n },\n "minItems": 1,\n "type": "array"\n },\n "browser": {\n "description": "Required launch/connect selection. Launch uses the selected executable and an owned temporary profile; connect uses one loopback CDP endpoint and target.",\n "oneOf": [\n {\n "additionalProperties": false,\n "properties": {\n "executable_path": {\n "description": "Local filesystem path for executable.",\n "minLength": 1,\n "type": "string"\n },\n "headless": {\n "default": true,\n "description": "Run without a visible browser window; defaults to true and can be disabled when the host supports a display.",\n "type": "boolean"\n },\n "mode": {\n "const": "launch",\n "description": "Operation mode that selects the requested behavior.",\n "type": "string"\n }\n },\n "required": [\n "mode",\n "executable_path"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "cdp_endpoint": {\n "description": "Literal loopback Chrome DevTools Protocol endpoint.",\n "minLength": 1,\n "type": "string"\n },\n "mode": {\n "const": "connect",\n "description": "Operation mode that selects the requested behavior.",\n "type": "string"\n },\n "target_id": {\n "description": "Exact CDP target identifier selected from the endpoint\'s target listing.",\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "mode",\n "cdp_endpoint",\n "target_id"\n ],\n "type": "object"\n }\n ]\n },\n "capture": {\n "additionalProperties": false,\n "default": {\n "after_each_step": [],\n "at_end": [\n "url"\n ],\n "events": [],\n "network": {\n "header_values": false,\n "request_body": false,\n "response_body": false\n }\n },\n "description": "Optional retained artifacts and event families. Defaults to only a final sanitized URL; request screenshots, DOM, accessibility, history, storage, and event capture explicitly.",\n "properties": {\n "after_each_step": {\n "default": [],\n "description": "Value for after each step.",\n "items": {\n "enum": [\n "screenshot",\n "dom",\n "accessibility",\n "url",\n "history",\n "storage"\n ],\n "type": "string"\n },\n "type": "array"\n },\n "at_end": {\n "default": [\n "url"\n ],\n "description": "Value for at end.",\n "items": {\n "enum": [\n "screenshot",\n "dom",\n "accessibility",\n "url",\n "history",\n "storage"\n ],\n "type": "string"\n },\n "type": "array"\n },\n "events": {\n "default": [],\n "description": "Value for events.",\n "items": {\n "enum": [\n "console",\n "page-errors",\n "network",\n "websockets",\n "frames",\n "workers",\n "popups",\n "downloads"\n ],\n "type": "string"\n },\n "type": "array"\n },\n "network": {\n "additionalProperties": false,\n "default": {\n "header_values": false,\n "request_body": false,\n "response_body": false\n },\n "description": "Value for network.",\n "properties": {\n "header_values": {\n "default": false,\n "description": "Value for header values.",\n "type": "boolean"\n },\n "request_body": {\n "default": false,\n "description": "Value for request body.",\n "type": "boolean"\n },\n "response_body": {\n "default": false,\n "description": "Value for response body.",\n "type": "boolean"\n }\n },\n "type": "object"\n }\n },\n "type": "object"\n },\n "environment": {\n "additionalProperties": false,\n "default": {\n "color_scheme": "light",\n "locale": "en-US",\n "reduced_motion": "reduce",\n "service_workers": "block",\n "timezone": "UTC",\n "viewport": {\n "device_scale_factor": 1,\n "height": 720,\n "width": 1280\n }\n },\n "description": "Optional deterministic browser settings. Defaults to 1280x720, en-US, UTC, light mode, reduced motion, and blocked service workers.",\n "properties": {\n "color_scheme": {\n "default": "light",\n "description": "Value for color scheme.",\n "enum": [\n "light",\n "dark",\n "no-preference"\n ],\n "type": "string"\n },\n "locale": {\n "default": "en-US",\n "description": "Value for locale.",\n "minLength": 2,\n "pattern": "^[A-Za-z0-9]+(?:-[A-Za-z0-9]+)*$",\n "type": "string"\n },\n "reduced_motion": {\n "default": "reduce",\n "description": "Value for reduced motion.",\n "enum": [\n "reduce",\n "no-preference"\n ],\n "type": "string"\n },\n "service_workers": {\n "default": "block",\n "description": "Value for service workers.",\n "enum": [\n "allow",\n "block"\n ],\n "type": "string"\n },\n "timezone": {\n "default": "UTC",\n "description": "Value for timezone.",\n "minLength": 1,\n "pattern": "^[A-Za-z0-9_+-]+(?:\\\\/[A-Za-z0-9_+-]+)*$",\n "type": "string"\n },\n "viewport": {\n "additionalProperties": false,\n "default": {\n "device_scale_factor": 1,\n "height": 720,\n "width": 1280\n },\n "description": "Value for viewport.",\n "properties": {\n "device_scale_factor": {\n "default": 1,\n "description": "Value for device scale factor.",\n "exclusiveMinimum": 0,\n "type": "number"\n },\n "height": {\n "default": 720,\n "description": "Value for height.",\n "exclusiveMinimum": 0,\n "maximum": 9007199254740991,\n "type": "integer"\n },\n "width": {\n "default": 1280,\n "description": "Value for width.",\n "exclusiveMinimum": 0,\n "maximum": 9007199254740991,\n "type": "integer"\n }\n },\n "type": "object"\n }\n },\n "type": "object"\n },\n "secrets": {\n "default": [],\n "description": "Optional environment-variable references for values used in actions, URLs, storage, or replay, and for redacting matching observed text. Secret values are never supplied inline.",\n "items": {\n "additionalProperties": false,\n "properties": {\n "environment_variable": {\n "description": "Value for environment variable.",\n "minLength": 1,\n "type": "string"\n },\n "secret_id": {\n "description": "Value for secret id.",\n "pattern": "^[A-Za-z][A-Za-z0-9._-]*$",\n "type": "string"\n }\n },\n "required": [\n "secret_id",\n "environment_variable"\n ],\n "type": "object"\n },\n "type": "array"\n },\n "start_url": {\n "additionalProperties": false,\n "description": "Required initial HTTP(S) URL. Query values must be declared separately as public literals or secret references.",\n "properties": {\n "query": {\n "default": [],\n "description": "Non-empty feature or text query to investigate.",\n "items": {\n "additionalProperties": false,\n "properties": {\n "name": {\n "description": "Exact name used by this operation.",\n "minLength": 1,\n "type": "string"\n },\n "value": {\n "description": "Value for value.",\n "oneOf": [\n {\n "additionalProperties": false,\n "properties": {\n "source": {\n "const": "literal",\n "description": "Value for source.",\n "type": "string"\n },\n "value": {\n "description": "Value for value.",\n "type": "string"\n }\n },\n "required": [\n "source",\n "value"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "secret_id": {\n "description": "Value for secret id.",\n "pattern": "^[A-Za-z][A-Za-z0-9._-]*$",\n "type": "string"\n },\n "source": {\n "const": "secret",\n "description": "Value for source.",\n "type": "string"\n }\n },\n "required": [\n "source",\n "secret_id"\n ],\n "type": "object"\n }\n ]\n }\n },\n "required": [\n "name",\n "value"\n ],\n "type": "object"\n },\n "type": "array"\n },\n "url": {\n "description": "Value for url.",\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "url"\n ],\n "type": "object"\n },\n "storage": {\n "additionalProperties": false,\n "description": "Optional initial cookies, local storage, or session storage. Defaults to empty; every supplied value and origin must be declared and within the allowed origins.",\n "properties": {\n "cookies": {\n "description": "Value for cookies.",\n "items": {\n "additionalProperties": false,\n "properties": {\n "destination": {\n "additionalProperties": false,\n "description": "Value for destination.",\n "properties": {\n "query": {\n "default": [],\n "description": "Non-empty feature or text query to investigate.",\n "items": {\n "additionalProperties": false,\n "properties": {\n "name": {\n "description": "Exact name used by this operation.",\n "minLength": 1,\n "type": "string"\n },\n "value": {\n "description": "Value for value.",\n "oneOf": [\n {\n "additionalProperties": false,\n "properties": {\n "source": {\n "const": "literal",\n "description": "Value for source.",\n "type": "string"\n },\n "value": {\n "description": "Value for value.",\n "type": "string"\n }\n },\n "required": [\n "source",\n "value"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "secret_id": {\n "description": "Value for secret id.",\n "pattern": "^[A-Za-z][A-Za-z0-9._-]*$",\n "type": "string"\n },\n "source": {\n "const": "secret",\n "description": "Value for source.",\n "type": "string"\n }\n },\n "required": [\n "source",\n "secret_id"\n ],\n "type": "object"\n }\n ]\n }\n },\n "required": [\n "name",\n "value"\n ],\n "type": "object"\n },\n "type": "array"\n },\n "url": {\n "description": "Value for url.",\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "url"\n ],\n "type": "object"\n },\n "http_only": {\n "description": "Value for http only.",\n "type": "boolean"\n },\n "name": {\n "description": "Exact name used by this operation.",\n "minLength": 1,\n "type": "string"\n },\n "same_site": {\n "description": "Value for same site.",\n "enum": [\n "Strict",\n "Lax",\n "None"\n ],\n "type": "string"\n },\n "secure": {\n "description": "Value for secure.",\n "type": "boolean"\n },\n "value": {\n "description": "Value for value.",\n "oneOf": [\n {\n "additionalProperties": false,\n "properties": {\n "source": {\n "const": "literal",\n "description": "Value for source.",\n "type": "string"\n },\n "value": {\n "description": "Value for value.",\n "type": "string"\n }\n },\n "required": [\n "source",\n "value"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "secret_id": {\n "description": "Value for secret id.",\n "pattern": "^[A-Za-z][A-Za-z0-9._-]*$",\n "type": "string"\n },\n "source": {\n "const": "secret",\n "description": "Value for source.",\n "type": "string"\n }\n },\n "required": [\n "source",\n "secret_id"\n ],\n "type": "object"\n }\n ]\n }\n },\n "required": [\n "name",\n "value",\n "destination",\n "http_only",\n "secure",\n "same_site"\n ],\n "type": "object"\n },\n "type": "array"\n },\n "local_storage": {\n "description": "Value for local storage.",\n "items": {\n "additionalProperties": false,\n "properties": {\n "entries": {\n "description": "Value for entries.",\n "items": {\n "additionalProperties": false,\n "properties": {\n "name": {\n "description": "Exact name used by this operation.",\n "minLength": 1,\n "type": "string"\n },\n "value": {\n "description": "Value for value.",\n "oneOf": [\n {\n "additionalProperties": false,\n "properties": {\n "source": {\n "const": "literal",\n "description": "Value for source.",\n "type": "string"\n },\n "value": {\n "description": "Value for value.",\n "type": "string"\n }\n },\n "required": [\n "source",\n "value"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "secret_id": {\n "description": "Value for secret id.",\n "pattern": "^[A-Za-z][A-Za-z0-9._-]*$",\n "type": "string"\n },\n "source": {\n "const": "secret",\n "description": "Value for source.",\n "type": "string"\n }\n },\n "required": [\n "source",\n "secret_id"\n ],\n "type": "object"\n }\n ]\n }\n },\n "required": [\n "name",\n "value"\n ],\n "type": "object"\n },\n "type": "array"\n },\n "origin": {\n "description": "Value for origin.",\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "origin",\n "entries"\n ],\n "type": "object"\n },\n "type": "array"\n },\n "session_storage": {\n "description": "Value for session storage.",\n "items": {\n "additionalProperties": false,\n "properties": {\n "entries": {\n "description": "Value for entries.",\n "items": {\n "additionalProperties": false,\n "properties": {\n "name": {\n "description": "Exact name used by this operation.",\n "minLength": 1,\n "type": "string"\n },\n "value": {\n "description": "Value for value.",\n "oneOf": [\n {\n "additionalProperties": false,\n "properties": {\n "source": {\n "const": "literal",\n "description": "Value for source.",\n "type": "string"\n },\n "value": {\n "description": "Value for value.",\n "type": "string"\n }\n },\n "required": [\n "source",\n "value"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "secret_id": {\n "description": "Value for secret id.",\n "pattern": "^[A-Za-z][A-Za-z0-9._-]*$",\n "type": "string"\n },\n "source": {\n "const": "secret",\n "description": "Value for source.",\n "type": "string"\n }\n },\n "required": [\n "source",\n "secret_id"\n ],\n "type": "object"\n }\n ]\n }\n },\n "required": [\n "name",\n "value"\n ],\n "type": "object"\n },\n "type": "array"\n },\n "origin": {\n "description": "Value for origin.",\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "origin",\n "entries"\n ],\n "type": "object"\n },\n "type": "array"\n }\n },\n "type": "object"\n }\n },\n "required": [\n "browser",\n "start_url",\n "actions"\n ],\n "type": "object"\n },\n "kind": "browser-provider",\n "name": "capture_browser_scenario",\n "outputSchema": {\n "$defs": {\n "__schema0": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "number"\n },\n {\n "type": "boolean"\n },\n {\n "type": "null"\n },\n {\n "items": {\n "$ref": "#/$defs/__schema0"\n },\n "type": "array"\n },\n {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n }\n ]\n }\n },\n "$schema": "https://json-schema.org/draft/2020-12/schema",\n "additionalProperties": false,\n "properties": {\n "evidence": {\n "additionalProperties": false,\n "properties": {\n "analysis_profile": {\n "additionalProperties": false,\n "properties": {\n "digest": {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n },\n "parameters": {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n },\n "provider": {\n "additionalProperties": false,\n "properties": {\n "id": {\n "minLength": 1,\n "type": "string"\n },\n "name": {\n "minLength": 1,\n "type": "string"\n },\n "version": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "id",\n "name",\n "version"\n ],\n "type": "object"\n }\n },\n "required": [\n "provider",\n "parameters",\n "digest"\n ],\n "type": "object"\n },\n "authority": {\n "enum": [\n "shipped-artifact",\n "controlled-replay",\n "historical-reference",\n "external-service",\n "analyst-inference"\n ],\n "type": "string"\n },\n "confidence": {\n "enum": [\n "observed",\n "derived",\n "inferred"\n ],\n "type": "string"\n },\n "environment": {\n "anyOf": [\n {\n "additionalProperties": false,\n "properties": {\n "architecture": {\n "minLength": 1,\n "type": "string"\n },\n "id": {\n "minLength": 1,\n "type": "string"\n },\n "isolation": {\n "enum": [\n "none",\n "process",\n "container",\n "virtual-machine"\n ],\n "type": "string"\n },\n "platform": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "id",\n "platform",\n "architecture",\n "isolation"\n ],\n "type": "object"\n },\n {\n "type": "null"\n }\n ]\n },\n "evidence_id": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "evidence_links": {\n "items": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "type": "array"\n },\n "limitations": {\n "items": {\n "type": "string"\n },\n "type": "array"\n },\n "locations": {\n "items": {\n "oneOf": [\n {\n "additionalProperties": false,\n "properties": {\n "address": {\n "minLength": 1,\n "type": "string"\n },\n "kind": {\n "const": "address",\n "type": "string"\n }\n },\n "required": [\n "kind",\n "address"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "end": {\n "minLength": 1,\n "type": "string"\n },\n "kind": {\n "const": "address-range",\n "type": "string"\n },\n "start": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "kind",\n "start",\n "end"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "kind": {\n "const": "artifact-path",\n "type": "string"\n },\n "path": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "kind",\n "path"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "kind": {\n "const": "file-offset",\n "type": "string"\n },\n "offset": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "kind",\n "offset"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "end": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "kind": {\n "const": "file-offset-range",\n "type": "string"\n },\n "start": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "kind",\n "start",\n "end"\n ],\n "type": "object"\n }\n ]\n },\n "type": "array"\n },\n "normalized_result": {\n "$ref": "#/$defs/__schema0"\n },\n "operation": {\n "minLength": 1,\n "type": "string"\n },\n "parameters": {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n },\n "predicate_type": {\n "minLength": 1,\n "type": "string"\n },\n "provider": {\n "additionalProperties": false,\n "properties": {\n "id": {\n "minLength": 1,\n "type": "string"\n },\n "name": {\n "minLength": 1,\n "type": "string"\n },\n "version": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "id",\n "name",\n "version"\n ],\n "type": "object"\n },\n "raw_result": {\n "anyOf": [\n {\n "$ref": "#/$defs/__schema0"\n },\n {\n "type": "null"\n }\n ]\n },\n "subject": {\n "anyOf": [\n {\n "additionalProperties": false,\n "properties": {\n "architecture": {\n "anyOf": [\n {\n "enum": [\n "x86",\n "x86_64",\n "arm",\n "arm64"\n ],\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "digest": {\n "additionalProperties": false,\n "properties": {\n "sha256": {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n }\n },\n "required": [\n "sha256"\n ],\n "type": "object"\n },\n "format": {\n "enum": [\n "hopper",\n "analysis-database",\n "mach-o",\n "elf",\n "pe",\n "dos-mz",\n "dos-com",\n "zip",\n "ipa",\n "apk",\n "msix",\n "appx",\n "asar",\n "dmg",\n "pkg",\n "plist",\n "javascript",\n "source-map",\n "directory",\n "file",\n "unknown",\n "mach-o-universal",\n "javascript-bundle",\n "entitlements"\n ],\n "type": "string"\n },\n "local_path": {\n "type": "string"\n },\n "name": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "name",\n "digest",\n "format",\n "architecture",\n "local_path"\n ],\n "type": "object"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "evidence_id",\n "subject",\n "provider",\n "predicate_type",\n "operation",\n "parameters",\n "raw_result",\n "normalized_result",\n "confidence",\n "authority",\n "environment",\n "limitations",\n "locations",\n "evidence_links"\n ],\n "type": "object"\n },\n "evidence_id": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "result": {\n "additionalProperties": false,\n "properties": {\n "browser": {\n "additionalProperties": false,\n "properties": {\n "cleanup": {\n "enum": [\n "terminated-owned-process",\n "disconnected-external"\n ],\n "type": "string"\n },\n "mode": {\n "enum": [\n "launch",\n "connect"\n ],\n "type": "string"\n },\n "process_ownership": {\n "enum": [\n "provider-owned",\n "external"\n ],\n "type": "string"\n },\n "product": {\n "minLength": 1,\n "type": "string"\n },\n "version": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "mode",\n "process_ownership",\n "cleanup",\n "product",\n "version"\n ],\n "type": "object"\n },\n "completeness": {\n "oneOf": [\n {\n "additionalProperties": false,\n "properties": {\n "equality_eligible": {\n "const": true,\n "type": "boolean"\n },\n "missing_sections": {\n "items": {\n "not": {}\n },\n "maxItems": 0,\n "minItems": 0,\n "type": "array"\n },\n "status": {\n "const": "complete",\n "type": "string"\n },\n "truncated_sections": {\n "items": {\n "not": {}\n },\n "maxItems": 0,\n "minItems": 0,\n "type": "array"\n }\n },\n "required": [\n "status",\n "equality_eligible",\n "missing_sections",\n "truncated_sections"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "equality_eligible": {\n "const": false,\n "type": "boolean"\n },\n "missing_sections": {\n "items": {\n "enum": [\n "action",\n "screenshot",\n "dom",\n "accessibility",\n "url",\n "history",\n "storage",\n "events",\n "frames",\n "workers",\n "popups",\n "websockets"\n ],\n "type": "string"\n },\n "minItems": 1,\n "type": "array"\n },\n "status": {\n "const": "incomplete",\n "type": "string"\n },\n "truncated_sections": {\n "items": {\n "not": {}\n },\n "maxItems": 0,\n "minItems": 0,\n "type": "array"\n }\n },\n "required": [\n "status",\n "equality_eligible",\n "missing_sections",\n "truncated_sections"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "equality_eligible": {\n "const": false,\n "type": "boolean"\n },\n "missing_sections": {\n "items": {\n "enum": [\n "action",\n "screenshot",\n "dom",\n "accessibility",\n "url",\n "history",\n "storage",\n "events",\n "frames",\n "workers",\n "popups",\n "websockets"\n ],\n "type": "string"\n },\n "type": "array"\n },\n "status": {\n "const": "truncated",\n "type": "string"\n },\n "truncated_sections": {\n "items": {\n "enum": [\n "action",\n "screenshot",\n "dom",\n "accessibility",\n "url",\n "history",\n "storage",\n "events",\n "frames",\n "workers",\n "popups",\n "websockets"\n ],\n "type": "string"\n },\n "minItems": 1,\n "type": "array"\n }\n },\n "required": [\n "status",\n "equality_eligible",\n "missing_sections",\n "truncated_sections"\n ],\n "type": "object"\n }\n ]\n },\n "duration_ms": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "events": {\n "additionalProperties": false,\n "properties": {\n "dropped": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "items": {\n "items": {\n "anyOf": [\n {\n "additionalProperties": false,\n "properties": {\n "kind": {\n "const": "console",\n "type": "string"\n },\n "level": {\n "minLength": 1,\n "type": "string"\n },\n "sequence": {\n "maximum": 9007199254740991,\n "minimum": 1,\n "type": "integer"\n },\n "step_index": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "text": {\n "type": "string"\n },\n "url": {\n "anyOf": [\n {\n "additionalProperties": false,\n "properties": {\n "origin": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "query_parameter_names": {\n "items": {\n "type": "string"\n },\n "type": "array"\n },\n "redacted": {\n "type": "boolean"\n },\n "url": {\n "type": "string"\n }\n },\n "required": [\n "url",\n "origin",\n "query_parameter_names",\n "redacted"\n ],\n "type": "object"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "sequence",\n "step_index",\n "kind",\n "level",\n "text",\n "url"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "kind": {\n "const": "page-error",\n "type": "string"\n },\n "message": {\n "type": "string"\n },\n "sequence": {\n "maximum": 9007199254740991,\n "minimum": 1,\n "type": "integer"\n },\n "stack": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "step_index": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "sequence",\n "step_index",\n "kind",\n "message",\n "stack"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "failure": {\n "type": "null"\n },\n "header_names": {\n "items": {\n "type": "string"\n },\n "type": "array"\n },\n "kind": {\n "const": "request",\n "type": "string"\n },\n "method": {\n "minLength": 1,\n "type": "string"\n },\n "redirected_from_transaction_id": {\n "anyOf": [\n {\n "minLength": 1,\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "resource_type": {\n "minLength": 1,\n "type": "string"\n },\n "sequence": {\n "maximum": 9007199254740991,\n "minimum": 1,\n "type": "integer"\n },\n "status": {\n "type": "null"\n },\n "step_index": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "transaction_id": {\n "minLength": 1,\n "type": "string"\n },\n "url": {\n "additionalProperties": false,\n "properties": {\n "origin": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "query_parameter_names": {\n "items": {\n "type": "string"\n },\n "type": "array"\n },\n "redacted": {\n "type": "boolean"\n },\n "url": {\n "type": "string"\n }\n },\n "required": [\n "url",\n "origin",\n "query_parameter_names",\n "redacted"\n ],\n "type": "object"\n }\n },\n "required": [\n "sequence",\n "step_index",\n "method",\n "url",\n "resource_type",\n "header_names",\n "kind",\n "status",\n "failure"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "failure": {\n "type": "null"\n },\n "header_names": {\n "items": {\n "type": "string"\n },\n "type": "array"\n },\n "kind": {\n "const": "response",\n "type": "string"\n },\n "method": {\n "minLength": 1,\n "type": "string"\n },\n "redirected_from_transaction_id": {\n "anyOf": [\n {\n "minLength": 1,\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "resource_type": {\n "minLength": 1,\n "type": "string"\n },\n "sequence": {\n "maximum": 9007199254740991,\n "minimum": 1,\n "type": "integer"\n },\n "status": {\n "maximum": 599,\n "minimum": 100,\n "type": "integer"\n },\n "step_index": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "transaction_id": {\n "minLength": 1,\n "type": "string"\n },\n "url": {\n "additionalProperties": false,\n "properties": {\n "origin": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "query_parameter_names": {\n "items": {\n "type": "string"\n },\n "type": "array"\n },\n "redacted": {\n "type": "boolean"\n },\n "url": {\n "type": "string"\n }\n },\n "required": [\n "url",\n "origin",\n "query_parameter_names",\n "redacted"\n ],\n "type": "object"\n }\n },\n "required": [\n "sequence",\n "step_index",\n "method",\n "url",\n "resource_type",\n "header_names",\n "kind",\n "status",\n "failure"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "failure": {\n "minLength": 1,\n "type": "string"\n },\n "header_names": {\n "items": {\n "type": "string"\n },\n "type": "array"\n },\n "kind": {\n "const": "request-failed",\n "type": "string"\n },\n "method": {\n "minLength": 1,\n "type": "string"\n },\n "redirected_from_transaction_id": {\n "anyOf": [\n {\n "minLength": 1,\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "resource_type": {\n "minLength": 1,\n "type": "string"\n },\n "sequence": {\n "maximum": 9007199254740991,\n "minimum": 1,\n "type": "integer"\n },\n "status": {\n "type": "null"\n },\n "step_index": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "transaction_id": {\n "minLength": 1,\n "type": "string"\n },\n "url": {\n "additionalProperties": false,\n "properties": {\n "origin": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "query_parameter_names": {\n "items": {\n "type": "string"\n },\n "type": "array"\n },\n "redacted": {\n "type": "boolean"\n },\n "url": {\n "type": "string"\n }\n },\n "required": [\n "url",\n "origin",\n "query_parameter_names",\n "redacted"\n ],\n "type": "object"\n }\n },\n "required": [\n "sequence",\n "step_index",\n "method",\n "url",\n "resource_type",\n "header_names",\n "kind",\n "status",\n "failure"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "failure": {\n "type": "null"\n },\n "header_names": {\n "items": {\n "type": "string"\n },\n "type": "array"\n },\n "kind": {\n "const": "request-finished",\n "type": "string"\n },\n "method": {\n "minLength": 1,\n "type": "string"\n },\n "redirected_from_transaction_id": {\n "anyOf": [\n {\n "minLength": 1,\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "resource_type": {\n "minLength": 1,\n "type": "string"\n },\n "sequence": {\n "maximum": 9007199254740991,\n "minimum": 1,\n "type": "integer"\n },\n "status": {\n "type": "null"\n },\n "step_index": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "transaction_id": {\n "minLength": 1,\n "type": "string"\n },\n "url": {\n "additionalProperties": false,\n "properties": {\n "origin": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "query_parameter_names": {\n "items": {\n "type": "string"\n },\n "type": "array"\n },\n "redacted": {\n "type": "boolean"\n },\n "url": {\n "type": "string"\n }\n },\n "required": [\n "url",\n "origin",\n "query_parameter_names",\n "redacted"\n ],\n "type": "object"\n }\n },\n "required": [\n "sequence",\n "step_index",\n "method",\n "url",\n "resource_type",\n "header_names",\n "kind",\n "status",\n "failure"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "failure": {\n "type": "null"\n },\n "header_names": {\n "items": {\n "type": "string"\n },\n "type": "array"\n },\n "kind": {\n "const": "request-unfinished",\n "type": "string"\n },\n "method": {\n "minLength": 1,\n "type": "string"\n },\n "reason": {\n "enum": [\n "capture-ended",\n "cancelled"\n ],\n "type": "string"\n },\n "redirected_from_transaction_id": {\n "anyOf": [\n {\n "minLength": 1,\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "resource_type": {\n "minLength": 1,\n "type": "string"\n },\n "sequence": {\n "maximum": 9007199254740991,\n "minimum": 1,\n "type": "integer"\n },\n "status": {\n "type": "null"\n },\n "step_index": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "transaction_id": {\n "minLength": 1,\n "type": "string"\n },\n "url": {\n "additionalProperties": false,\n "properties": {\n "origin": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "query_parameter_names": {\n "items": {\n "type": "string"\n },\n "type": "array"\n },\n "redacted": {\n "type": "boolean"\n },\n "url": {\n "type": "string"\n }\n },\n "required": [\n "url",\n "origin",\n "query_parameter_names",\n "redacted"\n ],\n "type": "object"\n }\n },\n "required": [\n "sequence",\n "step_index",\n "method",\n "url",\n "resource_type",\n "header_names",\n "kind",\n "status",\n "failure",\n "reason"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "body": {\n "anyOf": [\n {\n "additionalProperties": false,\n "properties": {\n "state": {\n "const": "not_requested",\n "type": "string"\n }\n },\n "required": [\n "state"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "state": {\n "const": "not_exposed",\n "type": "string"\n }\n },\n "required": [\n "state"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "message": {\n "minLength": 1,\n "type": "string"\n },\n "reason": {\n "enum": [\n "request-failed",\n "response-unfinished",\n "body-read-failed",\n "body-read-timeout",\n "cancelled",\n "capture-ended"\n ],\n "type": "string"\n },\n "state": {\n "const": "unavailable",\n "type": "string"\n }\n },\n "required": [\n "state",\n "reason",\n "message"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "bytes": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "content": {\n "type": "string"\n },\n "encoding": {\n "const": "base64",\n "type": "string"\n },\n "media_type": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "redacted": {\n "type": "boolean"\n },\n "representation": {\n "enum": [\n "browser-exposed-request-bytes",\n "browser-decoded-response-bytes"\n ],\n "type": "string"\n },\n "sha256": {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n },\n "state": {\n "const": "captured",\n "type": "string"\n }\n },\n "required": [\n "state",\n "representation",\n "encoding",\n "content",\n "bytes",\n "sha256",\n "media_type",\n "redacted"\n ],\n "type": "object"\n }\n ]\n },\n "headers": {\n "anyOf": [\n {\n "additionalProperties": false,\n "properties": {\n "state": {\n "const": "not_requested",\n "type": "string"\n }\n },\n "required": [\n "state"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "message": {\n "minLength": 1,\n "type": "string"\n },\n "state": {\n "const": "unavailable",\n "type": "string"\n }\n },\n "required": [\n "state",\n "message"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "items": {\n "items": {\n "additionalProperties": false,\n "properties": {\n "name": {\n "minLength": 1,\n "type": "string"\n },\n "redacted": {\n "type": "boolean"\n },\n "value": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "name",\n "value",\n "redacted"\n ],\n "type": "object"\n },\n "type": "array"\n },\n "state": {\n "const": "captured",\n "type": "string"\n }\n },\n "required": [\n "state",\n "items"\n ],\n "type": "object"\n }\n ]\n },\n "kind": {\n "const": "network-content",\n "type": "string"\n },\n "phase": {\n "enum": [\n "request",\n "response"\n ],\n "type": "string"\n },\n "sequence": {\n "maximum": 9007199254740991,\n "minimum": 1,\n "type": "integer"\n },\n "source_event_sequence": {\n "maximum": 9007199254740991,\n "minimum": 1,\n "type": "integer"\n },\n "step_index": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "transaction_id": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "sequence",\n "step_index",\n "kind",\n "transaction_id",\n "source_event_sequence",\n "phase",\n "headers",\n "body"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "kind": {\n "enum": [\n "websocket-opened",\n "websocket-closed"\n ],\n "type": "string"\n },\n "sequence": {\n "maximum": 9007199254740991,\n "minimum": 1,\n "type": "integer"\n },\n "step_index": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "url": {\n "additionalProperties": false,\n "properties": {\n "origin": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "query_parameter_names": {\n "items": {\n "type": "string"\n },\n "type": "array"\n },\n "redacted": {\n "type": "boolean"\n },\n "url": {\n "type": "string"\n }\n },\n "required": [\n "url",\n "origin",\n "query_parameter_names",\n "redacted"\n ],\n "type": "object"\n }\n },\n "required": [\n "sequence",\n "step_index",\n "kind",\n "url"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "kind": {\n "enum": [\n "websocket-frame-sent",\n "websocket-frame-received"\n ],\n "type": "string"\n },\n "payload_bytes": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "payload_text": {\n "type": "string"\n },\n "payload_type": {\n "const": "text",\n "type": "string"\n },\n "sequence": {\n "maximum": 9007199254740991,\n "minimum": 1,\n "type": "integer"\n },\n "step_index": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "truncated": {\n "type": "boolean"\n },\n "url": {\n "additionalProperties": false,\n "properties": {\n "origin": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "query_parameter_names": {\n "items": {\n "type": "string"\n },\n "type": "array"\n },\n "redacted": {\n "type": "boolean"\n },\n "url": {\n "type": "string"\n }\n },\n "required": [\n "url",\n "origin",\n "query_parameter_names",\n "redacted"\n ],\n "type": "object"\n }\n },\n "required": [\n "sequence",\n "step_index",\n "kind",\n "url",\n "payload_bytes",\n "truncated",\n "payload_type",\n "payload_text"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "kind": {\n "enum": [\n "websocket-frame-sent",\n "websocket-frame-received"\n ],\n "type": "string"\n },\n "payload_bytes": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "payload_text": {\n "type": "null"\n },\n "payload_type": {\n "const": "binary",\n "type": "string"\n },\n "sequence": {\n "maximum": 9007199254740991,\n "minimum": 1,\n "type": "integer"\n },\n "step_index": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "truncated": {\n "type": "boolean"\n },\n "url": {\n "additionalProperties": false,\n "properties": {\n "origin": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "query_parameter_names": {\n "items": {\n "type": "string"\n },\n "type": "array"\n },\n "redacted": {\n "type": "boolean"\n },\n "url": {\n "type": "string"\n }\n },\n "required": [\n "url",\n "origin",\n "query_parameter_names",\n "redacted"\n ],\n "type": "object"\n }\n },\n "required": [\n "sequence",\n "step_index",\n "kind",\n "url",\n "payload_bytes",\n "truncated",\n "payload_type",\n "payload_text"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "kind": {\n "enum": [\n "frame-attached",\n "frame-detached",\n "frame-navigated",\n "worker-created",\n "worker-closed",\n "popup-opened",\n "popup-closed"\n ],\n "type": "string"\n },\n "name": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "sequence": {\n "maximum": 9007199254740991,\n "minimum": 1,\n "type": "integer"\n },\n "step_index": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "url": {\n "anyOf": [\n {\n "additionalProperties": false,\n "properties": {\n "origin": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "query_parameter_names": {\n "items": {\n "type": "string"\n },\n "type": "array"\n },\n "redacted": {\n "type": "boolean"\n },\n "url": {\n "type": "string"\n }\n },\n "required": [\n "url",\n "origin",\n "query_parameter_names",\n "redacted"\n ],\n "type": "object"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "sequence",\n "step_index",\n "kind",\n "url",\n "name"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "kind": {\n "const": "download-cancelled",\n "type": "string"\n },\n "sequence": {\n "maximum": 9007199254740991,\n "minimum": 1,\n "type": "integer"\n },\n "step_index": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "suggested_filename": {\n "type": "string"\n },\n "url": {\n "additionalProperties": false,\n "properties": {\n "origin": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "query_parameter_names": {\n "items": {\n "type": "string"\n },\n "type": "array"\n },\n "redacted": {\n "type": "boolean"\n },\n "url": {\n "type": "string"\n }\n },\n "required": [\n "url",\n "origin",\n "query_parameter_names",\n "redacted"\n ],\n "type": "object"\n }\n },\n "required": [\n "sequence",\n "step_index",\n "kind",\n "suggested_filename",\n "url"\n ],\n "type": "object"\n }\n ]\n },\n "type": "array"\n },\n "retained": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "retained",\n "dropped",\n "items"\n ],\n "type": "object"\n },\n "limitations": {\n "items": {\n "minLength": 1,\n "type": "string"\n },\n "type": "array"\n },\n "scenario": {\n "additionalProperties": false,\n "properties": {\n "action_count": {\n "maximum": 9007199254740991,\n "minimum": 1,\n "type": "integer"\n },\n "network_content": {\n "additionalProperties": false,\n "properties": {\n "header_values": {\n "default": false,\n "type": "boolean"\n },\n "request_body": {\n "default": false,\n "type": "boolean"\n },\n "response_body": {\n "default": false,\n "type": "boolean"\n }\n },\n "required": [\n "request_body",\n "response_body",\n "header_values"\n ],\n "type": "object"\n },\n "secret_references": {\n "items": {\n "minLength": 1,\n "type": "string"\n },\n "type": "array"\n },\n "start_origin": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "start_origin",\n "action_count",\n "secret_references"\n ],\n "type": "object"\n },\n "steps": {\n "items": {\n "anyOf": [\n {\n "additionalProperties": false,\n "properties": {\n "action": {\n "minLength": 1,\n "type": "string"\n },\n "after_url": {\n "additionalProperties": false,\n "properties": {\n "origin": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "query_parameter_names": {\n "items": {\n "type": "string"\n },\n "type": "array"\n },\n "redacted": {\n "type": "boolean"\n },\n "url": {\n "type": "string"\n }\n },\n "required": [\n "url",\n "origin",\n "query_parameter_names",\n "redacted"\n ],\n "type": "object"\n },\n "artifacts": {\n "additionalProperties": false,\n "properties": {\n "accessibility": {\n "oneOf": [\n {\n "additionalProperties": false,\n "properties": {\n "state": {\n "const": "captured",\n "type": "string"\n },\n "value": {\n "additionalProperties": false,\n "properties": {\n "bytes": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "sha256": {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n },\n "text": {\n "type": "string"\n }\n },\n "required": [\n "sha256",\n "bytes",\n "text"\n ],\n "type": "object"\n }\n },\n "required": [\n "state",\n "value"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "state": {\n "const": "not_requested",\n "type": "string"\n }\n },\n "required": [\n "state"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "reason": {\n "minLength": 1,\n "type": "string"\n },\n "state": {\n "const": "missing",\n "type": "string"\n }\n },\n "required": [\n "state",\n "reason"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "observed": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "reason": {\n "minLength": 1,\n "type": "string"\n },\n "retained": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "state": {\n "const": "truncated",\n "type": "string"\n }\n },\n "required": [\n "state",\n "observed",\n "retained",\n "reason"\n ],\n "type": "object"\n }\n ]\n },\n "dom": {\n "oneOf": [\n {\n "additionalProperties": false,\n "properties": {\n "state": {\n "const": "captured",\n "type": "string"\n },\n "value": {\n "additionalProperties": false,\n "properties": {\n "bytes": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "sha256": {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n },\n "text": {\n "type": "string"\n }\n },\n "required": [\n "sha256",\n "bytes",\n "text"\n ],\n "type": "object"\n }\n },\n "required": [\n "state",\n "value"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "state": {\n "const": "not_requested",\n "type": "string"\n }\n },\n "required": [\n "state"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "reason": {\n "minLength": 1,\n "type": "string"\n },\n "state": {\n "const": "missing",\n "type": "string"\n }\n },\n "required": [\n "state",\n "reason"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "observed": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "reason": {\n "minLength": 1,\n "type": "string"\n },\n "retained": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "state": {\n "const": "truncated",\n "type": "string"\n }\n },\n "required": [\n "state",\n "observed",\n "retained",\n "reason"\n ],\n "type": "object"\n }\n ]\n },\n "history": {\n "oneOf": [\n {\n "additionalProperties": false,\n "properties": {\n "state": {\n "const": "captured",\n "type": "string"\n },\n "value": {\n "additionalProperties": false,\n "properties": {\n "current_url": {\n "additionalProperties": false,\n "properties": {\n "origin": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "query_parameter_names": {\n "items": {\n "type": "string"\n },\n "type": "array"\n },\n "redacted": {\n "type": "boolean"\n },\n "url": {\n "type": "string"\n }\n },\n "required": [\n "url",\n "origin",\n "query_parameter_names",\n "redacted"\n ],\n "type": "object"\n },\n "length": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "navigation_entries": {\n "items": {\n "additionalProperties": false,\n "properties": {\n "name": {\n "additionalProperties": false,\n "properties": {\n "origin": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "query_parameter_names": {\n "items": {\n "type": "string"\n },\n "type": "array"\n },\n "redacted": {\n "type": "boolean"\n },\n "url": {\n "type": "string"\n }\n },\n "required": [\n "url",\n "origin",\n "query_parameter_names",\n "redacted"\n ],\n "type": "object"\n },\n "type": {\n "enum": [\n "navigate",\n "reload",\n "back_forward",\n "prerender",\n "unknown"\n ],\n "type": "string"\n }\n },\n "required": [\n "type",\n "name"\n ],\n "type": "object"\n },\n "type": "array"\n }\n },\n "required": [\n "length",\n "current_url",\n "navigation_entries"\n ],\n "type": "object"\n }\n },\n "required": [\n "state",\n "value"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "state": {\n "const": "not_requested",\n "type": "string"\n }\n },\n "required": [\n "state"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "reason": {\n "minLength": 1,\n "type": "string"\n },\n "state": {\n "const": "missing",\n "type": "string"\n }\n },\n "required": [\n "state",\n "reason"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "observed": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "reason": {\n "minLength": 1,\n "type": "string"\n },\n "retained": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "state": {\n "const": "truncated",\n "type": "string"\n }\n },\n "required": [\n "state",\n "observed",\n "retained",\n "reason"\n ],\n "type": "object"\n }\n ]\n },\n "screenshot": {\n "oneOf": [\n {\n "additionalProperties": false,\n "properties": {\n "state": {\n "const": "captured",\n "type": "string"\n },\n "value": {\n "additionalProperties": false,\n "properties": {\n "bytes": {\n "maximum": 9007199254740991,\n "minimum": 1,\n "type": "integer"\n },\n "data_base64": {\n "type": "string"\n },\n "media_type": {\n "const": "image/png",\n "type": "string"\n },\n "sha256": {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n }\n },\n "required": [\n "sha256",\n "bytes",\n "media_type",\n "data_base64"\n ],\n "type": "object"\n }\n },\n "required": [\n "state",\n "value"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "state": {\n "const": "not_requested",\n "type": "string"\n }\n },\n "required": [\n "state"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "reason": {\n "minLength": 1,\n "type": "string"\n },\n "state": {\n "const": "missing",\n "type": "string"\n }\n },\n "required": [\n "state",\n "reason"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "observed": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "reason": {\n "minLength": 1,\n "type": "string"\n },\n "retained": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "state": {\n "const": "truncated",\n "type": "string"\n }\n },\n "required": [\n "state",\n "observed",\n "retained",\n "reason"\n ],\n "type": "object"\n }\n ]\n },\n "storage": {\n "oneOf": [\n {\n "additionalProperties": false,\n "properties": {\n "state": {\n "const": "captured",\n "type": "string"\n },\n "value": {\n "additionalProperties": false,\n "properties": {\n "cookies": {\n "items": {\n "oneOf": [\n {\n "additionalProperties": false,\n "properties": {\n "domain": {\n "type": "string"\n },\n "http_only": {\n "type": "boolean"\n },\n "name": {\n "type": "string"\n },\n "path": {\n "type": "string"\n },\n "same_site": {\n "enum": [\n "Strict",\n "Lax",\n "None"\n ],\n "type": "string"\n },\n "secure": {\n "type": "boolean"\n },\n "value_sha256": {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n },\n "value_state": {\n "const": "hashed",\n "type": "string"\n }\n },\n "required": [\n "name",\n "domain",\n "path",\n "secure",\n "http_only",\n "same_site",\n "value_state",\n "value_sha256"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "domain": {\n "type": "string"\n },\n "http_only": {\n "type": "boolean"\n },\n "name": {\n "type": "string"\n },\n "path": {\n "type": "string"\n },\n "same_site": {\n "enum": [\n "Strict",\n "Lax",\n "None"\n ],\n "type": "string"\n },\n "secure": {\n "type": "boolean"\n },\n "value_sha256": {\n "type": "null"\n },\n "value_state": {\n "const": "redacted-secret",\n "type": "string"\n }\n },\n "required": [\n "name",\n "domain",\n "path",\n "secure",\n "http_only",\n "same_site",\n "value_state",\n "value_sha256"\n ],\n "type": "object"\n }\n ]\n },\n "type": "array"\n },\n "local_storage": {\n "items": {\n "oneOf": [\n {\n "additionalProperties": false,\n "properties": {\n "name": {\n "type": "string"\n },\n "value_sha256": {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n },\n "value_state": {\n "const": "hashed",\n "type": "string"\n }\n },\n "required": [\n "name",\n "value_state",\n "value_sha256"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "name": {\n "type": "string"\n },\n "value_sha256": {\n "type": "null"\n },\n "value_state": {\n "const": "redacted-secret",\n "type": "string"\n }\n },\n "required": [\n "name",\n "value_state",\n "value_sha256"\n ],\n "type": "object"\n }\n ]\n },\n "type": "array"\n },\n "session_storage": {\n "items": {\n "oneOf": [\n {\n "additionalProperties": false,\n "properties": {\n "name": {\n "type": "string"\n },\n "value_sha256": {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n },\n "value_state": {\n "const": "hashed",\n "type": "string"\n }\n },\n "required": [\n "name",\n "value_state",\n "value_sha256"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "name": {\n "type": "string"\n },\n "value_sha256": {\n "type": "null"\n },\n "value_state": {\n "const": "redacted-secret",\n "type": "string"\n }\n },\n "required": [\n "name",\n "value_state",\n "value_sha256"\n ],\n "type": "object"\n }\n ]\n },\n "type": "array"\n }\n },\n "required": [\n "cookies",\n "local_storage",\n "session_storage"\n ],\n "type": "object"\n }\n },\n "required": [\n "state",\n "value"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "state": {\n "const": "not_requested",\n "type": "string"\n }\n },\n "required": [\n "state"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "reason": {\n "minLength": 1,\n "type": "string"\n },\n "state": {\n "const": "missing",\n "type": "string"\n }\n },\n "required": [\n "state",\n "reason"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "observed": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "reason": {\n "minLength": 1,\n "type": "string"\n },\n "retained": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "state": {\n "const": "truncated",\n "type": "string"\n }\n },\n "required": [\n "state",\n "observed",\n "retained",\n "reason"\n ],\n "type": "object"\n }\n ]\n },\n "url": {\n "oneOf": [\n {\n "additionalProperties": false,\n "properties": {\n "state": {\n "const": "captured",\n "type": "string"\n },\n "value": {\n "additionalProperties": false,\n "properties": {\n "origin": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "query_parameter_names": {\n "items": {\n "type": "string"\n },\n "type": "array"\n },\n "redacted": {\n "type": "boolean"\n },\n "url": {\n "type": "string"\n }\n },\n "required": [\n "url",\n "origin",\n "query_parameter_names",\n "redacted"\n ],\n "type": "object"\n }\n },\n "required": [\n "state",\n "value"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "state": {\n "const": "not_requested",\n "type": "string"\n }\n },\n "required": [\n "state"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "reason": {\n "minLength": 1,\n "type": "string"\n },\n "state": {\n "const": "missing",\n "type": "string"\n }\n },\n "required": [\n "state",\n "reason"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "observed": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "reason": {\n "minLength": 1,\n "type": "string"\n },\n "retained": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "state": {\n "const": "truncated",\n "type": "string"\n }\n },\n "required": [\n "state",\n "observed",\n "retained",\n "reason"\n ],\n "type": "object"\n }\n ]\n }\n },\n "required": [\n "screenshot",\n "dom",\n "accessibility",\n "url",\n "history",\n "storage"\n ],\n "type": "object"\n },\n "before_url": {\n "additionalProperties": false,\n "properties": {\n "origin": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "query_parameter_names": {\n "items": {\n "type": "string"\n },\n "type": "array"\n },\n "redacted": {\n "type": "boolean"\n },\n "url": {\n "type": "string"\n }\n },\n "required": [\n "url",\n "origin",\n "query_parameter_names",\n "redacted"\n ],\n "type": "object"\n },\n "completeness": {\n "oneOf": [\n {\n "additionalProperties": false,\n "properties": {\n "equality_eligible": {\n "const": true,\n "type": "boolean"\n },\n "missing_sections": {\n "items": {\n "not": {}\n },\n "maxItems": 0,\n "minItems": 0,\n "type": "array"\n },\n "status": {\n "const": "complete",\n "type": "string"\n },\n "truncated_sections": {\n "items": {\n "not": {}\n },\n "maxItems": 0,\n "minItems": 0,\n "type": "array"\n }\n },\n "required": [\n "status",\n "equality_eligible",\n "missing_sections",\n "truncated_sections"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "equality_eligible": {\n "const": false,\n "type": "boolean"\n },\n "missing_sections": {\n "items": {\n "enum": [\n "action",\n "screenshot",\n "dom",\n "accessibility",\n "url",\n "history",\n "storage",\n "events",\n "frames",\n "workers",\n "popups",\n "websockets"\n ],\n "type": "string"\n },\n "minItems": 1,\n "type": "array"\n },\n "status": {\n "const": "incomplete",\n "type": "string"\n },\n "truncated_sections": {\n "items": {\n "not": {}\n },\n "maxItems": 0,\n "minItems": 0,\n "type": "array"\n }\n },\n "required": [\n "status",\n "equality_eligible",\n "missing_sections",\n "truncated_sections"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "equality_eligible": {\n "const": false,\n "type": "boolean"\n },\n "missing_sections": {\n "items": {\n "enum": [\n "action",\n "screenshot",\n "dom",\n "accessibility",\n "url",\n "history",\n "storage",\n "events",\n "frames",\n "workers",\n "popups",\n "websockets"\n ],\n "type": "string"\n },\n "type": "array"\n },\n "status": {\n "const": "truncated",\n "type": "string"\n },\n "truncated_sections": {\n "items": {\n "enum": [\n "action",\n "screenshot",\n "dom",\n "accessibility",\n "url",\n "history",\n "storage",\n "events",\n "frames",\n "workers",\n "popups",\n "websockets"\n ],\n "type": "string"\n },\n "minItems": 1,\n "type": "array"\n }\n },\n "required": [\n "status",\n "equality_eligible",\n "missing_sections",\n "truncated_sections"\n ],\n "type": "object"\n }\n ]\n },\n "elapsed_ms": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "error": {\n "type": "null"\n },\n "event_sequence_end": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "event_sequence_start": {\n "maximum": 9007199254740991,\n "minimum": 1,\n "type": "integer"\n },\n "status": {\n "const": "completed",\n "type": "string"\n },\n "step_id": {\n "minLength": 1,\n "type": "string"\n },\n "step_index": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "step_index",\n "step_id",\n "action",\n "elapsed_ms",\n "before_url",\n "after_url",\n "event_sequence_start",\n "event_sequence_end",\n "artifacts",\n "completeness",\n "status",\n "error"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "action": {\n "minLength": 1,\n "type": "string"\n },\n "after_url": {\n "additionalProperties": false,\n "properties": {\n "origin": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "query_parameter_names": {\n "items": {\n "type": "string"\n },\n "type": "array"\n },\n "redacted": {\n "type": "boolean"\n },\n "url": {\n "type": "string"\n }\n },\n "required": [\n "url",\n "origin",\n "query_parameter_names",\n "redacted"\n ],\n "type": "object"\n },\n "artifacts": {\n "additionalProperties": false,\n "properties": {\n "accessibility": {\n "oneOf": [\n {\n "additionalProperties": false,\n "properties": {\n "state": {\n "const": "captured",\n "type": "string"\n },\n "value": {\n "additionalProperties": false,\n "properties": {\n "bytes": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "sha256": {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n },\n "text": {\n "type": "string"\n }\n },\n "required": [\n "sha256",\n "bytes",\n "text"\n ],\n "type": "object"\n }\n },\n "required": [\n "state",\n "value"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "state": {\n "const": "not_requested",\n "type": "string"\n }\n },\n "required": [\n "state"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "reason": {\n "minLength": 1,\n "type": "string"\n },\n "state": {\n "const": "missing",\n "type": "string"\n }\n },\n "required": [\n "state",\n "reason"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "observed": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "reason": {\n "minLength": 1,\n "type": "string"\n },\n "retained": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "state": {\n "const": "truncated",\n "type": "string"\n }\n },\n "required": [\n "state",\n "observed",\n "retained",\n "reason"\n ],\n "type": "object"\n }\n ]\n },\n "dom": {\n "oneOf": [\n {\n "additionalProperties": false,\n "properties": {\n "state": {\n "const": "captured",\n "type": "string"\n },\n "value": {\n "additionalProperties": false,\n "properties": {\n "bytes": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "sha256": {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n },\n "text": {\n "type": "string"\n }\n },\n "required": [\n "sha256",\n "bytes",\n "text"\n ],\n "type": "object"\n }\n },\n "required": [\n "state",\n "value"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "state": {\n "const": "not_requested",\n "type": "string"\n }\n },\n "required": [\n "state"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "reason": {\n "minLength": 1,\n "type": "string"\n },\n "state": {\n "const": "missing",\n "type": "string"\n }\n },\n "required": [\n "state",\n "reason"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "observed": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "reason": {\n "minLength": 1,\n "type": "string"\n },\n "retained": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "state": {\n "const": "truncated",\n "type": "string"\n }\n },\n "required": [\n "state",\n "observed",\n "retained",\n "reason"\n ],\n "type": "object"\n }\n ]\n },\n "history": {\n "oneOf": [\n {\n "additionalProperties": false,\n "properties": {\n "state": {\n "const": "captured",\n "type": "string"\n },\n "value": {\n "additionalProperties": false,\n "properties": {\n "current_url": {\n "additionalProperties": false,\n "properties": {\n "origin": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "query_parameter_names": {\n "items": {\n "type": "string"\n },\n "type": "array"\n },\n "redacted": {\n "type": "boolean"\n },\n "url": {\n "type": "string"\n }\n },\n "required": [\n "url",\n "origin",\n "query_parameter_names",\n "redacted"\n ],\n "type": "object"\n },\n "length": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "navigation_entries": {\n "items": {\n "additionalProperties": false,\n "properties": {\n "name": {\n "additionalProperties": false,\n "properties": {\n "origin": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "query_parameter_names": {\n "items": {\n "type": "string"\n },\n "type": "array"\n },\n "redacted": {\n "type": "boolean"\n },\n "url": {\n "type": "string"\n }\n },\n "required": [\n "url",\n "origin",\n "query_parameter_names",\n "redacted"\n ],\n "type": "object"\n },\n "type": {\n "enum": [\n "navigate",\n "reload",\n "back_forward",\n "prerender",\n "unknown"\n ],\n "type": "string"\n }\n },\n "required": [\n "type",\n "name"\n ],\n "type": "object"\n },\n "type": "array"\n }\n },\n "required": [\n "length",\n "current_url",\n "navigation_entries"\n ],\n "type": "object"\n }\n },\n "required": [\n "state",\n "value"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "state": {\n "const": "not_requested",\n "type": "string"\n }\n },\n "required": [\n "state"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "reason": {\n "minLength": 1,\n "type": "string"\n },\n "state": {\n "const": "missing",\n "type": "string"\n }\n },\n "required": [\n "state",\n "reason"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "observed": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "reason": {\n "minLength": 1,\n "type": "string"\n },\n "retained": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "state": {\n "const": "truncated",\n "type": "string"\n }\n },\n "required": [\n "state",\n "observed",\n "retained",\n "reason"\n ],\n "type": "object"\n }\n ]\n },\n "screenshot": {\n "oneOf": [\n {\n "additionalProperties": false,\n "properties": {\n "state": {\n "const": "captured",\n "type": "string"\n },\n "value": {\n "additionalProperties": false,\n "properties": {\n "bytes": {\n "maximum": 9007199254740991,\n "minimum": 1,\n "type": "integer"\n },\n "data_base64": {\n "type": "string"\n },\n "media_type": {\n "const": "image/png",\n "type": "string"\n },\n "sha256": {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n }\n },\n "required": [\n "sha256",\n "bytes",\n "media_type",\n "data_base64"\n ],\n "type": "object"\n }\n },\n "required": [\n "state",\n "value"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "state": {\n "const": "not_requested",\n "type": "string"\n }\n },\n "required": [\n "state"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "reason": {\n "minLength": 1,\n "type": "string"\n },\n "state": {\n "const": "missing",\n "type": "string"\n }\n },\n "required": [\n "state",\n "reason"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "observed": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "reason": {\n "minLength": 1,\n "type": "string"\n },\n "retained": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "state": {\n "const": "truncated",\n "type": "string"\n }\n },\n "required": [\n "state",\n "observed",\n "retained",\n "reason"\n ],\n "type": "object"\n }\n ]\n },\n "storage": {\n "oneOf": [\n {\n "additionalProperties": false,\n "properties": {\n "state": {\n "const": "captured",\n "type": "string"\n },\n "value": {\n "additionalProperties": false,\n "properties": {\n "cookies": {\n "items": {\n "oneOf": [\n {\n "additionalProperties": false,\n "properties": {\n "domain": {\n "type": "string"\n },\n "http_only": {\n "type": "boolean"\n },\n "name": {\n "type": "string"\n },\n "path": {\n "type": "string"\n },\n "same_site": {\n "enum": [\n "Strict",\n "Lax",\n "None"\n ],\n "type": "string"\n },\n "secure": {\n "type": "boolean"\n },\n "value_sha256": {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n },\n "value_state": {\n "const": "hashed",\n "type": "string"\n }\n },\n "required": [\n "name",\n "domain",\n "path",\n "secure",\n "http_only",\n "same_site",\n "value_state",\n "value_sha256"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "domain": {\n "type": "string"\n },\n "http_only": {\n "type": "boolean"\n },\n "name": {\n "type": "string"\n },\n "path": {\n "type": "string"\n },\n "same_site": {\n "enum": [\n "Strict",\n "Lax",\n "None"\n ],\n "type": "string"\n },\n "secure": {\n "type": "boolean"\n },\n "value_sha256": {\n "type": "null"\n },\n "value_state": {\n "const": "redacted-secret",\n "type": "string"\n }\n },\n "required": [\n "name",\n "domain",\n "path",\n "secure",\n "http_only",\n "same_site",\n "value_state",\n "value_sha256"\n ],\n "type": "object"\n }\n ]\n },\n "type": "array"\n },\n "local_storage": {\n "items": {\n "oneOf": [\n {\n "additionalProperties": false,\n "properties": {\n "name": {\n "type": "string"\n },\n "value_sha256": {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n },\n "value_state": {\n "const": "hashed",\n "type": "string"\n }\n },\n "required": [\n "name",\n "value_state",\n "value_sha256"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "name": {\n "type": "string"\n },\n "value_sha256": {\n "type": "null"\n },\n "value_state": {\n "const": "redacted-secret",\n "type": "string"\n }\n },\n "required": [\n "name",\n "value_state",\n "value_sha256"\n ],\n "type": "object"\n }\n ]\n },\n "type": "array"\n },\n "session_storage": {\n "items": {\n "oneOf": [\n {\n "additionalProperties": false,\n "properties": {\n "name": {\n "type": "string"\n },\n "value_sha256": {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n },\n "value_state": {\n "const": "hashed",\n "type": "string"\n }\n },\n "required": [\n "name",\n "value_state",\n "value_sha256"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "name": {\n "type": "string"\n },\n "value_sha256": {\n "type": "null"\n },\n "value_state": {\n "const": "redacted-secret",\n "type": "string"\n }\n },\n "required": [\n "name",\n "value_state",\n "value_sha256"\n ],\n "type": "object"\n }\n ]\n },\n "type": "array"\n }\n },\n "required": [\n "cookies",\n "local_storage",\n "session_storage"\n ],\n "type": "object"\n }\n },\n "required": [\n "state",\n "value"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "state": {\n "const": "not_requested",\n "type": "string"\n }\n },\n "required": [\n "state"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "reason": {\n "minLength": 1,\n "type": "string"\n },\n "state": {\n "const": "missing",\n "type": "string"\n }\n },\n "required": [\n "state",\n "reason"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "observed": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "reason": {\n "minLength": 1,\n "type": "string"\n },\n "retained": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "state": {\n "const": "truncated",\n "type": "string"\n }\n },\n "required": [\n "state",\n "observed",\n "retained",\n "reason"\n ],\n "type": "object"\n }\n ]\n },\n "url": {\n "oneOf": [\n {\n "additionalProperties": false,\n "properties": {\n "state": {\n "const": "captured",\n "type": "string"\n },\n "value": {\n "additionalProperties": false,\n "properties": {\n "origin": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "query_parameter_names": {\n "items": {\n "type": "string"\n },\n "type": "array"\n },\n "redacted": {\n "type": "boolean"\n },\n "url": {\n "type": "string"\n }\n },\n "required": [\n "url",\n "origin",\n "query_parameter_names",\n "redacted"\n ],\n "type": "object"\n }\n },\n "required": [\n "state",\n "value"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "state": {\n "const": "not_requested",\n "type": "string"\n }\n },\n "required": [\n "state"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "reason": {\n "minLength": 1,\n "type": "string"\n },\n "state": {\n "const": "missing",\n "type": "string"\n }\n },\n "required": [\n "state",\n "reason"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "observed": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "reason": {\n "minLength": 1,\n "type": "string"\n },\n "retained": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "state": {\n "const": "truncated",\n "type": "string"\n }\n },\n "required": [\n "state",\n "observed",\n "retained",\n "reason"\n ],\n "type": "object"\n }\n ]\n }\n },\n "required": [\n "screenshot",\n "dom",\n "accessibility",\n "url",\n "history",\n "storage"\n ],\n "type": "object"\n },\n "before_url": {\n "additionalProperties": false,\n "properties": {\n "origin": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "query_parameter_names": {\n "items": {\n "type": "string"\n },\n "type": "array"\n },\n "redacted": {\n "type": "boolean"\n },\n "url": {\n "type": "string"\n }\n },\n "required": [\n "url",\n "origin",\n "query_parameter_names",\n "redacted"\n ],\n "type": "object"\n },\n "completeness": {\n "oneOf": [\n {\n "additionalProperties": false,\n "properties": {\n "equality_eligible": {\n "const": true,\n "type": "boolean"\n },\n "missing_sections": {\n "items": {\n "not": {}\n },\n "maxItems": 0,\n "minItems": 0,\n "type": "array"\n },\n "status": {\n "const": "complete",\n "type": "string"\n },\n "truncated_sections": {\n "items": {\n "not": {}\n },\n "maxItems": 0,\n "minItems": 0,\n "type": "array"\n }\n },\n "required": [\n "status",\n "equality_eligible",\n "missing_sections",\n "truncated_sections"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "equality_eligible": {\n "const": false,\n "type": "boolean"\n },\n "missing_sections": {\n "items": {\n "enum": [\n "action",\n "screenshot",\n "dom",\n "accessibility",\n "url",\n "history",\n "storage",\n "events",\n "frames",\n "workers",\n "popups",\n "websockets"\n ],\n "type": "string"\n },\n "minItems": 1,\n "type": "array"\n },\n "status": {\n "const": "incomplete",\n "type": "string"\n },\n "truncated_sections": {\n "items": {\n "not": {}\n },\n "maxItems": 0,\n "minItems": 0,\n "type": "array"\n }\n },\n "required": [\n "status",\n "equality_eligible",\n "missing_sections",\n "truncated_sections"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "equality_eligible": {\n "const": false,\n "type": "boolean"\n },\n "missing_sections": {\n "items": {\n "enum": [\n "action",\n "screenshot",\n "dom",\n "accessibility",\n "url",\n "history",\n "storage",\n "events",\n "frames",\n "workers",\n "popups",\n "websockets"\n ],\n "type": "string"\n },\n "type": "array"\n },\n "status": {\n "const": "truncated",\n "type": "string"\n },\n "truncated_sections": {\n "items": {\n "enum": [\n "action",\n "screenshot",\n "dom",\n "accessibility",\n "url",\n "history",\n "storage",\n "events",\n "frames",\n "workers",\n "popups",\n "websockets"\n ],\n "type": "string"\n },\n "minItems": 1,\n "type": "array"\n }\n },\n "required": [\n "status",\n "equality_eligible",\n "missing_sections",\n "truncated_sections"\n ],\n "type": "object"\n }\n ]\n },\n "elapsed_ms": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "error": {\n "type": "string"\n },\n "event_sequence_end": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "event_sequence_start": {\n "maximum": 9007199254740991,\n "minimum": 1,\n "type": "integer"\n },\n "status": {\n "enum": [\n "failed",\n "cancelled"\n ],\n "type": "string"\n },\n "step_id": {\n "minLength": 1,\n "type": "string"\n },\n "step_index": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "step_index",\n "step_id",\n "action",\n "elapsed_ms",\n "before_url",\n "after_url",\n "event_sequence_start",\n "event_sequence_end",\n "artifacts",\n "completeness",\n "status",\n "error"\n ],\n "type": "object"\n }\n ]\n },\n "minItems": 1,\n "type": "array"\n }\n },\n "required": [\n "browser",\n "scenario",\n "duration_ms",\n "steps",\n "events",\n "completeness",\n "limitations"\n ],\n "type": "object"\n }\n },\n "required": [\n "result",\n "evidence_id",\n "evidence"\n ],\n "type": "object"\n },\n "requiresSession": false,\n "title": "Capture Browser Scenario"\n },\n {\n "analysisOperation": null,\n "annotations": {\n "destructiveHint": false,\n "idempotentHint": true,\n "openWorldHint": true,\n "readOnlyHint": false\n },\n "description": "List every Electron file:// page target from a selected loopback CDP endpoint. Local file paths are canonicalized after symlink resolution. Selecting an endpoint exposes every eligible target and its local path metadata.",\n "effects": {\n "accessesNetwork": true,\n "changesUiState": false,\n "idempotent": true,\n "launchesProcess": false,\n "mayDiscardData": false,\n "mutatesSession": true,\n "mutatesTarget": false,\n "writesFilesystem": false\n },\n "inputSchema": {\n "$schema": "https://json-schema.org/draft/2020-12/schema",\n "additionalProperties": false,\n "examples": [\n {\n "cdp_endpoint": "http://127.0.0.1:9223"\n }\n ],\n "properties": {\n "cdp_endpoint": {\n "description": "Literal loopback Chrome DevTools Protocol endpoint.",\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "cdp_endpoint"\n ],\n "type": "object"\n },\n "kind": "electron-provider",\n "name": "list_electron_targets",\n "outputSchema": {\n "$defs": {\n "__schema0": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "number"\n },\n {\n "type": "boolean"\n },\n {\n "type": "null"\n },\n {\n "items": {\n "$ref": "#/$defs/__schema0"\n },\n "type": "array"\n },\n {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n }\n ]\n }\n },\n "$schema": "https://json-schema.org/draft/2020-12/schema",\n "additionalProperties": false,\n "properties": {\n "evidence": {\n "additionalProperties": false,\n "properties": {\n "analysis_profile": {\n "additionalProperties": false,\n "properties": {\n "digest": {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n },\n "parameters": {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n },\n "provider": {\n "additionalProperties": false,\n "properties": {\n "id": {\n "minLength": 1,\n "type": "string"\n },\n "name": {\n "minLength": 1,\n "type": "string"\n },\n "version": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "id",\n "name",\n "version"\n ],\n "type": "object"\n }\n },\n "required": [\n "provider",\n "parameters",\n "digest"\n ],\n "type": "object"\n },\n "authority": {\n "enum": [\n "shipped-artifact",\n "controlled-replay",\n "historical-reference",\n "external-service",\n "analyst-inference"\n ],\n "type": "string"\n },\n "confidence": {\n "enum": [\n "observed",\n "derived",\n "inferred"\n ],\n "type": "string"\n },\n "environment": {\n "anyOf": [\n {\n "additionalProperties": false,\n "properties": {\n "architecture": {\n "minLength": 1,\n "type": "string"\n },\n "id": {\n "minLength": 1,\n "type": "string"\n },\n "isolation": {\n "enum": [\n "none",\n "process",\n "container",\n "virtual-machine"\n ],\n "type": "string"\n },\n "platform": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "id",\n "platform",\n "architecture",\n "isolation"\n ],\n "type": "object"\n },\n {\n "type": "null"\n }\n ]\n },\n "evidence_id": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "evidence_links": {\n "items": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "type": "array"\n },\n "limitations": {\n "items": {\n "type": "string"\n },\n "type": "array"\n },\n "locations": {\n "items": {\n "oneOf": [\n {\n "additionalProperties": false,\n "properties": {\n "address": {\n "minLength": 1,\n "type": "string"\n },\n "kind": {\n "const": "address",\n "type": "string"\n }\n },\n "required": [\n "kind",\n "address"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "end": {\n "minLength": 1,\n "type": "string"\n },\n "kind": {\n "const": "address-range",\n "type": "string"\n },\n "start": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "kind",\n "start",\n "end"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "kind": {\n "const": "artifact-path",\n "type": "string"\n },\n "path": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "kind",\n "path"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "kind": {\n "const": "file-offset",\n "type": "string"\n },\n "offset": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "kind",\n "offset"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "end": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "kind": {\n "const": "file-offset-range",\n "type": "string"\n },\n "start": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "kind",\n "start",\n "end"\n ],\n "type": "object"\n }\n ]\n },\n "type": "array"\n },\n "normalized_result": {\n "$ref": "#/$defs/__schema0"\n },\n "operation": {\n "minLength": 1,\n "type": "string"\n },\n "parameters": {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n },\n "predicate_type": {\n "minLength": 1,\n "type": "string"\n },\n "provider": {\n "additionalProperties": false,\n "properties": {\n "id": {\n "minLength": 1,\n "type": "string"\n },\n "name": {\n "minLength": 1,\n "type": "string"\n },\n "version": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "id",\n "name",\n "version"\n ],\n "type": "object"\n },\n "raw_result": {\n "anyOf": [\n {\n "$ref": "#/$defs/__schema0"\n },\n {\n "type": "null"\n }\n ]\n },\n "subject": {\n "anyOf": [\n {\n "additionalProperties": false,\n "properties": {\n "architecture": {\n "anyOf": [\n {\n "enum": [\n "x86",\n "x86_64",\n "arm",\n "arm64"\n ],\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "digest": {\n "additionalProperties": false,\n "properties": {\n "sha256": {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n }\n },\n "required": [\n "sha256"\n ],\n "type": "object"\n },\n "format": {\n "enum": [\n "hopper",\n "analysis-database",\n "mach-o",\n "elf",\n "pe",\n "dos-mz",\n "dos-com",\n "zip",\n "ipa",\n "apk",\n "msix",\n "appx",\n "asar",\n "dmg",\n "pkg",\n "plist",\n "javascript",\n "source-map",\n "directory",\n "file",\n "unknown",\n "mach-o-universal",\n "javascript-bundle",\n "entitlements"\n ],\n "type": "string"\n },\n "local_path": {\n "type": "string"\n },\n "name": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "name",\n "digest",\n "format",\n "architecture",\n "local_path"\n ],\n "type": "object"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "evidence_id",\n "subject",\n "provider",\n "predicate_type",\n "operation",\n "parameters",\n "raw_result",\n "normalized_result",\n "confidence",\n "authority",\n "environment",\n "limitations",\n "locations",\n "evidence_links"\n ],\n "type": "object"\n },\n "evidence_id": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "result": {\n "additionalProperties": false,\n "properties": {\n "browser": {\n "additionalProperties": false,\n "properties": {\n "js_version": {\n "type": "string"\n },\n "product": {\n "type": "string"\n },\n "protocol_version": {\n "type": "string"\n },\n "revision": {\n "type": "string"\n },\n "user_agent": {\n "type": "string"\n }\n },\n "required": [\n "product",\n "protocol_version",\n "revision",\n "user_agent",\n "js_version"\n ],\n "type": "object"\n },\n "excluded": {\n "additionalProperties": false,\n "properties": {\n "non_page": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "unsupported_url": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "unsupported_url",\n "non_page"\n ],\n "type": "object"\n },\n "limitations": {\n "items": {\n "type": "string"\n },\n "type": "array"\n },\n "targets": {\n "items": {\n "additionalProperties": false,\n "properties": {\n "attached": {\n "type": "boolean"\n },\n "file_path": {\n "type": "string"\n },\n "target_id": {\n "type": "string"\n },\n "title": {\n "type": "string"\n },\n "type": {\n "type": "string"\n }\n },\n "required": [\n "target_id",\n "type",\n "title",\n "file_path",\n "attached"\n ],\n "type": "object"\n },\n "type": "array"\n }\n },\n "required": [\n "browser",\n "targets",\n "excluded",\n "limitations"\n ],\n "type": "object"\n }\n },\n "required": [\n "result",\n "evidence_id",\n "evidence"\n ],\n "type": "object"\n },\n "requiresSession": false,\n "title": "List Electron Targets"\n },\n {\n "analysisOperation": null,\n "annotations": {\n "destructiveHint": false,\n "idempotentHint": true,\n "openWorldHint": true,\n "readOnlyHint": false\n },\n "description": "Passively inspect one Electron file page by supplying its loopback CDP endpoint and target ID. The provider rechecks that the target currently exists at that endpoint and is a local file page. Returns frames, DOM structure, resource paths, and scripts without evaluating renderer JavaScript or invoking Electron APIs. The selected endpoint exposes every local file page and its metadata to this tool.",\n "effects": {\n "accessesNetwork": true,\n "changesUiState": false,\n "idempotent": true,\n "launchesProcess": false,\n "mayDiscardData": false,\n "mutatesSession": true,\n "mutatesTarget": false,\n "writesFilesystem": false\n },\n "inputSchema": {\n "$schema": "https://json-schema.org/draft/2020-12/schema",\n "anyOf": [\n {\n "additionalProperties": false,\n "properties": {\n "cdp_endpoint": {\n "description": "Literal loopback Chrome DevTools Protocol endpoint.",\n "minLength": 1,\n "type": "string"\n },\n "include_script_sources": {\n "const": false,\n "default": false,\n "description": "Whether to include script sources in the result.",\n "type": "boolean"\n },\n "observation_ms": {\n "default": 100,\n "description": "Value for observation ms.",\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "target_id": {\n "description": "Exact CDP target identifier selected from the endpoint\'s target listing.",\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "cdp_endpoint",\n "target_id"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "cdp_endpoint": {\n "description": "Literal loopback Chrome DevTools Protocol endpoint.",\n "minLength": 1,\n "type": "string"\n },\n "include_script_sources": {\n "const": true,\n "description": "Whether to include script sources in the result.",\n "type": "boolean"\n },\n "observation_ms": {\n "default": 100,\n "description": "Value for observation ms.",\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "target_id": {\n "description": "Exact CDP target identifier selected from the endpoint\'s target listing.",\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "cdp_endpoint",\n "target_id",\n "include_script_sources"\n ],\n "type": "object"\n }\n ],\n "examples": [\n {\n "cdp_endpoint": "http://127.0.0.1:9223",\n "target_id": "TARGET_ID_FROM_LIST_ELECTRON_TARGETS"\n }\n ],\n "type": "object"\n },\n "kind": "electron-provider",\n "name": "inspect_electron_page",\n "outputSchema": {\n "$defs": {\n "__schema0": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "number"\n },\n {\n "type": "boolean"\n },\n {\n "type": "null"\n },\n {\n "items": {\n "$ref": "#/$defs/__schema0"\n },\n "type": "array"\n },\n {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n }\n ]\n }\n },\n "$schema": "https://json-schema.org/draft/2020-12/schema",\n "additionalProperties": false,\n "properties": {\n "evidence": {\n "additionalProperties": false,\n "properties": {\n "analysis_profile": {\n "additionalProperties": false,\n "properties": {\n "digest": {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n },\n "parameters": {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n },\n "provider": {\n "additionalProperties": false,\n "properties": {\n "id": {\n "minLength": 1,\n "type": "string"\n },\n "name": {\n "minLength": 1,\n "type": "string"\n },\n "version": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "id",\n "name",\n "version"\n ],\n "type": "object"\n }\n },\n "required": [\n "provider",\n "parameters",\n "digest"\n ],\n "type": "object"\n },\n "authority": {\n "enum": [\n "shipped-artifact",\n "controlled-replay",\n "historical-reference",\n "external-service",\n "analyst-inference"\n ],\n "type": "string"\n },\n "confidence": {\n "enum": [\n "observed",\n "derived",\n "inferred"\n ],\n "type": "string"\n },\n "environment": {\n "anyOf": [\n {\n "additionalProperties": false,\n "properties": {\n "architecture": {\n "minLength": 1,\n "type": "string"\n },\n "id": {\n "minLength": 1,\n "type": "string"\n },\n "isolation": {\n "enum": [\n "none",\n "process",\n "container",\n "virtual-machine"\n ],\n "type": "string"\n },\n "platform": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "id",\n "platform",\n "architecture",\n "isolation"\n ],\n "type": "object"\n },\n {\n "type": "null"\n }\n ]\n },\n "evidence_id": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "evidence_links": {\n "items": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "type": "array"\n },\n "limitations": {\n "items": {\n "type": "string"\n },\n "type": "array"\n },\n "locations": {\n "items": {\n "oneOf": [\n {\n "additionalProperties": false,\n "properties": {\n "address": {\n "minLength": 1,\n "type": "string"\n },\n "kind": {\n "const": "address",\n "type": "string"\n }\n },\n "required": [\n "kind",\n "address"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "end": {\n "minLength": 1,\n "type": "string"\n },\n "kind": {\n "const": "address-range",\n "type": "string"\n },\n "start": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "kind",\n "start",\n "end"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "kind": {\n "const": "artifact-path",\n "type": "string"\n },\n "path": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "kind",\n "path"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "kind": {\n "const": "file-offset",\n "type": "string"\n },\n "offset": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "kind",\n "offset"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "end": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "kind": {\n "const": "file-offset-range",\n "type": "string"\n },\n "start": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "kind",\n "start",\n "end"\n ],\n "type": "object"\n }\n ]\n },\n "type": "array"\n },\n "normalized_result": {\n "$ref": "#/$defs/__schema0"\n },\n "operation": {\n "minLength": 1,\n "type": "string"\n },\n "parameters": {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n },\n "predicate_type": {\n "minLength": 1,\n "type": "string"\n },\n "provider": {\n "additionalProperties": false,\n "properties": {\n "id": {\n "minLength": 1,\n "type": "string"\n },\n "name": {\n "minLength": 1,\n "type": "string"\n },\n "version": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "id",\n "name",\n "version"\n ],\n "type": "object"\n },\n "raw_result": {\n "anyOf": [\n {\n "$ref": "#/$defs/__schema0"\n },\n {\n "type": "null"\n }\n ]\n },\n "subject": {\n "anyOf": [\n {\n "additionalProperties": false,\n "properties": {\n "architecture": {\n "anyOf": [\n {\n "enum": [\n "x86",\n "x86_64",\n "arm",\n "arm64"\n ],\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "digest": {\n "additionalProperties": false,\n "properties": {\n "sha256": {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n }\n },\n "required": [\n "sha256"\n ],\n "type": "object"\n },\n "format": {\n "enum": [\n "hopper",\n "analysis-database",\n "mach-o",\n "elf",\n "pe",\n "dos-mz",\n "dos-com",\n "zip",\n "ipa",\n "apk",\n "msix",\n "appx",\n "asar",\n "dmg",\n "pkg",\n "plist",\n "javascript",\n "source-map",\n "directory",\n "file",\n "unknown",\n "mach-o-universal",\n "javascript-bundle",\n "entitlements"\n ],\n "type": "string"\n },\n "local_path": {\n "type": "string"\n },\n "name": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "name",\n "digest",\n "format",\n "architecture",\n "local_path"\n ],\n "type": "object"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "evidence_id",\n "subject",\n "provider",\n "predicate_type",\n "operation",\n "parameters",\n "raw_result",\n "normalized_result",\n "confidence",\n "authority",\n "environment",\n "limitations",\n "locations",\n "evidence_links"\n ],\n "type": "object"\n },\n "evidence_id": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "result": {\n "additionalProperties": false,\n "properties": {\n "browser": {\n "additionalProperties": false,\n "properties": {\n "js_version": {\n "type": "string"\n },\n "product": {\n "type": "string"\n },\n "protocol_version": {\n "type": "string"\n },\n "revision": {\n "type": "string"\n },\n "user_agent": {\n "type": "string"\n }\n },\n "required": [\n "product",\n "protocol_version",\n "revision",\n "user_agent",\n "js_version"\n ],\n "type": "object"\n },\n "capture_window": {\n "additionalProperties": false,\n "properties": {\n "ended_at": {\n "format": "date-time",\n "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))$",\n "type": "string"\n },\n "observation_ms": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "started_at": {\n "format": "date-time",\n "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))$",\n "type": "string"\n }\n },\n "required": [\n "started_at",\n "ended_at",\n "observation_ms"\n ],\n "type": "object"\n },\n "completeness": {\n "additionalProperties": false,\n "properties": {\n "attach_limited_sections": {\n "items": {\n "enum": [\n "frames",\n "dom",\n "accessibility",\n "scripts",\n "script_sources",\n "resources",\n "network_requests",\n "network_initiators",\n "console_events",\n "console_text",\n "websocket_connections",\n "websocket_frames",\n "websocket_shapes",\n "json_body_shapes",\n "workers",\n "storage",\n "storage_keys",\n "metadata",\n "webmcp_tools",\n "screenshot",\n "source_maps",\n "timeline"\n ],\n "type": "string"\n },\n "type": "array"\n },\n "conditions": {\n "items": {\n "enum": [\n "complete_within_window",\n "policy_filtered",\n "attach_limited",\n "truncated"\n ],\n "type": "string"\n },\n "maxItems": 3,\n "minItems": 1,\n "type": "array"\n },\n "dropped_events": {\n "additionalProperties": false,\n "properties": {\n "console_events": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "network_requests": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "scripts": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "timeline_events": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "total": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "webmcp_tools": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "websocket_connections": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "websocket_frames": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "scripts",\n "network_requests",\n "console_events",\n "websocket_connections",\n "websocket_frames",\n "webmcp_tools",\n "timeline_events",\n "total"\n ],\n "type": "object"\n },\n "excluded": {\n "items": {\n "additionalProperties": false,\n "properties": {\n "count": {\n "anyOf": [\n {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n {\n "type": "null"\n }\n ]\n },\n "reason": {\n "enum": [\n "disallowed_origin",\n "unsupported_url",\n "unattributed_origin",\n "not_approved",\n "out_of_target_scope",\n "provider_unavailable",\n "invalid_protocol_value"\n ],\n "type": "string"\n },\n "section": {\n "enum": [\n "frames",\n "dom",\n "accessibility",\n "scripts",\n "script_sources",\n "resources",\n "network_requests",\n "network_initiators",\n "console_events",\n "console_text",\n "websocket_connections",\n "websocket_frames",\n "websocket_shapes",\n "json_body_shapes",\n "workers",\n "storage",\n "storage_keys",\n "metadata",\n "webmcp_tools",\n "screenshot",\n "source_maps",\n "timeline"\n ],\n "type": "string"\n }\n },\n "required": [\n "section",\n "reason",\n "count"\n ],\n "type": "object"\n },\n "type": "array"\n },\n "policy_filtered_sections": {\n "items": {\n "enum": [\n "frames",\n "dom",\n "accessibility",\n "scripts",\n "script_sources",\n "resources",\n "network_requests",\n "network_initiators",\n "console_events",\n "console_text",\n "websocket_connections",\n "websocket_frames",\n "websocket_shapes",\n "json_body_shapes",\n "workers",\n "storage",\n "storage_keys",\n "metadata",\n "webmcp_tools",\n "screenshot",\n "source_maps",\n "timeline"\n ],\n "type": "string"\n },\n "type": "array"\n },\n "status": {\n "enum": [\n "complete_within_window",\n "policy_filtered",\n "attach_limited",\n "truncated"\n ],\n "type": "string"\n },\n "truncated_sections": {\n "items": {\n "enum": [\n "frames",\n "dom",\n "accessibility",\n "scripts",\n "script_sources",\n "resources",\n "network_requests",\n "network_initiators",\n "console_events",\n "console_text",\n "websocket_connections",\n "websocket_frames",\n "websocket_shapes",\n "json_body_shapes",\n "workers",\n "storage",\n "storage_keys",\n "metadata",\n "webmcp_tools",\n "screenshot",\n "source_maps",\n "timeline"\n ],\n "type": "string"\n },\n "type": "array"\n },\n "unavailable_sections": {\n "items": {\n "enum": [\n "frames",\n "dom",\n "accessibility",\n "scripts",\n "script_sources",\n "resources",\n "network_requests",\n "network_initiators",\n "console_events",\n "console_text",\n "websocket_connections",\n "websocket_frames",\n "websocket_shapes",\n "json_body_shapes",\n "workers",\n "storage",\n "storage_keys",\n "metadata",\n "webmcp_tools",\n "screenshot",\n "source_maps",\n "timeline"\n ],\n "type": "string"\n },\n "type": "array"\n }\n },\n "required": [\n "status",\n "conditions",\n "policy_filtered_sections",\n "attach_limited_sections",\n "truncated_sections",\n "unavailable_sections",\n "excluded",\n "dropped_events"\n ],\n "type": "object"\n },\n "dom": {\n "additionalProperties": false,\n "properties": {\n "nodes": {\n "items": {\n "additionalProperties": false,\n "properties": {\n "attribute_names": {\n "items": {\n "type": "string"\n },\n "type": "array"\n },\n "index": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "node_name": {\n "type": "string"\n },\n "node_type": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "node_value_length": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "parent_index": {\n "maximum": 9007199254740991,\n "minimum": -1,\n "type": "integer"\n }\n },\n "required": [\n "index",\n "parent_index",\n "node_type",\n "node_name",\n "node_value_length",\n "attribute_names"\n ],\n "type": "object"\n },\n "type": "array"\n },\n "total_nodes": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "total_nodes",\n "nodes"\n ],\n "type": "object"\n },\n "frames": {\n "items": {\n "additionalProperties": false,\n "properties": {\n "file_path": {\n "type": "string"\n },\n "frame_id": {\n "type": "string"\n },\n "parent_frame_id": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "frame_id",\n "parent_frame_id",\n "file_path"\n ],\n "type": "object"\n },\n "type": "array"\n },\n "limitations": {\n "items": {\n "type": "string"\n },\n "type": "array"\n },\n "resources": {\n "items": {\n "additionalProperties": false,\n "properties": {\n "content_size": {\n "anyOf": [\n {\n "minimum": 0,\n "type": "number"\n },\n {\n "type": "null"\n }\n ]\n },\n "file_path": {\n "type": "string"\n },\n "mime_type": {\n "type": "string"\n },\n "resource_key": {\n "pattern": "^electron_resource_[a-f0-9]{64}$",\n "type": "string"\n },\n "type": {\n "type": "string"\n }\n },\n "required": [\n "resource_key",\n "file_path",\n "type",\n "mime_type",\n "content_size"\n ],\n "type": "object"\n },\n "type": "array"\n },\n "scripts": {\n "additionalProperties": false,\n "properties": {\n "items": {\n "items": {\n "additionalProperties": false,\n "properties": {\n "cdp_hash": {\n "type": "string"\n },\n "file_path": {\n "type": "string"\n },\n "frame_id": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ],\n "default": null\n },\n "is_module": {\n "type": "boolean"\n },\n "language": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "length": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "script_key": {\n "pattern": "^electron_script_[a-f0-9]{64}$",\n "type": "string"\n },\n "source": {\n "oneOf": [\n {\n "additionalProperties": false,\n "properties": {\n "included": {\n "const": false,\n "type": "boolean"\n },\n "reason": {\n "type": "string"\n }\n },\n "required": [\n "included",\n "reason"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "artifact": {\n "additionalProperties": false,\n "properties": {\n "bytes": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "charset": {\n "const": "utf-8",\n "type": "string"\n },\n "media_type": {\n "minLength": 1,\n "type": "string"\n },\n "sha256": {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n },\n "text": {\n "type": "string"\n }\n },\n "required": [\n "sha256",\n "bytes",\n "media_type",\n "charset",\n "text"\n ],\n "type": "object"\n },\n "included": {\n "const": true,\n "type": "boolean"\n }\n },\n "required": [\n "included",\n "artifact"\n ],\n "type": "object"\n }\n ]\n }\n },\n "required": [\n "script_key",\n "frame_id",\n "file_path",\n "cdp_hash",\n "length",\n "is_module",\n "language",\n "source"\n ],\n "type": "object"\n },\n "type": "array"\n },\n "total": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "total",\n "items"\n ],\n "type": "object"\n },\n "target": {\n "additionalProperties": false,\n "properties": {\n "attached": {\n "type": "boolean"\n },\n "file_path": {\n "type": "string"\n },\n "target_id": {\n "type": "string"\n },\n "title": {\n "type": "string"\n },\n "type": {\n "type": "string"\n }\n },\n "required": [\n "target_id",\n "type",\n "title",\n "file_path",\n "attached"\n ],\n "type": "object"\n },\n "workers": {\n "default": [],\n "items": {\n "additionalProperties": false,\n "properties": {\n "attached": {\n "type": "boolean"\n },\n "file_path": {\n "type": "string"\n },\n "opener_target_id": {\n "anyOf": [\n {\n "minLength": 1,\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "parent_frame_id": {\n "anyOf": [\n {\n "minLength": 1,\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "target_id": {\n "minLength": 1,\n "type": "string"\n },\n "type": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "target_id",\n "type",\n "file_path",\n "attached",\n "opener_target_id",\n "parent_frame_id"\n ],\n "type": "object"\n },\n "type": "array"\n }\n },\n "required": [\n "browser",\n "target",\n "capture_window",\n "completeness",\n "frames",\n "dom",\n "scripts",\n "resources",\n "workers",\n "limitations"\n ],\n "type": "object"\n }\n },\n "required": [\n "result",\n "evidence_id",\n "evidence"\n ],\n "type": "object"\n },\n "requiresSession": false,\n "title": "Inspect Electron Page"\n },\n {\n "analysisOperation": null,\n "annotations": {\n "destructiveHint": false,\n "idempotentHint": true,\n "openWorldHint": false,\n "readOnlyHint": false\n },\n "description": "Reconstruct one local ASAR or extracted JavaScript application as an inline application graph without executing it. Returns all recovered graph nodes, edges, semantic relations, limitations, and coverage. Integrity mismatches, such as unpacked native modules signed after packaging, fail by default; record-and-continue analyzes the observed bytes and reports each mismatch as an untrusted integrity contradiction.",\n "effects": {\n "accessesNetwork": false,\n "changesUiState": false,\n "idempotent": true,\n "launchesProcess": false,\n "mayDiscardData": false,\n "mutatesSession": true,\n "mutatesTarget": false,\n "writesFilesystem": false\n },\n "inputSchema": {\n "$schema": "https://json-schema.org/draft/2020-12/schema",\n "additionalProperties": false,\n "examples": [\n {\n "format": "auto",\n "input_path": "/Applications/Example.app/Contents/Resources/app.asar"\n }\n ],\n "properties": {\n "format": {\n "default": "auto",\n "description": "Declared input artifact format.",\n "enum": [\n "auto",\n "asar",\n "directory"\n ],\n "type": "string"\n },\n "input_path": {\n "description": "Local filesystem path for input.",\n "minLength": 1,\n "type": "string"\n },\n "integrity_policy": {\n "default": "fail",\n "description": "Value for integrity policy.",\n "enum": [\n "fail",\n "record-and-continue"\n ],\n "type": "string"\n }\n },\n "required": [\n "input_path"\n ],\n "type": "object"\n },\n "kind": "electron-provider",\n "name": "analyze_javascript_application",\n "outputSchema": {\n "$defs": {\n "__schema0": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "number"\n },\n {\n "type": "boolean"\n },\n {\n "type": "null"\n },\n {\n "items": {\n "$ref": "#/$defs/__schema0"\n },\n "type": "array"\n },\n {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n }\n ]\n }\n },\n "$schema": "https://json-schema.org/draft/2020-12/schema",\n "additionalProperties": false,\n "properties": {\n "evidence": {\n "additionalProperties": false,\n "properties": {\n "analysis_profile": {\n "additionalProperties": false,\n "properties": {\n "digest": {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n },\n "parameters": {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n },\n "provider": {\n "additionalProperties": false,\n "properties": {\n "id": {\n "minLength": 1,\n "type": "string"\n },\n "name": {\n "minLength": 1,\n "type": "string"\n },\n "version": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "id",\n "name",\n "version"\n ],\n "type": "object"\n }\n },\n "required": [\n "provider",\n "parameters",\n "digest"\n ],\n "type": "object"\n },\n "authority": {\n "enum": [\n "shipped-artifact",\n "controlled-replay",\n "historical-reference",\n "external-service",\n "analyst-inference"\n ],\n "type": "string"\n },\n "confidence": {\n "enum": [\n "observed",\n "derived",\n "inferred"\n ],\n "type": "string"\n },\n "environment": {\n "anyOf": [\n {\n "additionalProperties": false,\n "properties": {\n "architecture": {\n "minLength": 1,\n "type": "string"\n },\n "id": {\n "minLength": 1,\n "type": "string"\n },\n "isolation": {\n "enum": [\n "none",\n "process",\n "container",\n "virtual-machine"\n ],\n "type": "string"\n },\n "platform": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "id",\n "platform",\n "architecture",\n "isolation"\n ],\n "type": "object"\n },\n {\n "type": "null"\n }\n ]\n },\n "evidence_id": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "evidence_links": {\n "items": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "type": "array"\n },\n "limitations": {\n "items": {\n "type": "string"\n },\n "type": "array"\n },\n "locations": {\n "items": {\n "oneOf": [\n {\n "additionalProperties": false,\n "properties": {\n "address": {\n "minLength": 1,\n "type": "string"\n },\n "kind": {\n "const": "address",\n "type": "string"\n }\n },\n "required": [\n "kind",\n "address"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "end": {\n "minLength": 1,\n "type": "string"\n },\n "kind": {\n "const": "address-range",\n "type": "string"\n },\n "start": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "kind",\n "start",\n "end"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "kind": {\n "const": "artifact-path",\n "type": "string"\n },\n "path": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "kind",\n "path"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "kind": {\n "const": "file-offset",\n "type": "string"\n },\n "offset": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "kind",\n "offset"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "end": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "kind": {\n "const": "file-offset-range",\n "type": "string"\n },\n "start": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "kind",\n "start",\n "end"\n ],\n "type": "object"\n }\n ]\n },\n "type": "array"\n },\n "normalized_result": {\n "$ref": "#/$defs/__schema0"\n },\n "operation": {\n "minLength": 1,\n "type": "string"\n },\n "parameters": {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n },\n "predicate_type": {\n "minLength": 1,\n "type": "string"\n },\n "provider": {\n "additionalProperties": false,\n "properties": {\n "id": {\n "minLength": 1,\n "type": "string"\n },\n "name": {\n "minLength": 1,\n "type": "string"\n },\n "version": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "id",\n "name",\n "version"\n ],\n "type": "object"\n },\n "raw_result": {\n "anyOf": [\n {\n "$ref": "#/$defs/__schema0"\n },\n {\n "type": "null"\n }\n ]\n },\n "subject": {\n "anyOf": [\n {\n "additionalProperties": false,\n "properties": {\n "architecture": {\n "anyOf": [\n {\n "enum": [\n "x86",\n "x86_64",\n "arm",\n "arm64"\n ],\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "digest": {\n "additionalProperties": false,\n "properties": {\n "sha256": {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n }\n },\n "required": [\n "sha256"\n ],\n "type": "object"\n },\n "format": {\n "enum": [\n "hopper",\n "analysis-database",\n "mach-o",\n "elf",\n "pe",\n "dos-mz",\n "dos-com",\n "zip",\n "ipa",\n "apk",\n "msix",\n "appx",\n "asar",\n "dmg",\n "pkg",\n "plist",\n "javascript",\n "source-map",\n "directory",\n "file",\n "unknown",\n "mach-o-universal",\n "javascript-bundle",\n "entitlements"\n ],\n "type": "string"\n },\n "local_path": {\n "type": "string"\n },\n "name": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "name",\n "digest",\n "format",\n "architecture",\n "local_path"\n ],\n "type": "object"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "evidence_id",\n "subject",\n "provider",\n "predicate_type",\n "operation",\n "parameters",\n "raw_result",\n "normalized_result",\n "confidence",\n "authority",\n "environment",\n "limitations",\n "locations",\n "evidence_links"\n ],\n "type": "object"\n },\n "evidence_id": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "result": {\n "additionalProperties": false,\n "properties": {\n "format": {\n "enum": [\n "asar",\n "directory"\n ],\n "type": "string"\n },\n "graph": {\n "additionalProperties": false,\n "properties": {\n "coverage": {\n "anyOf": [\n {\n "additionalProperties": false,\n "properties": {\n "limits": {\n "items": {\n "additionalProperties": false,\n "properties": {\n "name": {\n "minLength": 1,\n "type": "string"\n },\n "unit": {\n "enum": [\n "items",\n "bytes",\n "milliseconds",\n "depth",\n "characters",\n "instructions",\n "other"\n ],\n "type": "string"\n },\n "value": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "name",\n "value",\n "unit"\n ],\n "type": "object"\n },\n "type": "array"\n },\n "omitted_count": {\n "const": 0,\n "type": "number"\n },\n "status": {\n "const": "complete",\n "type": "string"\n },\n "truncated": {\n "const": false,\n "type": "boolean"\n }\n },\n "required": [\n "status",\n "truncated",\n "omitted_count",\n "limits"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "limits": {\n "items": {\n "additionalProperties": false,\n "properties": {\n "name": {\n "minLength": 1,\n "type": "string"\n },\n "unit": {\n "enum": [\n "items",\n "bytes",\n "milliseconds",\n "depth",\n "characters",\n "instructions",\n "other"\n ],\n "type": "string"\n },\n "value": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "name",\n "value",\n "unit"\n ],\n "type": "object"\n },\n "type": "array"\n },\n "omitted_count": {\n "anyOf": [\n {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n {\n "type": "null"\n }\n ]\n },\n "status": {\n "const": "partial",\n "type": "string"\n },\n "truncated": {\n "const": false,\n "type": "boolean"\n }\n },\n "required": [\n "status",\n "truncated",\n "omitted_count",\n "limits"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "limits": {\n "items": {\n "additionalProperties": false,\n "properties": {\n "name": {\n "minLength": 1,\n "type": "string"\n },\n "unit": {\n "enum": [\n "items",\n "bytes",\n "milliseconds",\n "depth",\n "characters",\n "instructions",\n "other"\n ],\n "type": "string"\n },\n "value": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "name",\n "value",\n "unit"\n ],\n "type": "object"\n },\n "minItems": 1,\n "type": "array"\n },\n "omitted_count": {\n "anyOf": [\n {\n "exclusiveMinimum": 0,\n "maximum": 9007199254740991,\n "type": "integer"\n },\n {\n "type": "null"\n }\n ]\n },\n "status": {\n "const": "partial",\n "type": "string"\n },\n "truncated": {\n "const": true,\n "type": "boolean"\n }\n },\n "required": [\n "status",\n "truncated",\n "omitted_count",\n "limits"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "limits": {\n "items": {\n "additionalProperties": false,\n "properties": {\n "name": {\n "minLength": 1,\n "type": "string"\n },\n "unit": {\n "enum": [\n "items",\n "bytes",\n "milliseconds",\n "depth",\n "characters",\n "instructions",\n "other"\n ],\n "type": "string"\n },\n "value": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "name",\n "value",\n "unit"\n ],\n "type": "object"\n },\n "type": "array"\n },\n "omitted_count": {\n "type": "null"\n },\n "status": {\n "enum": [\n "unknown",\n "unavailable"\n ],\n "type": "string"\n },\n "truncated": {\n "const": false,\n "type": "boolean"\n }\n },\n "required": [\n "status",\n "truncated",\n "omitted_count",\n "limits"\n ],\n "type": "object"\n }\n ]\n },\n "edges": {\n "items": {\n "additionalProperties": false,\n "properties": {\n "edge_id": {\n "pattern": "^jag_edge_[a-f0-9]{64}$",\n "type": "string"\n },\n "evidence": {\n "additionalProperties": false,\n "properties": {\n "artifact": {\n "oneOf": [\n {\n "additionalProperties": false,\n "properties": {\n "artifact_id": {\n "pattern": "^art_[a-f0-9]{64}$",\n "type": "string"\n },\n "available": {\n "const": true,\n "type": "boolean"\n },\n "sha256": {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n }\n },\n "required": [\n "available",\n "artifact_id",\n "sha256"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "available": {\n "const": false,\n "type": "boolean"\n },\n "detail": {\n "minLength": 1,\n "type": "string"\n },\n "reason": {\n "enum": [\n "not-applicable",\n "not-observed",\n "truncated",\n "provider-unavailable",\n "unresolved",\n "unknown"\n ],\n "type": "string"\n }\n },\n "required": [\n "available",\n "reason",\n "detail"\n ],\n "type": "object"\n }\n ]\n },\n "authority": {\n "enum": [\n "artifact-bytes",\n "ast-static-analysis",\n "static-relationship-inference",\n "passive-cdp-runtime",\n "cross-layer-reconciliation",\n "cross-version-comparison",\n "controlled-replay",\n "native-analysis-provider",\n "managed-static-analysis",\n "historical-reference",\n "user-assertion",\n "unknown"\n ],\n "type": "string"\n },\n "confidence": {\n "enum": [\n "exact",\n "high",\n "medium",\n "low",\n "unknown"\n ],\n "type": "string"\n },\n "coverage": {\n "anyOf": [\n {\n "additionalProperties": false,\n "properties": {\n "limits": {\n "items": {\n "additionalProperties": false,\n "properties": {\n "name": {\n "minLength": 1,\n "type": "string"\n },\n "unit": {\n "enum": [\n "items",\n "bytes",\n "milliseconds",\n "depth",\n "characters",\n "instructions",\n "other"\n ],\n "type": "string"\n },\n "value": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "name",\n "value",\n "unit"\n ],\n "type": "object"\n },\n "type": "array"\n },\n "omitted_count": {\n "const": 0,\n "type": "number"\n },\n "status": {\n "const": "complete",\n "type": "string"\n },\n "truncated": {\n "const": false,\n "type": "boolean"\n }\n },\n "required": [\n "status",\n "truncated",\n "omitted_count",\n "limits"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "limits": {\n "items": {\n "additionalProperties": false,\n "properties": {\n "name": {\n "minLength": 1,\n "type": "string"\n },\n "unit": {\n "enum": [\n "items",\n "bytes",\n "milliseconds",\n "depth",\n "characters",\n "instructions",\n "other"\n ],\n "type": "string"\n },\n "value": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "name",\n "value",\n "unit"\n ],\n "type": "object"\n },\n "type": "array"\n },\n "omitted_count": {\n "anyOf": [\n {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n {\n "type": "null"\n }\n ]\n },\n "status": {\n "const": "partial",\n "type": "string"\n },\n "truncated": {\n "const": false,\n "type": "boolean"\n }\n },\n "required": [\n "status",\n "truncated",\n "omitted_count",\n "limits"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "limits": {\n "items": {\n "additionalProperties": false,\n "properties": {\n "name": {\n "minLength": 1,\n "type": "string"\n },\n "unit": {\n "enum": [\n "items",\n "bytes",\n "milliseconds",\n "depth",\n "characters",\n "instructions",\n "other"\n ],\n "type": "string"\n },\n "value": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "name",\n "value",\n "unit"\n ],\n "type": "object"\n },\n "minItems": 1,\n "type": "array"\n },\n "omitted_count": {\n "anyOf": [\n {\n "exclusiveMinimum": 0,\n "maximum": 9007199254740991,\n "type": "integer"\n },\n {\n "type": "null"\n }\n ]\n },\n "status": {\n "const": "partial",\n "type": "string"\n },\n "truncated": {\n "const": true,\n "type": "boolean"\n }\n },\n "required": [\n "status",\n "truncated",\n "omitted_count",\n "limits"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "limits": {\n "items": {\n "additionalProperties": false,\n "properties": {\n "name": {\n "minLength": 1,\n "type": "string"\n },\n "unit": {\n "enum": [\n "items",\n "bytes",\n "milliseconds",\n "depth",\n "characters",\n "instructions",\n "other"\n ],\n "type": "string"\n },\n "value": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "name",\n "value",\n "unit"\n ],\n "type": "object"\n },\n "type": "array"\n },\n "omitted_count": {\n "type": "null"\n },\n "status": {\n "enum": [\n "unknown",\n "unavailable"\n ],\n "type": "string"\n },\n "truncated": {\n "const": false,\n "type": "boolean"\n }\n },\n "required": [\n "status",\n "truncated",\n "omitted_count",\n "limits"\n ],\n "type": "object"\n }\n ]\n },\n "evidence_ids": {\n "items": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "type": "array"\n },\n "extractor": {\n "additionalProperties": false,\n "properties": {\n "executable_sha256": {\n "anyOf": [\n {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "name": {\n "minLength": 1,\n "type": "string"\n },\n "operation": {\n "minLength": 1,\n "type": "string"\n },\n "version": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "name",\n "version",\n "operation",\n "executable_sha256"\n ],\n "type": "object"\n },\n "limitations": {\n "items": {\n "minLength": 1,\n "type": "string"\n },\n "type": "array"\n },\n "location": {\n "oneOf": [\n {\n "additionalProperties": false,\n "properties": {\n "available": {\n "const": true,\n "type": "boolean"\n },\n "value": {\n "oneOf": [\n {\n "additionalProperties": false,\n "properties": {\n "kind": {\n "const": "artifact-path",\n "type": "string"\n },\n "path": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "kind",\n "path"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "end": {\n "additionalProperties": false,\n "properties": {\n "column": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "line": {\n "maximum": 9007199254740991,\n "minimum": 1,\n "type": "integer"\n }\n },\n "required": [\n "line",\n "column"\n ],\n "type": "object"\n },\n "kind": {\n "const": "source-range",\n "type": "string"\n },\n "source": {\n "minLength": 1,\n "type": "string"\n },\n "start": {\n "additionalProperties": false,\n "properties": {\n "column": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "line": {\n "maximum": 9007199254740991,\n "minimum": 1,\n "type": "integer"\n }\n },\n "required": [\n "line",\n "column"\n ],\n "type": "object"\n }\n },\n "required": [\n "kind",\n "source",\n "start",\n "end"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "end": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "kind": {\n "const": "file-offset-range",\n "type": "string"\n },\n "start": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "kind",\n "start",\n "end"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "kind": {\n "const": "url",\n "type": "string"\n },\n "url": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "kind",\n "url"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "capture_sha256": {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n },\n "frame_key": {\n "anyOf": [\n {\n "minLength": 1,\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "kind": {\n "const": "runtime",\n "type": "string"\n },\n "script_key": {\n "anyOf": [\n {\n "minLength": 1,\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "target_key": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "kind",\n "capture_sha256",\n "target_key",\n "frame_key",\n "script_key"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "address": {\n "minLength": 1,\n "type": "string"\n },\n "kind": {\n "const": "native-address",\n "type": "string"\n },\n "symbol": {\n "anyOf": [\n {\n "minLength": 1,\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "kind",\n "address",\n "symbol"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "export_path": {\n "minLength": 1,\n "type": "string"\n },\n "kind": {\n "const": "package-export",\n "type": "string"\n },\n "package_name": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "kind",\n "package_name",\n "export_path"\n ],\n "type": "object"\n }\n ]\n }\n },\n "required": [\n "available",\n "value"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "available": {\n "const": false,\n "type": "boolean"\n },\n "detail": {\n "minLength": 1,\n "type": "string"\n },\n "reason": {\n "enum": [\n "not-applicable",\n "not-observed",\n "truncated",\n "provider-unavailable",\n "unresolved",\n "unknown"\n ],\n "type": "string"\n }\n },\n "required": [\n "available",\n "reason",\n "detail"\n ],\n "type": "object"\n }\n ]\n },\n "state": {\n "enum": [\n "observed",\n "inferred",\n "unknown",\n "unavailable"\n ],\n "type": "string"\n }\n },\n "required": [\n "authority",\n "state",\n "confidence",\n "artifact",\n "location",\n "extractor",\n "coverage",\n "limitations",\n "evidence_ids"\n ],\n "type": "object"\n },\n "identifier_strategy": {\n "additionalProperties": false,\n "properties": {\n "stability": {\n "const": "relationship-exact",\n "type": "string"\n },\n "strategy": {\n "const": "semantic-content-sha256",\n "type": "string"\n }\n },\n "required": [\n "strategy",\n "stability"\n ],\n "type": "object"\n },\n "properties": {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "propertyNames": {\n "minLength": 1,\n "type": "string"\n },\n "type": "object"\n },\n "relation": {\n "enum": [\n "contains",\n "loads",\n "imports",\n "maps_to",\n "exposes",\n "sends",\n "invokes",\n "handles",\n "calls",\n "persists_to",\n "observed_as",\n "changed_from"\n ],\n "type": "string"\n },\n "source_node_id": {\n "pattern": "^jag_node_[a-f0-9]{64}$",\n "type": "string"\n },\n "target_node_id": {\n "pattern": "^jag_node_[a-f0-9]{64}$",\n "type": "string"\n }\n },\n "required": [\n "source_node_id",\n "target_node_id",\n "relation",\n "properties",\n "evidence",\n "edge_id",\n "identifier_strategy"\n ],\n "type": "object"\n },\n "type": "array"\n },\n "graph_id": {\n "pattern": "^jag_[a-f0-9]{64}$",\n "type": "string"\n },\n "limitations": {\n "items": {\n "minLength": 1,\n "type": "string"\n },\n "type": "array"\n },\n "nodes": {\n "items": {\n "additionalProperties": false,\n "properties": {\n "identity": {\n "oneOf": [\n {\n "additionalProperties": false,\n "properties": {\n "sha256": {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n },\n "stability": {\n "const": "global-exact",\n "type": "string"\n },\n "strategy": {\n "const": "content-digest",\n "type": "string"\n }\n },\n "required": [\n "strategy",\n "stability",\n "sha256"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "original_source": {\n "type": "string"\n },\n "source_map_sha256": {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n },\n "source_sha256": {\n "anyOf": [\n {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "stability": {\n "const": "source-map-exact",\n "type": "string"\n },\n "strategy": {\n "const": "source-map-original",\n "type": "string"\n }\n },\n "required": [\n "strategy",\n "stability",\n "source_map_sha256",\n "original_source",\n "source_sha256"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "artifact_sha256": {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n },\n "path": {\n "minLength": 1,\n "type": "string"\n },\n "stability": {\n "const": "artifact-version",\n "type": "string"\n },\n "strategy": {\n "const": "canonical-path",\n "type": "string"\n }\n },\n "required": [\n "strategy",\n "stability",\n "artifact_sha256",\n "path"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "algorithm": {\n "minLength": 1,\n "type": "string"\n },\n "basis": {\n "items": {\n "enum": [\n "syntax-tree",\n "control-flow",\n "imports",\n "exports",\n "literals",\n "api-usage"\n ],\n "type": "string"\n },\n "minItems": 1,\n "type": "array"\n },\n "fingerprint_sha256": {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n },\n "stability": {\n "const": "cross-version-inference",\n "type": "string"\n },\n "strategy": {\n "const": "structural-fingerprint",\n "type": "string"\n }\n },\n "required": [\n "strategy",\n "stability",\n "algorithm",\n "fingerprint_sha256",\n "basis"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "artifact_sha256": {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n },\n "key": {\n "type": "string"\n },\n "namespace": {\n "minLength": 1,\n "type": "string"\n },\n "stability": {\n "const": "artifact-version",\n "type": "string"\n },\n "strategy": {\n "const": "artifact-local-key",\n "type": "string"\n }\n },\n "required": [\n "strategy",\n "stability",\n "artifact_sha256",\n "namespace",\n "key"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "capture_sha256": {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n },\n "runtime_key": {\n "minLength": 1,\n "type": "string"\n },\n "stability": {\n "const": "capture-only",\n "type": "string"\n },\n "strategy": {\n "const": "runtime-instance",\n "type": "string"\n }\n },\n "required": [\n "strategy",\n "stability",\n "capture_sha256",\n "runtime_key"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "observation_sha256": {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n },\n "scope": {\n "minLength": 1,\n "type": "string"\n },\n "stability": {\n "const": "observation-only",\n "type": "string"\n },\n "strategy": {\n "const": "observation-fingerprint",\n "type": "string"\n }\n },\n "required": [\n "strategy",\n "stability",\n "observation_sha256",\n "scope"\n ],\n "type": "object"\n }\n ]\n },\n "kind": {\n "enum": [\n "package",\n "installer",\n "artifact",\n "asar-entry",\n "electron-main",\n "electron-preload",\n "electron-renderer",\n "electron-utility",\n "javascript-asset",\n "javascript-chunk",\n "javascript-module",\n "source-map",\n "source-module",\n "browser-window",\n "frame",\n "target",\n "context-bridge-api",\n "ipc-channel",\n "ipc-handler",\n "worker",\n "service-worker",\n "endpoint",\n "storage",\n "native-addon",\n "native-export",\n "managed-assembly",\n "managed-module",\n "managed-type",\n "managed-method",\n "managed-field",\n "managed-pinvoke-import",\n "managed-native-implementation",\n "runtime-script-instance",\n "unknown"\n ],\n "type": "string"\n },\n "node_id": {\n "pattern": "^jag_node_[a-f0-9]{64}$",\n "type": "string"\n },\n "observations": {\n "items": {\n "additionalProperties": false,\n "properties": {\n "evidence": {\n "additionalProperties": false,\n "properties": {\n "artifact": {\n "oneOf": [\n {\n "additionalProperties": false,\n "properties": {\n "artifact_id": {\n "pattern": "^art_[a-f0-9]{64}$",\n "type": "string"\n },\n "available": {\n "const": true,\n "type": "boolean"\n },\n "sha256": {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n }\n },\n "required": [\n "available",\n "artifact_id",\n "sha256"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "available": {\n "const": false,\n "type": "boolean"\n },\n "detail": {\n "minLength": 1,\n "type": "string"\n },\n "reason": {\n "enum": [\n "not-applicable",\n "not-observed",\n "truncated",\n "provider-unavailable",\n "unresolved",\n "unknown"\n ],\n "type": "string"\n }\n },\n "required": [\n "available",\n "reason",\n "detail"\n ],\n "type": "object"\n }\n ]\n },\n "authority": {\n "enum": [\n "artifact-bytes",\n "ast-static-analysis",\n "static-relationship-inference",\n "passive-cdp-runtime",\n "cross-layer-reconciliation",\n "cross-version-comparison",\n "controlled-replay",\n "native-analysis-provider",\n "managed-static-analysis",\n "historical-reference",\n "user-assertion",\n "unknown"\n ],\n "type": "string"\n },\n "confidence": {\n "enum": [\n "exact",\n "high",\n "medium",\n "low",\n "unknown"\n ],\n "type": "string"\n },\n "coverage": {\n "anyOf": [\n {\n "additionalProperties": false,\n "properties": {\n "limits": {\n "items": {\n "additionalProperties": false,\n "properties": {\n "name": {\n "minLength": 1,\n "type": "string"\n },\n "unit": {\n "enum": [\n "items",\n "bytes",\n "milliseconds",\n "depth",\n "characters",\n "instructions",\n "other"\n ],\n "type": "string"\n },\n "value": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "name",\n "value",\n "unit"\n ],\n "type": "object"\n },\n "type": "array"\n },\n "omitted_count": {\n "const": 0,\n "type": "number"\n },\n "status": {\n "const": "complete",\n "type": "string"\n },\n "truncated": {\n "const": false,\n "type": "boolean"\n }\n },\n "required": [\n "status",\n "truncated",\n "omitted_count",\n "limits"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "limits": {\n "items": {\n "additionalProperties": false,\n "properties": {\n "name": {\n "minLength": 1,\n "type": "string"\n },\n "unit": {\n "enum": [\n "items",\n "bytes",\n "milliseconds",\n "depth",\n "characters",\n "instructions",\n "other"\n ],\n "type": "string"\n },\n "value": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "name",\n "value",\n "unit"\n ],\n "type": "object"\n },\n "type": "array"\n },\n "omitted_count": {\n "anyOf": [\n {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n {\n "type": "null"\n }\n ]\n },\n "status": {\n "const": "partial",\n "type": "string"\n },\n "truncated": {\n "const": false,\n "type": "boolean"\n }\n },\n "required": [\n "status",\n "truncated",\n "omitted_count",\n "limits"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "limits": {\n "items": {\n "additionalProperties": false,\n "properties": {\n "name": {\n "minLength": 1,\n "type": "string"\n },\n "unit": {\n "enum": [\n "items",\n "bytes",\n "milliseconds",\n "depth",\n "characters",\n "instructions",\n "other"\n ],\n "type": "string"\n },\n "value": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "name",\n "value",\n "unit"\n ],\n "type": "object"\n },\n "minItems": 1,\n "type": "array"\n },\n "omitted_count": {\n "anyOf": [\n {\n "exclusiveMinimum": 0,\n "maximum": 9007199254740991,\n "type": "integer"\n },\n {\n "type": "null"\n }\n ]\n },\n "status": {\n "const": "partial",\n "type": "string"\n },\n "truncated": {\n "const": true,\n "type": "boolean"\n }\n },\n "required": [\n "status",\n "truncated",\n "omitted_count",\n "limits"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "limits": {\n "items": {\n "additionalProperties": false,\n "properties": {\n "name": {\n "minLength": 1,\n "type": "string"\n },\n "unit": {\n "enum": [\n "items",\n "bytes",\n "milliseconds",\n "depth",\n "characters",\n "instructions",\n "other"\n ],\n "type": "string"\n },\n "value": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "name",\n "value",\n "unit"\n ],\n "type": "object"\n },\n "type": "array"\n },\n "omitted_count": {\n "type": "null"\n },\n "status": {\n "enum": [\n "unknown",\n "unavailable"\n ],\n "type": "string"\n },\n "truncated": {\n "const": false,\n "type": "boolean"\n }\n },\n "required": [\n "status",\n "truncated",\n "omitted_count",\n "limits"\n ],\n "type": "object"\n }\n ]\n },\n "evidence_ids": {\n "items": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "type": "array"\n },\n "extractor": {\n "additionalProperties": false,\n "properties": {\n "executable_sha256": {\n "anyOf": [\n {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "name": {\n "minLength": 1,\n "type": "string"\n },\n "operation": {\n "minLength": 1,\n "type": "string"\n },\n "version": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "name",\n "version",\n "operation",\n "executable_sha256"\n ],\n "type": "object"\n },\n "limitations": {\n "items": {\n "minLength": 1,\n "type": "string"\n },\n "type": "array"\n },\n "location": {\n "oneOf": [\n {\n "additionalProperties": false,\n "properties": {\n "available": {\n "const": true,\n "type": "boolean"\n },\n "value": {\n "oneOf": [\n {\n "additionalProperties": false,\n "properties": {\n "kind": {\n "const": "artifact-path",\n "type": "string"\n },\n "path": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "kind",\n "path"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "end": {\n "additionalProperties": false,\n "properties": {\n "column": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "line": {\n "maximum": 9007199254740991,\n "minimum": 1,\n "type": "integer"\n }\n },\n "required": [\n "line",\n "column"\n ],\n "type": "object"\n },\n "kind": {\n "const": "source-range",\n "type": "string"\n },\n "source": {\n "minLength": 1,\n "type": "string"\n },\n "start": {\n "additionalProperties": false,\n "properties": {\n "column": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "line": {\n "maximum": 9007199254740991,\n "minimum": 1,\n "type": "integer"\n }\n },\n "required": [\n "line",\n "column"\n ],\n "type": "object"\n }\n },\n "required": [\n "kind",\n "source",\n "start",\n "end"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "end": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "kind": {\n "const": "file-offset-range",\n "type": "string"\n },\n "start": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "kind",\n "start",\n "end"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "kind": {\n "const": "url",\n "type": "string"\n },\n "url": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "kind",\n "url"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "capture_sha256": {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n },\n "frame_key": {\n "anyOf": [\n {\n "minLength": 1,\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "kind": {\n "const": "runtime",\n "type": "string"\n },\n "script_key": {\n "anyOf": [\n {\n "minLength": 1,\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "target_key": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "kind",\n "capture_sha256",\n "target_key",\n "frame_key",\n "script_key"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "address": {\n "minLength": 1,\n "type": "string"\n },\n "kind": {\n "const": "native-address",\n "type": "string"\n },\n "symbol": {\n "anyOf": [\n {\n "minLength": 1,\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "kind",\n "address",\n "symbol"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "export_path": {\n "minLength": 1,\n "type": "string"\n },\n "kind": {\n "const": "package-export",\n "type": "string"\n },\n "package_name": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "kind",\n "package_name",\n "export_path"\n ],\n "type": "object"\n }\n ]\n }\n },\n "required": [\n "available",\n "value"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "available": {\n "const": false,\n "type": "boolean"\n },\n "detail": {\n "minLength": 1,\n "type": "string"\n },\n "reason": {\n "enum": [\n "not-applicable",\n "not-observed",\n "truncated",\n "provider-unavailable",\n "unresolved",\n "unknown"\n ],\n "type": "string"\n }\n },\n "required": [\n "available",\n "reason",\n "detail"\n ],\n "type": "object"\n }\n ]\n },\n "state": {\n "enum": [\n "observed",\n "inferred",\n "unknown",\n "unavailable"\n ],\n "type": "string"\n }\n },\n "required": [\n "authority",\n "state",\n "confidence",\n "artifact",\n "location",\n "extractor",\n "coverage",\n "limitations",\n "evidence_ids"\n ],\n "type": "object"\n },\n "identifier_strategy": {\n "additionalProperties": false,\n "properties": {\n "stability": {\n "const": "observation-exact",\n "type": "string"\n },\n "strategy": {\n "const": "semantic-content-sha256",\n "type": "string"\n }\n },\n "required": [\n "strategy",\n "stability"\n ],\n "type": "object"\n },\n "label": {\n "anyOf": [\n {\n "minLength": 1,\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "observation_id": {\n "pattern": "^jag_observation_[a-f0-9]{64}$",\n "type": "string"\n },\n "properties": {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "propertyNames": {\n "minLength": 1,\n "type": "string"\n },\n "type": "object"\n }\n },\n "required": [\n "label",\n "properties",\n "evidence",\n "observation_id",\n "identifier_strategy"\n ],\n "type": "object"\n },\n "minItems": 1,\n "type": "array"\n }\n },\n "required": [\n "node_id",\n "kind",\n "identity",\n "observations"\n ],\n "type": "object"\n },\n "minItems": 1,\n "type": "array"\n },\n "root_node_ids": {\n "items": {\n "pattern": "^jag_node_[a-f0-9]{64}$",\n "type": "string"\n },\n "minItems": 1,\n "type": "array"\n },\n "schema": {\n "const": "JavaScriptApplicationGraph",\n "type": "string"\n }\n },\n "required": [\n "schema",\n "root_node_ids",\n "nodes",\n "edges",\n "coverage",\n "limitations",\n "graph_id"\n ],\n "type": "object"\n },\n "input_path": {\n "minLength": 1,\n "type": "string"\n },\n "integrity_contradictions": {\n "default": [],\n "items": {\n "additionalProperties": false,\n "properties": {\n "contradiction_id": {\n "pattern": "^ic_[a-f0-9]{64}$",\n "type": "string"\n },\n "declared_sha256": {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n },\n "entry_kind": {\n "enum": [\n "file",\n "slice"\n ],\n "type": "string"\n },\n "limitations": {\n "items": {\n "type": "string"\n },\n "minItems": 1,\n "type": "array"\n },\n "logical_path": {\n "minLength": 1,\n "type": "string"\n },\n "observed_sha256": {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n },\n "occurrence_id": {\n "pattern": "^occ_[a-f0-9]{64}$",\n "type": "string"\n },\n "parent_artifact_id": {\n "pattern": "^art_[a-f0-9]{64}$",\n "type": "string"\n },\n "provenance": {\n "const": "container-integrity-metadata-versus-observed-bytes",\n "type": "string"\n },\n "trust": {\n "const": "observed-untrusted",\n "type": "string"\n },\n "unpacked": {\n "type": "boolean"\n }\n },\n "required": [\n "contradiction_id",\n "occurrence_id",\n "parent_artifact_id",\n "logical_path",\n "declared_sha256",\n "observed_sha256",\n "entry_kind",\n "unpacked",\n "trust",\n "provenance",\n "limitations"\n ],\n "type": "object"\n },\n "type": "array"\n },\n "inventory_graph_sha256": {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n },\n "inventory_manifest_id": {\n "pattern": "^agm_[a-f0-9]{64}$",\n "type": "string"\n },\n "limitations": {\n "items": {\n "minLength": 1,\n "type": "string"\n },\n "type": "array"\n },\n "root_artifact_sha256": {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n },\n "semantic_graph": {\n "additionalProperties": false,\n "properties": {\n "application_graph_id": {\n "pattern": "^jag_[a-f0-9]{64}$",\n "type": "string"\n },\n "coverage": {\n "additionalProperties": false,\n "properties": {\n "families": {\n "items": {\n "additionalProperties": false,\n "properties": {\n "family": {\n "enum": [\n "boundary",\n "call-flow",\n "child-process",\n "closure",\n "configuration",\n "data-flow",\n "event",\n "object-flow",\n "promise-ownership",\n "request",\n "resource-lifecycle",\n "timer"\n ],\n "type": "string"\n },\n "omitted_relations": {\n "anyOf": [\n {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n {\n "type": "null"\n }\n ]\n },\n "retained_relations": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "status": {\n "enum": [\n "complete",\n "partial",\n "unknown",\n "unsupported"\n ],\n "type": "string"\n },\n "unknown_ids": {\n "items": {\n "pattern": "^jsrg_unknown_[a-f0-9]{64}$",\n "type": "string"\n },\n "type": "array"\n }\n },\n "required": [\n "family",\n "status",\n "retained_relations",\n "omitted_relations",\n "unknown_ids"\n ],\n "type": "object"\n },\n "maxItems": 12,\n "minItems": 12,\n "type": "array"\n },\n "limits": {\n "items": {\n "additionalProperties": false,\n "properties": {\n "name": {\n "minLength": 1,\n "type": "string"\n },\n "unit": {\n "enum": [\n "items",\n "bytes",\n "milliseconds",\n "depth",\n "other"\n ],\n "type": "string"\n },\n "value": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "name",\n "value",\n "unit"\n ],\n "type": "object"\n },\n "type": "array"\n },\n "omitted_nodes": {\n "anyOf": [\n {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n {\n "type": "null"\n }\n ]\n },\n "omitted_relations": {\n "anyOf": [\n {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n {\n "type": "null"\n }\n ]\n },\n "status": {\n "enum": [\n "complete",\n "partial",\n "unknown",\n "unavailable"\n ],\n "type": "string"\n },\n "truncated": {\n "type": "boolean"\n }\n },\n "required": [\n "status",\n "truncated",\n "omitted_nodes",\n "omitted_relations",\n "limits",\n "families"\n ],\n "type": "object"\n },\n "fingerprints": {\n "items": {\n "additionalProperties": false,\n "properties": {\n "algorithm": {\n "const": "rea.javascript-semantic-function",\n "type": "string"\n },\n "components": {\n "additionalProperties": false,\n "properties": {\n "control_flow_sha256": {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n },\n "effects": {\n "items": {\n "enum": [\n "async",\n "child-process",\n "event",\n "network",\n "promise",\n "resource",\n "timer"\n ],\n "type": "string"\n },\n "type": "array"\n },\n "literal_set_sha256": {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n },\n "normalized_ast_sha256": {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n },\n "parameter_arity": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "relation_shape_sha256": {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n }\n },\n "required": [\n "parameter_arity",\n "normalized_ast_sha256",\n "control_flow_sha256",\n "relation_shape_sha256",\n "literal_set_sha256",\n "effects"\n ],\n "type": "object"\n },\n "evidence": {\n "additionalProperties": false,\n "properties": {\n "artifact": {\n "oneOf": [\n {\n "additionalProperties": false,\n "properties": {\n "artifact_id": {\n "pattern": "^art_[a-f0-9]{64}$",\n "type": "string"\n },\n "available": {\n "const": true,\n "type": "boolean"\n },\n "sha256": {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n }\n },\n "required": [\n "available",\n "artifact_id",\n "sha256"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "available": {\n "const": false,\n "type": "boolean"\n },\n "detail": {\n "minLength": 1,\n "type": "string"\n },\n "reason": {\n "enum": [\n "not-applicable",\n "not-observed",\n "truncated",\n "provider-unavailable",\n "unresolved",\n "unknown"\n ],\n "type": "string"\n }\n },\n "required": [\n "available",\n "reason",\n "detail"\n ],\n "type": "object"\n }\n ]\n },\n "authority": {\n "enum": [\n "artifact-bytes",\n "ast-static-analysis",\n "static-relationship-inference",\n "passive-cdp-runtime",\n "cross-layer-reconciliation",\n "cross-version-comparison",\n "controlled-replay",\n "native-analysis-provider",\n "managed-static-analysis",\n "historical-reference",\n "user-assertion",\n "unknown"\n ],\n "type": "string"\n },\n "confidence": {\n "enum": [\n "exact",\n "high",\n "medium",\n "low",\n "unknown"\n ],\n "type": "string"\n },\n "coverage": {\n "anyOf": [\n {\n "additionalProperties": false,\n "properties": {\n "limits": {\n "items": {\n "additionalProperties": false,\n "properties": {\n "name": {\n "minLength": 1,\n "type": "string"\n },\n "unit": {\n "enum": [\n "items",\n "bytes",\n "milliseconds",\n "depth",\n "characters",\n "instructions",\n "other"\n ],\n "type": "string"\n },\n "value": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "name",\n "value",\n "unit"\n ],\n "type": "object"\n },\n "type": "array"\n },\n "omitted_count": {\n "const": 0,\n "type": "number"\n },\n "status": {\n "const": "complete",\n "type": "string"\n },\n "truncated": {\n "const": false,\n "type": "boolean"\n }\n },\n "required": [\n "status",\n "truncated",\n "omitted_count",\n "limits"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "limits": {\n "items": {\n "additionalProperties": false,\n "properties": {\n "name": {\n "minLength": 1,\n "type": "string"\n },\n "unit": {\n "enum": [\n "items",\n "bytes",\n "milliseconds",\n "depth",\n "characters",\n "instructions",\n "other"\n ],\n "type": "string"\n },\n "value": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "name",\n "value",\n "unit"\n ],\n "type": "object"\n },\n "type": "array"\n },\n "omitted_count": {\n "anyOf": [\n {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n {\n "type": "null"\n }\n ]\n },\n "status": {\n "const": "partial",\n "type": "string"\n },\n "truncated": {\n "const": false,\n "type": "boolean"\n }\n },\n "required": [\n "status",\n "truncated",\n "omitted_count",\n "limits"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "limits": {\n "items": {\n "additionalProperties": false,\n "properties": {\n "name": {\n "minLength": 1,\n "type": "string"\n },\n "unit": {\n "enum": [\n "items",\n "bytes",\n "milliseconds",\n "depth",\n "characters",\n "instructions",\n "other"\n ],\n "type": "string"\n },\n "value": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "name",\n "value",\n "unit"\n ],\n "type": "object"\n },\n "minItems": 1,\n "type": "array"\n },\n "omitted_count": {\n "anyOf": [\n {\n "exclusiveMinimum": 0,\n "maximum": 9007199254740991,\n "type": "integer"\n },\n {\n "type": "null"\n }\n ]\n },\n "status": {\n "const": "partial",\n "type": "string"\n },\n "truncated": {\n "const": true,\n "type": "boolean"\n }\n },\n "required": [\n "status",\n "truncated",\n "omitted_count",\n "limits"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "limits": {\n "items": {\n "additionalProperties": false,\n "properties": {\n "name": {\n "minLength": 1,\n "type": "string"\n },\n "unit": {\n "enum": [\n "items",\n "bytes",\n "milliseconds",\n "depth",\n "characters",\n "instructions",\n "other"\n ],\n "type": "string"\n },\n "value": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "name",\n "value",\n "unit"\n ],\n "type": "object"\n },\n "type": "array"\n },\n "omitted_count": {\n "type": "null"\n },\n "status": {\n "enum": [\n "unknown",\n "unavailable"\n ],\n "type": "string"\n },\n "truncated": {\n "const": false,\n "type": "boolean"\n }\n },\n "required": [\n "status",\n "truncated",\n "omitted_count",\n "limits"\n ],\n "type": "object"\n }\n ]\n },\n "evidence_ids": {\n "items": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "type": "array"\n },\n "extractor": {\n "additionalProperties": false,\n "properties": {\n "executable_sha256": {\n "anyOf": [\n {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "name": {\n "minLength": 1,\n "type": "string"\n },\n "operation": {\n "minLength": 1,\n "type": "string"\n },\n "version": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "name",\n "version",\n "operation",\n "executable_sha256"\n ],\n "type": "object"\n },\n "limitations": {\n "items": {\n "minLength": 1,\n "type": "string"\n },\n "type": "array"\n },\n "location": {\n "oneOf": [\n {\n "additionalProperties": false,\n "properties": {\n "available": {\n "const": true,\n "type": "boolean"\n },\n "value": {\n "oneOf": [\n {\n "additionalProperties": false,\n "properties": {\n "kind": {\n "const": "artifact-path",\n "type": "string"\n },\n "path": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "kind",\n "path"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "end": {\n "additionalProperties": false,\n "properties": {\n "column": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "line": {\n "maximum": 9007199254740991,\n "minimum": 1,\n "type": "integer"\n }\n },\n "required": [\n "line",\n "column"\n ],\n "type": "object"\n },\n "kind": {\n "const": "source-range",\n "type": "string"\n },\n "source": {\n "minLength": 1,\n "type": "string"\n },\n "start": {\n "additionalProperties": false,\n "properties": {\n "column": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "line": {\n "maximum": 9007199254740991,\n "minimum": 1,\n "type": "integer"\n }\n },\n "required": [\n "line",\n "column"\n ],\n "type": "object"\n }\n },\n "required": [\n "kind",\n "source",\n "start",\n "end"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "end": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "kind": {\n "const": "file-offset-range",\n "type": "string"\n },\n "start": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "kind",\n "start",\n "end"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "kind": {\n "const": "url",\n "type": "string"\n },\n "url": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "kind",\n "url"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "capture_sha256": {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n },\n "frame_key": {\n "anyOf": [\n {\n "minLength": 1,\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "kind": {\n "const": "runtime",\n "type": "string"\n },\n "script_key": {\n "anyOf": [\n {\n "minLength": 1,\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "target_key": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "kind",\n "capture_sha256",\n "target_key",\n "frame_key",\n "script_key"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "address": {\n "minLength": 1,\n "type": "string"\n },\n "kind": {\n "const": "native-address",\n "type": "string"\n },\n "symbol": {\n "anyOf": [\n {\n "minLength": 1,\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "kind",\n "address",\n "symbol"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "export_path": {\n "minLength": 1,\n "type": "string"\n },\n "kind": {\n "const": "package-export",\n "type": "string"\n },\n "package_name": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "kind",\n "package_name",\n "export_path"\n ],\n "type": "object"\n }\n ]\n }\n },\n "required": [\n "available",\n "value"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "available": {\n "const": false,\n "type": "boolean"\n },\n "detail": {\n "minLength": 1,\n "type": "string"\n },\n "reason": {\n "enum": [\n "not-applicable",\n "not-observed",\n "truncated",\n "provider-unavailable",\n "unresolved",\n "unknown"\n ],\n "type": "string"\n }\n },\n "required": [\n "available",\n "reason",\n "detail"\n ],\n "type": "object"\n }\n ]\n },\n "state": {\n "enum": [\n "observed",\n "inferred",\n "unknown",\n "unavailable"\n ],\n "type": "string"\n }\n },\n "required": [\n "authority",\n "state",\n "confidence",\n "artifact",\n "location",\n "extractor",\n "coverage",\n "limitations",\n "evidence_ids"\n ],\n "type": "object"\n },\n "fingerprint_id": {\n "pattern": "^jsrg_fingerprint_[a-f0-9]{64}$",\n "type": "string"\n },\n "fingerprint_sha256": {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n },\n "function_node_id": {\n "pattern": "^jsrg_node_[a-f0-9]{64}$",\n "type": "string"\n },\n "limitations": {\n "items": {\n "minLength": 1,\n "type": "string"\n },\n "type": "array"\n },\n "status": {\n "enum": [\n "complete",\n "partial",\n "unavailable"\n ],\n "type": "string"\n }\n },\n "required": [\n "function_node_id",\n "algorithm",\n "status",\n "components",\n "limitations",\n "evidence",\n "fingerprint_id",\n "fingerprint_sha256"\n ],\n "type": "object"\n },\n "type": "array"\n },\n "graph_id": {\n "pattern": "^jsrg_[a-f0-9]{64}$",\n "type": "string"\n },\n "limitations": {\n "items": {\n "minLength": 1,\n "type": "string"\n },\n "type": "array"\n },\n "nodes": {\n "items": {\n "additionalProperties": false,\n "properties": {\n "application_node_ids": {\n "items": {\n "pattern": "^jag_node_[a-f0-9]{64}$",\n "type": "string"\n },\n "type": "array"\n },\n "evidence": {\n "additionalProperties": false,\n "properties": {\n "artifact": {\n "oneOf": [\n {\n "additionalProperties": false,\n "properties": {\n "artifact_id": {\n "pattern": "^art_[a-f0-9]{64}$",\n "type": "string"\n },\n "available": {\n "const": true,\n "type": "boolean"\n },\n "sha256": {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n }\n },\n "required": [\n "available",\n "artifact_id",\n "sha256"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "available": {\n "const": false,\n "type": "boolean"\n },\n "detail": {\n "minLength": 1,\n "type": "string"\n },\n "reason": {\n "enum": [\n "not-applicable",\n "not-observed",\n "truncated",\n "provider-unavailable",\n "unresolved",\n "unknown"\n ],\n "type": "string"\n }\n },\n "required": [\n "available",\n "reason",\n "detail"\n ],\n "type": "object"\n }\n ]\n },\n "authority": {\n "enum": [\n "artifact-bytes",\n "ast-static-analysis",\n "static-relationship-inference",\n "passive-cdp-runtime",\n "cross-layer-reconciliation",\n "cross-version-comparison",\n "controlled-replay",\n "native-analysis-provider",\n "managed-static-analysis",\n "historical-reference",\n "user-assertion",\n "unknown"\n ],\n "type": "string"\n },\n "confidence": {\n "enum": [\n "exact",\n "high",\n "medium",\n "low",\n "unknown"\n ],\n "type": "string"\n },\n "coverage": {\n "anyOf": [\n {\n "additionalProperties": false,\n "properties": {\n "limits": {\n "items": {\n "additionalProperties": false,\n "properties": {\n "name": {\n "minLength": 1,\n "type": "string"\n },\n "unit": {\n "enum": [\n "items",\n "bytes",\n "milliseconds",\n "depth",\n "characters",\n "instructions",\n "other"\n ],\n "type": "string"\n },\n "value": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "name",\n "value",\n "unit"\n ],\n "type": "object"\n },\n "type": "array"\n },\n "omitted_count": {\n "const": 0,\n "type": "number"\n },\n "status": {\n "const": "complete",\n "type": "string"\n },\n "truncated": {\n "const": false,\n "type": "boolean"\n }\n },\n "required": [\n "status",\n "truncated",\n "omitted_count",\n "limits"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "limits": {\n "items": {\n "additionalProperties": false,\n "properties": {\n "name": {\n "minLength": 1,\n "type": "string"\n },\n "unit": {\n "enum": [\n "items",\n "bytes",\n "milliseconds",\n "depth",\n "characters",\n "instructions",\n "other"\n ],\n "type": "string"\n },\n "value": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "name",\n "value",\n "unit"\n ],\n "type": "object"\n },\n "type": "array"\n },\n "omitted_count": {\n "anyOf": [\n {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n {\n "type": "null"\n }\n ]\n },\n "status": {\n "const": "partial",\n "type": "string"\n },\n "truncated": {\n "const": false,\n "type": "boolean"\n }\n },\n "required": [\n "status",\n "truncated",\n "omitted_count",\n "limits"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "limits": {\n "items": {\n "additionalProperties": false,\n "properties": {\n "name": {\n "minLength": 1,\n "type": "string"\n },\n "unit": {\n "enum": [\n "items",\n "bytes",\n "milliseconds",\n "depth",\n "characters",\n "instructions",\n "other"\n ],\n "type": "string"\n },\n "value": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "name",\n "value",\n "unit"\n ],\n "type": "object"\n },\n "minItems": 1,\n "type": "array"\n },\n "omitted_count": {\n "anyOf": [\n {\n "exclusiveMinimum": 0,\n "maximum": 9007199254740991,\n "type": "integer"\n },\n {\n "type": "null"\n }\n ]\n },\n "status": {\n "const": "partial",\n "type": "string"\n },\n "truncated": {\n "const": true,\n "type": "boolean"\n }\n },\n "required": [\n "status",\n "truncated",\n "omitted_count",\n "limits"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "limits": {\n "items": {\n "additionalProperties": false,\n "properties": {\n "name": {\n "minLength": 1,\n "type": "string"\n },\n "unit": {\n "enum": [\n "items",\n "bytes",\n "milliseconds",\n "depth",\n "characters",\n "instructions",\n "other"\n ],\n "type": "string"\n },\n "value": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "name",\n "value",\n "unit"\n ],\n "type": "object"\n },\n "type": "array"\n },\n "omitted_count": {\n "type": "null"\n },\n "status": {\n "enum": [\n "unknown",\n "unavailable"\n ],\n "type": "string"\n },\n "truncated": {\n "const": false,\n "type": "boolean"\n }\n },\n "required": [\n "status",\n "truncated",\n "omitted_count",\n "limits"\n ],\n "type": "object"\n }\n ]\n },\n "evidence_ids": {\n "items": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "type": "array"\n },\n "extractor": {\n "additionalProperties": false,\n "properties": {\n "executable_sha256": {\n "anyOf": [\n {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "name": {\n "minLength": 1,\n "type": "string"\n },\n "operation": {\n "minLength": 1,\n "type": "string"\n },\n "version": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "name",\n "version",\n "operation",\n "executable_sha256"\n ],\n "type": "object"\n },\n "limitations": {\n "items": {\n "minLength": 1,\n "type": "string"\n },\n "type": "array"\n },\n "location": {\n "oneOf": [\n {\n "additionalProperties": false,\n "properties": {\n "available": {\n "const": true,\n "type": "boolean"\n },\n "value": {\n "oneOf": [\n {\n "additionalProperties": false,\n "properties": {\n "kind": {\n "const": "artifact-path",\n "type": "string"\n },\n "path": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "kind",\n "path"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "end": {\n "additionalProperties": false,\n "properties": {\n "column": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "line": {\n "maximum": 9007199254740991,\n "minimum": 1,\n "type": "integer"\n }\n },\n "required": [\n "line",\n "column"\n ],\n "type": "object"\n },\n "kind": {\n "const": "source-range",\n "type": "string"\n },\n "source": {\n "minLength": 1,\n "type": "string"\n },\n "start": {\n "additionalProperties": false,\n "properties": {\n "column": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "line": {\n "maximum": 9007199254740991,\n "minimum": 1,\n "type": "integer"\n }\n },\n "required": [\n "line",\n "column"\n ],\n "type": "object"\n }\n },\n "required": [\n "kind",\n "source",\n "start",\n "end"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "end": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "kind": {\n "const": "file-offset-range",\n "type": "string"\n },\n "start": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "kind",\n "start",\n "end"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "kind": {\n "const": "url",\n "type": "string"\n },\n "url": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "kind",\n "url"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "capture_sha256": {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n },\n "frame_key": {\n "anyOf": [\n {\n "minLength": 1,\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "kind": {\n "const": "runtime",\n "type": "string"\n },\n "script_key": {\n "anyOf": [\n {\n "minLength": 1,\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "target_key": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "kind",\n "capture_sha256",\n "target_key",\n "frame_key",\n "script_key"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "address": {\n "minLength": 1,\n "type": "string"\n },\n "kind": {\n "const": "native-address",\n "type": "string"\n },\n "symbol": {\n "anyOf": [\n {\n "minLength": 1,\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "kind",\n "address",\n "symbol"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "export_path": {\n "minLength": 1,\n "type": "string"\n },\n "kind": {\n "const": "package-export",\n "type": "string"\n },\n "package_name": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "kind",\n "package_name",\n "export_path"\n ],\n "type": "object"\n }\n ]\n }\n },\n "required": [\n "available",\n "value"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "available": {\n "const": false,\n "type": "boolean"\n },\n "detail": {\n "minLength": 1,\n "type": "string"\n },\n "reason": {\n "enum": [\n "not-applicable",\n "not-observed",\n "truncated",\n "provider-unavailable",\n "unresolved",\n "unknown"\n ],\n "type": "string"\n }\n },\n "required": [\n "available",\n "reason",\n "detail"\n ],\n "type": "object"\n }\n ]\n },\n "state": {\n "enum": [\n "observed",\n "inferred",\n "unknown",\n "unavailable"\n ],\n "type": "string"\n }\n },\n "required": [\n "authority",\n "state",\n "confidence",\n "artifact",\n "location",\n "extractor",\n "coverage",\n "limitations",\n "evidence_ids"\n ],\n "type": "object"\n },\n "function_node_id": {\n "anyOf": [\n {\n "pattern": "^jsrg_node_[a-f0-9]{64}$",\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "identifier_strategy": {\n "additionalProperties": false,\n "properties": {\n "stability": {\n "const": "artifact-version",\n "type": "string"\n },\n "strategy": {\n "const": "semantic-content-sha256",\n "type": "string"\n }\n },\n "required": [\n "strategy",\n "stability"\n ],\n "type": "object"\n },\n "identity": {\n "additionalProperties": false,\n "properties": {\n "artifact_sha256": {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n },\n "module_path": {\n "minLength": 1,\n "type": "string"\n },\n "role_key": {\n "minLength": 1,\n "type": "string"\n },\n "source_range": {\n "anyOf": [\n {\n "additionalProperties": false,\n "properties": {\n "end": {\n "additionalProperties": false,\n "properties": {\n "column": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "line": {\n "maximum": 9007199254740991,\n "minimum": 1,\n "type": "integer"\n }\n },\n "required": [\n "line",\n "column"\n ],\n "type": "object"\n },\n "start": {\n "additionalProperties": false,\n "properties": {\n "column": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "line": {\n "maximum": 9007199254740991,\n "minimum": 1,\n "type": "integer"\n }\n },\n "required": [\n "line",\n "column"\n ],\n "type": "object"\n }\n },\n "required": [\n "start",\n "end"\n ],\n "type": "object"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "artifact_sha256",\n "module_path",\n "source_range",\n "role_key"\n ],\n "type": "object"\n },\n "kind": {\n "enum": [\n "module",\n "function",\n "parameter",\n "binding",\n "expression",\n "literal",\n "property-slot",\n "call-site",\n "return-site",\n "closure-capture",\n "promise",\n "task",\n "event",\n "listener",\n "timer",\n "child-process",\n "stdio",\n "signal",\n "config-source",\n "request",\n "response",\n "boundary",\n "resource",\n "unknown-frontier"\n ],\n "type": "string"\n },\n "label": {\n "anyOf": [\n {\n "minLength": 1,\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "node_id": {\n "pattern": "^jsrg_node_[a-f0-9]{64}$",\n "type": "string"\n },\n "properties": {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "propertyNames": {\n "minLength": 1,\n "type": "string"\n },\n "type": "object"\n }\n },\n "required": [\n "kind",\n "identity",\n "function_node_id",\n "application_node_ids",\n "label",\n "properties",\n "evidence",\n "node_id",\n "identifier_strategy"\n ],\n "type": "object"\n },\n "minItems": 1,\n "type": "array"\n },\n "relations": {\n "items": {\n "additionalProperties": false,\n "properties": {\n "evidence": {\n "additionalProperties": false,\n "properties": {\n "artifact": {\n "oneOf": [\n {\n "additionalProperties": false,\n "properties": {\n "artifact_id": {\n "pattern": "^art_[a-f0-9]{64}$",\n "type": "string"\n },\n "available": {\n "const": true,\n "type": "boolean"\n },\n "sha256": {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n }\n },\n "required": [\n "available",\n "artifact_id",\n "sha256"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "available": {\n "const": false,\n "type": "boolean"\n },\n "detail": {\n "minLength": 1,\n "type": "string"\n },\n "reason": {\n "enum": [\n "not-applicable",\n "not-observed",\n "truncated",\n "provider-unavailable",\n "unresolved",\n "unknown"\n ],\n "type": "string"\n }\n },\n "required": [\n "available",\n "reason",\n "detail"\n ],\n "type": "object"\n }\n ]\n },\n "authority": {\n "enum": [\n "artifact-bytes",\n "ast-static-analysis",\n "static-relationship-inference",\n "passive-cdp-runtime",\n "cross-layer-reconciliation",\n "cross-version-comparison",\n "controlled-replay",\n "native-analysis-provider",\n "managed-static-analysis",\n "historical-reference",\n "user-assertion",\n "unknown"\n ],\n "type": "string"\n },\n "confidence": {\n "enum": [\n "exact",\n "high",\n "medium",\n "low",\n "unknown"\n ],\n "type": "string"\n },\n "coverage": {\n "anyOf": [\n {\n "additionalProperties": false,\n "properties": {\n "limits": {\n "items": {\n "additionalProperties": false,\n "properties": {\n "name": {\n "minLength": 1,\n "type": "string"\n },\n "unit": {\n "enum": [\n "items",\n "bytes",\n "milliseconds",\n "depth",\n "characters",\n "instructions",\n "other"\n ],\n "type": "string"\n },\n "value": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "name",\n "value",\n "unit"\n ],\n "type": "object"\n },\n "type": "array"\n },\n "omitted_count": {\n "const": 0,\n "type": "number"\n },\n "status": {\n "const": "complete",\n "type": "string"\n },\n "truncated": {\n "const": false,\n "type": "boolean"\n }\n },\n "required": [\n "status",\n "truncated",\n "omitted_count",\n "limits"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "limits": {\n "items": {\n "additionalProperties": false,\n "properties": {\n "name": {\n "minLength": 1,\n "type": "string"\n },\n "unit": {\n "enum": [\n "items",\n "bytes",\n "milliseconds",\n "depth",\n "characters",\n "instructions",\n "other"\n ],\n "type": "string"\n },\n "value": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "name",\n "value",\n "unit"\n ],\n "type": "object"\n },\n "type": "array"\n },\n "omitted_count": {\n "anyOf": [\n {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n {\n "type": "null"\n }\n ]\n },\n "status": {\n "const": "partial",\n "type": "string"\n },\n "truncated": {\n "const": false,\n "type": "boolean"\n }\n },\n "required": [\n "status",\n "truncated",\n "omitted_count",\n "limits"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "limits": {\n "items": {\n "additionalProperties": false,\n "properties": {\n "name": {\n "minLength": 1,\n "type": "string"\n },\n "unit": {\n "enum": [\n "items",\n "bytes",\n "milliseconds",\n "depth",\n "characters",\n "instructions",\n "other"\n ],\n "type": "string"\n },\n "value": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "name",\n "value",\n "unit"\n ],\n "type": "object"\n },\n "minItems": 1,\n "type": "array"\n },\n "omitted_count": {\n "anyOf": [\n {\n "exclusiveMinimum": 0,\n "maximum": 9007199254740991,\n "type": "integer"\n },\n {\n "type": "null"\n }\n ]\n },\n "status": {\n "const": "partial",\n "type": "string"\n },\n "truncated": {\n "const": true,\n "type": "boolean"\n }\n },\n "required": [\n "status",\n "truncated",\n "omitted_count",\n "limits"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "limits": {\n "items": {\n "additionalProperties": false,\n "properties": {\n "name": {\n "minLength": 1,\n "type": "string"\n },\n "unit": {\n "enum": [\n "items",\n "bytes",\n "milliseconds",\n "depth",\n "characters",\n "instructions",\n "other"\n ],\n "type": "string"\n },\n "value": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "name",\n "value",\n "unit"\n ],\n "type": "object"\n },\n "type": "array"\n },\n "omitted_count": {\n "type": "null"\n },\n "status": {\n "enum": [\n "unknown",\n "unavailable"\n ],\n "type": "string"\n },\n "truncated": {\n "const": false,\n "type": "boolean"\n }\n },\n "required": [\n "status",\n "truncated",\n "omitted_count",\n "limits"\n ],\n "type": "object"\n }\n ]\n },\n "evidence_ids": {\n "items": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "type": "array"\n },\n "extractor": {\n "additionalProperties": false,\n "properties": {\n "executable_sha256": {\n "anyOf": [\n {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "name": {\n "minLength": 1,\n "type": "string"\n },\n "operation": {\n "minLength": 1,\n "type": "string"\n },\n "version": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "name",\n "version",\n "operation",\n "executable_sha256"\n ],\n "type": "object"\n },\n "limitations": {\n "items": {\n "minLength": 1,\n "type": "string"\n },\n "type": "array"\n },\n "location": {\n "oneOf": [\n {\n "additionalProperties": false,\n "properties": {\n "available": {\n "const": true,\n "type": "boolean"\n },\n "value": {\n "oneOf": [\n {\n "additionalProperties": false,\n "properties": {\n "kind": {\n "const": "artifact-path",\n "type": "string"\n },\n "path": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "kind",\n "path"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "end": {\n "additionalProperties": false,\n "properties": {\n "column": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "line": {\n "maximum": 9007199254740991,\n "minimum": 1,\n "type": "integer"\n }\n },\n "required": [\n "line",\n "column"\n ],\n "type": "object"\n },\n "kind": {\n "const": "source-range",\n "type": "string"\n },\n "source": {\n "minLength": 1,\n "type": "string"\n },\n "start": {\n "additionalProperties": false,\n "properties": {\n "column": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "line": {\n "maximum": 9007199254740991,\n "minimum": 1,\n "type": "integer"\n }\n },\n "required": [\n "line",\n "column"\n ],\n "type": "object"\n }\n },\n "required": [\n "kind",\n "source",\n "start",\n "end"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "end": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "kind": {\n "const": "file-offset-range",\n "type": "string"\n },\n "start": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "kind",\n "start",\n "end"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "kind": {\n "const": "url",\n "type": "string"\n },\n "url": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "kind",\n "url"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "capture_sha256": {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n },\n "frame_key": {\n "anyOf": [\n {\n "minLength": 1,\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "kind": {\n "const": "runtime",\n "type": "string"\n },\n "script_key": {\n "anyOf": [\n {\n "minLength": 1,\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "target_key": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "kind",\n "capture_sha256",\n "target_key",\n "frame_key",\n "script_key"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "address": {\n "minLength": 1,\n "type": "string"\n },\n "kind": {\n "const": "native-address",\n "type": "string"\n },\n "symbol": {\n "anyOf": [\n {\n "minLength": 1,\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "kind",\n "address",\n "symbol"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "export_path": {\n "minLength": 1,\n "type": "string"\n },\n "kind": {\n "const": "package-export",\n "type": "string"\n },\n "package_name": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "kind",\n "package_name",\n "export_path"\n ],\n "type": "object"\n }\n ]\n }\n },\n "required": [\n "available",\n "value"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "available": {\n "const": false,\n "type": "boolean"\n },\n "detail": {\n "minLength": 1,\n "type": "string"\n },\n "reason": {\n "enum": [\n "not-applicable",\n "not-observed",\n "truncated",\n "provider-unavailable",\n "unresolved",\n "unknown"\n ],\n "type": "string"\n }\n },\n "required": [\n "available",\n "reason",\n "detail"\n ],\n "type": "object"\n }\n ]\n },\n "state": {\n "enum": [\n "observed",\n "inferred",\n "unknown",\n "unavailable"\n ],\n "type": "string"\n }\n },\n "required": [\n "authority",\n "state",\n "confidence",\n "artifact",\n "location",\n "extractor",\n "coverage",\n "limitations",\n "evidence_ids"\n ],\n "type": "object"\n },\n "identifier_strategy": {\n "additionalProperties": false,\n "properties": {\n "stability": {\n "const": "relationship-exact",\n "type": "string"\n },\n "strategy": {\n "const": "semantic-content-sha256",\n "type": "string"\n }\n },\n "required": [\n "strategy",\n "stability"\n ],\n "type": "object"\n },\n "properties": {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "propertyNames": {\n "minLength": 1,\n "type": "string"\n },\n "type": "object"\n },\n "relation": {\n "enum": [\n "acquires",\n "aggregates",\n "aliases",\n "argument-to-parameter",\n "awaits",\n "calls",\n "cancels-timer",\n "captures",\n "chains",\n "coerces",\n "connects-stdio",\n "consumed-by",\n "constructs-request",\n "creates-promise",\n "defaults",\n "defines",\n "destructures",\n "detaches-task",\n "dispatches-candidate",\n "forwards-signal",\n "listens-error",\n "listens-exit",\n "owns",\n "overrides",\n "parses",\n "reads",\n "reads-argv",\n "reads-config",\n "reads-environment",\n "reads-property",\n "registers-listener",\n "releases",\n "removes-listener",\n "returns-task",\n "returns-to-call",\n "schedules-timer",\n "spawns",\n "spreads",\n "supplies-argv",\n "supplies-env",\n "supplies-request-field",\n "validates",\n "writes",\n "writes-property"\n ],\n "type": "string"\n },\n "relation_id": {\n "pattern": "^jsrg_relation_[a-f0-9]{64}$",\n "type": "string"\n },\n "resolution": {\n "enum": [\n "resolved",\n "candidate"\n ],\n "type": "string"\n },\n "source_node_id": {\n "pattern": "^jsrg_node_[a-f0-9]{64}$",\n "type": "string"\n },\n "target_node_id": {\n "pattern": "^jsrg_node_[a-f0-9]{64}$",\n "type": "string"\n }\n },\n "required": [\n "source_node_id",\n "target_node_id",\n "relation",\n "resolution",\n "properties",\n "evidence",\n "relation_id",\n "identifier_strategy"\n ],\n "type": "object"\n },\n "type": "array"\n },\n "root_artifact_sha256": {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n },\n "root_node_ids": {\n "items": {\n "pattern": "^jsrg_node_[a-f0-9]{64}$",\n "type": "string"\n },\n "minItems": 1,\n "type": "array"\n },\n "schema": {\n "const": "JavaScriptSemanticRelationGraph",\n "type": "string"\n },\n "unknowns": {\n "items": {\n "additionalProperties": false,\n "properties": {\n "candidate_node_ids": {\n "items": {\n "pattern": "^jsrg_node_[a-f0-9]{64}$",\n "type": "string"\n },\n "type": "array"\n },\n "detail": {\n "minLength": 1,\n "type": "string"\n },\n "evidence": {\n "additionalProperties": false,\n "properties": {\n "artifact": {\n "oneOf": [\n {\n "additionalProperties": false,\n "properties": {\n "artifact_id": {\n "pattern": "^art_[a-f0-9]{64}$",\n "type": "string"\n },\n "available": {\n "const": true,\n "type": "boolean"\n },\n "sha256": {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n }\n },\n "required": [\n "available",\n "artifact_id",\n "sha256"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "available": {\n "const": false,\n "type": "boolean"\n },\n "detail": {\n "minLength": 1,\n "type": "string"\n },\n "reason": {\n "enum": [\n "not-applicable",\n "not-observed",\n "truncated",\n "provider-unavailable",\n "unresolved",\n "unknown"\n ],\n "type": "string"\n }\n },\n "required": [\n "available",\n "reason",\n "detail"\n ],\n "type": "object"\n }\n ]\n },\n "authority": {\n "enum": [\n "artifact-bytes",\n "ast-static-analysis",\n "static-relationship-inference",\n "passive-cdp-runtime",\n "cross-layer-reconciliation",\n "cross-version-comparison",\n "controlled-replay",\n "native-analysis-provider",\n "managed-static-analysis",\n "historical-reference",\n "user-assertion",\n "unknown"\n ],\n "type": "string"\n },\n "confidence": {\n "enum": [\n "exact",\n "high",\n "medium",\n "low",\n "unknown"\n ],\n "type": "string"\n },\n "coverage": {\n "anyOf": [\n {\n "additionalProperties": false,\n "properties": {\n "limits": {\n "items": {\n "additionalProperties": false,\n "properties": {\n "name": {\n "minLength": 1,\n "type": "string"\n },\n "unit": {\n "enum": [\n "items",\n "bytes",\n "milliseconds",\n "depth",\n "characters",\n "instructions",\n "other"\n ],\n "type": "string"\n },\n "value": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "name",\n "value",\n "unit"\n ],\n "type": "object"\n },\n "type": "array"\n },\n "omitted_count": {\n "const": 0,\n "type": "number"\n },\n "status": {\n "const": "complete",\n "type": "string"\n },\n "truncated": {\n "const": false,\n "type": "boolean"\n }\n },\n "required": [\n "status",\n "truncated",\n "omitted_count",\n "limits"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "limits": {\n "items": {\n "additionalProperties": false,\n "properties": {\n "name": {\n "minLength": 1,\n "type": "string"\n },\n "unit": {\n "enum": [\n "items",\n "bytes",\n "milliseconds",\n "depth",\n "characters",\n "instructions",\n "other"\n ],\n "type": "string"\n },\n "value": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "name",\n "value",\n "unit"\n ],\n "type": "object"\n },\n "type": "array"\n },\n "omitted_count": {\n "anyOf": [\n {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n {\n "type": "null"\n }\n ]\n },\n "status": {\n "const": "partial",\n "type": "string"\n },\n "truncated": {\n "const": false,\n "type": "boolean"\n }\n },\n "required": [\n "status",\n "truncated",\n "omitted_count",\n "limits"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "limits": {\n "items": {\n "additionalProperties": false,\n "properties": {\n "name": {\n "minLength": 1,\n "type": "string"\n },\n "unit": {\n "enum": [\n "items",\n "bytes",\n "milliseconds",\n "depth",\n "characters",\n "instructions",\n "other"\n ],\n "type": "string"\n },\n "value": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "name",\n "value",\n "unit"\n ],\n "type": "object"\n },\n "minItems": 1,\n "type": "array"\n },\n "omitted_count": {\n "anyOf": [\n {\n "exclusiveMinimum": 0,\n "maximum": 9007199254740991,\n "type": "integer"\n },\n {\n "type": "null"\n }\n ]\n },\n "status": {\n "const": "partial",\n "type": "string"\n },\n "truncated": {\n "const": true,\n "type": "boolean"\n }\n },\n "required": [\n "status",\n "truncated",\n "omitted_count",\n "limits"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "limits": {\n "items": {\n "additionalProperties": false,\n "properties": {\n "name": {\n "minLength": 1,\n "type": "string"\n },\n "unit": {\n "enum": [\n "items",\n "bytes",\n "milliseconds",\n "depth",\n "characters",\n "instructions",\n "other"\n ],\n "type": "string"\n },\n "value": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "name",\n "value",\n "unit"\n ],\n "type": "object"\n },\n "type": "array"\n },\n "omitted_count": {\n "type": "null"\n },\n "status": {\n "enum": [\n "unknown",\n "unavailable"\n ],\n "type": "string"\n },\n "truncated": {\n "const": false,\n "type": "boolean"\n }\n },\n "required": [\n "status",\n "truncated",\n "omitted_count",\n "limits"\n ],\n "type": "object"\n }\n ]\n },\n "evidence_ids": {\n "items": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "type": "array"\n },\n "extractor": {\n "additionalProperties": false,\n "properties": {\n "executable_sha256": {\n "anyOf": [\n {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "name": {\n "minLength": 1,\n "type": "string"\n },\n "operation": {\n "minLength": 1,\n "type": "string"\n },\n "version": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "name",\n "version",\n "operation",\n "executable_sha256"\n ],\n "type": "object"\n },\n "limitations": {\n "items": {\n "minLength": 1,\n "type": "string"\n },\n "type": "array"\n },\n "location": {\n "oneOf": [\n {\n "additionalProperties": false,\n "properties": {\n "available": {\n "const": true,\n "type": "boolean"\n },\n "value": {\n "oneOf": [\n {\n "additionalProperties": false,\n "properties": {\n "kind": {\n "const": "artifact-path",\n "type": "string"\n },\n "path": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "kind",\n "path"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "end": {\n "additionalProperties": false,\n "properties": {\n "column": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "line": {\n "maximum": 9007199254740991,\n "minimum": 1,\n "type": "integer"\n }\n },\n "required": [\n "line",\n "column"\n ],\n "type": "object"\n },\n "kind": {\n "const": "source-range",\n "type": "string"\n },\n "source": {\n "minLength": 1,\n "type": "string"\n },\n "start": {\n "additionalProperties": false,\n "properties": {\n "column": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "line": {\n "maximum": 9007199254740991,\n "minimum": 1,\n "type": "integer"\n }\n },\n "required": [\n "line",\n "column"\n ],\n "type": "object"\n }\n },\n "required": [\n "kind",\n "source",\n "start",\n "end"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "end": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "kind": {\n "const": "file-offset-range",\n "type": "string"\n },\n "start": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "kind",\n "start",\n "end"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "kind": {\n "const": "url",\n "type": "string"\n },\n "url": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "kind",\n "url"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "capture_sha256": {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n },\n "frame_key": {\n "anyOf": [\n {\n "minLength": 1,\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "kind": {\n "const": "runtime",\n "type": "string"\n },\n "script_key": {\n "anyOf": [\n {\n "minLength": 1,\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "target_key": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "kind",\n "capture_sha256",\n "target_key",\n "frame_key",\n "script_key"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "address": {\n "minLength": 1,\n "type": "string"\n },\n "kind": {\n "const": "native-address",\n "type": "string"\n },\n "symbol": {\n "anyOf": [\n {\n "minLength": 1,\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "kind",\n "address",\n "symbol"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "export_path": {\n "minLength": 1,\n "type": "string"\n },\n "kind": {\n "const": "package-export",\n "type": "string"\n },\n "package_name": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "kind",\n "package_name",\n "export_path"\n ],\n "type": "object"\n }\n ]\n }\n },\n "required": [\n "available",\n "value"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "available": {\n "const": false,\n "type": "boolean"\n },\n "detail": {\n "minLength": 1,\n "type": "string"\n },\n "reason": {\n "enum": [\n "not-applicable",\n "not-observed",\n "truncated",\n "provider-unavailable",\n "unresolved",\n "unknown"\n ],\n "type": "string"\n }\n },\n "required": [\n "available",\n "reason",\n "detail"\n ],\n "type": "object"\n }\n ]\n },\n "state": {\n "enum": [\n "observed",\n "inferred",\n "unknown",\n "unavailable"\n ],\n "type": "string"\n }\n },\n "required": [\n "authority",\n "state",\n "confidence",\n "artifact",\n "location",\n "extractor",\n "coverage",\n "limitations",\n "evidence_ids"\n ],\n "type": "object"\n },\n "family": {\n "enum": [\n "boundary",\n "call-flow",\n "child-process",\n "closure",\n "configuration",\n "data-flow",\n "event",\n "object-flow",\n "promise-ownership",\n "request",\n "resource-lifecycle",\n "timer"\n ],\n "type": "string"\n },\n "node_id": {\n "anyOf": [\n {\n "pattern": "^jsrg_node_[a-f0-9]{64}$",\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "reason": {\n "enum": [\n "ambiguous-target",\n "bound-reached",\n "dynamic-call",\n "dynamic-property",\n "dynamic-scope",\n "eval-or-generated-code",\n "incomplete-module",\n "missing-source",\n "unsupported-syntax"\n ],\n "type": "string"\n },\n "relation_kinds": {\n "items": {\n "enum": [\n "acquires",\n "aggregates",\n "aliases",\n "argument-to-parameter",\n "awaits",\n "calls",\n "cancels-timer",\n "captures",\n "chains",\n "coerces",\n "connects-stdio",\n "consumed-by",\n "constructs-request",\n "creates-promise",\n "defaults",\n "defines",\n "destructures",\n "detaches-task",\n "dispatches-candidate",\n "forwards-signal",\n "listens-error",\n "listens-exit",\n "owns",\n "overrides",\n "parses",\n "reads",\n "reads-argv",\n "reads-config",\n "reads-environment",\n "reads-property",\n "registers-listener",\n "releases",\n "removes-listener",\n "returns-task",\n "returns-to-call",\n "schedules-timer",\n "spawns",\n "spreads",\n "supplies-argv",\n "supplies-env",\n "supplies-request-field",\n "validates",\n "writes",\n "writes-property"\n ],\n "type": "string"\n },\n "minItems": 1,\n "type": "array"\n },\n "unknown_id": {\n "pattern": "^jsrg_unknown_[a-f0-9]{64}$",\n "type": "string"\n }\n },\n "required": [\n "node_id",\n "family",\n "relation_kinds",\n "reason",\n "detail",\n "candidate_node_ids",\n "evidence",\n "unknown_id"\n ],\n "type": "object"\n },\n "type": "array"\n }\n },\n "required": [\n "schema",\n "root_artifact_sha256",\n "application_graph_id",\n "root_node_ids",\n "nodes",\n "relations",\n "fingerprints",\n "unknowns",\n "coverage",\n "limitations",\n "graph_id"\n ],\n "type": "object"\n },\n "statistics": {\n "additionalProperties": false,\n "properties": {\n "findings": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "invalid_utf8_files": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "modules": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "nested_asar_containers": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "parse_failures": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "parsed_javascript_files": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "relevant_files": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "text_bytes_read": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "truncated_scopes": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "visited_ast_nodes": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "relevant_files",\n "nested_asar_containers",\n "text_bytes_read",\n "invalid_utf8_files",\n "parsed_javascript_files",\n "visited_ast_nodes",\n "findings",\n "modules",\n "parse_failures",\n "truncated_scopes"\n ],\n "type": "object"\n },\n "summary": {\n "additionalProperties": false,\n "properties": {\n "browser_windows": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "context_bridge_apis": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "explicit_web_preferences": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "exposed_api_members": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "ipc": {\n "additionalProperties": false,\n "properties": {\n "ambiguous_renderer_transmissions": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "dynamic_channel_operations": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "literal_channels": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "main_handlers": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "operations": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "paired_renderer_transmissions": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "renderer_listeners": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "renderer_transmissions": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "unpaired_literal_renderer_transmissions": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "operations",\n "literal_channels",\n "dynamic_channel_operations",\n "renderer_transmissions",\n "renderer_listeners",\n "main_handlers",\n "paired_renderer_transmissions",\n "ambiguous_renderer_transmissions",\n "unpaired_literal_renderer_transmissions"\n ],\n "type": "object"\n },\n "native_addon_bindings": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "preload_entrypoints": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "resolved_native_addon_bindings": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "resolved_utility_entrypoints": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "sender_validation_observations": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "utility_processes": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "browser_windows",\n "explicit_web_preferences",\n "preload_entrypoints",\n "context_bridge_apis",\n "exposed_api_members",\n "ipc",\n "sender_validation_observations",\n "utility_processes",\n "resolved_utility_entrypoints",\n "native_addon_bindings",\n "resolved_native_addon_bindings"\n ],\n "type": "object"\n }\n },\n "required": [\n "input_path",\n "format",\n "root_artifact_sha256",\n "inventory_manifest_id",\n "inventory_graph_sha256",\n "graph",\n "summary",\n "statistics",\n "integrity_contradictions",\n "limitations",\n "semantic_graph"\n ],\n "type": "object"\n }\n },\n "required": [\n "result",\n "evidence_id",\n "evidence"\n ],\n "type": "object"\n },\n "requiresSession": false,\n "title": "Analyze Javascript Application"\n },\n {\n "analysisOperation": null,\n "annotations": {\n "destructiveHint": false,\n "idempotentHint": true,\n "openWorldHint": false,\n "readOnlyHint": false\n },\n "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.",\n "effects": {\n "accessesNetwork": false,\n "changesUiState": false,\n "idempotent": true,\n "launchesProcess": false,\n "mayDiscardData": false,\n "mutatesSession": true,\n "mutatesTarget": false,\n "writesFilesystem": false\n },\n "inputSchema": {\n "$defs": {\n "__schema0": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "number"\n },\n {\n "type": "boolean"\n },\n {\n "type": "null"\n },\n {\n "items": {\n "$ref": "#/$defs/__schema0"\n },\n "type": "array"\n },\n {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n }\n ]\n }\n },\n "$schema": "https://json-schema.org/draft/2020-12/schema",\n "additionalProperties": false,\n "examples": [\n {\n "runtime_observations": [\n {\n "authority": "external-service",\n "confidence": "observed",\n "environment": null,\n "evidence_id": "ev_a42606ee799a093832ad3d6cfd0edd50dc9b99f78cc6d5d9130b734d48a56b4e",\n "evidence_links": [],\n "limitations": [\n "Artifact identity is unavailable for this observation."\n ],\n "locations": [],\n "normalized_result": {\n "browser": {\n "js_version": "1",\n "product": "Electron/example",\n "protocol_version": "1.3",\n "revision": "example",\n "user_agent": "Electron example"\n },\n "capture_window": {\n "ended_at": "2026-07-15T00:00:00.100Z",\n "observation_ms": 100,\n "started_at": "2026-07-15T00:00:00.000Z"\n },\n "completeness": {\n "attach_limited_sections": [],\n "conditions": [\n "complete_within_window"\n ],\n "dropped_events": {\n "console_events": 0,\n "network_requests": 0,\n "scripts": 0,\n "timeline_events": 0,\n "total": 0,\n "webmcp_tools": 0,\n "websocket_connections": 0,\n "websocket_frames": 0\n },\n "excluded": [],\n "policy_filtered_sections": [],\n "status": "complete_within_window",\n "truncated_sections": [],\n "unavailable_sections": []\n },\n "dom": {\n "nodes": [],\n "total_nodes": 0\n },\n "frames": [],\n "limitations": [\n "Example passive capture."\n ],\n "resources": [],\n "scripts": {\n "items": [\n {\n "cdp_hash": "example",\n "file_path": "/Applications/Example.app/Contents/Resources/app/renderer.js",\n "frame_id": null,\n "is_module": true,\n "language": "JavaScript",\n "length": 29,\n "script_key": "electron_script_4444444444444444444444444444444444444444444444444444444444444444",\n "source": {\n "artifact": {\n "bytes": 29,\n "charset": "utf-8",\n "media_type": "text/javascript",\n "sha256": "c4c0d760a4c84f0e182de99f6ef89ef10831f8170e486c4d4bd934924151ba64",\n "text": "export const example = true;\\n"\n },\n "included": true\n }\n }\n ],\n "total": 1\n },\n "target": {\n "attached": false,\n "file_path": "/Applications/Example.app/Contents/Resources/app/index.html",\n "target_id": "example-target",\n "title": "Example",\n "type": "page"\n },\n "workers": []\n },\n "operation": "inspect_electron_page",\n "parameters": {\n "cdp_endpoint": "http://127.0.0.1:9223",\n "include_script_sources": true,\n "target_id": "example-target"\n },\n "predicate_type": "rea.electron-page-inspection",\n "provider": {\n "id": "rea-cdp-electron",\n "name": "REA Electron file-page CDP observation provider",\n "version": "1"\n },\n "raw_result": null,\n "subject": null\n }\n ],\n "static_layers": [\n {\n "analysis": {\n "authority": "shipped-artifact",\n "confidence": "derived",\n "environment": null,\n "evidence_id": "ev_a4ae2c7b5c501fb6dff695b168f35a6dd157fa957410910684f3a4ce4c8b5d54",\n "evidence_links": [],\n "limitations": [],\n "locations": [],\n "normalized_result": {\n "format": "directory",\n "graph": {\n "coverage": {\n "limits": [],\n "omitted_count": 0,\n "status": "complete",\n "truncated": false\n },\n "edges": [],\n "graph_id": "jag_ab15669664efc0a86bb49c9c60241913cce6980dc2293fbeef6d9c862ca01d9d",\n "limitations": [],\n "nodes": [\n {\n "identity": {\n "sha256": "c4c0d760a4c84f0e182de99f6ef89ef10831f8170e486c4d4bd934924151ba64",\n "stability": "global-exact",\n "strategy": "content-digest"\n },\n "kind": "javascript-asset",\n "node_id": "jag_node_3c82da5492d90eb5b0bee41c1a994d88b7ba98c0b4955270d70e57a76e224c2e",\n "observations": [\n {\n "evidence": {\n "artifact": {\n "artifact_id": "art_c4c0d760a4c84f0e182de99f6ef89ef10831f8170e486c4d4bd934924151ba64",\n "available": true,\n "sha256": "c4c0d760a4c84f0e182de99f6ef89ef10831f8170e486c4d4bd934924151ba64"\n },\n "authority": "artifact-bytes",\n "confidence": "exact",\n "coverage": {\n "limits": [],\n "omitted_count": 0,\n "status": "complete",\n "truncated": false\n },\n "evidence_ids": [],\n "extractor": {\n "executable_sha256": null,\n "name": "rea-javascript-application",\n "operation": "inventory-relevant-file",\n "version": "1"\n },\n "limitations": [],\n "location": {\n "available": true,\n "value": {\n "kind": "artifact-path",\n "path": "renderer.js"\n }\n },\n "state": "observed"\n },\n "identifier_strategy": {\n "stability": "observation-exact",\n "strategy": "semantic-content-sha256"\n },\n "label": "renderer.js",\n "observation_id": "jag_observation_20b4d076ce370db14ae2b477915624c62e0c4a0c9e56803a2c5cb4fa60c16230",\n "properties": {\n "bytes": 29,\n "path": "renderer.js"\n }\n }\n ]\n }\n ],\n "root_node_ids": [\n "jag_node_3c82da5492d90eb5b0bee41c1a994d88b7ba98c0b4955270d70e57a76e224c2e"\n ],\n "schema": "JavaScriptApplicationGraph"\n },\n "input_path": "/Applications/Example.app/Contents/Resources/app",\n "inventory_graph_sha256": "3333333333333333333333333333333333333333333333333333333333333333",\n "inventory_manifest_id": "agm_2222222222222222222222222222222222222222222222222222222222222222",\n "limitations": [],\n "root_artifact_sha256": "1111111111111111111111111111111111111111111111111111111111111111",\n "semantic_graph": {\n "application_graph_id": "jag_ab15669664efc0a86bb49c9c60241913cce6980dc2293fbeef6d9c862ca01d9d",\n "coverage": {\n "families": [\n {\n "family": "boundary",\n "omitted_relations": 0,\n "retained_relations": 0,\n "status": "unknown",\n "unknown_ids": []\n },\n {\n "family": "call-flow",\n "omitted_relations": 0,\n "retained_relations": 0,\n "status": "unknown",\n "unknown_ids": []\n },\n {\n "family": "child-process",\n "omitted_relations": 0,\n "retained_relations": 0,\n "status": "unknown",\n "unknown_ids": []\n },\n {\n "family": "closure",\n "omitted_relations": 0,\n "retained_relations": 0,\n "status": "unknown",\n "unknown_ids": []\n },\n {\n "family": "configuration",\n "omitted_relations": 0,\n "retained_relations": 0,\n "status": "unknown",\n "unknown_ids": []\n },\n {\n "family": "data-flow",\n "omitted_relations": 0,\n "retained_relations": 0,\n "status": "unknown",\n "unknown_ids": []\n },\n {\n "family": "event",\n "omitted_relations": 0,\n "retained_relations": 0,\n "status": "unknown",\n "unknown_ids": []\n },\n {\n "family": "object-flow",\n "omitted_relations": 0,\n "retained_relations": 0,\n "status": "unknown",\n "unknown_ids": []\n },\n {\n "family": "promise-ownership",\n "omitted_relations": 0,\n "retained_relations": 0,\n "status": "unknown",\n "unknown_ids": []\n },\n {\n "family": "request",\n "omitted_relations": 0,\n "retained_relations": 0,\n "status": "unknown",\n "unknown_ids": []\n },\n {\n "family": "resource-lifecycle",\n "omitted_relations": 0,\n "retained_relations": 0,\n "status": "unknown",\n "unknown_ids": []\n },\n {\n "family": "timer",\n "omitted_relations": 0,\n "retained_relations": 0,\n "status": "unknown",\n "unknown_ids": []\n }\n ],\n "limits": [],\n "omitted_nodes": 0,\n "omitted_relations": 0,\n "status": "unknown",\n "truncated": false\n },\n "fingerprints": [],\n "graph_id": "jsrg_08c925d2bf4ef56d770e0e67901d5bdfb610744cf001a50d36c9bb6dcb195508",\n "limitations": [\n "Semantic relations are unavailable in this minimal example."\n ],\n "nodes": [\n {\n "application_node_ids": [\n "jag_node_3c82da5492d90eb5b0bee41c1a994d88b7ba98c0b4955270d70e57a76e224c2e"\n ],\n "evidence": {\n "artifact": {\n "artifact_id": "art_c4c0d760a4c84f0e182de99f6ef89ef10831f8170e486c4d4bd934924151ba64",\n "available": true,\n "sha256": "c4c0d760a4c84f0e182de99f6ef89ef10831f8170e486c4d4bd934924151ba64"\n },\n "authority": "artifact-bytes",\n "confidence": "exact",\n "coverage": {\n "limits": [],\n "omitted_count": 0,\n "status": "complete",\n "truncated": false\n },\n "evidence_ids": [],\n "extractor": {\n "executable_sha256": null,\n "name": "rea-javascript-application",\n "operation": "inventory-relevant-file",\n "version": "1"\n },\n "limitations": [],\n "location": {\n "available": true,\n "value": {\n "kind": "artifact-path",\n "path": "renderer.js"\n }\n },\n "state": "observed"\n },\n "function_node_id": null,\n "identifier_strategy": {\n "stability": "artifact-version",\n "strategy": "semantic-content-sha256"\n },\n "identity": {\n "artifact_sha256": "1111111111111111111111111111111111111111111111111111111111111111",\n "module_path": "renderer.js",\n "role_key": "example-module",\n "source_range": null\n },\n "kind": "module",\n "label": "renderer.js",\n "node_id": "jsrg_node_9476602f1f74433a2bd3dadb040a25734d203b8f831b31a8d96f7efdfc5cd66a",\n "properties": {}\n }\n ],\n "relations": [],\n "root_artifact_sha256": "1111111111111111111111111111111111111111111111111111111111111111",\n "root_node_ids": [\n "jsrg_node_9476602f1f74433a2bd3dadb040a25734d203b8f831b31a8d96f7efdfc5cd66a"\n ],\n "schema": "JavaScriptSemanticRelationGraph",\n "unknowns": []\n },\n "statistics": {\n "findings": 0,\n "invalid_utf8_files": 0,\n "modules": 0,\n "nested_asar_containers": 0,\n "parse_failures": 0,\n "parsed_javascript_files": 1,\n "relevant_files": 1,\n "text_bytes_read": 29,\n "truncated_scopes": 0,\n "visited_ast_nodes": 1\n },\n "summary": {\n "browser_windows": 0,\n "context_bridge_apis": 0,\n "explicit_web_preferences": 0,\n "exposed_api_members": 0,\n "ipc": {\n "ambiguous_renderer_transmissions": 0,\n "dynamic_channel_operations": 0,\n "literal_channels": 0,\n "main_handlers": 0,\n "operations": 0,\n "paired_renderer_transmissions": 0,\n "renderer_listeners": 0,\n "renderer_transmissions": 0,\n "unpaired_literal_renderer_transmissions": 0\n },\n "native_addon_bindings": 0,\n "preload_entrypoints": 0,\n "resolved_native_addon_bindings": 0,\n "resolved_utility_entrypoints": 0,\n "sender_validation_observations": 0,\n "utility_processes": 0\n }\n },\n "operation": "analyze_javascript_application",\n "parameters": {},\n "predicate_type": "rea.javascript-application-analysis",\n "provider": {\n "id": "rea-javascript-application",\n "name": "REA JavaScript application analyzer",\n "version": "1"\n },\n "raw_result": null,\n "subject": {\n "architecture": null,\n "digest": {\n "sha256": "1111111111111111111111111111111111111111111111111111111111111111"\n },\n "format": "directory",\n "local_path": "/Applications/Example.app/Contents/Resources/app",\n "name": "app"\n }\n }\n }\n ]\n }\n ],\n "properties": {\n "runtime_observations": {\n "description": "Value for runtime observations.",\n "items": {\n "additionalProperties": false,\n "properties": {\n "analysis_profile": {\n "description": "Value for analysis profile.",\n "properties": {\n "digest": {\n "description": "Value for digest.",\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n },\n "parameters": {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "description": "Value for parameters.",\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n },\n "provider": {\n "description": "Value for provider.",\n "properties": {\n "id": {\n "description": "Value for id.",\n "minLength": 1,\n "type": "string"\n },\n "name": {\n "description": "Exact name used by this operation.",\n "minLength": 1,\n "type": "string"\n },\n "version": {\n "description": "Value for version.",\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "id",\n "name",\n "version"\n ],\n "type": "object"\n }\n },\n "required": [\n "provider",\n "parameters",\n "digest"\n ],\n "type": "object"\n },\n "authority": {\n "description": "Value for authority.",\n "enum": [\n "shipped-artifact",\n "controlled-replay",\n "historical-reference",\n "external-service",\n "analyst-inference"\n ],\n "type": "string"\n },\n "confidence": {\n "description": "Value for confidence.",\n "enum": [\n "observed",\n "derived",\n "inferred"\n ],\n "type": "string"\n },\n "environment": {\n "anyOf": [\n {\n "properties": {\n "architecture": {\n "description": "Value for architecture.",\n "minLength": 1,\n "type": "string"\n },\n "id": {\n "description": "Value for id.",\n "minLength": 1,\n "type": "string"\n },\n "isolation": {\n "description": "Value for isolation.",\n "enum": [\n "none",\n "process",\n "container",\n "virtual-machine"\n ],\n "type": "string"\n },\n "platform": {\n "description": "Value for platform.",\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "id",\n "platform",\n "architecture",\n "isolation"\n ],\n "type": "object"\n },\n {\n "type": "null"\n }\n ],\n "description": "Value for environment."\n },\n "evidence_id": {\n "description": "Stable identifier of the recorded Evidence observation.",\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "evidence_links": {\n "description": "Value for evidence links.",\n "items": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "type": "array"\n },\n "limitations": {\n "description": "Value for limitations.",\n "items": {\n "type": "string"\n },\n "type": "array"\n },\n "locations": {\n "description": "Value for locations.",\n "items": {\n "oneOf": [\n {\n "properties": {\n "address": {\n "description": "Value for address.",\n "minLength": 1,\n "type": "string"\n },\n "kind": {\n "const": "address",\n "description": "Value for kind.",\n "type": "string"\n }\n },\n "required": [\n "kind",\n "address"\n ],\n "type": "object"\n },\n {\n "properties": {\n "end": {\n "description": "Value for end.",\n "minLength": 1,\n "type": "string"\n },\n "kind": {\n "const": "address-range",\n "description": "Value for kind.",\n "type": "string"\n },\n "start": {\n "description": "Value for start.",\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "kind",\n "start",\n "end"\n ],\n "type": "object"\n },\n {\n "properties": {\n "kind": {\n "const": "artifact-path",\n "description": "Value for kind.",\n "type": "string"\n },\n "path": {\n "description": "Local filesystem path used by this operation.",\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "kind",\n "path"\n ],\n "type": "object"\n },\n {\n "properties": {\n "kind": {\n "const": "file-offset",\n "description": "Value for kind.",\n "type": "string"\n },\n "offset": {\n "description": "Value for offset.",\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "kind",\n "offset"\n ],\n "type": "object"\n },\n {\n "properties": {\n "end": {\n "description": "Value for end.",\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "kind": {\n "const": "file-offset-range",\n "description": "Value for kind.",\n "type": "string"\n },\n "start": {\n "description": "Value for start.",\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "kind",\n "start",\n "end"\n ],\n "type": "object"\n }\n ]\n },\n "type": "array"\n },\n "normalized_result": {\n "$ref": "#/$defs/__schema0",\n "description": "Value for normalized result."\n },\n "operation": {\n "description": "Value for operation.",\n "minLength": 1,\n "type": "string"\n },\n "parameters": {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "description": "Value for parameters.",\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n },\n "predicate_type": {\n "description": "Value for predicate type.",\n "minLength": 1,\n "type": "string"\n },\n "provider": {\n "description": "Value for provider.",\n "properties": {\n "id": {\n "description": "Value for id.",\n "minLength": 1,\n "type": "string"\n },\n "name": {\n "description": "Exact name used by this operation.",\n "minLength": 1,\n "type": "string"\n },\n "version": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ],\n "description": "Value for version."\n }\n },\n "required": [\n "id",\n "name",\n "version"\n ],\n "type": "object"\n },\n "raw_result": {\n "anyOf": [\n {\n "$ref": "#/$defs/__schema0"\n },\n {\n "type": "null"\n }\n ],\n "description": "Value for raw result."\n },\n "subject": {\n "anyOf": [\n {\n "properties": {\n "architecture": {\n "anyOf": [\n {\n "enum": [\n "x86",\n "x86_64",\n "arm",\n "arm64"\n ],\n "type": "string"\n },\n {\n "type": "null"\n }\n ],\n "description": "Value for architecture."\n },\n "digest": {\n "description": "Value for digest.",\n "properties": {\n "sha256": {\n "description": "Value for sha256.",\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n }\n },\n "required": [\n "sha256"\n ],\n "type": "object"\n },\n "format": {\n "description": "Declared input artifact format.",\n "enum": [\n "hopper",\n "analysis-database",\n "mach-o",\n "elf",\n "pe",\n "dos-mz",\n "dos-com",\n "zip",\n "ipa",\n "apk",\n "msix",\n "appx",\n "asar",\n "dmg",\n "pkg",\n "plist",\n "javascript",\n "source-map",\n "directory",\n "file",\n "unknown",\n "mach-o-universal",\n "javascript-bundle",\n "entitlements"\n ],\n "type": "string"\n },\n "local_path": {\n "description": "Local filesystem path for local.",\n "type": "string"\n },\n "name": {\n "description": "Exact name used by this operation.",\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "name",\n "digest",\n "format",\n "architecture",\n "local_path"\n ],\n "type": "object"\n },\n {\n "type": "null"\n }\n ],\n "description": "Value for subject."\n }\n },\n "required": [\n "evidence_id",\n "subject",\n "provider",\n "predicate_type",\n "operation",\n "parameters",\n "raw_result",\n "normalized_result",\n "confidence",\n "authority",\n "environment",\n "limitations",\n "locations",\n "evidence_links"\n ],\n "type": "object"\n },\n "minItems": 1,\n "type": "array"\n },\n "static_layers": {\n "description": "Value for static layers.",\n "items": {\n "additionalProperties": false,\n "properties": {\n "analysis": {\n "additionalProperties": false,\n "description": "Value for analysis.",\n "properties": {\n "analysis_profile": {\n "description": "Value for analysis profile.",\n "properties": {\n "digest": {\n "description": "Value for digest.",\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n },\n "parameters": {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "description": "Value for parameters.",\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n },\n "provider": {\n "description": "Value for provider.",\n "properties": {\n "id": {\n "description": "Value for id.",\n "minLength": 1,\n "type": "string"\n },\n "name": {\n "description": "Exact name used by this operation.",\n "minLength": 1,\n "type": "string"\n },\n "version": {\n "description": "Value for version.",\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "id",\n "name",\n "version"\n ],\n "type": "object"\n }\n },\n "required": [\n "provider",\n "parameters",\n "digest"\n ],\n "type": "object"\n },\n "authority": {\n "description": "Value for authority.",\n "enum": [\n "shipped-artifact",\n "controlled-replay",\n "historical-reference",\n "external-service",\n "analyst-inference"\n ],\n "type": "string"\n },\n "confidence": {\n "description": "Value for confidence.",\n "enum": [\n "observed",\n "derived",\n "inferred"\n ],\n "type": "string"\n },\n "environment": {\n "anyOf": [\n {\n "properties": {\n "architecture": {\n "description": "Value for architecture.",\n "minLength": 1,\n "type": "string"\n },\n "id": {\n "description": "Value for id.",\n "minLength": 1,\n "type": "string"\n },\n "isolation": {\n "description": "Value for isolation.",\n "enum": [\n "none",\n "process",\n "container",\n "virtual-machine"\n ],\n "type": "string"\n },\n "platform": {\n "description": "Value for platform.",\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "id",\n "platform",\n "architecture",\n "isolation"\n ],\n "type": "object"\n },\n {\n "type": "null"\n }\n ],\n "description": "Value for environment."\n },\n "evidence_id": {\n "description": "Stable identifier of the recorded Evidence observation.",\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "evidence_links": {\n "description": "Value for evidence links.",\n "items": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "type": "array"\n },\n "limitations": {\n "description": "Value for limitations.",\n "items": {\n "type": "string"\n },\n "type": "array"\n },\n "locations": {\n "description": "Value for locations.",\n "items": {\n "oneOf": [\n {\n "properties": {\n "address": {\n "description": "Value for address.",\n "minLength": 1,\n "type": "string"\n },\n "kind": {\n "const": "address",\n "description": "Value for kind.",\n "type": "string"\n }\n },\n "required": [\n "kind",\n "address"\n ],\n "type": "object"\n },\n {\n "properties": {\n "end": {\n "description": "Value for end.",\n "minLength": 1,\n "type": "string"\n },\n "kind": {\n "const": "address-range",\n "description": "Value for kind.",\n "type": "string"\n },\n "start": {\n "description": "Value for start.",\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "kind",\n "start",\n "end"\n ],\n "type": "object"\n },\n {\n "properties": {\n "kind": {\n "const": "artifact-path",\n "description": "Value for kind.",\n "type": "string"\n },\n "path": {\n "description": "Local filesystem path used by this operation.",\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "kind",\n "path"\n ],\n "type": "object"\n },\n {\n "properties": {\n "kind": {\n "const": "file-offset",\n "description": "Value for kind.",\n "type": "string"\n },\n "offset": {\n "description": "Value for offset.",\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "kind",\n "offset"\n ],\n "type": "object"\n },\n {\n "properties": {\n "end": {\n "description": "Value for end.",\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "kind": {\n "const": "file-offset-range",\n "description": "Value for kind.",\n "type": "string"\n },\n "start": {\n "description": "Value for start.",\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "kind",\n "start",\n "end"\n ],\n "type": "object"\n }\n ]\n },\n "type": "array"\n },\n "normalized_result": {\n "$ref": "#/$defs/__schema0",\n "description": "Value for normalized result."\n },\n "operation": {\n "description": "Value for operation.",\n "minLength": 1,\n "type": "string"\n },\n "parameters": {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "description": "Value for parameters.",\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n },\n "predicate_type": {\n "description": "Value for predicate type.",\n "minLength": 1,\n "type": "string"\n },\n "provider": {\n "description": "Value for provider.",\n "properties": {\n "id": {\n "description": "Value for id.",\n "minLength": 1,\n "type": "string"\n },\n "name": {\n "description": "Exact name used by this operation.",\n "minLength": 1,\n "type": "string"\n },\n "version": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ],\n "description": "Value for version."\n }\n },\n "required": [\n "id",\n "name",\n "version"\n ],\n "type": "object"\n },\n "raw_result": {\n "anyOf": [\n {\n "$ref": "#/$defs/__schema0"\n },\n {\n "type": "null"\n }\n ],\n "description": "Value for raw result."\n },\n "subject": {\n "anyOf": [\n {\n "properties": {\n "architecture": {\n "anyOf": [\n {\n "enum": [\n "x86",\n "x86_64",\n "arm",\n "arm64"\n ],\n "type": "string"\n },\n {\n "type": "null"\n }\n ],\n "description": "Value for architecture."\n },\n "digest": {\n "description": "Value for digest.",\n "properties": {\n "sha256": {\n "description": "Value for sha256.",\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n }\n },\n "required": [\n "sha256"\n ],\n "type": "object"\n },\n "format": {\n "description": "Declared input artifact format.",\n "enum": [\n "hopper",\n "analysis-database",\n "mach-o",\n "elf",\n "pe",\n "dos-mz",\n "dos-com",\n "zip",\n "ipa",\n "apk",\n "msix",\n "appx",\n "asar",\n "dmg",\n "pkg",\n "plist",\n "javascript",\n "source-map",\n "directory",\n "file",\n "unknown",\n "mach-o-universal",\n "javascript-bundle",\n "entitlements"\n ],\n "type": "string"\n },\n "local_path": {\n "description": "Local filesystem path for local.",\n "type": "string"\n },\n "name": {\n "description": "Exact name used by this operation.",\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "name",\n "digest",\n "format",\n "architecture",\n "local_path"\n ],\n "type": "object"\n },\n {\n "type": "null"\n }\n ],\n "description": "Value for subject."\n }\n },\n "required": [\n "evidence_id",\n "subject",\n "provider",\n "predicate_type",\n "operation",\n "parameters",\n "raw_result",\n "normalized_result",\n "confidence",\n "authority",\n "environment",\n "limitations",\n "locations",\n "evidence_links"\n ],\n "type": "object"\n },\n "role": {\n "default": "application",\n "description": "Value for role.",\n "enum": [\n "application",\n "cache",\n "assets"\n ],\n "type": "string"\n },\n "runtime_mappings": {\n "default": [],\n "description": "Value for runtime mappings.",\n "items": {\n "oneOf": [\n {\n "additionalProperties": false,\n "properties": {\n "artifact_prefix": {\n "default": "",\n "description": "Value for artifact prefix.",\n "type": "string"\n },\n "kind": {\n "const": "file-root",\n "description": "Value for kind.",\n "type": "string"\n },\n "root": {\n "description": "Value for root.",\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "kind",\n "root"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "artifact_prefix": {\n "default": "",\n "description": "Value for artifact prefix.",\n "type": "string"\n },\n "kind": {\n "const": "url-prefix",\n "description": "Value for kind.",\n "type": "string"\n },\n "prefix": {\n "description": "Value for prefix.",\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "kind",\n "prefix"\n ],\n "type": "object"\n }\n ]\n },\n "type": "array"\n }\n },\n "required": [\n "analysis"\n ],\n "type": "object"\n },\n "minItems": 1,\n "type": "array"\n }\n },\n "required": [\n "static_layers",\n "runtime_observations"\n ],\n "type": "object"\n },\n "kind": "electron-provider",\n "name": "reconcile_javascript_runtime",\n "outputSchema": {\n "$defs": {\n "__schema0": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "number"\n },\n {\n "type": "boolean"\n },\n {\n "type": "null"\n },\n {\n "items": {\n "$ref": "#/$defs/__schema0"\n },\n "type": "array"\n },\n {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n }\n ]\n }\n },\n "$schema": "https://json-schema.org/draft/2020-12/schema",\n "additionalProperties": false,\n "properties": {\n "evidence": {\n "additionalProperties": false,\n "properties": {\n "analysis_profile": {\n "additionalProperties": false,\n "properties": {\n "digest": {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n },\n "parameters": {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n },\n "provider": {\n "additionalProperties": false,\n "properties": {\n "id": {\n "minLength": 1,\n "type": "string"\n },\n "name": {\n "minLength": 1,\n "type": "string"\n },\n "version": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "id",\n "name",\n "version"\n ],\n "type": "object"\n }\n },\n "required": [\n "provider",\n "parameters",\n "digest"\n ],\n "type": "object"\n },\n "authority": {\n "enum": [\n "shipped-artifact",\n "controlled-replay",\n "historical-reference",\n "external-service",\n "analyst-inference"\n ],\n "type": "string"\n },\n "confidence": {\n "enum": [\n "observed",\n "derived",\n "inferred"\n ],\n "type": "string"\n },\n "environment": {\n "anyOf": [\n {\n "additionalProperties": false,\n "properties": {\n "architecture": {\n "minLength": 1,\n "type": "string"\n },\n "id": {\n "minLength": 1,\n "type": "string"\n },\n "isolation": {\n "enum": [\n "none",\n "process",\n "container",\n "virtual-machine"\n ],\n "type": "string"\n },\n "platform": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "id",\n "platform",\n "architecture",\n "isolation"\n ],\n "type": "object"\n },\n {\n "type": "null"\n }\n ]\n },\n "evidence_id": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "evidence_links": {\n "items": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "type": "array"\n },\n "limitations": {\n "items": {\n "type": "string"\n },\n "type": "array"\n },\n "locations": {\n "items": {\n "oneOf": [\n {\n "additionalProperties": false,\n "properties": {\n "address": {\n "minLength": 1,\n "type": "string"\n },\n "kind": {\n "const": "address",\n "type": "string"\n }\n },\n "required": [\n "kind",\n "address"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "end": {\n "minLength": 1,\n "type": "string"\n },\n "kind": {\n "const": "address-range",\n "type": "string"\n },\n "start": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "kind",\n "start",\n "end"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "kind": {\n "const": "artifact-path",\n "type": "string"\n },\n "path": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "kind",\n "path"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "kind": {\n "const": "file-offset",\n "type": "string"\n },\n "offset": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "kind",\n "offset"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "end": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "kind": {\n "const": "file-offset-range",\n "type": "string"\n },\n "start": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "kind",\n "start",\n "end"\n ],\n "type": "object"\n }\n ]\n },\n "type": "array"\n },\n "normalized_result": {\n "$ref": "#/$defs/__schema0"\n },\n "operation": {\n "minLength": 1,\n "type": "string"\n },\n "parameters": {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n },\n "predicate_type": {\n "minLength": 1,\n "type": "string"\n },\n "provider": {\n "additionalProperties": false,\n "properties": {\n "id": {\n "minLength": 1,\n "type": "string"\n },\n "name": {\n "minLength": 1,\n "type": "string"\n },\n "version": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "id",\n "name",\n "version"\n ],\n "type": "object"\n },\n "raw_result": {\n "anyOf": [\n {\n "$ref": "#/$defs/__schema0"\n },\n {\n "type": "null"\n }\n ]\n },\n "subject": {\n "anyOf": [\n {\n "additionalProperties": false,\n "properties": {\n "architecture": {\n "anyOf": [\n {\n "enum": [\n "x86",\n "x86_64",\n "arm",\n "arm64"\n ],\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "digest": {\n "additionalProperties": false,\n "properties": {\n "sha256": {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n }\n },\n "required": [\n "sha256"\n ],\n "type": "object"\n },\n "format": {\n "enum": [\n "hopper",\n "analysis-database",\n "mach-o",\n "elf",\n "pe",\n "dos-mz",\n "dos-com",\n "zip",\n "ipa",\n "apk",\n "msix",\n "appx",\n "asar",\n "dmg",\n "pkg",\n "plist",\n "javascript",\n "source-map",\n "directory",\n "file",\n "unknown",\n "mach-o-universal",\n "javascript-bundle",\n "entitlements"\n ],\n "type": "string"\n },\n "local_path": {\n "type": "string"\n },\n "name": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "name",\n "digest",\n "format",\n "architecture",\n "local_path"\n ],\n "type": "object"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "evidence_id",\n "subject",\n "provider",\n "predicate_type",\n "operation",\n "parameters",\n "raw_result",\n "normalized_result",\n "confidence",\n "authority",\n "environment",\n "limitations",\n "locations",\n "evidence_links"\n ],\n "type": "object"\n },\n "evidence_id": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "result": {\n "additionalProperties": false,\n "properties": {\n "coverage": {\n "additionalProperties": false,\n "properties": {\n "omitted_graph_items": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "omitted_reconciliation_items": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "omitted_runtime_entities": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "omitted_static_load_states": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "status": {\n "enum": [\n "complete-within-inputs",\n "partial",\n "truncated"\n ],\n "type": "string"\n },\n "truncated": {\n "type": "boolean"\n }\n },\n "required": [\n "status",\n "truncated",\n "omitted_runtime_entities",\n "omitted_reconciliation_items",\n "omitted_static_load_states",\n "omitted_graph_items"\n ],\n "type": "object"\n },\n "evidence_links": {\n "items": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "minItems": 2,\n "type": "array"\n },\n "graph": {\n "additionalProperties": false,\n "properties": {\n "coverage": {\n "anyOf": [\n {\n "additionalProperties": false,\n "properties": {\n "limits": {\n "items": {\n "additionalProperties": false,\n "properties": {\n "name": {\n "minLength": 1,\n "type": "string"\n },\n "unit": {\n "enum": [\n "items",\n "bytes",\n "milliseconds",\n "depth",\n "characters",\n "instructions",\n "other"\n ],\n "type": "string"\n },\n "value": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "name",\n "value",\n "unit"\n ],\n "type": "object"\n },\n "type": "array"\n },\n "omitted_count": {\n "const": 0,\n "type": "number"\n },\n "status": {\n "const": "complete",\n "type": "string"\n },\n "truncated": {\n "const": false,\n "type": "boolean"\n }\n },\n "required": [\n "status",\n "truncated",\n "omitted_count",\n "limits"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "limits": {\n "items": {\n "additionalProperties": false,\n "properties": {\n "name": {\n "minLength": 1,\n "type": "string"\n },\n "unit": {\n "enum": [\n "items",\n "bytes",\n "milliseconds",\n "depth",\n "characters",\n "instructions",\n "other"\n ],\n "type": "string"\n },\n "value": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "name",\n "value",\n "unit"\n ],\n "type": "object"\n },\n "type": "array"\n },\n "omitted_count": {\n "anyOf": [\n {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n {\n "type": "null"\n }\n ]\n },\n "status": {\n "const": "partial",\n "type": "string"\n },\n "truncated": {\n "const": false,\n "type": "boolean"\n }\n },\n "required": [\n "status",\n "truncated",\n "omitted_count",\n "limits"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "limits": {\n "items": {\n "additionalProperties": false,\n "properties": {\n "name": {\n "minLength": 1,\n "type": "string"\n },\n "unit": {\n "enum": [\n "items",\n "bytes",\n "milliseconds",\n "depth",\n "characters",\n "instructions",\n "other"\n ],\n "type": "string"\n },\n "value": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "name",\n "value",\n "unit"\n ],\n "type": "object"\n },\n "minItems": 1,\n "type": "array"\n },\n "omitted_count": {\n "anyOf": [\n {\n "exclusiveMinimum": 0,\n "maximum": 9007199254740991,\n "type": "integer"\n },\n {\n "type": "null"\n }\n ]\n },\n "status": {\n "const": "partial",\n "type": "string"\n },\n "truncated": {\n "const": true,\n "type": "boolean"\n }\n },\n "required": [\n "status",\n "truncated",\n "omitted_count",\n "limits"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "limits": {\n "items": {\n "additionalProperties": false,\n "properties": {\n "name": {\n "minLength": 1,\n "type": "string"\n },\n "unit": {\n "enum": [\n "items",\n "bytes",\n "milliseconds",\n "depth",\n "characters",\n "instructions",\n "other"\n ],\n "type": "string"\n },\n "value": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "name",\n "value",\n "unit"\n ],\n "type": "object"\n },\n "type": "array"\n },\n "omitted_count": {\n "type": "null"\n },\n "status": {\n "enum": [\n "unknown",\n "unavailable"\n ],\n "type": "string"\n },\n "truncated": {\n "const": false,\n "type": "boolean"\n }\n },\n "required": [\n "status",\n "truncated",\n "omitted_count",\n "limits"\n ],\n "type": "object"\n }\n ]\n },\n "edges": {\n "items": {\n "additionalProperties": false,\n "properties": {\n "edge_id": {\n "pattern": "^jag_edge_[a-f0-9]{64}$",\n "type": "string"\n },\n "evidence": {\n "additionalProperties": false,\n "properties": {\n "artifact": {\n "oneOf": [\n {\n "additionalProperties": false,\n "properties": {\n "artifact_id": {\n "pattern": "^art_[a-f0-9]{64}$",\n "type": "string"\n },\n "available": {\n "const": true,\n "type": "boolean"\n },\n "sha256": {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n }\n },\n "required": [\n "available",\n "artifact_id",\n "sha256"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "available": {\n "const": false,\n "type": "boolean"\n },\n "detail": {\n "minLength": 1,\n "type": "string"\n },\n "reason": {\n "enum": [\n "not-applicable",\n "not-observed",\n "truncated",\n "provider-unavailable",\n "unresolved",\n "unknown"\n ],\n "type": "string"\n }\n },\n "required": [\n "available",\n "reason",\n "detail"\n ],\n "type": "object"\n }\n ]\n },\n "authority": {\n "enum": [\n "artifact-bytes",\n "ast-static-analysis",\n "static-relationship-inference",\n "passive-cdp-runtime",\n "cross-layer-reconciliation",\n "cross-version-comparison",\n "controlled-replay",\n "native-analysis-provider",\n "managed-static-analysis",\n "historical-reference",\n "user-assertion",\n "unknown"\n ],\n "type": "string"\n },\n "confidence": {\n "enum": [\n "exact",\n "high",\n "medium",\n "low",\n "unknown"\n ],\n "type": "string"\n },\n "coverage": {\n "anyOf": [\n {\n "additionalProperties": false,\n "properties": {\n "limits": {\n "items": {\n "additionalProperties": false,\n "properties": {\n "name": {\n "minLength": 1,\n "type": "string"\n },\n "unit": {\n "enum": [\n "items",\n "bytes",\n "milliseconds",\n "depth",\n "characters",\n "instructions",\n "other"\n ],\n "type": "string"\n },\n "value": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "name",\n "value",\n "unit"\n ],\n "type": "object"\n },\n "type": "array"\n },\n "omitted_count": {\n "const": 0,\n "type": "number"\n },\n "status": {\n "const": "complete",\n "type": "string"\n },\n "truncated": {\n "const": false,\n "type": "boolean"\n }\n },\n "required": [\n "status",\n "truncated",\n "omitted_count",\n "limits"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "limits": {\n "items": {\n "additionalProperties": false,\n "properties": {\n "name": {\n "minLength": 1,\n "type": "string"\n },\n "unit": {\n "enum": [\n "items",\n "bytes",\n "milliseconds",\n "depth",\n "characters",\n "instructions",\n "other"\n ],\n "type": "string"\n },\n "value": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "name",\n "value",\n "unit"\n ],\n "type": "object"\n },\n "type": "array"\n },\n "omitted_count": {\n "anyOf": [\n {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n {\n "type": "null"\n }\n ]\n },\n "status": {\n "const": "partial",\n "type": "string"\n },\n "truncated": {\n "const": false,\n "type": "boolean"\n }\n },\n "required": [\n "status",\n "truncated",\n "omitted_count",\n "limits"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "limits": {\n "items": {\n "additionalProperties": false,\n "properties": {\n "name": {\n "minLength": 1,\n "type": "string"\n },\n "unit": {\n "enum": [\n "items",\n "bytes",\n "milliseconds",\n "depth",\n "characters",\n "instructions",\n "other"\n ],\n "type": "string"\n },\n "value": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "name",\n "value",\n "unit"\n ],\n "type": "object"\n },\n "minItems": 1,\n "type": "array"\n },\n "omitted_count": {\n "anyOf": [\n {\n "exclusiveMinimum": 0,\n "maximum": 9007199254740991,\n "type": "integer"\n },\n {\n "type": "null"\n }\n ]\n },\n "status": {\n "const": "partial",\n "type": "string"\n },\n "truncated": {\n "const": true,\n "type": "boolean"\n }\n },\n "required": [\n "status",\n "truncated",\n "omitted_count",\n "limits"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "limits": {\n "items": {\n "additionalProperties": false,\n "properties": {\n "name": {\n "minLength": 1,\n "type": "string"\n },\n "unit": {\n "enum": [\n "items",\n "bytes",\n "milliseconds",\n "depth",\n "characters",\n "instructions",\n "other"\n ],\n "type": "string"\n },\n "value": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "name",\n "value",\n "unit"\n ],\n "type": "object"\n },\n "type": "array"\n },\n "omitted_count": {\n "type": "null"\n },\n "status": {\n "enum": [\n "unknown",\n "unavailable"\n ],\n "type": "string"\n },\n "truncated": {\n "const": false,\n "type": "boolean"\n }\n },\n "required": [\n "status",\n "truncated",\n "omitted_count",\n "limits"\n ],\n "type": "object"\n }\n ]\n },\n "evidence_ids": {\n "items": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "type": "array"\n },\n "extractor": {\n "additionalProperties": false,\n "properties": {\n "executable_sha256": {\n "anyOf": [\n {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "name": {\n "minLength": 1,\n "type": "string"\n },\n "operation": {\n "minLength": 1,\n "type": "string"\n },\n "version": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "name",\n "version",\n "operation",\n "executable_sha256"\n ],\n "type": "object"\n },\n "limitations": {\n "items": {\n "minLength": 1,\n "type": "string"\n },\n "type": "array"\n },\n "location": {\n "oneOf": [\n {\n "additionalProperties": false,\n "properties": {\n "available": {\n "const": true,\n "type": "boolean"\n },\n "value": {\n "oneOf": [\n {\n "additionalProperties": false,\n "properties": {\n "kind": {\n "const": "artifact-path",\n "type": "string"\n },\n "path": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "kind",\n "path"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "end": {\n "additionalProperties": false,\n "properties": {\n "column": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "line": {\n "maximum": 9007199254740991,\n "minimum": 1,\n "type": "integer"\n }\n },\n "required": [\n "line",\n "column"\n ],\n "type": "object"\n },\n "kind": {\n "const": "source-range",\n "type": "string"\n },\n "source": {\n "minLength": 1,\n "type": "string"\n },\n "start": {\n "additionalProperties": false,\n "properties": {\n "column": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "line": {\n "maximum": 9007199254740991,\n "minimum": 1,\n "type": "integer"\n }\n },\n "required": [\n "line",\n "column"\n ],\n "type": "object"\n }\n },\n "required": [\n "kind",\n "source",\n "start",\n "end"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "end": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "kind": {\n "const": "file-offset-range",\n "type": "string"\n },\n "start": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "kind",\n "start",\n "end"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "kind": {\n "const": "url",\n "type": "string"\n },\n "url": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "kind",\n "url"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "capture_sha256": {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n },\n "frame_key": {\n "anyOf": [\n {\n "minLength": 1,\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "kind": {\n "const": "runtime",\n "type": "string"\n },\n "script_key": {\n "anyOf": [\n {\n "minLength": 1,\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "target_key": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "kind",\n "capture_sha256",\n "target_key",\n "frame_key",\n "script_key"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "address": {\n "minLength": 1,\n "type": "string"\n },\n "kind": {\n "const": "native-address",\n "type": "string"\n },\n "symbol": {\n "anyOf": [\n {\n "minLength": 1,\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "kind",\n "address",\n "symbol"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "export_path": {\n "minLength": 1,\n "type": "string"\n },\n "kind": {\n "const": "package-export",\n "type": "string"\n },\n "package_name": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "kind",\n "package_name",\n "export_path"\n ],\n "type": "object"\n }\n ]\n }\n },\n "required": [\n "available",\n "value"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "available": {\n "const": false,\n "type": "boolean"\n },\n "detail": {\n "minLength": 1,\n "type": "string"\n },\n "reason": {\n "enum": [\n "not-applicable",\n "not-observed",\n "truncated",\n "provider-unavailable",\n "unresolved",\n "unknown"\n ],\n "type": "string"\n }\n },\n "required": [\n "available",\n "reason",\n "detail"\n ],\n "type": "object"\n }\n ]\n },\n "state": {\n "enum": [\n "observed",\n "inferred",\n "unknown",\n "unavailable"\n ],\n "type": "string"\n }\n },\n "required": [\n "authority",\n "state",\n "confidence",\n "artifact",\n "location",\n "extractor",\n "coverage",\n "limitations",\n "evidence_ids"\n ],\n "type": "object"\n },\n "identifier_strategy": {\n "additionalProperties": false,\n "properties": {\n "stability": {\n "const": "relationship-exact",\n "type": "string"\n },\n "strategy": {\n "const": "semantic-content-sha256",\n "type": "string"\n }\n },\n "required": [\n "strategy",\n "stability"\n ],\n "type": "object"\n },\n "properties": {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "propertyNames": {\n "minLength": 1,\n "type": "string"\n },\n "type": "object"\n },\n "relation": {\n "enum": [\n "contains",\n "loads",\n "imports",\n "maps_to",\n "exposes",\n "sends",\n "invokes",\n "handles",\n "calls",\n "persists_to",\n "observed_as",\n "changed_from"\n ],\n "type": "string"\n },\n "source_node_id": {\n "pattern": "^jag_node_[a-f0-9]{64}$",\n "type": "string"\n },\n "target_node_id": {\n "pattern": "^jag_node_[a-f0-9]{64}$",\n "type": "string"\n }\n },\n "required": [\n "source_node_id",\n "target_node_id",\n "relation",\n "properties",\n "evidence",\n "edge_id",\n "identifier_strategy"\n ],\n "type": "object"\n },\n "type": "array"\n },\n "graph_id": {\n "pattern": "^jag_[a-f0-9]{64}$",\n "type": "string"\n },\n "limitations": {\n "items": {\n "minLength": 1,\n "type": "string"\n },\n "type": "array"\n },\n "nodes": {\n "items": {\n "additionalProperties": false,\n "properties": {\n "identity": {\n "oneOf": [\n {\n "additionalProperties": false,\n "properties": {\n "sha256": {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n },\n "stability": {\n "const": "global-exact",\n "type": "string"\n },\n "strategy": {\n "const": "content-digest",\n "type": "string"\n }\n },\n "required": [\n "strategy",\n "stability",\n "sha256"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "original_source": {\n "type": "string"\n },\n "source_map_sha256": {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n },\n "source_sha256": {\n "anyOf": [\n {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "stability": {\n "const": "source-map-exact",\n "type": "string"\n },\n "strategy": {\n "const": "source-map-original",\n "type": "string"\n }\n },\n "required": [\n "strategy",\n "stability",\n "source_map_sha256",\n "original_source",\n "source_sha256"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "artifact_sha256": {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n },\n "path": {\n "minLength": 1,\n "type": "string"\n },\n "stability": {\n "const": "artifact-version",\n "type": "string"\n },\n "strategy": {\n "const": "canonical-path",\n "type": "string"\n }\n },\n "required": [\n "strategy",\n "stability",\n "artifact_sha256",\n "path"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "algorithm": {\n "minLength": 1,\n "type": "string"\n },\n "basis": {\n "items": {\n "enum": [\n "syntax-tree",\n "control-flow",\n "imports",\n "exports",\n "literals",\n "api-usage"\n ],\n "type": "string"\n },\n "minItems": 1,\n "type": "array"\n },\n "fingerprint_sha256": {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n },\n "stability": {\n "const": "cross-version-inference",\n "type": "string"\n },\n "strategy": {\n "const": "structural-fingerprint",\n "type": "string"\n }\n },\n "required": [\n "strategy",\n "stability",\n "algorithm",\n "fingerprint_sha256",\n "basis"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "artifact_sha256": {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n },\n "key": {\n "type": "string"\n },\n "namespace": {\n "minLength": 1,\n "type": "string"\n },\n "stability": {\n "const": "artifact-version",\n "type": "string"\n },\n "strategy": {\n "const": "artifact-local-key",\n "type": "string"\n }\n },\n "required": [\n "strategy",\n "stability",\n "artifact_sha256",\n "namespace",\n "key"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "capture_sha256": {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n },\n "runtime_key": {\n "minLength": 1,\n "type": "string"\n },\n "stability": {\n "const": "capture-only",\n "type": "string"\n },\n "strategy": {\n "const": "runtime-instance",\n "type": "string"\n }\n },\n "required": [\n "strategy",\n "stability",\n "capture_sha256",\n "runtime_key"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "observation_sha256": {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n },\n "scope": {\n "minLength": 1,\n "type": "string"\n },\n "stability": {\n "const": "observation-only",\n "type": "string"\n },\n "strategy": {\n "const": "observation-fingerprint",\n "type": "string"\n }\n },\n "required": [\n "strategy",\n "stability",\n "observation_sha256",\n "scope"\n ],\n "type": "object"\n }\n ]\n },\n "kind": {\n "enum": [\n "package",\n "installer",\n "artifact",\n "asar-entry",\n "electron-main",\n "electron-preload",\n "electron-renderer",\n "electron-utility",\n "javascript-asset",\n "javascript-chunk",\n "javascript-module",\n "source-map",\n "source-module",\n "browser-window",\n "frame",\n "target",\n "context-bridge-api",\n "ipc-channel",\n "ipc-handler",\n "worker",\n "service-worker",\n "endpoint",\n "storage",\n "native-addon",\n "native-export",\n "managed-assembly",\n "managed-module",\n "managed-type",\n "managed-method",\n "managed-field",\n "managed-pinvoke-import",\n "managed-native-implementation",\n "runtime-script-instance",\n "unknown"\n ],\n "type": "string"\n },\n "node_id": {\n "pattern": "^jag_node_[a-f0-9]{64}$",\n "type": "string"\n },\n "observations": {\n "items": {\n "additionalProperties": false,\n "properties": {\n "evidence": {\n "additionalProperties": false,\n "properties": {\n "artifact": {\n "oneOf": [\n {\n "additionalProperties": false,\n "properties": {\n "artifact_id": {\n "pattern": "^art_[a-f0-9]{64}$",\n "type": "string"\n },\n "available": {\n "const": true,\n "type": "boolean"\n },\n "sha256": {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n }\n },\n "required": [\n "available",\n "artifact_id",\n "sha256"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "available": {\n "const": false,\n "type": "boolean"\n },\n "detail": {\n "minLength": 1,\n "type": "string"\n },\n "reason": {\n "enum": [\n "not-applicable",\n "not-observed",\n "truncated",\n "provider-unavailable",\n "unresolved",\n "unknown"\n ],\n "type": "string"\n }\n },\n "required": [\n "available",\n "reason",\n "detail"\n ],\n "type": "object"\n }\n ]\n },\n "authority": {\n "enum": [\n "artifact-bytes",\n "ast-static-analysis",\n "static-relationship-inference",\n "passive-cdp-runtime",\n "cross-layer-reconciliation",\n "cross-version-comparison",\n "controlled-replay",\n "native-analysis-provider",\n "managed-static-analysis",\n "historical-reference",\n "user-assertion",\n "unknown"\n ],\n "type": "string"\n },\n "confidence": {\n "enum": [\n "exact",\n "high",\n "medium",\n "low",\n "unknown"\n ],\n "type": "string"\n },\n "coverage": {\n "anyOf": [\n {\n "additionalProperties": false,\n "properties": {\n "limits": {\n "items": {\n "additionalProperties": false,\n "properties": {\n "name": {\n "minLength": 1,\n "type": "string"\n },\n "unit": {\n "enum": [\n "items",\n "bytes",\n "milliseconds",\n "depth",\n "characters",\n "instructions",\n "other"\n ],\n "type": "string"\n },\n "value": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "name",\n "value",\n "unit"\n ],\n "type": "object"\n },\n "type": "array"\n },\n "omitted_count": {\n "const": 0,\n "type": "number"\n },\n "status": {\n "const": "complete",\n "type": "string"\n },\n "truncated": {\n "const": false,\n "type": "boolean"\n }\n },\n "required": [\n "status",\n "truncated",\n "omitted_count",\n "limits"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "limits": {\n "items": {\n "additionalProperties": false,\n "properties": {\n "name": {\n "minLength": 1,\n "type": "string"\n },\n "unit": {\n "enum": [\n "items",\n "bytes",\n "milliseconds",\n "depth",\n "characters",\n "instructions",\n "other"\n ],\n "type": "string"\n },\n "value": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "name",\n "value",\n "unit"\n ],\n "type": "object"\n },\n "type": "array"\n },\n "omitted_count": {\n "anyOf": [\n {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n {\n "type": "null"\n }\n ]\n },\n "status": {\n "const": "partial",\n "type": "string"\n },\n "truncated": {\n "const": false,\n "type": "boolean"\n }\n },\n "required": [\n "status",\n "truncated",\n "omitted_count",\n "limits"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "limits": {\n "items": {\n "additionalProperties": false,\n "properties": {\n "name": {\n "minLength": 1,\n "type": "string"\n },\n "unit": {\n "enum": [\n "items",\n "bytes",\n "milliseconds",\n "depth",\n "characters",\n "instructions",\n "other"\n ],\n "type": "string"\n },\n "value": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "name",\n "value",\n "unit"\n ],\n "type": "object"\n },\n "minItems": 1,\n "type": "array"\n },\n "omitted_count": {\n "anyOf": [\n {\n "exclusiveMinimum": 0,\n "maximum": 9007199254740991,\n "type": "integer"\n },\n {\n "type": "null"\n }\n ]\n },\n "status": {\n "const": "partial",\n "type": "string"\n },\n "truncated": {\n "const": true,\n "type": "boolean"\n }\n },\n "required": [\n "status",\n "truncated",\n "omitted_count",\n "limits"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "limits": {\n "items": {\n "additionalProperties": false,\n "properties": {\n "name": {\n "minLength": 1,\n "type": "string"\n },\n "unit": {\n "enum": [\n "items",\n "bytes",\n "milliseconds",\n "depth",\n "characters",\n "instructions",\n "other"\n ],\n "type": "string"\n },\n "value": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "name",\n "value",\n "unit"\n ],\n "type": "object"\n },\n "type": "array"\n },\n "omitted_count": {\n "type": "null"\n },\n "status": {\n "enum": [\n "unknown",\n "unavailable"\n ],\n "type": "string"\n },\n "truncated": {\n "const": false,\n "type": "boolean"\n }\n },\n "required": [\n "status",\n "truncated",\n "omitted_count",\n "limits"\n ],\n "type": "object"\n }\n ]\n },\n "evidence_ids": {\n "items": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "type": "array"\n },\n "extractor": {\n "additionalProperties": false,\n "properties": {\n "executable_sha256": {\n "anyOf": [\n {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "name": {\n "minLength": 1,\n "type": "string"\n },\n "operation": {\n "minLength": 1,\n "type": "string"\n },\n "version": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "name",\n "version",\n "operation",\n "executable_sha256"\n ],\n "type": "object"\n },\n "limitations": {\n "items": {\n "minLength": 1,\n "type": "string"\n },\n "type": "array"\n },\n "location": {\n "oneOf": [\n {\n "additionalProperties": false,\n "properties": {\n "available": {\n "const": true,\n "type": "boolean"\n },\n "value": {\n "oneOf": [\n {\n "additionalProperties": false,\n "properties": {\n "kind": {\n "const": "artifact-path",\n "type": "string"\n },\n "path": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "kind",\n "path"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "end": {\n "additionalProperties": false,\n "properties": {\n "column": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "line": {\n "maximum": 9007199254740991,\n "minimum": 1,\n "type": "integer"\n }\n },\n "required": [\n "line",\n "column"\n ],\n "type": "object"\n },\n "kind": {\n "const": "source-range",\n "type": "string"\n },\n "source": {\n "minLength": 1,\n "type": "string"\n },\n "start": {\n "additionalProperties": false,\n "properties": {\n "column": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "line": {\n "maximum": 9007199254740991,\n "minimum": 1,\n "type": "integer"\n }\n },\n "required": [\n "line",\n "column"\n ],\n "type": "object"\n }\n },\n "required": [\n "kind",\n "source",\n "start",\n "end"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "end": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "kind": {\n "const": "file-offset-range",\n "type": "string"\n },\n "start": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "kind",\n "start",\n "end"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "kind": {\n "const": "url",\n "type": "string"\n },\n "url": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "kind",\n "url"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "capture_sha256": {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n },\n "frame_key": {\n "anyOf": [\n {\n "minLength": 1,\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "kind": {\n "const": "runtime",\n "type": "string"\n },\n "script_key": {\n "anyOf": [\n {\n "minLength": 1,\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "target_key": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "kind",\n "capture_sha256",\n "target_key",\n "frame_key",\n "script_key"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "address": {\n "minLength": 1,\n "type": "string"\n },\n "kind": {\n "const": "native-address",\n "type": "string"\n },\n "symbol": {\n "anyOf": [\n {\n "minLength": 1,\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "kind",\n "address",\n "symbol"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "export_path": {\n "minLength": 1,\n "type": "string"\n },\n "kind": {\n "const": "package-export",\n "type": "string"\n },\n "package_name": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "kind",\n "package_name",\n "export_path"\n ],\n "type": "object"\n }\n ]\n }\n },\n "required": [\n "available",\n "value"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "available": {\n "const": false,\n "type": "boolean"\n },\n "detail": {\n "minLength": 1,\n "type": "string"\n },\n "reason": {\n "enum": [\n "not-applicable",\n "not-observed",\n "truncated",\n "provider-unavailable",\n "unresolved",\n "unknown"\n ],\n "type": "string"\n }\n },\n "required": [\n "available",\n "reason",\n "detail"\n ],\n "type": "object"\n }\n ]\n },\n "state": {\n "enum": [\n "observed",\n "inferred",\n "unknown",\n "unavailable"\n ],\n "type": "string"\n }\n },\n "required": [\n "authority",\n "state",\n "confidence",\n "artifact",\n "location",\n "extractor",\n "coverage",\n "limitations",\n "evidence_ids"\n ],\n "type": "object"\n },\n "identifier_strategy": {\n "additionalProperties": false,\n "properties": {\n "stability": {\n "const": "observation-exact",\n "type": "string"\n },\n "strategy": {\n "const": "semantic-content-sha256",\n "type": "string"\n }\n },\n "required": [\n "strategy",\n "stability"\n ],\n "type": "object"\n },\n "label": {\n "anyOf": [\n {\n "minLength": 1,\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "observation_id": {\n "pattern": "^jag_observation_[a-f0-9]{64}$",\n "type": "string"\n },\n "properties": {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "propertyNames": {\n "minLength": 1,\n "type": "string"\n },\n "type": "object"\n }\n },\n "required": [\n "label",\n "properties",\n "evidence",\n "observation_id",\n "identifier_strategy"\n ],\n "type": "object"\n },\n "minItems": 1,\n "type": "array"\n }\n },\n "required": [\n "node_id",\n "kind",\n "identity",\n "observations"\n ],\n "type": "object"\n },\n "minItems": 1,\n "type": "array"\n },\n "root_node_ids": {\n "items": {\n "pattern": "^jag_node_[a-f0-9]{64}$",\n "type": "string"\n },\n "minItems": 1,\n "type": "array"\n },\n "schema": {\n "const": "JavaScriptApplicationGraph",\n "type": "string"\n }\n },\n "required": [\n "schema",\n "root_node_ids",\n "nodes",\n "edges",\n "coverage",\n "limitations",\n "graph_id"\n ],\n "type": "object"\n },\n "limitations": {\n "items": {\n "minLength": 1,\n "type": "string"\n },\n "type": "array"\n },\n "reconciliation_id": {\n "pattern": "^jrr_[a-f0-9]{64}$",\n "type": "string"\n },\n "reconciliations": {\n "items": {\n "anyOf": [\n {\n "additionalProperties": false,\n "properties": {\n "basis": {\n "enum": [\n "content-and-location",\n "content-sha256",\n "module-source-sha256",\n "artifact-path",\n "operator-file-mapping",\n "operator-url-mapping",\n "none"\n ],\n "type": "string"\n },\n "candidate_static_count": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "candidate_static_nodes": {\n "items": {\n "additionalProperties": false,\n "properties": {\n "static_layer_id": {\n "pattern": "^jrl_[a-f0-9]{64}$",\n "type": "string"\n },\n "static_node_id": {\n "pattern": "^jag_node_[a-f0-9]{64}$",\n "type": "string"\n }\n },\n "required": [\n "static_layer_id",\n "static_node_id"\n ],\n "type": "object"\n },\n "type": "array"\n },\n "confidence": {\n "enum": [\n "exact",\n "high",\n "medium",\n "low",\n "unknown"\n ],\n "type": "string"\n },\n "entity_kind": {\n "enum": [\n "target",\n "frame",\n "script",\n "worker"\n ],\n "type": "string"\n },\n "reason": {\n "enum": [\n "content-and-location-match",\n "unique-content-match",\n "unique-location-match",\n "ambiguous-static-candidates",\n "captured-content-disagrees-with-static-location",\n "no-static-content-match",\n "no-authorized-location-mapping",\n "runtime-location-unresolved",\n "runtime-frame-unattributed",\n "static-or-runtime-coverage-incomplete",\n "reconciliation-limit-reached"\n ],\n "type": "string"\n },\n "reconciliation_id": {\n "pattern": "^jrr_item_[a-f0-9]{64}$",\n "type": "string"\n },\n "runtime_evidence_id": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "runtime_node_id": {\n "pattern": "^jag_node_[a-f0-9]{64}$",\n "type": "string"\n },\n "static_layer_id": {\n "pattern": "^jrl_[a-f0-9]{64}$",\n "type": "string"\n },\n "static_node_id": {\n "pattern": "^jag_node_[a-f0-9]{64}$",\n "type": "string"\n },\n "status": {\n "const": "matched",\n "type": "string"\n }\n },\n "required": [\n "reconciliation_id",\n "entity_kind",\n "runtime_evidence_id",\n "runtime_node_id",\n "basis",\n "confidence",\n "reason",\n "candidate_static_count",\n "candidate_static_nodes",\n "static_layer_id",\n "static_node_id",\n "status"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "basis": {\n "enum": [\n "content-and-location",\n "content-sha256",\n "module-source-sha256",\n "artifact-path",\n "operator-file-mapping",\n "operator-url-mapping",\n "none"\n ],\n "type": "string"\n },\n "candidate_static_count": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "candidate_static_nodes": {\n "items": {\n "additionalProperties": false,\n "properties": {\n "static_layer_id": {\n "pattern": "^jrl_[a-f0-9]{64}$",\n "type": "string"\n },\n "static_node_id": {\n "pattern": "^jag_node_[a-f0-9]{64}$",\n "type": "string"\n }\n },\n "required": [\n "static_layer_id",\n "static_node_id"\n ],\n "type": "object"\n },\n "type": "array"\n },\n "confidence": {\n "enum": [\n "exact",\n "high",\n "medium",\n "low",\n "unknown"\n ],\n "type": "string"\n },\n "entity_kind": {\n "enum": [\n "target",\n "frame",\n "script",\n "worker"\n ],\n "type": "string"\n },\n "reason": {\n "enum": [\n "content-and-location-match",\n "unique-content-match",\n "unique-location-match",\n "ambiguous-static-candidates",\n "captured-content-disagrees-with-static-location",\n "no-static-content-match",\n "no-authorized-location-mapping",\n "runtime-location-unresolved",\n "runtime-frame-unattributed",\n "static-or-runtime-coverage-incomplete",\n "reconciliation-limit-reached"\n ],\n "type": "string"\n },\n "reconciliation_id": {\n "pattern": "^jrr_item_[a-f0-9]{64}$",\n "type": "string"\n },\n "runtime_evidence_id": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "runtime_node_id": {\n "pattern": "^jag_node_[a-f0-9]{64}$",\n "type": "string"\n },\n "static_layer_id": {\n "type": "null"\n },\n "static_node_id": {\n "type": "null"\n },\n "status": {\n "enum": [\n "ambiguous",\n "unmatched",\n "unknown"\n ],\n "type": "string"\n }\n },\n "required": [\n "reconciliation_id",\n "entity_kind",\n "runtime_evidence_id",\n "runtime_node_id",\n "basis",\n "confidence",\n "reason",\n "candidate_static_count",\n "candidate_static_nodes",\n "static_layer_id",\n "static_node_id",\n "status"\n ],\n "type": "object"\n }\n ]\n },\n "type": "array"\n },\n "runtime_captures": {\n "items": {\n "additionalProperties": false,\n "properties": {\n "capture_sha256": {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n },\n "evidence_id": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "frames": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "kind": {\n "enum": [\n "browser",\n "electron",\n "v8-inspector",\n "electron-active"\n ],\n "type": "string"\n },\n "scripts": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "scripts_complete_within_scope": {\n "type": "boolean"\n },\n "target_key": {\n "minLength": 1,\n "type": "string"\n },\n "target_location": {\n "anyOf": [\n {\n "minLength": 1,\n "type": "string"\n },\n {\n "additionalProperties": false,\n "properties": {\n "kind": {\n "const": "unresolved",\n "type": "string"\n },\n "reason": {\n "const": "unverifiable-file-location",\n "type": "string"\n },\n "reported_url": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "kind",\n "reported_url",\n "reason"\n ],\n "type": "object"\n }\n ]\n },\n "target_node_id": {\n "pattern": "^jag_node_[a-f0-9]{64}$",\n "type": "string"\n },\n "workers": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "evidence_id",\n "capture_sha256",\n "kind",\n "target_node_id",\n "target_key",\n "target_location",\n "frames",\n "scripts",\n "workers",\n "scripts_complete_within_scope"\n ],\n "type": "object"\n },\n "minItems": 1,\n "type": "array"\n },\n "source_map_authority": {\n "additionalProperties": false,\n "properties": {\n "limitation": {\n "minLength": 1,\n "type": "string"\n },\n "runtime_script_declarations": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "static_layer_count": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "used_for_primary_matching": {\n "const": false,\n "type": "boolean"\n }\n },\n "required": [\n "used_for_primary_matching",\n "static_layer_count",\n "runtime_script_declarations",\n "limitation"\n ],\n "type": "object"\n },\n "static_layers": {\n "items": {\n "additionalProperties": false,\n "properties": {\n "evidence_id": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "format": {\n "enum": [\n "asar",\n "directory"\n ],\n "type": "string"\n },\n "graph_id": {\n "pattern": "^jag_[a-f0-9]{64}$",\n "type": "string"\n },\n "input_path": {\n "minLength": 1,\n "type": "string"\n },\n "layer_id": {\n "pattern": "^jrl_[a-f0-9]{64}$",\n "type": "string"\n },\n "role": {\n "enum": [\n "application",\n "cache",\n "assets"\n ],\n "type": "string"\n },\n "root_artifact_sha256": {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n },\n "runtime_mappings": {\n "items": {\n "oneOf": [\n {\n "additionalProperties": false,\n "properties": {\n "artifact_prefix": {\n "default": "",\n "type": "string"\n },\n "kind": {\n "const": "file-root",\n "type": "string"\n },\n "root": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "kind",\n "root",\n "artifact_prefix"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "artifact_prefix": {\n "default": "",\n "type": "string"\n },\n "kind": {\n "const": "url-prefix",\n "type": "string"\n },\n "prefix": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "kind",\n "prefix",\n "artifact_prefix"\n ],\n "type": "object"\n }\n ]\n },\n "type": "array"\n }\n },\n "required": [\n "layer_id",\n "role",\n "evidence_id",\n "graph_id",\n "root_artifact_sha256",\n "input_path",\n "format",\n "runtime_mappings"\n ],\n "type": "object"\n },\n "minItems": 1,\n "type": "array"\n },\n "static_load_states": {\n "items": {\n "additionalProperties": false,\n "properties": {\n "kind": {\n "enum": [\n "javascript-asset",\n "javascript-chunk",\n "javascript-module"\n ],\n "type": "string"\n },\n "reason": {\n "enum": [\n "runtime-script-correspondence",\n "containing-asset-was-loaded",\n "not-observed-in-bounded-capture",\n "layer-outside-runtime-scope",\n "static-or-runtime-coverage-incomplete"\n ],\n "type": "string"\n },\n "runtime_node_ids": {\n "items": {\n "pattern": "^jag_node_[a-f0-9]{64}$",\n "type": "string"\n },\n "type": "array"\n },\n "static_layer_id": {\n "pattern": "^jrl_[a-f0-9]{64}$",\n "type": "string"\n },\n "static_node_id": {\n "pattern": "^jag_node_[a-f0-9]{64}$",\n "type": "string"\n },\n "status": {\n "enum": [\n "loaded",\n "resident-in-loaded-asset",\n "not-observed-in-capture",\n "unknown"\n ],\n "type": "string"\n }\n },\n "required": [\n "static_layer_id",\n "static_node_id",\n "kind",\n "status",\n "runtime_node_ids",\n "reason"\n ],\n "type": "object"\n },\n "type": "array"\n },\n "summary": {\n "additionalProperties": false,\n "properties": {\n "ambiguous": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "matched": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "runtime_frames": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "runtime_scripts": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "runtime_targets": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "runtime_workers": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "static_loaded": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "static_not_observed": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "static_resident": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "static_unknown": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "unknown": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "unmatched": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "runtime_targets",\n "runtime_frames",\n "runtime_scripts",\n "runtime_workers",\n "matched",\n "ambiguous",\n "unmatched",\n "unknown",\n "static_loaded",\n "static_resident",\n "static_not_observed",\n "static_unknown"\n ],\n "type": "object"\n }\n },\n "required": [\n "reconciliation_id",\n "static_layers",\n "runtime_captures",\n "graph",\n "summary",\n "reconciliations",\n "static_load_states",\n "source_map_authority",\n "coverage",\n "evidence_links",\n "limitations"\n ],\n "type": "object"\n }\n },\n "required": [\n "result",\n "evidence_id",\n "evidence"\n ],\n "type": "object"\n },\n "requiresSession": false,\n "title": "Reconcile Javascript Runtime"\n },\n {\n "analysisOperation": null,\n "annotations": {\n "destructiveHint": true,\n "idempotentHint": false,\n "openWorldHint": true,\n "readOnlyHint": false\n },\n "description": "Use this for a provider-owned Electron run when passive CDP or Inspector observation cannot exercise application behavior. REA owns startup and teardown, accepts caller-defined 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.",\n "effects": {\n "accessesNetwork": true,\n "changesUiState": true,\n "idempotent": false,\n "launchesProcess": true,\n "mayDiscardData": true,\n "mutatesSession": true,\n "mutatesTarget": true,\n "writesFilesystem": true\n },\n "inputSchema": {\n "$schema": "https://json-schema.org/draft/2020-12/schema",\n "additionalProperties": false,\n "examples": [\n {\n "actions": [\n {\n "kind": "click",\n "selector": "#run",\n "step_id": "exercise-ipc"\n }\n ],\n "application_path": "/Applications/Example.app/Contents/Resources/main.js",\n "args": [],\n "executable_path": "/Applications/Electron.app/Contents/MacOS/Electron"\n }\n ],\n "properties": {\n "actions": {\n "default": [],\n "description": "Value for actions.",\n "items": {\n "oneOf": [\n {\n "additionalProperties": false,\n "properties": {\n "kind": {\n "const": "click",\n "description": "Value for kind.",\n "type": "string"\n },\n "selector": {\n "description": "Value for selector.",\n "minLength": 1,\n "type": "string"\n },\n "step_id": {\n "description": "Value for step id.",\n "minLength": 1,\n "type": "string"\n },\n "window_index": {\n "default": 0,\n "description": "Value for window index.",\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "step_id",\n "kind",\n "selector"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "duration_ms": {\n "description": "Value for duration ms.",\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "kind": {\n "const": "wait",\n "description": "Value for kind.",\n "type": "string"\n },\n "step_id": {\n "description": "Value for step id.",\n "minLength": 1,\n "type": "string"\n },\n "window_index": {\n "description": "Value for window index.",\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "step_id",\n "kind",\n "duration_ms"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "kind": {\n "const": "renderer-reload",\n "description": "Value for kind.",\n "type": "string"\n },\n "step_id": {\n "description": "Value for step id.",\n "minLength": 1,\n "type": "string"\n },\n "window_index": {\n "default": 0,\n "description": "Value for window index.",\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "step_id",\n "kind"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "kind": {\n "const": "renderer-crash",\n "description": "Value for kind.",\n "type": "string"\n },\n "step_id": {\n "description": "Value for step id.",\n "minLength": 1,\n "type": "string"\n },\n "window_index": {\n "default": 0,\n "description": "Value for window index.",\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "step_id",\n "kind"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "delivery": {\n "description": "Value for delivery.",\n "enum": [\n "open-url",\n "second-instance"\n ],\n "type": "string"\n },\n "kind": {\n "const": "deep-link",\n "description": "Value for kind.",\n "type": "string"\n },\n "step_id": {\n "description": "Value for step id.",\n "minLength": 1,\n "type": "string"\n },\n "url": {\n "description": "Value for url.",\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "step_id",\n "kind",\n "delivery",\n "url"\n ],\n "type": "object"\n }\n ]\n },\n "type": "array"\n },\n "application_path": {\n "description": "Local filesystem path for application.",\n "minLength": 1,\n "type": "string"\n },\n "application_root": {\n "description": "Local filesystem application root selected for this operation.",\n "minLength": 1,\n "type": "string"\n },\n "args": {\n "default": [],\n "description": "Value for args.",\n "items": {\n "type": "string"\n },\n "type": "array"\n },\n "executable_path": {\n "description": "Local filesystem path for executable.",\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "executable_path",\n "application_path"\n ],\n "type": "object"\n },\n "kind": "electron-provider",\n "name": "capture_electron_scenario",\n "outputSchema": {\n "$defs": {\n "__schema0": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "number"\n },\n {\n "type": "boolean"\n },\n {\n "type": "null"\n },\n {\n "items": {\n "$ref": "#/$defs/__schema0"\n },\n "type": "array"\n },\n {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n }\n ]\n }\n },\n "$schema": "https://json-schema.org/draft/2020-12/schema",\n "additionalProperties": false,\n "properties": {\n "evidence": {\n "additionalProperties": false,\n "properties": {\n "analysis_profile": {\n "additionalProperties": false,\n "properties": {\n "digest": {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n },\n "parameters": {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n },\n "provider": {\n "additionalProperties": false,\n "properties": {\n "id": {\n "minLength": 1,\n "type": "string"\n },\n "name": {\n "minLength": 1,\n "type": "string"\n },\n "version": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "id",\n "name",\n "version"\n ],\n "type": "object"\n }\n },\n "required": [\n "provider",\n "parameters",\n "digest"\n ],\n "type": "object"\n },\n "authority": {\n "enum": [\n "shipped-artifact",\n "controlled-replay",\n "historical-reference",\n "external-service",\n "analyst-inference"\n ],\n "type": "string"\n },\n "confidence": {\n "enum": [\n "observed",\n "derived",\n "inferred"\n ],\n "type": "string"\n },\n "environment": {\n "anyOf": [\n {\n "additionalProperties": false,\n "properties": {\n "architecture": {\n "minLength": 1,\n "type": "string"\n },\n "id": {\n "minLength": 1,\n "type": "string"\n },\n "isolation": {\n "enum": [\n "none",\n "process",\n "container",\n "virtual-machine"\n ],\n "type": "string"\n },\n "platform": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "id",\n "platform",\n "architecture",\n "isolation"\n ],\n "type": "object"\n },\n {\n "type": "null"\n }\n ]\n },\n "evidence_id": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "evidence_links": {\n "items": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "type": "array"\n },\n "limitations": {\n "items": {\n "type": "string"\n },\n "type": "array"\n },\n "locations": {\n "items": {\n "oneOf": [\n {\n "additionalProperties": false,\n "properties": {\n "address": {\n "minLength": 1,\n "type": "string"\n },\n "kind": {\n "const": "address",\n "type": "string"\n }\n },\n "required": [\n "kind",\n "address"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "end": {\n "minLength": 1,\n "type": "string"\n },\n "kind": {\n "const": "address-range",\n "type": "string"\n },\n "start": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "kind",\n "start",\n "end"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "kind": {\n "const": "artifact-path",\n "type": "string"\n },\n "path": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "kind",\n "path"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "kind": {\n "const": "file-offset",\n "type": "string"\n },\n "offset": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "kind",\n "offset"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "end": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "kind": {\n "const": "file-offset-range",\n "type": "string"\n },\n "start": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "kind",\n "start",\n "end"\n ],\n "type": "object"\n }\n ]\n },\n "type": "array"\n },\n "normalized_result": {\n "$ref": "#/$defs/__schema0"\n },\n "operation": {\n "minLength": 1,\n "type": "string"\n },\n "parameters": {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n },\n "predicate_type": {\n "minLength": 1,\n "type": "string"\n },\n "provider": {\n "additionalProperties": false,\n "properties": {\n "id": {\n "minLength": 1,\n "type": "string"\n },\n "name": {\n "minLength": 1,\n "type": "string"\n },\n "version": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "id",\n "name",\n "version"\n ],\n "type": "object"\n },\n "raw_result": {\n "anyOf": [\n {\n "$ref": "#/$defs/__schema0"\n },\n {\n "type": "null"\n }\n ]\n },\n "subject": {\n "anyOf": [\n {\n "additionalProperties": false,\n "properties": {\n "architecture": {\n "anyOf": [\n {\n "enum": [\n "x86",\n "x86_64",\n "arm",\n "arm64"\n ],\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "digest": {\n "additionalProperties": false,\n "properties": {\n "sha256": {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n }\n },\n "required": [\n "sha256"\n ],\n "type": "object"\n },\n "format": {\n "enum": [\n "hopper",\n "analysis-database",\n "mach-o",\n "elf",\n "pe",\n "dos-mz",\n "dos-com",\n "zip",\n "ipa",\n "apk",\n "msix",\n "appx",\n "asar",\n "dmg",\n "pkg",\n "plist",\n "javascript",\n "source-map",\n "directory",\n "file",\n "unknown",\n "mach-o-universal",\n "javascript-bundle",\n "entitlements"\n ],\n "type": "string"\n },\n "local_path": {\n "type": "string"\n },\n "name": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "name",\n "digest",\n "format",\n "architecture",\n "local_path"\n ],\n "type": "object"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "evidence_id",\n "subject",\n "provider",\n "predicate_type",\n "operation",\n "parameters",\n "raw_result",\n "normalized_result",\n "confidence",\n "authority",\n "environment",\n "limitations",\n "locations",\n "evidence_links"\n ],\n "type": "object"\n },\n "evidence_id": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "result": {\n "additionalProperties": false,\n "properties": {\n "actions": {\n "items": {\n "oneOf": [\n {\n "additionalProperties": false,\n "properties": {\n "elapsed_ms": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "error": {\n "type": "null"\n },\n "kind": {\n "enum": [\n "click",\n "wait",\n "renderer-reload",\n "renderer-crash",\n "deep-link"\n ],\n "type": "string"\n },\n "status": {\n "const": "completed",\n "type": "string"\n },\n "step_id": {\n "minLength": 1,\n "type": "string"\n },\n "target": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "window_index": {\n "anyOf": [\n {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "step_id",\n "kind",\n "window_index",\n "target",\n "elapsed_ms",\n "status",\n "error"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "elapsed_ms": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "error": {\n "type": "string"\n },\n "kind": {\n "enum": [\n "click",\n "wait",\n "renderer-reload",\n "renderer-crash",\n "deep-link"\n ],\n "type": "string"\n },\n "status": {\n "enum": [\n "failed",\n "cancelled"\n ],\n "type": "string"\n },\n "step_id": {\n "minLength": 1,\n "type": "string"\n },\n "target": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "window_index": {\n "anyOf": [\n {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "step_id",\n "kind",\n "window_index",\n "target",\n "elapsed_ms",\n "status",\n "error"\n ],\n "type": "object"\n }\n ]\n },\n "type": "array"\n },\n "application": {\n "additionalProperties": false,\n "properties": {\n "application_path": {\n "minLength": 1,\n "type": "string"\n },\n "cleanup": {\n "const": "terminated-owned-process",\n "type": "string"\n },\n "electron_version": {\n "minLength": 1,\n "type": "string"\n },\n "executable_path": {\n "minLength": 1,\n "type": "string"\n },\n "process_ownership": {\n "const": "provider-owned",\n "type": "string"\n }\n },\n "required": [\n "executable_path",\n "application_path",\n "electron_version",\n "process_ownership",\n "cleanup"\n ],\n "type": "object"\n },\n "coverage": {\n "additionalProperties": false,\n "default": {\n "observed_event_families": [],\n "observed_roles": [],\n "pre_capture_activity": "unavailable",\n "status": "partial_attach",\n "unavailable_event_families": []\n },\n "properties": {\n "observed_event_families": {\n "items": {\n "type": "string"\n },\n "type": "array"\n },\n "observed_roles": {\n "items": {\n "type": "string"\n },\n "type": "array"\n },\n "pre_capture_activity": {\n "const": "unavailable",\n "type": "string"\n },\n "status": {\n "enum": [\n "complete",\n "partial_attach",\n "hook_conflict",\n "target_exited",\n "cleanup_failed"\n ],\n "type": "string"\n },\n "unavailable_event_families": {\n "items": {\n "type": "string"\n },\n "type": "array"\n }\n },\n "required": [\n "status",\n "observed_event_families",\n "unavailable_event_families",\n "observed_roles",\n "pre_capture_activity"\n ],\n "type": "object"\n },\n "ipc": {\n "additionalProperties": false,\n "properties": {\n "events": {\n "items": {\n "additionalProperties": false,\n "properties": {\n "argument_shapes": {\n "items": {\n "type": "string"\n },\n "type": "array"\n },\n "artifact_path": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ],\n "default": null\n },\n "artifact_sha256": {\n "anyOf": [\n {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n },\n {\n "type": "null"\n }\n ],\n "default": null\n },\n "capture_method": {\n "default": "api-wrapper",\n "enum": [\n "api-wrapper",\n "event-emitter",\n "process-hook"\n ],\n "type": "string"\n },\n "channel": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "correlation_id": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ],\n "default": null\n },\n "direction": {\n "anyOf": [\n {\n "enum": [\n "renderer-to-main",\n "main-to-renderer",\n "main-to-utility",\n "utility-to-main"\n ],\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "error": {\n "type": "boolean"\n },\n "event": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "frame": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ],\n "default": null\n },\n "kind": {\n "enum": [\n "main-handler-invocation",\n "main-event-invocation",\n "utility-process-fork",\n "utility-process-message",\n "ipc-main-to-renderer",\n "ipc-utility-to-main",\n "ipc-renderer-send",\n "ipc-renderer-invoke",\n "ipc-renderer-post-message"\n ],\n "type": "string"\n },\n "phase": {\n "anyOf": [\n {\n "enum": [\n "attempted",\n "completed",\n "blocked",\n "failed",\n "observed"\n ],\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "process_type": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "receiver": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "result_shape": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "sender": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "sequence": {\n "maximum": 9007199254740991,\n "minimum": 1,\n "type": "integer"\n },\n "source": {\n "default": "electron-active-hook",\n "type": "string"\n },\n "target": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "sequence",\n "correlation_id",\n "kind",\n "channel",\n "frame",\n "argument_shapes",\n "result_shape",\n "process_type",\n "source",\n "capture_method",\n "artifact_path",\n "artifact_sha256",\n "error"\n ],\n "type": "object"\n },\n "type": "array"\n },\n "observed": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "events",\n "observed"\n ],\n "type": "object"\n },\n "limitations": {\n "items": {\n "type": "string"\n },\n "type": "array"\n },\n "processes": {\n "additionalProperties": false,\n "properties": {\n "items": {\n "items": {\n "additionalProperties": false,\n "properties": {\n "name": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "pid": {\n "maximum": 9007199254740991,\n "minimum": 1,\n "type": "integer"\n },\n "service_name": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "type": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "pid",\n "type",\n "name",\n "service_name"\n ],\n "type": "object"\n },\n "type": "array"\n }\n },\n "required": [\n "items"\n ],\n "type": "object"\n },\n "timeline": {\n "additionalProperties": false,\n "default": {\n "events": [],\n "observed": 0\n },\n "properties": {\n "events": {\n "items": {\n "additionalProperties": false,\n "properties": {\n "argument_shapes": {\n "items": {\n "type": "string"\n },\n "type": "array"\n },\n "artifact_path": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "artifact_sha256": {\n "anyOf": [\n {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "capture_method": {\n "enum": [\n "api-wrapper",\n "event-emitter",\n "process-hook"\n ],\n "type": "string"\n },\n "channel": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "correlation_id": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ],\n "default": null\n },\n "direction": {\n "anyOf": [\n {\n "enum": [\n "renderer-to-main",\n "main-to-renderer",\n "main-to-utility",\n "utility-to-main"\n ],\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "error": {\n "type": "boolean"\n },\n "event": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "frame": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "kind": {\n "enum": [\n "main-handler-invocation",\n "main-event-invocation",\n "utility-process-fork",\n "utility-process-message",\n "ipc-main-to-renderer",\n "ipc-utility-to-main",\n "ipc-renderer-send",\n "ipc-renderer-invoke",\n "ipc-renderer-post-message",\n "app-lifecycle",\n "window-lifecycle",\n "web-contents-lifecycle",\n "navigation",\n "shell-attempt",\n "process-lifecycle",\n "permission",\n "popup-attempt",\n "download",\n "protocol",\n "preload",\n "native-addon",\n "updater",\n "error"\n ],\n "type": "string"\n },\n "phase": {\n "enum": [\n "attempted",\n "completed",\n "blocked",\n "failed",\n "observed"\n ],\n "type": "string"\n },\n "process_type": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "receiver": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "result_shape": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "sender": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "sequence": {\n "maximum": 9007199254740991,\n "minimum": 1,\n "type": "integer"\n },\n "source": {\n "type": "string"\n },\n "target": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "sequence",\n "correlation_id",\n "kind",\n "event",\n "phase",\n "channel",\n "direction",\n "sender",\n "receiver",\n "frame",\n "target",\n "argument_shapes",\n "result_shape",\n "process_type",\n "source",\n "capture_method",\n "artifact_path",\n "artifact_sha256",\n "error"\n ],\n "type": "object"\n },\n "type": "array"\n },\n "observed": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "events",\n "observed"\n ],\n "type": "object"\n },\n "windows": {\n "items": {\n "additionalProperties": false,\n "properties": {\n "destroyed": {\n "type": "boolean"\n },\n "title": {\n "type": "string"\n },\n "url": {\n "type": "string"\n },\n "visible": {\n "anyOf": [\n {\n "type": "boolean"\n },\n {\n "type": "null"\n }\n ]\n },\n "web_contents_id": {\n "type": "string"\n },\n "window_id": {\n "type": "string"\n }\n },\n "required": [\n "window_id",\n "web_contents_id",\n "url",\n "title",\n "visible",\n "destroyed"\n ],\n "type": "object"\n },\n "type": "array"\n }\n },\n "required": [\n "application",\n "actions",\n "windows",\n "processes",\n "ipc",\n "timeline",\n "coverage",\n "limitations"\n ],\n "type": "object"\n }\n },\n "required": [\n "result",\n "evidence_id",\n "evidence"\n ],\n "type": "object"\n },\n "requiresSession": false,\n "title": "Capture Electron Scenario"\n },\n {\n "analysisOperation": null,\n "annotations": {\n "destructiveHint": false,\n "idempotentHint": true,\n "openWorldHint": true,\n "readOnlyHint": false\n },\n "description": "List every eligible Node/Electron V8 Inspector target from an explicit literal-loopback endpoint. Node discovery file locations that cannot be verified are preserved as unresolved reported URLs; they do not prove filesystem identity. Listing does not attach to targets.",\n "effects": {\n "accessesNetwork": true,\n "changesUiState": false,\n "idempotent": true,\n "launchesProcess": false,\n "mayDiscardData": false,\n "mutatesSession": true,\n "mutatesTarget": false,\n "writesFilesystem": false\n },\n "inputSchema": {\n "$schema": "https://json-schema.org/draft/2020-12/schema",\n "additionalProperties": false,\n "examples": [\n {\n "inspector_endpoint": "http://127.0.0.1:9229"\n }\n ],\n "properties": {\n "inspector_endpoint": {\n "description": "Value for inspector endpoint.",\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "inspector_endpoint"\n ],\n "type": "object"\n },\n "kind": "runtime-provider",\n "name": "list_javascript_runtime_targets",\n "outputSchema": {\n "$defs": {\n "__schema0": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "number"\n },\n {\n "type": "boolean"\n },\n {\n "type": "null"\n },\n {\n "items": {\n "$ref": "#/$defs/__schema0"\n },\n "type": "array"\n },\n {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n }\n ]\n }\n },\n "$schema": "https://json-schema.org/draft/2020-12/schema",\n "additionalProperties": false,\n "properties": {\n "evidence": {\n "additionalProperties": false,\n "properties": {\n "analysis_profile": {\n "additionalProperties": false,\n "properties": {\n "digest": {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n },\n "parameters": {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n },\n "provider": {\n "additionalProperties": false,\n "properties": {\n "id": {\n "minLength": 1,\n "type": "string"\n },\n "name": {\n "minLength": 1,\n "type": "string"\n },\n "version": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "id",\n "name",\n "version"\n ],\n "type": "object"\n }\n },\n "required": [\n "provider",\n "parameters",\n "digest"\n ],\n "type": "object"\n },\n "authority": {\n "enum": [\n "shipped-artifact",\n "controlled-replay",\n "historical-reference",\n "external-service",\n "analyst-inference"\n ],\n "type": "string"\n },\n "confidence": {\n "enum": [\n "observed",\n "derived",\n "inferred"\n ],\n "type": "string"\n },\n "environment": {\n "anyOf": [\n {\n "additionalProperties": false,\n "properties": {\n "architecture": {\n "minLength": 1,\n "type": "string"\n },\n "id": {\n "minLength": 1,\n "type": "string"\n },\n "isolation": {\n "enum": [\n "none",\n "process",\n "container",\n "virtual-machine"\n ],\n "type": "string"\n },\n "platform": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "id",\n "platform",\n "architecture",\n "isolation"\n ],\n "type": "object"\n },\n {\n "type": "null"\n }\n ]\n },\n "evidence_id": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "evidence_links": {\n "items": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "type": "array"\n },\n "limitations": {\n "items": {\n "type": "string"\n },\n "type": "array"\n },\n "locations": {\n "items": {\n "oneOf": [\n {\n "additionalProperties": false,\n "properties": {\n "address": {\n "minLength": 1,\n "type": "string"\n },\n "kind": {\n "const": "address",\n "type": "string"\n }\n },\n "required": [\n "kind",\n "address"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "end": {\n "minLength": 1,\n "type": "string"\n },\n "kind": {\n "const": "address-range",\n "type": "string"\n },\n "start": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "kind",\n "start",\n "end"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "kind": {\n "const": "artifact-path",\n "type": "string"\n },\n "path": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "kind",\n "path"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "kind": {\n "const": "file-offset",\n "type": "string"\n },\n "offset": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "kind",\n "offset"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "end": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "kind": {\n "const": "file-offset-range",\n "type": "string"\n },\n "start": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "kind",\n "start",\n "end"\n ],\n "type": "object"\n }\n ]\n },\n "type": "array"\n },\n "normalized_result": {\n "$ref": "#/$defs/__schema0"\n },\n "operation": {\n "minLength": 1,\n "type": "string"\n },\n "parameters": {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n },\n "predicate_type": {\n "minLength": 1,\n "type": "string"\n },\n "provider": {\n "additionalProperties": false,\n "properties": {\n "id": {\n "minLength": 1,\n "type": "string"\n },\n "name": {\n "minLength": 1,\n "type": "string"\n },\n "version": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "id",\n "name",\n "version"\n ],\n "type": "object"\n },\n "raw_result": {\n "anyOf": [\n {\n "$ref": "#/$defs/__schema0"\n },\n {\n "type": "null"\n }\n ]\n },\n "subject": {\n "anyOf": [\n {\n "additionalProperties": false,\n "properties": {\n "architecture": {\n "anyOf": [\n {\n "enum": [\n "x86",\n "x86_64",\n "arm",\n "arm64"\n ],\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "digest": {\n "additionalProperties": false,\n "properties": {\n "sha256": {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n }\n },\n "required": [\n "sha256"\n ],\n "type": "object"\n },\n "format": {\n "enum": [\n "hopper",\n "analysis-database",\n "mach-o",\n "elf",\n "pe",\n "dos-mz",\n "dos-com",\n "zip",\n "ipa",\n "apk",\n "msix",\n "appx",\n "asar",\n "dmg",\n "pkg",\n "plist",\n "javascript",\n "source-map",\n "directory",\n "file",\n "unknown",\n "mach-o-universal",\n "javascript-bundle",\n "entitlements"\n ],\n "type": "string"\n },\n "local_path": {\n "type": "string"\n },\n "name": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "name",\n "digest",\n "format",\n "architecture",\n "local_path"\n ],\n "type": "object"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "evidence_id",\n "subject",\n "provider",\n "predicate_type",\n "operation",\n "parameters",\n "raw_result",\n "normalized_result",\n "confidence",\n "authority",\n "environment",\n "limitations",\n "locations",\n "evidence_links"\n ],\n "type": "object"\n },\n "evidence_id": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "result": {\n "additionalProperties": false,\n "properties": {\n "excluded": {\n "additionalProperties": false,\n "properties": {\n "unconnectable": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "unsupported_location": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "unsupported_location",\n "unconnectable"\n ],\n "type": "object"\n },\n "limitations": {\n "items": {\n "minLength": 1,\n "type": "string"\n },\n "type": "array"\n },\n "runtime": {\n "additionalProperties": false,\n "properties": {\n "product": {\n "minLength": 1,\n "type": "string"\n },\n "protocol_version": {\n "minLength": 1,\n "type": "string"\n },\n "v8_version": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "product",\n "protocol_version",\n "v8_version"\n ],\n "type": "object"\n },\n "targets": {\n "items": {\n "additionalProperties": false,\n "properties": {\n "attached": {\n "type": "boolean"\n },\n "location": {\n "anyOf": [\n {\n "oneOf": [\n {\n "additionalProperties": false,\n "properties": {\n "authority": {\n "const": "scope-fallback",\n "type": "string"\n },\n "file_path": {\n "minLength": 1,\n "type": "string"\n },\n "kind": {\n "const": "file",\n "type": "string"\n }\n },\n "required": [\n "kind",\n "file_path"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "kind": {\n "const": "url",\n "type": "string"\n },\n "origin": {\n "minLength": 1,\n "type": "string"\n },\n "sanitized_url": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "kind",\n "origin",\n "sanitized_url"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "kind": {\n "const": "builtin",\n "type": "string"\n },\n "specifier": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "kind",\n "specifier"\n ],\n "type": "object"\n }\n ]\n },\n {\n "additionalProperties": false,\n "properties": {\n "kind": {\n "const": "unresolved",\n "type": "string"\n },\n "reason": {\n "const": "unverifiable-file-location",\n "type": "string"\n },\n "reported_url": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "kind",\n "reported_url",\n "reason"\n ],\n "type": "object"\n }\n ]\n },\n "protocol_type": {\n "minLength": 1,\n "type": "string"\n },\n "target_id": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "target_id",\n "protocol_type",\n "attached",\n "location"\n ],\n "type": "object"\n },\n "type": "array"\n }\n },\n "required": [\n "runtime",\n "targets",\n "excluded",\n "limitations"\n ],\n "type": "object"\n }\n },\n "required": [\n "result",\n "evidence_id",\n "evidence"\n ],\n "type": "object"\n },\n "requiresSession": false,\n "title": "List Javascript Runtime Targets"\n },\n {\n "analysisOperation": null,\n "annotations": {\n "destructiveHint": false,\n "idempotentHint": true,\n "openWorldHint": true,\n "readOnlyHint": false\n },\n "description": "Attach passively to one Node/Electron V8 Inspector target by supplying its loopback Inspector endpoint and target ID. The provider rechecks target presence and attachability; a Node discovery file location may remain unresolved. Loaded script locations are validated independently from Debugger.scriptParsed. Captures script and Runtime execution-context metadata. REA never evaluates, pauses, resumes, reads source, or instruments the target; require/import edges, EventEmitter activity, and Electron IPC remain explicit unknowns. Reconcile the result with static Application Graph Evidence using reconcile_javascript_runtime. The selected endpoint exposes every target it serves to this tool.",\n "effects": {\n "accessesNetwork": true,\n "changesUiState": false,\n "idempotent": true,\n "launchesProcess": false,\n "mayDiscardData": false,\n "mutatesSession": true,\n "mutatesTarget": false,\n "writesFilesystem": false\n },\n "inputSchema": {\n "$schema": "https://json-schema.org/draft/2020-12/schema",\n "additionalProperties": false,\n "examples": [\n {\n "inspector_endpoint": "http://127.0.0.1:9229",\n "target_id": "TARGET_ID_FROM_LIST_JAVASCRIPT_RUNTIME_TARGETS"\n }\n ],\n "properties": {\n "inspector_endpoint": {\n "description": "Value for inspector endpoint.",\n "minLength": 1,\n "type": "string"\n },\n "observation_ms": {\n "default": 100,\n "description": "Value for observation ms.",\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "runtime_kind": {\n "description": "Value for runtime kind.",\n "enum": [\n "node",\n "electron-main",\n "electron-preload",\n "electron-renderer"\n ],\n "type": "string"\n },\n "target_id": {\n "description": "Exact CDP target identifier selected from the endpoint\'s target listing.",\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "inspector_endpoint",\n "target_id"\n ],\n "type": "object"\n },\n "kind": "runtime-provider",\n "name": "observe_javascript_runtime",\n "outputSchema": {\n "$defs": {\n "__schema0": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "number"\n },\n {\n "type": "boolean"\n },\n {\n "type": "null"\n },\n {\n "items": {\n "$ref": "#/$defs/__schema0"\n },\n "type": "array"\n },\n {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n }\n ]\n }\n },\n "$schema": "https://json-schema.org/draft/2020-12/schema",\n "additionalProperties": false,\n "properties": {\n "evidence": {\n "additionalProperties": false,\n "properties": {\n "analysis_profile": {\n "additionalProperties": false,\n "properties": {\n "digest": {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n },\n "parameters": {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n },\n "provider": {\n "additionalProperties": false,\n "properties": {\n "id": {\n "minLength": 1,\n "type": "string"\n },\n "name": {\n "minLength": 1,\n "type": "string"\n },\n "version": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "id",\n "name",\n "version"\n ],\n "type": "object"\n }\n },\n "required": [\n "provider",\n "parameters",\n "digest"\n ],\n "type": "object"\n },\n "authority": {\n "enum": [\n "shipped-artifact",\n "controlled-replay",\n "historical-reference",\n "external-service",\n "analyst-inference"\n ],\n "type": "string"\n },\n "confidence": {\n "enum": [\n "observed",\n "derived",\n "inferred"\n ],\n "type": "string"\n },\n "environment": {\n "anyOf": [\n {\n "additionalProperties": false,\n "properties": {\n "architecture": {\n "minLength": 1,\n "type": "string"\n },\n "id": {\n "minLength": 1,\n "type": "string"\n },\n "isolation": {\n "enum": [\n "none",\n "process",\n "container",\n "virtual-machine"\n ],\n "type": "string"\n },\n "platform": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "id",\n "platform",\n "architecture",\n "isolation"\n ],\n "type": "object"\n },\n {\n "type": "null"\n }\n ]\n },\n "evidence_id": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "evidence_links": {\n "items": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "type": "array"\n },\n "limitations": {\n "items": {\n "type": "string"\n },\n "type": "array"\n },\n "locations": {\n "items": {\n "oneOf": [\n {\n "additionalProperties": false,\n "properties": {\n "address": {\n "minLength": 1,\n "type": "string"\n },\n "kind": {\n "const": "address",\n "type": "string"\n }\n },\n "required": [\n "kind",\n "address"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "end": {\n "minLength": 1,\n "type": "string"\n },\n "kind": {\n "const": "address-range",\n "type": "string"\n },\n "start": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "kind",\n "start",\n "end"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "kind": {\n "const": "artifact-path",\n "type": "string"\n },\n "path": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "kind",\n "path"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "kind": {\n "const": "file-offset",\n "type": "string"\n },\n "offset": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "kind",\n "offset"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "end": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "kind": {\n "const": "file-offset-range",\n "type": "string"\n },\n "start": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "kind",\n "start",\n "end"\n ],\n "type": "object"\n }\n ]\n },\n "type": "array"\n },\n "normalized_result": {\n "$ref": "#/$defs/__schema0"\n },\n "operation": {\n "minLength": 1,\n "type": "string"\n },\n "parameters": {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n },\n "predicate_type": {\n "minLength": 1,\n "type": "string"\n },\n "provider": {\n "additionalProperties": false,\n "properties": {\n "id": {\n "minLength": 1,\n "type": "string"\n },\n "name": {\n "minLength": 1,\n "type": "string"\n },\n "version": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "id",\n "name",\n "version"\n ],\n "type": "object"\n },\n "raw_result": {\n "anyOf": [\n {\n "$ref": "#/$defs/__schema0"\n },\n {\n "type": "null"\n }\n ]\n },\n "subject": {\n "anyOf": [\n {\n "additionalProperties": false,\n "properties": {\n "architecture": {\n "anyOf": [\n {\n "enum": [\n "x86",\n "x86_64",\n "arm",\n "arm64"\n ],\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "digest": {\n "additionalProperties": false,\n "properties": {\n "sha256": {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n }\n },\n "required": [\n "sha256"\n ],\n "type": "object"\n },\n "format": {\n "enum": [\n "hopper",\n "analysis-database",\n "mach-o",\n "elf",\n "pe",\n "dos-mz",\n "dos-com",\n "zip",\n "ipa",\n "apk",\n "msix",\n "appx",\n "asar",\n "dmg",\n "pkg",\n "plist",\n "javascript",\n "source-map",\n "directory",\n "file",\n "unknown",\n "mach-o-universal",\n "javascript-bundle",\n "entitlements"\n ],\n "type": "string"\n },\n "local_path": {\n "type": "string"\n },\n "name": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "name",\n "digest",\n "format",\n "architecture",\n "local_path"\n ],\n "type": "object"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "evidence_id",\n "subject",\n "provider",\n "predicate_type",\n "operation",\n "parameters",\n "raw_result",\n "normalized_result",\n "confidence",\n "authority",\n "environment",\n "limitations",\n "locations",\n "evidence_links"\n ],\n "type": "object"\n },\n "evidence_id": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "result": {\n "additionalProperties": false,\n "properties": {\n "capture": {\n "additionalProperties": false,\n "properties": {\n "events_dropped": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "events_observed": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "events_retained": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "metadata_bytes_retained": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "observation_ms": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "truncated": {\n "type": "boolean"\n },\n "truncation_reasons": {\n "items": {\n "minLength": 1,\n "type": "string"\n },\n "type": "array"\n }\n },\n "required": [\n "observation_ms",\n "events_observed",\n "events_retained",\n "events_dropped",\n "metadata_bytes_retained",\n "truncated",\n "truncation_reasons"\n ],\n "type": "object"\n },\n "directly_observed": {\n "items": {\n "minLength": 1,\n "type": "string"\n },\n "type": "array"\n },\n "execution_contexts": {\n "items": {\n "additionalProperties": false,\n "properties": {\n "context_key": {\n "minLength": 1,\n "type": "string"\n },\n "name": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "origin": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "state": {\n "enum": [\n "created",\n "destroyed",\n "cleared"\n ],\n "type": "string"\n }\n },\n "required": [\n "context_key",\n "state",\n "name",\n "origin"\n ],\n "type": "object"\n },\n "type": "array"\n },\n "limitations": {\n "items": {\n "minLength": 1,\n "type": "string"\n },\n "type": "array"\n },\n "runtime": {\n "additionalProperties": false,\n "properties": {\n "product": {\n "minLength": 1,\n "type": "string"\n },\n "protocol_version": {\n "minLength": 1,\n "type": "string"\n },\n "v8_version": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "product",\n "protocol_version",\n "v8_version"\n ],\n "type": "object"\n },\n "scripts": {\n "additionalProperties": false,\n "properties": {\n "excluded": {\n "additionalProperties": false,\n "properties": {\n "invalid_protocol_value": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "unsupported_location": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "unsupported_location",\n "invalid_protocol_value"\n ],\n "type": "object"\n },\n "items": {\n "items": {\n "additionalProperties": false,\n "properties": {\n "cdp_hash": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "execution_context_key": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "is_module": {\n "type": "boolean"\n },\n "length": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "location": {\n "oneOf": [\n {\n "additionalProperties": false,\n "properties": {\n "authority": {\n "const": "scope-fallback",\n "type": "string"\n },\n "file_path": {\n "minLength": 1,\n "type": "string"\n },\n "kind": {\n "const": "file",\n "type": "string"\n }\n },\n "required": [\n "kind",\n "file_path"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "kind": {\n "const": "url",\n "type": "string"\n },\n "origin": {\n "minLength": 1,\n "type": "string"\n },\n "sanitized_url": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "kind",\n "origin",\n "sanitized_url"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "kind": {\n "const": "builtin",\n "type": "string"\n },\n "specifier": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "kind",\n "specifier"\n ],\n "type": "object"\n }\n ]\n },\n "script_key": {\n "pattern": "^v8_script_[a-f0-9]{64}$",\n "type": "string"\n },\n "status": {\n "const": "observed-loaded",\n "type": "string"\n }\n },\n "required": [\n "script_key",\n "location",\n "execution_context_key",\n "cdp_hash",\n "length",\n "is_module",\n "status"\n ],\n "type": "object"\n },\n "type": "array"\n },\n "observed_total": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "items",\n "observed_total",\n "excluded"\n ],\n "type": "object"\n },\n "target": {\n "additionalProperties": false,\n "properties": {\n "attached": {\n "type": "boolean"\n },\n "location": {\n "anyOf": [\n {\n "oneOf": [\n {\n "additionalProperties": false,\n "properties": {\n "authority": {\n "const": "scope-fallback",\n "type": "string"\n },\n "file_path": {\n "minLength": 1,\n "type": "string"\n },\n "kind": {\n "const": "file",\n "type": "string"\n }\n },\n "required": [\n "kind",\n "file_path"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "kind": {\n "const": "url",\n "type": "string"\n },\n "origin": {\n "minLength": 1,\n "type": "string"\n },\n "sanitized_url": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "kind",\n "origin",\n "sanitized_url"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "kind": {\n "const": "builtin",\n "type": "string"\n },\n "specifier": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "kind",\n "specifier"\n ],\n "type": "object"\n }\n ]\n },\n {\n "additionalProperties": false,\n "properties": {\n "kind": {\n "const": "unresolved",\n "type": "string"\n },\n "reason": {\n "const": "unverifiable-file-location",\n "type": "string"\n },\n "reported_url": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "kind",\n "reported_url",\n "reason"\n ],\n "type": "object"\n }\n ]\n },\n "protocol_type": {\n "minLength": 1,\n "type": "string"\n },\n "runtime_kind": {\n "anyOf": [\n {\n "enum": [\n "node",\n "electron-main",\n "electron-preload",\n "electron-renderer"\n ],\n "type": "string"\n },\n {\n "const": "unknown",\n "type": "string"\n }\n ]\n },\n "runtime_kind_authority": {\n "enum": [\n "caller-declared-unverified",\n "not-declared"\n ],\n "type": "string"\n },\n "target_id": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "target_id",\n "protocol_type",\n "attached",\n "location",\n "runtime_kind",\n "runtime_kind_authority"\n ],\n "type": "object"\n },\n "unavailable_without_instrumentation": {\n "items": {\n "minLength": 1,\n "type": "string"\n },\n "type": "array"\n },\n "unknowns": {\n "items": {\n "minLength": 1,\n "type": "string"\n },\n "type": "array"\n }\n },\n "required": [\n "runtime",\n "target",\n "capture",\n "scripts",\n "execution_contexts",\n "directly_observed",\n "unavailable_without_instrumentation",\n "unknowns",\n "limitations"\n ],\n "type": "object"\n }\n },\n "required": [\n "result",\n "evidence_id",\n "evidence"\n ],\n "type": "object"\n },\n "requiresSession": false,\n "title": "Observe Javascript Runtime"\n },\n {\n "analysisOperation": null,\n "annotations": {\n "destructiveHint": false,\n "idempotentHint": true,\n "openWorldHint": false,\n "readOnlyHint": false\n },\n "description": "Trace a typed literal seed through every reachable part of an authenticated JavaScript Application Graph supplied as inline Evidence or exact same-session retained references. Original static, native, passive-runtime, inferred, and unknown authorities remain distinct; native addon handoffs never open a provider or execute the application.",\n "effects": {\n "accessesNetwork": false,\n "changesUiState": false,\n "idempotent": true,\n "launchesProcess": false,\n "mayDiscardData": false,\n "mutatesSession": true,\n "mutatesTarget": false,\n "writesFilesystem": false\n },\n "inputSchema": {\n "$defs": {\n "__schema0": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "number"\n },\n {\n "type": "boolean"\n },\n {\n "type": "null"\n },\n {\n "items": {\n "$ref": "#/$defs/__schema0"\n },\n "type": "array"\n },\n {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n }\n ]\n }\n },\n "$schema": "https://json-schema.org/draft/2020-12/schema",\n "additionalProperties": false,\n "examples": [\n {\n "application": {\n "authority": "shipped-artifact",\n "confidence": "derived",\n "environment": null,\n "evidence_id": "ev_a4ae2c7b5c501fb6dff695b168f35a6dd157fa957410910684f3a4ce4c8b5d54",\n "evidence_links": [],\n "limitations": [],\n "locations": [],\n "normalized_result": {\n "format": "directory",\n "graph": {\n "coverage": {\n "limits": [],\n "omitted_count": 0,\n "status": "complete",\n "truncated": false\n },\n "edges": [],\n "graph_id": "jag_ab15669664efc0a86bb49c9c60241913cce6980dc2293fbeef6d9c862ca01d9d",\n "limitations": [],\n "nodes": [\n {\n "identity": {\n "sha256": "c4c0d760a4c84f0e182de99f6ef89ef10831f8170e486c4d4bd934924151ba64",\n "stability": "global-exact",\n "strategy": "content-digest"\n },\n "kind": "javascript-asset",\n "node_id": "jag_node_3c82da5492d90eb5b0bee41c1a994d88b7ba98c0b4955270d70e57a76e224c2e",\n "observations": [\n {\n "evidence": {\n "artifact": {\n "artifact_id": "art_c4c0d760a4c84f0e182de99f6ef89ef10831f8170e486c4d4bd934924151ba64",\n "available": true,\n "sha256": "c4c0d760a4c84f0e182de99f6ef89ef10831f8170e486c4d4bd934924151ba64"\n },\n "authority": "artifact-bytes",\n "confidence": "exact",\n "coverage": {\n "limits": [],\n "omitted_count": 0,\n "status": "complete",\n "truncated": false\n },\n "evidence_ids": [],\n "extractor": {\n "executable_sha256": null,\n "name": "rea-javascript-application",\n "operation": "inventory-relevant-file",\n "version": "1"\n },\n "limitations": [],\n "location": {\n "available": true,\n "value": {\n "kind": "artifact-path",\n "path": "renderer.js"\n }\n },\n "state": "observed"\n },\n "identifier_strategy": {\n "stability": "observation-exact",\n "strategy": "semantic-content-sha256"\n },\n "label": "renderer.js",\n "observation_id": "jag_observation_20b4d076ce370db14ae2b477915624c62e0c4a0c9e56803a2c5cb4fa60c16230",\n "properties": {\n "bytes": 29,\n "path": "renderer.js"\n }\n }\n ]\n }\n ],\n "root_node_ids": [\n "jag_node_3c82da5492d90eb5b0bee41c1a994d88b7ba98c0b4955270d70e57a76e224c2e"\n ],\n "schema": "JavaScriptApplicationGraph"\n },\n "input_path": "/Applications/Example.app/Contents/Resources/app",\n "inventory_graph_sha256": "3333333333333333333333333333333333333333333333333333333333333333",\n "inventory_manifest_id": "agm_2222222222222222222222222222222222222222222222222222222222222222",\n "limitations": [],\n "root_artifact_sha256": "1111111111111111111111111111111111111111111111111111111111111111",\n "semantic_graph": {\n "application_graph_id": "jag_ab15669664efc0a86bb49c9c60241913cce6980dc2293fbeef6d9c862ca01d9d",\n "coverage": {\n "families": [\n {\n "family": "boundary",\n "omitted_relations": 0,\n "retained_relations": 0,\n "status": "unknown",\n "unknown_ids": []\n },\n {\n "family": "call-flow",\n "omitted_relations": 0,\n "retained_relations": 0,\n "status": "unknown",\n "unknown_ids": []\n },\n {\n "family": "child-process",\n "omitted_relations": 0,\n "retained_relations": 0,\n "status": "unknown",\n "unknown_ids": []\n },\n {\n "family": "closure",\n "omitted_relations": 0,\n "retained_relations": 0,\n "status": "unknown",\n "unknown_ids": []\n },\n {\n "family": "configuration",\n "omitted_relations": 0,\n "retained_relations": 0,\n "status": "unknown",\n "unknown_ids": []\n },\n {\n "family": "data-flow",\n "omitted_relations": 0,\n "retained_relations": 0,\n "status": "unknown",\n "unknown_ids": []\n },\n {\n "family": "event",\n "omitted_relations": 0,\n "retained_relations": 0,\n "status": "unknown",\n "unknown_ids": []\n },\n {\n "family": "object-flow",\n "omitted_relations": 0,\n "retained_relations": 0,\n "status": "unknown",\n "unknown_ids": []\n },\n {\n "family": "promise-ownership",\n "omitted_relations": 0,\n "retained_relations": 0,\n "status": "unknown",\n "unknown_ids": []\n },\n {\n "family": "request",\n "omitted_relations": 0,\n "retained_relations": 0,\n "status": "unknown",\n "unknown_ids": []\n },\n {\n "family": "resource-lifecycle",\n "omitted_relations": 0,\n "retained_relations": 0,\n "status": "unknown",\n "unknown_ids": []\n },\n {\n "family": "timer",\n "omitted_relations": 0,\n "retained_relations": 0,\n "status": "unknown",\n "unknown_ids": []\n }\n ],\n "limits": [],\n "omitted_nodes": 0,\n "omitted_relations": 0,\n "status": "unknown",\n "truncated": false\n },\n "fingerprints": [],\n "graph_id": "jsrg_08c925d2bf4ef56d770e0e67901d5bdfb610744cf001a50d36c9bb6dcb195508",\n "limitations": [\n "Semantic relations are unavailable in this minimal example."\n ],\n "nodes": [\n {\n "application_node_ids": [\n "jag_node_3c82da5492d90eb5b0bee41c1a994d88b7ba98c0b4955270d70e57a76e224c2e"\n ],\n "evidence": {\n "artifact": {\n "artifact_id": "art_c4c0d760a4c84f0e182de99f6ef89ef10831f8170e486c4d4bd934924151ba64",\n "available": true,\n "sha256": "c4c0d760a4c84f0e182de99f6ef89ef10831f8170e486c4d4bd934924151ba64"\n },\n "authority": "artifact-bytes",\n "confidence": "exact",\n "coverage": {\n "limits": [],\n "omitted_count": 0,\n "status": "complete",\n "truncated": false\n },\n "evidence_ids": [],\n "extractor": {\n "executable_sha256": null,\n "name": "rea-javascript-application",\n "operation": "inventory-relevant-file",\n "version": "1"\n },\n "limitations": [],\n "location": {\n "available": true,\n "value": {\n "kind": "artifact-path",\n "path": "renderer.js"\n }\n },\n "state": "observed"\n },\n "function_node_id": null,\n "identifier_strategy": {\n "stability": "artifact-version",\n "strategy": "semantic-content-sha256"\n },\n "identity": {\n "artifact_sha256": "1111111111111111111111111111111111111111111111111111111111111111",\n "module_path": "renderer.js",\n "role_key": "example-module",\n "source_range": null\n },\n "kind": "module",\n "label": "renderer.js",\n "node_id": "jsrg_node_9476602f1f74433a2bd3dadb040a25734d203b8f831b31a8d96f7efdfc5cd66a",\n "properties": {}\n }\n ],\n "relations": [],\n "root_artifact_sha256": "1111111111111111111111111111111111111111111111111111111111111111",\n "root_node_ids": [\n "jsrg_node_9476602f1f74433a2bd3dadb040a25734d203b8f831b31a8d96f7efdfc5cd66a"\n ],\n "schema": "JavaScriptSemanticRelationGraph",\n "unknowns": []\n },\n "statistics": {\n "findings": 0,\n "invalid_utf8_files": 0,\n "modules": 0,\n "nested_asar_containers": 0,\n "parse_failures": 0,\n "parsed_javascript_files": 1,\n "relevant_files": 1,\n "text_bytes_read": 29,\n "truncated_scopes": 0,\n "visited_ast_nodes": 1\n },\n "summary": {\n "browser_windows": 0,\n "context_bridge_apis": 0,\n "explicit_web_preferences": 0,\n "exposed_api_members": 0,\n "ipc": {\n "ambiguous_renderer_transmissions": 0,\n "dynamic_channel_operations": 0,\n "literal_channels": 0,\n "main_handlers": 0,\n "operations": 0,\n "paired_renderer_transmissions": 0,\n "renderer_listeners": 0,\n "renderer_transmissions": 0,\n "unpaired_literal_renderer_transmissions": 0\n },\n "native_addon_bindings": 0,\n "preload_entrypoints": 0,\n "resolved_native_addon_bindings": 0,\n "resolved_utility_entrypoints": 0,\n "sender_validation_observations": 0,\n "utility_processes": 0\n }\n },\n "operation": "analyze_javascript_application",\n "parameters": {},\n "predicate_type": "rea.javascript-application-analysis",\n "provider": {\n "id": "rea-javascript-application",\n "name": "REA JavaScript application analyzer",\n "version": "1"\n },\n "raw_result": null,\n "subject": {\n "architecture": null,\n "digest": {\n "sha256": "1111111111111111111111111111111111111111111111111111111111111111"\n },\n "format": "directory",\n "local_path": "/Applications/Example.app/Contents/Resources/app",\n "name": "app"\n }\n },\n "direction": "both",\n "seed": {\n "case_sensitive": false,\n "kind": "module",\n "match": "exact",\n "value": "renderer.js"\n }\n },\n {\n "application": {\n "evidence_id": "ev_a4ae2c7b5c501fb6dff695b168f35a6dd157fa957410910684f3a4ce4c8b5d54",\n "kind": "retained-evidence"\n },\n "direction": "both",\n "seed": {\n "case_sensitive": false,\n "kind": "module",\n "match": "exact",\n "value": "renderer.js"\n }\n }\n ],\n "properties": {\n "application": {\n "anyOf": [\n {\n "additionalProperties": false,\n "properties": {\n "analysis_profile": {\n "description": "Value for analysis profile.",\n "properties": {\n "digest": {\n "description": "Value for digest.",\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n },\n "parameters": {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "description": "Value for parameters.",\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n },\n "provider": {\n "description": "Value for provider.",\n "properties": {\n "id": {\n "description": "Value for id.",\n "minLength": 1,\n "type": "string"\n },\n "name": {\n "description": "Exact name used by this operation.",\n "minLength": 1,\n "type": "string"\n },\n "version": {\n "description": "Value for version.",\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "id",\n "name",\n "version"\n ],\n "type": "object"\n }\n },\n "required": [\n "provider",\n "parameters",\n "digest"\n ],\n "type": "object"\n },\n "authority": {\n "description": "Value for authority.",\n "enum": [\n "shipped-artifact",\n "controlled-replay",\n "historical-reference",\n "external-service",\n "analyst-inference"\n ],\n "type": "string"\n },\n "confidence": {\n "description": "Value for confidence.",\n "enum": [\n "observed",\n "derived",\n "inferred"\n ],\n "type": "string"\n },\n "environment": {\n "anyOf": [\n {\n "properties": {\n "architecture": {\n "description": "Value for architecture.",\n "minLength": 1,\n "type": "string"\n },\n "id": {\n "description": "Value for id.",\n "minLength": 1,\n "type": "string"\n },\n "isolation": {\n "description": "Value for isolation.",\n "enum": [\n "none",\n "process",\n "container",\n "virtual-machine"\n ],\n "type": "string"\n },\n "platform": {\n "description": "Value for platform.",\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "id",\n "platform",\n "architecture",\n "isolation"\n ],\n "type": "object"\n },\n {\n "type": "null"\n }\n ],\n "description": "Value for environment."\n },\n "evidence_id": {\n "description": "Stable identifier of the recorded Evidence observation.",\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "evidence_links": {\n "description": "Value for evidence links.",\n "items": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "type": "array"\n },\n "limitations": {\n "description": "Value for limitations.",\n "items": {\n "type": "string"\n },\n "type": "array"\n },\n "locations": {\n "description": "Value for locations.",\n "items": {\n "oneOf": [\n {\n "properties": {\n "address": {\n "description": "Value for address.",\n "minLength": 1,\n "type": "string"\n },\n "kind": {\n "const": "address",\n "description": "Value for kind.",\n "type": "string"\n }\n },\n "required": [\n "kind",\n "address"\n ],\n "type": "object"\n },\n {\n "properties": {\n "end": {\n "description": "Value for end.",\n "minLength": 1,\n "type": "string"\n },\n "kind": {\n "const": "address-range",\n "description": "Value for kind.",\n "type": "string"\n },\n "start": {\n "description": "Value for start.",\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "kind",\n "start",\n "end"\n ],\n "type": "object"\n },\n {\n "properties": {\n "kind": {\n "const": "artifact-path",\n "description": "Value for kind.",\n "type": "string"\n },\n "path": {\n "description": "Local filesystem path used by this operation.",\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "kind",\n "path"\n ],\n "type": "object"\n },\n {\n "properties": {\n "kind": {\n "const": "file-offset",\n "description": "Value for kind.",\n "type": "string"\n },\n "offset": {\n "description": "Value for offset.",\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "kind",\n "offset"\n ],\n "type": "object"\n },\n {\n "properties": {\n "end": {\n "description": "Value for end.",\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "kind": {\n "const": "file-offset-range",\n "description": "Value for kind.",\n "type": "string"\n },\n "start": {\n "description": "Value for start.",\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "kind",\n "start",\n "end"\n ],\n "type": "object"\n }\n ]\n },\n "type": "array"\n },\n "normalized_result": {\n "$ref": "#/$defs/__schema0",\n "description": "Value for normalized result."\n },\n "operation": {\n "description": "Value for operation.",\n "minLength": 1,\n "type": "string"\n },\n "parameters": {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "description": "Value for parameters.",\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n },\n "predicate_type": {\n "description": "Value for predicate type.",\n "minLength": 1,\n "type": "string"\n },\n "provider": {\n "description": "Value for provider.",\n "properties": {\n "id": {\n "description": "Value for id.",\n "minLength": 1,\n "type": "string"\n },\n "name": {\n "description": "Exact name used by this operation.",\n "minLength": 1,\n "type": "string"\n },\n "version": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ],\n "description": "Value for version."\n }\n },\n "required": [\n "id",\n "name",\n "version"\n ],\n "type": "object"\n },\n "raw_result": {\n "anyOf": [\n {\n "$ref": "#/$defs/__schema0"\n },\n {\n "type": "null"\n }\n ],\n "description": "Value for raw result."\n },\n "subject": {\n "anyOf": [\n {\n "properties": {\n "architecture": {\n "anyOf": [\n {\n "enum": [\n "x86",\n "x86_64",\n "arm",\n "arm64"\n ],\n "type": "string"\n },\n {\n "type": "null"\n }\n ],\n "description": "Value for architecture."\n },\n "digest": {\n "description": "Value for digest.",\n "properties": {\n "sha256": {\n "description": "Value for sha256.",\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n }\n },\n "required": [\n "sha256"\n ],\n "type": "object"\n },\n "format": {\n "description": "Declared input artifact format.",\n "enum": [\n "hopper",\n "analysis-database",\n "mach-o",\n "elf",\n "pe",\n "dos-mz",\n "dos-com",\n "zip",\n "ipa",\n "apk",\n "msix",\n "appx",\n "asar",\n "dmg",\n "pkg",\n "plist",\n "javascript",\n "source-map",\n "directory",\n "file",\n "unknown",\n "mach-o-universal",\n "javascript-bundle",\n "entitlements"\n ],\n "type": "string"\n },\n "local_path": {\n "description": "Local filesystem path for local.",\n "type": "string"\n },\n "name": {\n "description": "Exact name used by this operation.",\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "name",\n "digest",\n "format",\n "architecture",\n "local_path"\n ],\n "type": "object"\n },\n {\n "type": "null"\n }\n ],\n "description": "Value for subject."\n }\n },\n "required": [\n "evidence_id",\n "subject",\n "provider",\n "predicate_type",\n "operation",\n "parameters",\n "raw_result",\n "normalized_result",\n "confidence",\n "authority",\n "environment",\n "limitations",\n "locations",\n "evidence_links"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "evidence_id": {\n "description": "Stable identifier of the recorded Evidence observation.",\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "kind": {\n "const": "retained-evidence",\n "description": "Value for kind.",\n "type": "string"\n }\n },\n "required": [\n "kind",\n "evidence_id"\n ],\n "type": "object"\n }\n ],\n "description": "Value for application."\n },\n "direction": {\n "default": "both",\n "description": "Direction in which to traverse or compare relationships.",\n "enum": [\n "outgoing",\n "incoming",\n "both"\n ],\n "type": "string"\n },\n "native_observations": {\n "default": [],\n "description": "Value for native observations.",\n "items": {\n "additionalProperties": false,\n "properties": {\n "analysis_profile": {\n "description": "Value for analysis profile.",\n "properties": {\n "digest": {\n "description": "Value for digest.",\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n },\n "parameters": {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "description": "Value for parameters.",\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n },\n "provider": {\n "description": "Value for provider.",\n "properties": {\n "id": {\n "description": "Value for id.",\n "minLength": 1,\n "type": "string"\n },\n "name": {\n "description": "Exact name used by this operation.",\n "minLength": 1,\n "type": "string"\n },\n "version": {\n "description": "Value for version.",\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "id",\n "name",\n "version"\n ],\n "type": "object"\n }\n },\n "required": [\n "provider",\n "parameters",\n "digest"\n ],\n "type": "object"\n },\n "authority": {\n "description": "Value for authority.",\n "enum": [\n "shipped-artifact",\n "controlled-replay",\n "historical-reference",\n "external-service",\n "analyst-inference"\n ],\n "type": "string"\n },\n "confidence": {\n "description": "Value for confidence.",\n "enum": [\n "observed",\n "derived",\n "inferred"\n ],\n "type": "string"\n },\n "environment": {\n "anyOf": [\n {\n "properties": {\n "architecture": {\n "description": "Value for architecture.",\n "minLength": 1,\n "type": "string"\n },\n "id": {\n "description": "Value for id.",\n "minLength": 1,\n "type": "string"\n },\n "isolation": {\n "description": "Value for isolation.",\n "enum": [\n "none",\n "process",\n "container",\n "virtual-machine"\n ],\n "type": "string"\n },\n "platform": {\n "description": "Value for platform.",\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "id",\n "platform",\n "architecture",\n "isolation"\n ],\n "type": "object"\n },\n {\n "type": "null"\n }\n ],\n "description": "Value for environment."\n },\n "evidence_id": {\n "description": "Stable identifier of the recorded Evidence observation.",\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "evidence_links": {\n "description": "Value for evidence links.",\n "items": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "type": "array"\n },\n "limitations": {\n "description": "Value for limitations.",\n "items": {\n "type": "string"\n },\n "type": "array"\n },\n "locations": {\n "description": "Value for locations.",\n "items": {\n "oneOf": [\n {\n "properties": {\n "address": {\n "description": "Value for address.",\n "minLength": 1,\n "type": "string"\n },\n "kind": {\n "const": "address",\n "description": "Value for kind.",\n "type": "string"\n }\n },\n "required": [\n "kind",\n "address"\n ],\n "type": "object"\n },\n {\n "properties": {\n "end": {\n "description": "Value for end.",\n "minLength": 1,\n "type": "string"\n },\n "kind": {\n "const": "address-range",\n "description": "Value for kind.",\n "type": "string"\n },\n "start": {\n "description": "Value for start.",\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "kind",\n "start",\n "end"\n ],\n "type": "object"\n },\n {\n "properties": {\n "kind": {\n "const": "artifact-path",\n "description": "Value for kind.",\n "type": "string"\n },\n "path": {\n "description": "Local filesystem path used by this operation.",\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "kind",\n "path"\n ],\n "type": "object"\n },\n {\n "properties": {\n "kind": {\n "const": "file-offset",\n "description": "Value for kind.",\n "type": "string"\n },\n "offset": {\n "description": "Value for offset.",\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "kind",\n "offset"\n ],\n "type": "object"\n },\n {\n "properties": {\n "end": {\n "description": "Value for end.",\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "kind": {\n "const": "file-offset-range",\n "description": "Value for kind.",\n "type": "string"\n },\n "start": {\n "description": "Value for start.",\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "kind",\n "start",\n "end"\n ],\n "type": "object"\n }\n ]\n },\n "type": "array"\n },\n "normalized_result": {\n "$ref": "#/$defs/__schema0",\n "description": "Value for normalized result."\n },\n "operation": {\n "description": "Value for operation.",\n "minLength": 1,\n "type": "string"\n },\n "parameters": {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "description": "Value for parameters.",\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n },\n "predicate_type": {\n "description": "Value for predicate type.",\n "minLength": 1,\n "type": "string"\n },\n "provider": {\n "description": "Value for provider.",\n "properties": {\n "id": {\n "description": "Value for id.",\n "minLength": 1,\n "type": "string"\n },\n "name": {\n "description": "Exact name used by this operation.",\n "minLength": 1,\n "type": "string"\n },\n "version": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ],\n "description": "Value for version."\n }\n },\n "required": [\n "id",\n "name",\n "version"\n ],\n "type": "object"\n },\n "raw_result": {\n "anyOf": [\n {\n "$ref": "#/$defs/__schema0"\n },\n {\n "type": "null"\n }\n ],\n "description": "Value for raw result."\n },\n "subject": {\n "anyOf": [\n {\n "properties": {\n "architecture": {\n "anyOf": [\n {\n "enum": [\n "x86",\n "x86_64",\n "arm",\n "arm64"\n ],\n "type": "string"\n },\n {\n "type": "null"\n }\n ],\n "description": "Value for architecture."\n },\n "digest": {\n "description": "Value for digest.",\n "properties": {\n "sha256": {\n "description": "Value for sha256.",\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n }\n },\n "required": [\n "sha256"\n ],\n "type": "object"\n },\n "format": {\n "description": "Declared input artifact format.",\n "enum": [\n "hopper",\n "analysis-database",\n "mach-o",\n "elf",\n "pe",\n "dos-mz",\n "dos-com",\n "zip",\n "ipa",\n "apk",\n "msix",\n "appx",\n "asar",\n "dmg",\n "pkg",\n "plist",\n "javascript",\n "source-map",\n "directory",\n "file",\n "unknown",\n "mach-o-universal",\n "javascript-bundle",\n "entitlements"\n ],\n "type": "string"\n },\n "local_path": {\n "description": "Local filesystem path for local.",\n "type": "string"\n },\n "name": {\n "description": "Exact name used by this operation.",\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "name",\n "digest",\n "format",\n "architecture",\n "local_path"\n ],\n "type": "object"\n },\n {\n "type": "null"\n }\n ],\n "description": "Value for subject."\n }\n },\n "required": [\n "evidence_id",\n "subject",\n "provider",\n "predicate_type",\n "operation",\n "parameters",\n "raw_result",\n "normalized_result",\n "confidence",\n "authority",\n "environment",\n "limitations",\n "locations",\n "evidence_links"\n ],\n "type": "object"\n },\n "type": "array"\n },\n "seed": {\n "anyOf": [\n {\n "additionalProperties": false,\n "properties": {\n "case_sensitive": {\n "default": false,\n "description": "Whether text matching distinguishes uppercase and lowercase.",\n "type": "boolean"\n },\n "kind": {\n "description": "Value for kind.",\n "enum": [\n "node-id",\n "route",\n "string",\n "api",\n "channel",\n "module",\n "native-export"\n ],\n "type": "string"\n },\n "match": {\n "anyOf": [\n {\n "enum": [\n "exact",\n "contains"\n ],\n "type": "string"\n },\n {\n "type": "null"\n }\n ],\n "default": null,\n "description": "Value for match."\n },\n "value": {\n "description": "Value for value.",\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "kind",\n "value"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "case_sensitive": {\n "default": false,\n "description": "Whether text matching distinguishes uppercase and lowercase.",\n "type": "boolean"\n },\n "kind": {\n "description": "Value for kind.",\n "enum": [\n "route",\n "string",\n "api",\n "channel",\n "module",\n "native-export"\n ],\n "type": "string"\n },\n "match": {\n "const": "exact",\n "description": "Value for match.",\n "type": "string"\n },\n "value": {\n "const": "",\n "description": "Value for value.",\n "type": "string"\n }\n },\n "required": [\n "kind",\n "value",\n "match"\n ],\n "type": "object"\n }\n ],\n "description": "Value for seed."\n }\n },\n "required": [\n "seed",\n "application"\n ],\n "type": "object"\n },\n "kind": "application",\n "name": "trace_application_feature",\n "outputSchema": {\n "$defs": {\n "__schema0": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "number"\n },\n {\n "type": "boolean"\n },\n {\n "type": "null"\n },\n {\n "items": {\n "$ref": "#/$defs/__schema0"\n },\n "type": "array"\n },\n {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n }\n ]\n }\n },\n "$schema": "https://json-schema.org/draft/2020-12/schema",\n "additionalProperties": false,\n "properties": {\n "evidence": {\n "additionalProperties": false,\n "properties": {\n "analysis_profile": {\n "additionalProperties": false,\n "properties": {\n "digest": {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n },\n "parameters": {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n },\n "provider": {\n "additionalProperties": false,\n "properties": {\n "id": {\n "minLength": 1,\n "type": "string"\n },\n "name": {\n "minLength": 1,\n "type": "string"\n },\n "version": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "id",\n "name",\n "version"\n ],\n "type": "object"\n }\n },\n "required": [\n "provider",\n "parameters",\n "digest"\n ],\n "type": "object"\n },\n "authority": {\n "enum": [\n "shipped-artifact",\n "controlled-replay",\n "historical-reference",\n "external-service",\n "analyst-inference"\n ],\n "type": "string"\n },\n "confidence": {\n "enum": [\n "observed",\n "derived",\n "inferred"\n ],\n "type": "string"\n },\n "environment": {\n "anyOf": [\n {\n "additionalProperties": false,\n "properties": {\n "architecture": {\n "minLength": 1,\n "type": "string"\n },\n "id": {\n "minLength": 1,\n "type": "string"\n },\n "isolation": {\n "enum": [\n "none",\n "process",\n "container",\n "virtual-machine"\n ],\n "type": "string"\n },\n "platform": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "id",\n "platform",\n "architecture",\n "isolation"\n ],\n "type": "object"\n },\n {\n "type": "null"\n }\n ]\n },\n "evidence_id": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "evidence_links": {\n "items": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "type": "array"\n },\n "limitations": {\n "items": {\n "type": "string"\n },\n "type": "array"\n },\n "locations": {\n "items": {\n "oneOf": [\n {\n "additionalProperties": false,\n "properties": {\n "address": {\n "minLength": 1,\n "type": "string"\n },\n "kind": {\n "const": "address",\n "type": "string"\n }\n },\n "required": [\n "kind",\n "address"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "end": {\n "minLength": 1,\n "type": "string"\n },\n "kind": {\n "const": "address-range",\n "type": "string"\n },\n "start": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "kind",\n "start",\n "end"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "kind": {\n "const": "artifact-path",\n "type": "string"\n },\n "path": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "kind",\n "path"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "kind": {\n "const": "file-offset",\n "type": "string"\n },\n "offset": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "kind",\n "offset"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "end": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "kind": {\n "const": "file-offset-range",\n "type": "string"\n },\n "start": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "kind",\n "start",\n "end"\n ],\n "type": "object"\n }\n ]\n },\n "type": "array"\n },\n "normalized_result": {\n "$ref": "#/$defs/__schema0"\n },\n "operation": {\n "minLength": 1,\n "type": "string"\n },\n "parameters": {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n },\n "predicate_type": {\n "minLength": 1,\n "type": "string"\n },\n "provider": {\n "additionalProperties": false,\n "properties": {\n "id": {\n "minLength": 1,\n "type": "string"\n },\n "name": {\n "minLength": 1,\n "type": "string"\n },\n "version": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "id",\n "name",\n "version"\n ],\n "type": "object"\n },\n "raw_result": {\n "anyOf": [\n {\n "$ref": "#/$defs/__schema0"\n },\n {\n "type": "null"\n }\n ]\n },\n "subject": {\n "anyOf": [\n {\n "additionalProperties": false,\n "properties": {\n "architecture": {\n "anyOf": [\n {\n "enum": [\n "x86",\n "x86_64",\n "arm",\n "arm64"\n ],\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "digest": {\n "additionalProperties": false,\n "properties": {\n "sha256": {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n }\n },\n "required": [\n "sha256"\n ],\n "type": "object"\n },\n "format": {\n "enum": [\n "hopper",\n "analysis-database",\n "mach-o",\n "elf",\n "pe",\n "dos-mz",\n "dos-com",\n "zip",\n "ipa",\n "apk",\n "msix",\n "appx",\n "asar",\n "dmg",\n "pkg",\n "plist",\n "javascript",\n "source-map",\n "directory",\n "file",\n "unknown",\n "mach-o-universal",\n "javascript-bundle",\n "entitlements"\n ],\n "type": "string"\n },\n "local_path": {\n "type": "string"\n },\n "name": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "name",\n "digest",\n "format",\n "architecture",\n "local_path"\n ],\n "type": "object"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "evidence_id",\n "subject",\n "provider",\n "predicate_type",\n "operation",\n "parameters",\n "raw_result",\n "normalized_result",\n "confidence",\n "authority",\n "environment",\n "limitations",\n "locations",\n "evidence_links"\n ],\n "type": "object"\n },\n "evidence_id": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "result": {\n "additionalProperties": false,\n "properties": {\n "coverage": {\n "additionalProperties": false,\n "properties": {\n "source_graph_status": {\n "enum": [\n "complete",\n "partial",\n "unknown",\n "unavailable"\n ],\n "type": "string"\n },\n "status": {\n "enum": [\n "complete-within-source",\n "partial",\n "no-match"\n ],\n "type": "string"\n },\n "total_seed_matches": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "status",\n "source_graph_status",\n "total_seed_matches"\n ],\n "type": "object"\n },\n "direction": {\n "enum": [\n "outgoing",\n "incoming",\n "both"\n ],\n "type": "string"\n },\n "evidence_links": {\n "items": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "minItems": 1,\n "type": "array"\n },\n "graph": {\n "anyOf": [\n {\n "additionalProperties": false,\n "properties": {\n "coverage": {\n "anyOf": [\n {\n "additionalProperties": false,\n "properties": {\n "limits": {\n "items": {\n "additionalProperties": false,\n "properties": {\n "name": {\n "minLength": 1,\n "type": "string"\n },\n "unit": {\n "enum": [\n "items",\n "bytes",\n "milliseconds",\n "depth",\n "characters",\n "instructions",\n "other"\n ],\n "type": "string"\n },\n "value": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "name",\n "value",\n "unit"\n ],\n "type": "object"\n },\n "type": "array"\n },\n "omitted_count": {\n "const": 0,\n "type": "number"\n },\n "status": {\n "const": "complete",\n "type": "string"\n },\n "truncated": {\n "const": false,\n "type": "boolean"\n }\n },\n "required": [\n "status",\n "truncated",\n "omitted_count",\n "limits"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "limits": {\n "items": {\n "additionalProperties": false,\n "properties": {\n "name": {\n "minLength": 1,\n "type": "string"\n },\n "unit": {\n "enum": [\n "items",\n "bytes",\n "milliseconds",\n "depth",\n "characters",\n "instructions",\n "other"\n ],\n "type": "string"\n },\n "value": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "name",\n "value",\n "unit"\n ],\n "type": "object"\n },\n "type": "array"\n },\n "omitted_count": {\n "anyOf": [\n {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n {\n "type": "null"\n }\n ]\n },\n "status": {\n "const": "partial",\n "type": "string"\n },\n "truncated": {\n "const": false,\n "type": "boolean"\n }\n },\n "required": [\n "status",\n "truncated",\n "omitted_count",\n "limits"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "limits": {\n "items": {\n "additionalProperties": false,\n "properties": {\n "name": {\n "minLength": 1,\n "type": "string"\n },\n "unit": {\n "enum": [\n "items",\n "bytes",\n "milliseconds",\n "depth",\n "characters",\n "instructions",\n "other"\n ],\n "type": "string"\n },\n "value": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "name",\n "value",\n "unit"\n ],\n "type": "object"\n },\n "minItems": 1,\n "type": "array"\n },\n "omitted_count": {\n "anyOf": [\n {\n "exclusiveMinimum": 0,\n "maximum": 9007199254740991,\n "type": "integer"\n },\n {\n "type": "null"\n }\n ]\n },\n "status": {\n "const": "partial",\n "type": "string"\n },\n "truncated": {\n "const": true,\n "type": "boolean"\n }\n },\n "required": [\n "status",\n "truncated",\n "omitted_count",\n "limits"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "limits": {\n "items": {\n "additionalProperties": false,\n "properties": {\n "name": {\n "minLength": 1,\n "type": "string"\n },\n "unit": {\n "enum": [\n "items",\n "bytes",\n "milliseconds",\n "depth",\n "characters",\n "instructions",\n "other"\n ],\n "type": "string"\n },\n "value": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "name",\n "value",\n "unit"\n ],\n "type": "object"\n },\n "type": "array"\n },\n "omitted_count": {\n "type": "null"\n },\n "status": {\n "enum": [\n "unknown",\n "unavailable"\n ],\n "type": "string"\n },\n "truncated": {\n "const": false,\n "type": "boolean"\n }\n },\n "required": [\n "status",\n "truncated",\n "omitted_count",\n "limits"\n ],\n "type": "object"\n }\n ]\n },\n "edges": {\n "items": {\n "additionalProperties": false,\n "properties": {\n "edge_id": {\n "pattern": "^jag_edge_[a-f0-9]{64}$",\n "type": "string"\n },\n "evidence": {\n "additionalProperties": false,\n "properties": {\n "artifact": {\n "oneOf": [\n {\n "additionalProperties": false,\n "properties": {\n "artifact_id": {\n "pattern": "^art_[a-f0-9]{64}$",\n "type": "string"\n },\n "available": {\n "const": true,\n "type": "boolean"\n },\n "sha256": {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n }\n },\n "required": [\n "available",\n "artifact_id",\n "sha256"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "available": {\n "const": false,\n "type": "boolean"\n },\n "detail": {\n "minLength": 1,\n "type": "string"\n },\n "reason": {\n "enum": [\n "not-applicable",\n "not-observed",\n "truncated",\n "provider-unavailable",\n "unresolved",\n "unknown"\n ],\n "type": "string"\n }\n },\n "required": [\n "available",\n "reason",\n "detail"\n ],\n "type": "object"\n }\n ]\n },\n "authority": {\n "enum": [\n "artifact-bytes",\n "ast-static-analysis",\n "static-relationship-inference",\n "passive-cdp-runtime",\n "cross-layer-reconciliation",\n "cross-version-comparison",\n "controlled-replay",\n "native-analysis-provider",\n "managed-static-analysis",\n "historical-reference",\n "user-assertion",\n "unknown"\n ],\n "type": "string"\n },\n "confidence": {\n "enum": [\n "exact",\n "high",\n "medium",\n "low",\n "unknown"\n ],\n "type": "string"\n },\n "coverage": {\n "anyOf": [\n {\n "additionalProperties": false,\n "properties": {\n "limits": {\n "items": {\n "additionalProperties": false,\n "properties": {\n "name": {\n "minLength": 1,\n "type": "string"\n },\n "unit": {\n "enum": [\n "items",\n "bytes",\n "milliseconds",\n "depth",\n "characters",\n "instructions",\n "other"\n ],\n "type": "string"\n },\n "value": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "name",\n "value",\n "unit"\n ],\n "type": "object"\n },\n "type": "array"\n },\n "omitted_count": {\n "const": 0,\n "type": "number"\n },\n "status": {\n "const": "complete",\n "type": "string"\n },\n "truncated": {\n "const": false,\n "type": "boolean"\n }\n },\n "required": [\n "status",\n "truncated",\n "omitted_count",\n "limits"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "limits": {\n "items": {\n "additionalProperties": false,\n "properties": {\n "name": {\n "minLength": 1,\n "type": "string"\n },\n "unit": {\n "enum": [\n "items",\n "bytes",\n "milliseconds",\n "depth",\n "characters",\n "instructions",\n "other"\n ],\n "type": "string"\n },\n "value": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "name",\n "value",\n "unit"\n ],\n "type": "object"\n },\n "type": "array"\n },\n "omitted_count": {\n "anyOf": [\n {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n {\n "type": "null"\n }\n ]\n },\n "status": {\n "const": "partial",\n "type": "string"\n },\n "truncated": {\n "const": false,\n "type": "boolean"\n }\n },\n "required": [\n "status",\n "truncated",\n "omitted_count",\n "limits"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "limits": {\n "items": {\n "additionalProperties": false,\n "properties": {\n "name": {\n "minLength": 1,\n "type": "string"\n },\n "unit": {\n "enum": [\n "items",\n "bytes",\n "milliseconds",\n "depth",\n "characters",\n "instructions",\n "other"\n ],\n "type": "string"\n },\n "value": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "name",\n "value",\n "unit"\n ],\n "type": "object"\n },\n "minItems": 1,\n "type": "array"\n },\n "omitted_count": {\n "anyOf": [\n {\n "exclusiveMinimum": 0,\n "maximum": 9007199254740991,\n "type": "integer"\n },\n {\n "type": "null"\n }\n ]\n },\n "status": {\n "const": "partial",\n "type": "string"\n },\n "truncated": {\n "const": true,\n "type": "boolean"\n }\n },\n "required": [\n "status",\n "truncated",\n "omitted_count",\n "limits"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "limits": {\n "items": {\n "additionalProperties": false,\n "properties": {\n "name": {\n "minLength": 1,\n "type": "string"\n },\n "unit": {\n "enum": [\n "items",\n "bytes",\n "milliseconds",\n "depth",\n "characters",\n "instructions",\n "other"\n ],\n "type": "string"\n },\n "value": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "name",\n "value",\n "unit"\n ],\n "type": "object"\n },\n "type": "array"\n },\n "omitted_count": {\n "type": "null"\n },\n "status": {\n "enum": [\n "unknown",\n "unavailable"\n ],\n "type": "string"\n },\n "truncated": {\n "const": false,\n "type": "boolean"\n }\n },\n "required": [\n "status",\n "truncated",\n "omitted_count",\n "limits"\n ],\n "type": "object"\n }\n ]\n },\n "evidence_ids": {\n "items": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "type": "array"\n },\n "extractor": {\n "additionalProperties": false,\n "properties": {\n "executable_sha256": {\n "anyOf": [\n {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "name": {\n "minLength": 1,\n "type": "string"\n },\n "operation": {\n "minLength": 1,\n "type": "string"\n },\n "version": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "name",\n "version",\n "operation",\n "executable_sha256"\n ],\n "type": "object"\n },\n "limitations": {\n "items": {\n "minLength": 1,\n "type": "string"\n },\n "type": "array"\n },\n "location": {\n "oneOf": [\n {\n "additionalProperties": false,\n "properties": {\n "available": {\n "const": true,\n "type": "boolean"\n },\n "value": {\n "oneOf": [\n {\n "additionalProperties": false,\n "properties": {\n "kind": {\n "const": "artifact-path",\n "type": "string"\n },\n "path": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "kind",\n "path"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "end": {\n "additionalProperties": false,\n "properties": {\n "column": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "line": {\n "maximum": 9007199254740991,\n "minimum": 1,\n "type": "integer"\n }\n },\n "required": [\n "line",\n "column"\n ],\n "type": "object"\n },\n "kind": {\n "const": "source-range",\n "type": "string"\n },\n "source": {\n "minLength": 1,\n "type": "string"\n },\n "start": {\n "additionalProperties": false,\n "properties": {\n "column": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "line": {\n "maximum": 9007199254740991,\n "minimum": 1,\n "type": "integer"\n }\n },\n "required": [\n "line",\n "column"\n ],\n "type": "object"\n }\n },\n "required": [\n "kind",\n "source",\n "start",\n "end"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "end": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "kind": {\n "const": "file-offset-range",\n "type": "string"\n },\n "start": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "kind",\n "start",\n "end"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "kind": {\n "const": "url",\n "type": "string"\n },\n "url": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "kind",\n "url"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "capture_sha256": {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n },\n "frame_key": {\n "anyOf": [\n {\n "minLength": 1,\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "kind": {\n "const": "runtime",\n "type": "string"\n },\n "script_key": {\n "anyOf": [\n {\n "minLength": 1,\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "target_key": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "kind",\n "capture_sha256",\n "target_key",\n "frame_key",\n "script_key"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "address": {\n "minLength": 1,\n "type": "string"\n },\n "kind": {\n "const": "native-address",\n "type": "string"\n },\n "symbol": {\n "anyOf": [\n {\n "minLength": 1,\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "kind",\n "address",\n "symbol"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "export_path": {\n "minLength": 1,\n "type": "string"\n },\n "kind": {\n "const": "package-export",\n "type": "string"\n },\n "package_name": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "kind",\n "package_name",\n "export_path"\n ],\n "type": "object"\n }\n ]\n }\n },\n "required": [\n "available",\n "value"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "available": {\n "const": false,\n "type": "boolean"\n },\n "detail": {\n "minLength": 1,\n "type": "string"\n },\n "reason": {\n "enum": [\n "not-applicable",\n "not-observed",\n "truncated",\n "provider-unavailable",\n "unresolved",\n "unknown"\n ],\n "type": "string"\n }\n },\n "required": [\n "available",\n "reason",\n "detail"\n ],\n "type": "object"\n }\n ]\n },\n "state": {\n "enum": [\n "observed",\n "inferred",\n "unknown",\n "unavailable"\n ],\n "type": "string"\n }\n },\n "required": [\n "authority",\n "state",\n "confidence",\n "artifact",\n "location",\n "extractor",\n "coverage",\n "limitations",\n "evidence_ids"\n ],\n "type": "object"\n },\n "identifier_strategy": {\n "additionalProperties": false,\n "properties": {\n "stability": {\n "const": "relationship-exact",\n "type": "string"\n },\n "strategy": {\n "const": "semantic-content-sha256",\n "type": "string"\n }\n },\n "required": [\n "strategy",\n "stability"\n ],\n "type": "object"\n },\n "properties": {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "propertyNames": {\n "minLength": 1,\n "type": "string"\n },\n "type": "object"\n },\n "relation": {\n "enum": [\n "contains",\n "loads",\n "imports",\n "maps_to",\n "exposes",\n "sends",\n "invokes",\n "handles",\n "calls",\n "persists_to",\n "observed_as",\n "changed_from"\n ],\n "type": "string"\n },\n "source_node_id": {\n "pattern": "^jag_node_[a-f0-9]{64}$",\n "type": "string"\n },\n "target_node_id": {\n "pattern": "^jag_node_[a-f0-9]{64}$",\n "type": "string"\n }\n },\n "required": [\n "source_node_id",\n "target_node_id",\n "relation",\n "properties",\n "evidence",\n "edge_id",\n "identifier_strategy"\n ],\n "type": "object"\n },\n "type": "array"\n },\n "graph_id": {\n "pattern": "^jag_[a-f0-9]{64}$",\n "type": "string"\n },\n "limitations": {\n "items": {\n "minLength": 1,\n "type": "string"\n },\n "type": "array"\n },\n "nodes": {\n "items": {\n "additionalProperties": false,\n "properties": {\n "identity": {\n "oneOf": [\n {\n "additionalProperties": false,\n "properties": {\n "sha256": {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n },\n "stability": {\n "const": "global-exact",\n "type": "string"\n },\n "strategy": {\n "const": "content-digest",\n "type": "string"\n }\n },\n "required": [\n "strategy",\n "stability",\n "sha256"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "original_source": {\n "type": "string"\n },\n "source_map_sha256": {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n },\n "source_sha256": {\n "anyOf": [\n {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "stability": {\n "const": "source-map-exact",\n "type": "string"\n },\n "strategy": {\n "const": "source-map-original",\n "type": "string"\n }\n },\n "required": [\n "strategy",\n "stability",\n "source_map_sha256",\n "original_source",\n "source_sha256"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "artifact_sha256": {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n },\n "path": {\n "minLength": 1,\n "type": "string"\n },\n "stability": {\n "const": "artifact-version",\n "type": "string"\n },\n "strategy": {\n "const": "canonical-path",\n "type": "string"\n }\n },\n "required": [\n "strategy",\n "stability",\n "artifact_sha256",\n "path"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "algorithm": {\n "minLength": 1,\n "type": "string"\n },\n "basis": {\n "items": {\n "enum": [\n "syntax-tree",\n "control-flow",\n "imports",\n "exports",\n "literals",\n "api-usage"\n ],\n "type": "string"\n },\n "minItems": 1,\n "type": "array"\n },\n "fingerprint_sha256": {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n },\n "stability": {\n "const": "cross-version-inference",\n "type": "string"\n },\n "strategy": {\n "const": "structural-fingerprint",\n "type": "string"\n }\n },\n "required": [\n "strategy",\n "stability",\n "algorithm",\n "fingerprint_sha256",\n "basis"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "artifact_sha256": {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n },\n "key": {\n "type": "string"\n },\n "namespace": {\n "minLength": 1,\n "type": "string"\n },\n "stability": {\n "const": "artifact-version",\n "type": "string"\n },\n "strategy": {\n "const": "artifact-local-key",\n "type": "string"\n }\n },\n "required": [\n "strategy",\n "stability",\n "artifact_sha256",\n "namespace",\n "key"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "capture_sha256": {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n },\n "runtime_key": {\n "minLength": 1,\n "type": "string"\n },\n "stability": {\n "const": "capture-only",\n "type": "string"\n },\n "strategy": {\n "const": "runtime-instance",\n "type": "string"\n }\n },\n "required": [\n "strategy",\n "stability",\n "capture_sha256",\n "runtime_key"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "observation_sha256": {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n },\n "scope": {\n "minLength": 1,\n "type": "string"\n },\n "stability": {\n "const": "observation-only",\n "type": "string"\n },\n "strategy": {\n "const": "observation-fingerprint",\n "type": "string"\n }\n },\n "required": [\n "strategy",\n "stability",\n "observation_sha256",\n "scope"\n ],\n "type": "object"\n }\n ]\n },\n "kind": {\n "enum": [\n "package",\n "installer",\n "artifact",\n "asar-entry",\n "electron-main",\n "electron-preload",\n "electron-renderer",\n "electron-utility",\n "javascript-asset",\n "javascript-chunk",\n "javascript-module",\n "source-map",\n "source-module",\n "browser-window",\n "frame",\n "target",\n "context-bridge-api",\n "ipc-channel",\n "ipc-handler",\n "worker",\n "service-worker",\n "endpoint",\n "storage",\n "native-addon",\n "native-export",\n "managed-assembly",\n "managed-module",\n "managed-type",\n "managed-method",\n "managed-field",\n "managed-pinvoke-import",\n "managed-native-implementation",\n "runtime-script-instance",\n "unknown"\n ],\n "type": "string"\n },\n "node_id": {\n "pattern": "^jag_node_[a-f0-9]{64}$",\n "type": "string"\n },\n "observations": {\n "items": {\n "additionalProperties": false,\n "properties": {\n "evidence": {\n "additionalProperties": false,\n "properties": {\n "artifact": {\n "oneOf": [\n {\n "additionalProperties": false,\n "properties": {\n "artifact_id": {\n "pattern": "^art_[a-f0-9]{64}$",\n "type": "string"\n },\n "available": {\n "const": true,\n "type": "boolean"\n },\n "sha256": {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n }\n },\n "required": [\n "available",\n "artifact_id",\n "sha256"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "available": {\n "const": false,\n "type": "boolean"\n },\n "detail": {\n "minLength": 1,\n "type": "string"\n },\n "reason": {\n "enum": [\n "not-applicable",\n "not-observed",\n "truncated",\n "provider-unavailable",\n "unresolved",\n "unknown"\n ],\n "type": "string"\n }\n },\n "required": [\n "available",\n "reason",\n "detail"\n ],\n "type": "object"\n }\n ]\n },\n "authority": {\n "enum": [\n "artifact-bytes",\n "ast-static-analysis",\n "static-relationship-inference",\n "passive-cdp-runtime",\n "cross-layer-reconciliation",\n "cross-version-comparison",\n "controlled-replay",\n "native-analysis-provider",\n "managed-static-analysis",\n "historical-reference",\n "user-assertion",\n "unknown"\n ],\n "type": "string"\n },\n "confidence": {\n "enum": [\n "exact",\n "high",\n "medium",\n "low",\n "unknown"\n ],\n "type": "string"\n },\n "coverage": {\n "anyOf": [\n {\n "additionalProperties": false,\n "properties": {\n "limits": {\n "items": {\n "additionalProperties": false,\n "properties": {\n "name": {\n "minLength": 1,\n "type": "string"\n },\n "unit": {\n "enum": [\n "items",\n "bytes",\n "milliseconds",\n "depth",\n "characters",\n "instructions",\n "other"\n ],\n "type": "string"\n },\n "value": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "name",\n "value",\n "unit"\n ],\n "type": "object"\n },\n "type": "array"\n },\n "omitted_count": {\n "const": 0,\n "type": "number"\n },\n "status": {\n "const": "complete",\n "type": "string"\n },\n "truncated": {\n "const": false,\n "type": "boolean"\n }\n },\n "required": [\n "status",\n "truncated",\n "omitted_count",\n "limits"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "limits": {\n "items": {\n "additionalProperties": false,\n "properties": {\n "name": {\n "minLength": 1,\n "type": "string"\n },\n "unit": {\n "enum": [\n "items",\n "bytes",\n "milliseconds",\n "depth",\n "characters",\n "instructions",\n "other"\n ],\n "type": "string"\n },\n "value": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "name",\n "value",\n "unit"\n ],\n "type": "object"\n },\n "type": "array"\n },\n "omitted_count": {\n "anyOf": [\n {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n {\n "type": "null"\n }\n ]\n },\n "status": {\n "const": "partial",\n "type": "string"\n },\n "truncated": {\n "const": false,\n "type": "boolean"\n }\n },\n "required": [\n "status",\n "truncated",\n "omitted_count",\n "limits"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "limits": {\n "items": {\n "additionalProperties": false,\n "properties": {\n "name": {\n "minLength": 1,\n "type": "string"\n },\n "unit": {\n "enum": [\n "items",\n "bytes",\n "milliseconds",\n "depth",\n "characters",\n "instructions",\n "other"\n ],\n "type": "string"\n },\n "value": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "name",\n "value",\n "unit"\n ],\n "type": "object"\n },\n "minItems": 1,\n "type": "array"\n },\n "omitted_count": {\n "anyOf": [\n {\n "exclusiveMinimum": 0,\n "maximum": 9007199254740991,\n "type": "integer"\n },\n {\n "type": "null"\n }\n ]\n },\n "status": {\n "const": "partial",\n "type": "string"\n },\n "truncated": {\n "const": true,\n "type": "boolean"\n }\n },\n "required": [\n "status",\n "truncated",\n "omitted_count",\n "limits"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "limits": {\n "items": {\n "additionalProperties": false,\n "properties": {\n "name": {\n "minLength": 1,\n "type": "string"\n },\n "unit": {\n "enum": [\n "items",\n "bytes",\n "milliseconds",\n "depth",\n "characters",\n "instructions",\n "other"\n ],\n "type": "string"\n },\n "value": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "name",\n "value",\n "unit"\n ],\n "type": "object"\n },\n "type": "array"\n },\n "omitted_count": {\n "type": "null"\n },\n "status": {\n "enum": [\n "unknown",\n "unavailable"\n ],\n "type": "string"\n },\n "truncated": {\n "const": false,\n "type": "boolean"\n }\n },\n "required": [\n "status",\n "truncated",\n "omitted_count",\n "limits"\n ],\n "type": "object"\n }\n ]\n },\n "evidence_ids": {\n "items": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "type": "array"\n },\n "extractor": {\n "additionalProperties": false,\n "properties": {\n "executable_sha256": {\n "anyOf": [\n {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "name": {\n "minLength": 1,\n "type": "string"\n },\n "operation": {\n "minLength": 1,\n "type": "string"\n },\n "version": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "name",\n "version",\n "operation",\n "executable_sha256"\n ],\n "type": "object"\n },\n "limitations": {\n "items": {\n "minLength": 1,\n "type": "string"\n },\n "type": "array"\n },\n "location": {\n "oneOf": [\n {\n "additionalProperties": false,\n "properties": {\n "available": {\n "const": true,\n "type": "boolean"\n },\n "value": {\n "oneOf": [\n {\n "additionalProperties": false,\n "properties": {\n "kind": {\n "const": "artifact-path",\n "type": "string"\n },\n "path": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "kind",\n "path"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "end": {\n "additionalProperties": false,\n "properties": {\n "column": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "line": {\n "maximum": 9007199254740991,\n "minimum": 1,\n "type": "integer"\n }\n },\n "required": [\n "line",\n "column"\n ],\n "type": "object"\n },\n "kind": {\n "const": "source-range",\n "type": "string"\n },\n "source": {\n "minLength": 1,\n "type": "string"\n },\n "start": {\n "additionalProperties": false,\n "properties": {\n "column": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "line": {\n "maximum": 9007199254740991,\n "minimum": 1,\n "type": "integer"\n }\n },\n "required": [\n "line",\n "column"\n ],\n "type": "object"\n }\n },\n "required": [\n "kind",\n "source",\n "start",\n "end"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "end": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "kind": {\n "const": "file-offset-range",\n "type": "string"\n },\n "start": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "kind",\n "start",\n "end"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "kind": {\n "const": "url",\n "type": "string"\n },\n "url": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "kind",\n "url"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "capture_sha256": {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n },\n "frame_key": {\n "anyOf": [\n {\n "minLength": 1,\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "kind": {\n "const": "runtime",\n "type": "string"\n },\n "script_key": {\n "anyOf": [\n {\n "minLength": 1,\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "target_key": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "kind",\n "capture_sha256",\n "target_key",\n "frame_key",\n "script_key"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "address": {\n "minLength": 1,\n "type": "string"\n },\n "kind": {\n "const": "native-address",\n "type": "string"\n },\n "symbol": {\n "anyOf": [\n {\n "minLength": 1,\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "kind",\n "address",\n "symbol"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "export_path": {\n "minLength": 1,\n "type": "string"\n },\n "kind": {\n "const": "package-export",\n "type": "string"\n },\n "package_name": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "kind",\n "package_name",\n "export_path"\n ],\n "type": "object"\n }\n ]\n }\n },\n "required": [\n "available",\n "value"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "available": {\n "const": false,\n "type": "boolean"\n },\n "detail": {\n "minLength": 1,\n "type": "string"\n },\n "reason": {\n "enum": [\n "not-applicable",\n "not-observed",\n "truncated",\n "provider-unavailable",\n "unresolved",\n "unknown"\n ],\n "type": "string"\n }\n },\n "required": [\n "available",\n "reason",\n "detail"\n ],\n "type": "object"\n }\n ]\n },\n "state": {\n "enum": [\n "observed",\n "inferred",\n "unknown",\n "unavailable"\n ],\n "type": "string"\n }\n },\n "required": [\n "authority",\n "state",\n "confidence",\n "artifact",\n "location",\n "extractor",\n "coverage",\n "limitations",\n "evidence_ids"\n ],\n "type": "object"\n },\n "identifier_strategy": {\n "additionalProperties": false,\n "properties": {\n "stability": {\n "const": "observation-exact",\n "type": "string"\n },\n "strategy": {\n "const": "semantic-content-sha256",\n "type": "string"\n }\n },\n "required": [\n "strategy",\n "stability"\n ],\n "type": "object"\n },\n "label": {\n "anyOf": [\n {\n "minLength": 1,\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "observation_id": {\n "pattern": "^jag_observation_[a-f0-9]{64}$",\n "type": "string"\n },\n "properties": {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "propertyNames": {\n "minLength": 1,\n "type": "string"\n },\n "type": "object"\n }\n },\n "required": [\n "label",\n "properties",\n "evidence",\n "observation_id",\n "identifier_strategy"\n ],\n "type": "object"\n },\n "minItems": 1,\n "type": "array"\n }\n },\n "required": [\n "node_id",\n "kind",\n "identity",\n "observations"\n ],\n "type": "object"\n },\n "minItems": 1,\n "type": "array"\n },\n "root_node_ids": {\n "items": {\n "pattern": "^jag_node_[a-f0-9]{64}$",\n "type": "string"\n },\n "minItems": 1,\n "type": "array"\n },\n "schema": {\n "const": "JavaScriptApplicationGraph",\n "type": "string"\n }\n },\n "required": [\n "schema",\n "root_node_ids",\n "nodes",\n "edges",\n "coverage",\n "limitations",\n "graph_id"\n ],\n "type": "object"\n },\n {\n "type": "null"\n }\n ]\n },\n "limitations": {\n "items": {\n "minLength": 1,\n "type": "string"\n },\n "type": "array"\n },\n "native_handoffs": {\n "items": {\n "additionalProperties": false,\n "properties": {\n "artifact_path": {\n "anyOf": [\n {\n "minLength": 1,\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "artifact_sha256": {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n },\n "evidence_ids": {\n "items": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "type": "array"\n },\n "export_node_ids": {\n "items": {\n "pattern": "^jag_node_[a-f0-9]{64}$",\n "type": "string"\n },\n "type": "array"\n },\n "native_node_id": {\n "pattern": "^jag_node_[a-f0-9]{64}$",\n "type": "string"\n },\n "providers": {\n "items": {\n "additionalProperties": false,\n "properties": {\n "id": {\n "minLength": 1,\n "type": "string"\n },\n "name": {\n "minLength": 1,\n "type": "string"\n },\n "version": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "id",\n "name",\n "version"\n ],\n "type": "object"\n },\n "type": "array"\n },\n "recommended_tools": {\n "items": {\n "enum": [\n "open_binary",\n "binary_overview",\n "search_procedures",\n "analyze_function",\n "xrefs"\n ],\n "type": "string"\n },\n "type": "array"\n },\n "requested_exports": {\n "items": {\n "minLength": 1,\n "type": "string"\n },\n "type": "array"\n },\n "status": {\n "enum": [\n "evidence-linked",\n "requires-provider-analysis"\n ],\n "type": "string"\n }\n },\n "required": [\n "native_node_id",\n "artifact_sha256",\n "artifact_path",\n "export_node_ids",\n "requested_exports",\n "status",\n "providers",\n "evidence_ids",\n "recommended_tools"\n ],\n "type": "object"\n },\n "type": "array"\n },\n "paths": {\n "items": {\n "additionalProperties": false,\n "properties": {\n "authorities": {\n "items": {\n "minLength": 1,\n "type": "string"\n },\n "type": "array"\n },\n "contains_inference": {\n "type": "boolean"\n },\n "edge_ids": {\n "items": {\n "pattern": "^jag_edge_[a-f0-9]{64}$",\n "type": "string"\n },\n "type": "array"\n },\n "end_kind": {\n "minLength": 1,\n "type": "string"\n },\n "end_node_id": {\n "pattern": "^jag_node_[a-f0-9]{64}$",\n "type": "string"\n },\n "node_ids": {\n "items": {\n "pattern": "^jag_node_[a-f0-9]{64}$",\n "type": "string"\n },\n "minItems": 1,\n "type": "array"\n },\n "path_id": {\n "pattern": "^jatp_[a-f0-9]{64}$",\n "type": "string"\n },\n "start_node_id": {\n "pattern": "^jag_node_[a-f0-9]{64}$",\n "type": "string"\n }\n },\n "required": [\n "path_id",\n "start_node_id",\n "end_node_id",\n "end_kind",\n "node_ids",\n "edge_ids",\n "authorities",\n "contains_inference"\n ],\n "type": "object"\n },\n "type": "array"\n },\n "seed": {\n "anyOf": [\n {\n "additionalProperties": false,\n "properties": {\n "case_sensitive": {\n "default": false,\n "type": "boolean"\n },\n "kind": {\n "enum": [\n "node-id",\n "route",\n "string",\n "api",\n "channel",\n "module",\n "native-export"\n ],\n "type": "string"\n },\n "match": {\n "anyOf": [\n {\n "enum": [\n "exact",\n "contains"\n ],\n "type": "string"\n },\n {\n "type": "null"\n }\n ],\n "default": null\n },\n "value": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "kind",\n "value",\n "match",\n "case_sensitive"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "case_sensitive": {\n "default": false,\n "type": "boolean"\n },\n "kind": {\n "enum": [\n "route",\n "string",\n "api",\n "channel",\n "module",\n "native-export"\n ],\n "type": "string"\n },\n "match": {\n "const": "exact",\n "type": "string"\n },\n "value": {\n "const": "",\n "type": "string"\n }\n },\n "required": [\n "kind",\n "value",\n "match",\n "case_sensitive"\n ],\n "type": "object"\n }\n ]\n },\n "seed_matches": {\n "items": {\n "additionalProperties": false,\n "properties": {\n "basis": {\n "enum": [\n "node-id",\n "label",\n "identity",\n "property"\n ],\n "type": "string"\n },\n "field": {\n "minLength": 1,\n "type": "string"\n },\n "kind": {\n "minLength": 1,\n "type": "string"\n },\n "node_id": {\n "pattern": "^jag_node_[a-f0-9]{64}$",\n "type": "string"\n }\n },\n "required": [\n "node_id",\n "kind",\n "basis",\n "field"\n ],\n "type": "object"\n },\n "type": "array"\n },\n "source_evidence_id": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "source_graph_id": {\n "pattern": "^jag_[a-f0-9]{64}$",\n "type": "string"\n },\n "summary": {\n "additionalProperties": false,\n "properties": {\n "inferred_facts": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "matched_seeds": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "native_handoffs": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "observed_facts": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "terminal_paths": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "traced_edges": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "traced_nodes": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "unavailable_facts": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "unknown_facts": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "matched_seeds",\n "traced_nodes",\n "traced_edges",\n "terminal_paths",\n "native_handoffs",\n "observed_facts",\n "inferred_facts",\n "unknown_facts",\n "unavailable_facts"\n ],\n "type": "object"\n },\n "trace_id": {\n "pattern": "^jatr_[a-f0-9]{64}$",\n "type": "string"\n }\n },\n "required": [\n "trace_id",\n "source_evidence_id",\n "source_graph_id",\n "seed",\n "direction",\n "seed_matches",\n "graph",\n "paths",\n "native_handoffs",\n "summary",\n "coverage",\n "evidence_links",\n "limitations"\n ],\n "type": "object"\n }\n },\n "required": [\n "result",\n "evidence_id",\n "evidence"\n ],\n "type": "object"\n },\n "requiresSession": false,\n "title": "Trace Application Feature"\n },\n {\n "analysisOperation": null,\n "annotations": {\n "destructiveHint": false,\n "idempotentHint": true,\n "openWorldHint": false,\n "readOnlyHint": false\n },\n "description": "Trace static JavaScript data-flow, direct call/return, and closure relations from inline application Evidence or an exact same-session retained reference. Dynamic or unsupported semantics remain explicit unknowns; static reachability never claims runtime execution.",\n "effects": {\n "accessesNetwork": false,\n "changesUiState": false,\n "idempotent": true,\n "launchesProcess": false,\n "mayDiscardData": false,\n "mutatesSession": true,\n "mutatesTarget": false,\n "writesFilesystem": false\n },\n "inputSchema": {\n "$defs": {\n "__schema0": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "number"\n },\n {\n "type": "boolean"\n },\n {\n "type": "null"\n },\n {\n "items": {\n "$ref": "#/$defs/__schema0"\n },\n "type": "array"\n },\n {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n }\n ]\n }\n },\n "$schema": "https://json-schema.org/draft/2020-12/schema",\n "additionalProperties": false,\n "examples": [\n {\n "application": {\n "authority": "shipped-artifact",\n "confidence": "derived",\n "environment": null,\n "evidence_id": "ev_a4ae2c7b5c501fb6dff695b168f35a6dd157fa957410910684f3a4ce4c8b5d54",\n "evidence_links": [],\n "limitations": [],\n "locations": [],\n "normalized_result": {\n "format": "directory",\n "graph": {\n "coverage": {\n "limits": [],\n "omitted_count": 0,\n "status": "complete",\n "truncated": false\n },\n "edges": [],\n "graph_id": "jag_ab15669664efc0a86bb49c9c60241913cce6980dc2293fbeef6d9c862ca01d9d",\n "limitations": [],\n "nodes": [\n {\n "identity": {\n "sha256": "c4c0d760a4c84f0e182de99f6ef89ef10831f8170e486c4d4bd934924151ba64",\n "stability": "global-exact",\n "strategy": "content-digest"\n },\n "kind": "javascript-asset",\n "node_id": "jag_node_3c82da5492d90eb5b0bee41c1a994d88b7ba98c0b4955270d70e57a76e224c2e",\n "observations": [\n {\n "evidence": {\n "artifact": {\n "artifact_id": "art_c4c0d760a4c84f0e182de99f6ef89ef10831f8170e486c4d4bd934924151ba64",\n "available": true,\n "sha256": "c4c0d760a4c84f0e182de99f6ef89ef10831f8170e486c4d4bd934924151ba64"\n },\n "authority": "artifact-bytes",\n "confidence": "exact",\n "coverage": {\n "limits": [],\n "omitted_count": 0,\n "status": "complete",\n "truncated": false\n },\n "evidence_ids": [],\n "extractor": {\n "executable_sha256": null,\n "name": "rea-javascript-application",\n "operation": "inventory-relevant-file",\n "version": "1"\n },\n "limitations": [],\n "location": {\n "available": true,\n "value": {\n "kind": "artifact-path",\n "path": "renderer.js"\n }\n },\n "state": "observed"\n },\n "identifier_strategy": {\n "stability": "observation-exact",\n "strategy": "semantic-content-sha256"\n },\n "label": "renderer.js",\n "observation_id": "jag_observation_20b4d076ce370db14ae2b477915624c62e0c4a0c9e56803a2c5cb4fa60c16230",\n "properties": {\n "bytes": 29,\n "path": "renderer.js"\n }\n }\n ]\n }\n ],\n "root_node_ids": [\n "jag_node_3c82da5492d90eb5b0bee41c1a994d88b7ba98c0b4955270d70e57a76e224c2e"\n ],\n "schema": "JavaScriptApplicationGraph"\n },\n "input_path": "/Applications/Example.app/Contents/Resources/app",\n "inventory_graph_sha256": "3333333333333333333333333333333333333333333333333333333333333333",\n "inventory_manifest_id": "agm_2222222222222222222222222222222222222222222222222222222222222222",\n "limitations": [],\n "root_artifact_sha256": "1111111111111111111111111111111111111111111111111111111111111111",\n "semantic_graph": {\n "application_graph_id": "jag_ab15669664efc0a86bb49c9c60241913cce6980dc2293fbeef6d9c862ca01d9d",\n "coverage": {\n "families": [\n {\n "family": "boundary",\n "omitted_relations": 0,\n "retained_relations": 0,\n "status": "unknown",\n "unknown_ids": []\n },\n {\n "family": "call-flow",\n "omitted_relations": 0,\n "retained_relations": 0,\n "status": "unknown",\n "unknown_ids": []\n },\n {\n "family": "child-process",\n "omitted_relations": 0,\n "retained_relations": 0,\n "status": "unknown",\n "unknown_ids": []\n },\n {\n "family": "closure",\n "omitted_relations": 0,\n "retained_relations": 0,\n "status": "unknown",\n "unknown_ids": []\n },\n {\n "family": "configuration",\n "omitted_relations": 0,\n "retained_relations": 0,\n "status": "unknown",\n "unknown_ids": []\n },\n {\n "family": "data-flow",\n "omitted_relations": 0,\n "retained_relations": 0,\n "status": "unknown",\n "unknown_ids": []\n },\n {\n "family": "event",\n "omitted_relations": 0,\n "retained_relations": 0,\n "status": "unknown",\n "unknown_ids": []\n },\n {\n "family": "object-flow",\n "omitted_relations": 0,\n "retained_relations": 0,\n "status": "unknown",\n "unknown_ids": []\n },\n {\n "family": "promise-ownership",\n "omitted_relations": 0,\n "retained_relations": 0,\n "status": "unknown",\n "unknown_ids": []\n },\n {\n "family": "request",\n "omitted_relations": 0,\n "retained_relations": 0,\n "status": "unknown",\n "unknown_ids": []\n },\n {\n "family": "resource-lifecycle",\n "omitted_relations": 0,\n "retained_relations": 0,\n "status": "unknown",\n "unknown_ids": []\n },\n {\n "family": "timer",\n "omitted_relations": 0,\n "retained_relations": 0,\n "status": "unknown",\n "unknown_ids": []\n }\n ],\n "limits": [],\n "omitted_nodes": 0,\n "omitted_relations": 0,\n "status": "unknown",\n "truncated": false\n },\n "fingerprints": [],\n "graph_id": "jsrg_08c925d2bf4ef56d770e0e67901d5bdfb610744cf001a50d36c9bb6dcb195508",\n "limitations": [\n "Semantic relations are unavailable in this minimal example."\n ],\n "nodes": [\n {\n "application_node_ids": [\n "jag_node_3c82da5492d90eb5b0bee41c1a994d88b7ba98c0b4955270d70e57a76e224c2e"\n ],\n "evidence": {\n "artifact": {\n "artifact_id": "art_c4c0d760a4c84f0e182de99f6ef89ef10831f8170e486c4d4bd934924151ba64",\n "available": true,\n "sha256": "c4c0d760a4c84f0e182de99f6ef89ef10831f8170e486c4d4bd934924151ba64"\n },\n "authority": "artifact-bytes",\n "confidence": "exact",\n "coverage": {\n "limits": [],\n "omitted_count": 0,\n "status": "complete",\n "truncated": false\n },\n "evidence_ids": [],\n "extractor": {\n "executable_sha256": null,\n "name": "rea-javascript-application",\n "operation": "inventory-relevant-file",\n "version": "1"\n },\n "limitations": [],\n "location": {\n "available": true,\n "value": {\n "kind": "artifact-path",\n "path": "renderer.js"\n }\n },\n "state": "observed"\n },\n "function_node_id": null,\n "identifier_strategy": {\n "stability": "artifact-version",\n "strategy": "semantic-content-sha256"\n },\n "identity": {\n "artifact_sha256": "1111111111111111111111111111111111111111111111111111111111111111",\n "module_path": "renderer.js",\n "role_key": "example-module",\n "source_range": null\n },\n "kind": "module",\n "label": "renderer.js",\n "node_id": "jsrg_node_9476602f1f74433a2bd3dadb040a25734d203b8f831b31a8d96f7efdfc5cd66a",\n "properties": {}\n }\n ],\n "relations": [],\n "root_artifact_sha256": "1111111111111111111111111111111111111111111111111111111111111111",\n "root_node_ids": [\n "jsrg_node_9476602f1f74433a2bd3dadb040a25734d203b8f831b31a8d96f7efdfc5cd66a"\n ],\n "schema": "JavaScriptSemanticRelationGraph",\n "unknowns": []\n },\n "statistics": {\n "findings": 0,\n "invalid_utf8_files": 0,\n "modules": 0,\n "nested_asar_containers": 0,\n "parse_failures": 0,\n "parsed_javascript_files": 1,\n "relevant_files": 1,\n "text_bytes_read": 29,\n "truncated_scopes": 0,\n "visited_ast_nodes": 1\n },\n "summary": {\n "browser_windows": 0,\n "context_bridge_apis": 0,\n "explicit_web_preferences": 0,\n "exposed_api_members": 0,\n "ipc": {\n "ambiguous_renderer_transmissions": 0,\n "dynamic_channel_operations": 0,\n "literal_channels": 0,\n "main_handlers": 0,\n "operations": 0,\n "paired_renderer_transmissions": 0,\n "renderer_listeners": 0,\n "renderer_transmissions": 0,\n "unpaired_literal_renderer_transmissions": 0\n },\n "native_addon_bindings": 0,\n "preload_entrypoints": 0,\n "resolved_native_addon_bindings": 0,\n "resolved_utility_entrypoints": 0,\n "sender_validation_observations": 0,\n "utility_processes": 0\n }\n },\n "operation": "analyze_javascript_application",\n "parameters": {},\n "predicate_type": "rea.javascript-application-analysis",\n "provider": {\n "id": "rea-javascript-application",\n "name": "REA JavaScript application analyzer",\n "version": "1"\n },\n "raw_result": null,\n "subject": {\n "architecture": null,\n "digest": {\n "sha256": "1111111111111111111111111111111111111111111111111111111111111111"\n },\n "format": "directory",\n "local_path": "/Applications/Example.app/Contents/Resources/app",\n "name": "app"\n }\n },\n "query": {\n "direction": "backward-provenance",\n "seed": {\n "kind": "semantic-node",\n "node_id": "jsrg_node_0000000000000000000000000000000000000000000000000000000000000000"\n }\n }\n }\n ],\n "properties": {\n "application": {\n "anyOf": [\n {\n "additionalProperties": false,\n "properties": {\n "analysis_profile": {\n "description": "Value for analysis profile.",\n "properties": {\n "digest": {\n "description": "Value for digest.",\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n },\n "parameters": {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "description": "Value for parameters.",\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n },\n "provider": {\n "description": "Value for provider.",\n "properties": {\n "id": {\n "description": "Value for id.",\n "minLength": 1,\n "type": "string"\n },\n "name": {\n "description": "Exact name used by this operation.",\n "minLength": 1,\n "type": "string"\n },\n "version": {\n "description": "Value for version.",\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "id",\n "name",\n "version"\n ],\n "type": "object"\n }\n },\n "required": [\n "provider",\n "parameters",\n "digest"\n ],\n "type": "object"\n },\n "authority": {\n "description": "Value for authority.",\n "enum": [\n "shipped-artifact",\n "controlled-replay",\n "historical-reference",\n "external-service",\n "analyst-inference"\n ],\n "type": "string"\n },\n "confidence": {\n "description": "Value for confidence.",\n "enum": [\n "observed",\n "derived",\n "inferred"\n ],\n "type": "string"\n },\n "environment": {\n "anyOf": [\n {\n "properties": {\n "architecture": {\n "description": "Value for architecture.",\n "minLength": 1,\n "type": "string"\n },\n "id": {\n "description": "Value for id.",\n "minLength": 1,\n "type": "string"\n },\n "isolation": {\n "description": "Value for isolation.",\n "enum": [\n "none",\n "process",\n "container",\n "virtual-machine"\n ],\n "type": "string"\n },\n "platform": {\n "description": "Value for platform.",\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "id",\n "platform",\n "architecture",\n "isolation"\n ],\n "type": "object"\n },\n {\n "type": "null"\n }\n ],\n "description": "Value for environment."\n },\n "evidence_id": {\n "description": "Stable identifier of the recorded Evidence observation.",\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "evidence_links": {\n "description": "Value for evidence links.",\n "items": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "type": "array"\n },\n "limitations": {\n "description": "Value for limitations.",\n "items": {\n "type": "string"\n },\n "type": "array"\n },\n "locations": {\n "description": "Value for locations.",\n "items": {\n "oneOf": [\n {\n "properties": {\n "address": {\n "description": "Value for address.",\n "minLength": 1,\n "type": "string"\n },\n "kind": {\n "const": "address",\n "description": "Value for kind.",\n "type": "string"\n }\n },\n "required": [\n "kind",\n "address"\n ],\n "type": "object"\n },\n {\n "properties": {\n "end": {\n "description": "Value for end.",\n "minLength": 1,\n "type": "string"\n },\n "kind": {\n "const": "address-range",\n "description": "Value for kind.",\n "type": "string"\n },\n "start": {\n "description": "Value for start.",\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "kind",\n "start",\n "end"\n ],\n "type": "object"\n },\n {\n "properties": {\n "kind": {\n "const": "artifact-path",\n "description": "Value for kind.",\n "type": "string"\n },\n "path": {\n "description": "Local filesystem path used by this operation.",\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "kind",\n "path"\n ],\n "type": "object"\n },\n {\n "properties": {\n "kind": {\n "const": "file-offset",\n "description": "Value for kind.",\n "type": "string"\n },\n "offset": {\n "description": "Value for offset.",\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "kind",\n "offset"\n ],\n "type": "object"\n },\n {\n "properties": {\n "end": {\n "description": "Value for end.",\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "kind": {\n "const": "file-offset-range",\n "description": "Value for kind.",\n "type": "string"\n },\n "start": {\n "description": "Value for start.",\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "kind",\n "start",\n "end"\n ],\n "type": "object"\n }\n ]\n },\n "type": "array"\n },\n "normalized_result": {\n "$ref": "#/$defs/__schema0",\n "description": "Value for normalized result."\n },\n "operation": {\n "description": "Value for operation.",\n "minLength": 1,\n "type": "string"\n },\n "parameters": {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "description": "Value for parameters.",\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n },\n "predicate_type": {\n "description": "Value for predicate type.",\n "minLength": 1,\n "type": "string"\n },\n "provider": {\n "description": "Value for provider.",\n "properties": {\n "id": {\n "description": "Value for id.",\n "minLength": 1,\n "type": "string"\n },\n "name": {\n "description": "Exact name used by this operation.",\n "minLength": 1,\n "type": "string"\n },\n "version": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ],\n "description": "Value for version."\n }\n },\n "required": [\n "id",\n "name",\n "version"\n ],\n "type": "object"\n },\n "raw_result": {\n "anyOf": [\n {\n "$ref": "#/$defs/__schema0"\n },\n {\n "type": "null"\n }\n ],\n "description": "Value for raw result."\n },\n "subject": {\n "anyOf": [\n {\n "properties": {\n "architecture": {\n "anyOf": [\n {\n "enum": [\n "x86",\n "x86_64",\n "arm",\n "arm64"\n ],\n "type": "string"\n },\n {\n "type": "null"\n }\n ],\n "description": "Value for architecture."\n },\n "digest": {\n "description": "Value for digest.",\n "properties": {\n "sha256": {\n "description": "Value for sha256.",\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n }\n },\n "required": [\n "sha256"\n ],\n "type": "object"\n },\n "format": {\n "description": "Declared input artifact format.",\n "enum": [\n "hopper",\n "analysis-database",\n "mach-o",\n "elf",\n "pe",\n "dos-mz",\n "dos-com",\n "zip",\n "ipa",\n "apk",\n "msix",\n "appx",\n "asar",\n "dmg",\n "pkg",\n "plist",\n "javascript",\n "source-map",\n "directory",\n "file",\n "unknown",\n "mach-o-universal",\n "javascript-bundle",\n "entitlements"\n ],\n "type": "string"\n },\n "local_path": {\n "description": "Local filesystem path for local.",\n "type": "string"\n },\n "name": {\n "description": "Exact name used by this operation.",\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "name",\n "digest",\n "format",\n "architecture",\n "local_path"\n ],\n "type": "object"\n },\n {\n "type": "null"\n }\n ],\n "description": "Value for subject."\n }\n },\n "required": [\n "evidence_id",\n "subject",\n "provider",\n "predicate_type",\n "operation",\n "parameters",\n "raw_result",\n "normalized_result",\n "confidence",\n "authority",\n "environment",\n "limitations",\n "locations",\n "evidence_links"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "evidence_id": {\n "description": "Stable identifier of the recorded Evidence observation.",\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "kind": {\n "const": "retained-evidence",\n "description": "Value for kind.",\n "type": "string"\n }\n },\n "required": [\n "kind",\n "evidence_id"\n ],\n "type": "object"\n }\n ],\n "description": "Value for application."\n },\n "query": {\n "additionalProperties": false,\n "description": "Non-empty feature or text query to investigate.",\n "properties": {\n "allowed_relations": {\n "description": "Value for allowed relations.",\n "items": {\n "enum": [\n "acquires",\n "aggregates",\n "aliases",\n "argument-to-parameter",\n "awaits",\n "calls",\n "cancels-timer",\n "captures",\n "chains",\n "coerces",\n "connects-stdio",\n "consumed-by",\n "constructs-request",\n "creates-promise",\n "defaults",\n "defines",\n "destructures",\n "detaches-task",\n "dispatches-candidate",\n "forwards-signal",\n "listens-error",\n "listens-exit",\n "owns",\n "overrides",\n "parses",\n "reads",\n "reads-argv",\n "reads-config",\n "reads-environment",\n "reads-property",\n "registers-listener",\n "releases",\n "removes-listener",\n "returns-task",\n "returns-to-call",\n "schedules-timer",\n "spawns",\n "spreads",\n "supplies-argv",\n "supplies-env",\n "supplies-request-field",\n "validates",\n "writes",\n "writes-property"\n ],\n "type": "string"\n },\n "minItems": 1,\n "type": "array"\n },\n "direction": {\n "description": "Direction in which to traverse or compare relationships.",\n "enum": [\n "backward-provenance",\n "forward-influence",\n "callers",\n "ownership"\n ],\n "type": "string"\n },\n "expected": {\n "anyOf": [\n {\n "additionalProperties": false,\n "properties": {\n "classes": {\n "description": "Value for classes.",\n "items": {\n "enum": [\n "module",\n "function",\n "parameter",\n "binding",\n "expression",\n "literal",\n "property-slot",\n "call-site",\n "return-site",\n "closure-capture",\n "promise",\n "task",\n "event",\n "listener",\n "timer",\n "child-process",\n "stdio",\n "signal",\n "config-source",\n "request",\n "response",\n "boundary",\n "resource",\n "unknown-frontier"\n ],\n "type": "string"\n },\n "minItems": 1,\n "type": "array"\n },\n "role": {\n "description": "Value for role.",\n "enum": [\n "source",\n "sink"\n ],\n "type": "string"\n }\n },\n "required": [\n "role",\n "classes"\n ],\n "type": "object"\n },\n {\n "type": "null"\n }\n ],\n "default": null,\n "description": "Value for expected."\n },\n "include_ambiguous_dynamic_edges": {\n "default": false,\n "description": "Whether to include ambiguous dynamic edges in the result.",\n "type": "boolean"\n },\n "seed": {\n "description": "Value for seed.",\n "oneOf": [\n {\n "additionalProperties": false,\n "properties": {\n "kind": {\n "const": "semantic-node",\n "description": "Value for kind.",\n "type": "string"\n },\n "node_id": {\n "description": "Value for node id.",\n "pattern": "^jsrg_node_[a-f0-9]{64}$",\n "type": "string"\n }\n },\n "required": [\n "kind",\n "node_id"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "kind": {\n "const": "application-node",\n "description": "Value for kind.",\n "type": "string"\n },\n "node_id": {\n "description": "Value for node id.",\n "pattern": "^jag_node_[a-f0-9]{64}$",\n "type": "string"\n }\n },\n "required": [\n "kind",\n "node_id"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "kind": {\n "const": "literal",\n "description": "Value for kind.",\n "type": "string"\n },\n "value": {\n "$ref": "#/$defs/__schema0",\n "description": "Value for value."\n }\n },\n "required": [\n "kind",\n "value"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "fingerprint_sha256": {\n "description": "Exact SHA-256 digest of fingerprint.",\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n },\n "kind": {\n "const": "function",\n "description": "Value for kind.",\n "type": "string"\n }\n },\n "required": [\n "kind",\n "fingerprint_sha256"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "kind": {\n "const": "property",\n "description": "Value for kind.",\n "type": "string"\n },\n "name": {\n "description": "Exact name used by this operation.",\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "kind",\n "name"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "kind": {\n "const": "endpoint",\n "description": "Value for kind.",\n "type": "string"\n },\n "value": {\n "description": "Value for value.",\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "kind",\n "value"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "kind": {\n "const": "event",\n "description": "Value for kind.",\n "type": "string"\n },\n "name": {\n "description": "Exact name used by this operation.",\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "kind",\n "name"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "field": {\n "description": "Value for field.",\n "minLength": 1,\n "type": "string"\n },\n "kind": {\n "const": "boundary-field",\n "description": "Value for kind.",\n "type": "string"\n }\n },\n "required": [\n "kind",\n "field"\n ],\n "type": "object"\n }\n ]\n }\n },\n "required": [\n "seed",\n "direction"\n ],\n "type": "object"\n }\n },\n "required": [\n "application",\n "query"\n ],\n "type": "object"\n },\n "kind": "application",\n "name": "trace_javascript_semantics",\n "outputSchema": {\n "$defs": {\n "__schema0": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "number"\n },\n {\n "type": "boolean"\n },\n {\n "type": "null"\n },\n {\n "items": {\n "$ref": "#/$defs/__schema0"\n },\n "type": "array"\n },\n {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n }\n ]\n }\n },\n "$schema": "https://json-schema.org/draft/2020-12/schema",\n "additionalProperties": false,\n "properties": {\n "evidence": {\n "additionalProperties": false,\n "properties": {\n "analysis_profile": {\n "additionalProperties": false,\n "properties": {\n "digest": {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n },\n "parameters": {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n },\n "provider": {\n "additionalProperties": false,\n "properties": {\n "id": {\n "minLength": 1,\n "type": "string"\n },\n "name": {\n "minLength": 1,\n "type": "string"\n },\n "version": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "id",\n "name",\n "version"\n ],\n "type": "object"\n }\n },\n "required": [\n "provider",\n "parameters",\n "digest"\n ],\n "type": "object"\n },\n "authority": {\n "enum": [\n "shipped-artifact",\n "controlled-replay",\n "historical-reference",\n "external-service",\n "analyst-inference"\n ],\n "type": "string"\n },\n "confidence": {\n "enum": [\n "observed",\n "derived",\n "inferred"\n ],\n "type": "string"\n },\n "environment": {\n "anyOf": [\n {\n "additionalProperties": false,\n "properties": {\n "architecture": {\n "minLength": 1,\n "type": "string"\n },\n "id": {\n "minLength": 1,\n "type": "string"\n },\n "isolation": {\n "enum": [\n "none",\n "process",\n "container",\n "virtual-machine"\n ],\n "type": "string"\n },\n "platform": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "id",\n "platform",\n "architecture",\n "isolation"\n ],\n "type": "object"\n },\n {\n "type": "null"\n }\n ]\n },\n "evidence_id": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "evidence_links": {\n "items": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "type": "array"\n },\n "limitations": {\n "items": {\n "type": "string"\n },\n "type": "array"\n },\n "locations": {\n "items": {\n "oneOf": [\n {\n "additionalProperties": false,\n "properties": {\n "address": {\n "minLength": 1,\n "type": "string"\n },\n "kind": {\n "const": "address",\n "type": "string"\n }\n },\n "required": [\n "kind",\n "address"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "end": {\n "minLength": 1,\n "type": "string"\n },\n "kind": {\n "const": "address-range",\n "type": "string"\n },\n "start": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "kind",\n "start",\n "end"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "kind": {\n "const": "artifact-path",\n "type": "string"\n },\n "path": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "kind",\n "path"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "kind": {\n "const": "file-offset",\n "type": "string"\n },\n "offset": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "kind",\n "offset"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "end": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "kind": {\n "const": "file-offset-range",\n "type": "string"\n },\n "start": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "kind",\n "start",\n "end"\n ],\n "type": "object"\n }\n ]\n },\n "type": "array"\n },\n "normalized_result": {\n "$ref": "#/$defs/__schema0"\n },\n "operation": {\n "minLength": 1,\n "type": "string"\n },\n "parameters": {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n },\n "predicate_type": {\n "minLength": 1,\n "type": "string"\n },\n "provider": {\n "additionalProperties": false,\n "properties": {\n "id": {\n "minLength": 1,\n "type": "string"\n },\n "name": {\n "minLength": 1,\n "type": "string"\n },\n "version": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "id",\n "name",\n "version"\n ],\n "type": "object"\n },\n "raw_result": {\n "anyOf": [\n {\n "$ref": "#/$defs/__schema0"\n },\n {\n "type": "null"\n }\n ]\n },\n "subject": {\n "anyOf": [\n {\n "additionalProperties": false,\n "properties": {\n "architecture": {\n "anyOf": [\n {\n "enum": [\n "x86",\n "x86_64",\n "arm",\n "arm64"\n ],\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "digest": {\n "additionalProperties": false,\n "properties": {\n "sha256": {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n }\n },\n "required": [\n "sha256"\n ],\n "type": "object"\n },\n "format": {\n "enum": [\n "hopper",\n "analysis-database",\n "mach-o",\n "elf",\n "pe",\n "dos-mz",\n "dos-com",\n "zip",\n "ipa",\n "apk",\n "msix",\n "appx",\n "asar",\n "dmg",\n "pkg",\n "plist",\n "javascript",\n "source-map",\n "directory",\n "file",\n "unknown",\n "mach-o-universal",\n "javascript-bundle",\n "entitlements"\n ],\n "type": "string"\n },\n "local_path": {\n "type": "string"\n },\n "name": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "name",\n "digest",\n "format",\n "architecture",\n "local_path"\n ],\n "type": "object"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "evidence_id",\n "subject",\n "provider",\n "predicate_type",\n "operation",\n "parameters",\n "raw_result",\n "normalized_result",\n "confidence",\n "authority",\n "environment",\n "limitations",\n "locations",\n "evidence_links"\n ],\n "type": "object"\n },\n "evidence_id": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "result": {\n "additionalProperties": false,\n "properties": {\n "coverage": {\n "additionalProperties": false,\n "properties": {\n "status": {\n "enum": [\n "complete",\n "partial",\n "unavailable"\n ],\n "type": "string"\n }\n },\n "required": [\n "status"\n ],\n "type": "object"\n },\n "direction": {\n "enum": [\n "backward-provenance",\n "forward-influence",\n "callers",\n "ownership"\n ],\n "type": "string"\n },\n "evidence_links": {\n "items": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "maxItems": 1,\n "minItems": 1,\n "type": "array"\n },\n "expected_match_node_ids": {\n "items": {\n "pattern": "^jsrg_node_[a-f0-9]{64}$",\n "type": "string"\n },\n "type": "array"\n },\n "limitations": {\n "items": {\n "minLength": 1,\n "type": "string"\n },\n "type": "array"\n },\n "nodes": {\n "items": {\n "additionalProperties": false,\n "properties": {\n "application_node_ids": {\n "items": {\n "pattern": "^jag_node_[a-f0-9]{64}$",\n "type": "string"\n },\n "type": "array"\n },\n "evidence": {\n "additionalProperties": false,\n "properties": {\n "artifact": {\n "oneOf": [\n {\n "additionalProperties": false,\n "properties": {\n "artifact_id": {\n "pattern": "^art_[a-f0-9]{64}$",\n "type": "string"\n },\n "available": {\n "const": true,\n "type": "boolean"\n },\n "sha256": {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n }\n },\n "required": [\n "available",\n "artifact_id",\n "sha256"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "available": {\n "const": false,\n "type": "boolean"\n },\n "detail": {\n "minLength": 1,\n "type": "string"\n },\n "reason": {\n "enum": [\n "not-applicable",\n "not-observed",\n "truncated",\n "provider-unavailable",\n "unresolved",\n "unknown"\n ],\n "type": "string"\n }\n },\n "required": [\n "available",\n "reason",\n "detail"\n ],\n "type": "object"\n }\n ]\n },\n "authority": {\n "enum": [\n "artifact-bytes",\n "ast-static-analysis",\n "static-relationship-inference",\n "passive-cdp-runtime",\n "cross-layer-reconciliation",\n "cross-version-comparison",\n "controlled-replay",\n "native-analysis-provider",\n "managed-static-analysis",\n "historical-reference",\n "user-assertion",\n "unknown"\n ],\n "type": "string"\n },\n "confidence": {\n "enum": [\n "exact",\n "high",\n "medium",\n "low",\n "unknown"\n ],\n "type": "string"\n },\n "coverage": {\n "anyOf": [\n {\n "additionalProperties": false,\n "properties": {\n "limits": {\n "items": {\n "additionalProperties": false,\n "properties": {\n "name": {\n "minLength": 1,\n "type": "string"\n },\n "unit": {\n "enum": [\n "items",\n "bytes",\n "milliseconds",\n "depth",\n "characters",\n "instructions",\n "other"\n ],\n "type": "string"\n },\n "value": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "name",\n "value",\n "unit"\n ],\n "type": "object"\n },\n "type": "array"\n },\n "omitted_count": {\n "const": 0,\n "type": "number"\n },\n "status": {\n "const": "complete",\n "type": "string"\n },\n "truncated": {\n "const": false,\n "type": "boolean"\n }\n },\n "required": [\n "status",\n "truncated",\n "omitted_count",\n "limits"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "limits": {\n "items": {\n "additionalProperties": false,\n "properties": {\n "name": {\n "minLength": 1,\n "type": "string"\n },\n "unit": {\n "enum": [\n "items",\n "bytes",\n "milliseconds",\n "depth",\n "characters",\n "instructions",\n "other"\n ],\n "type": "string"\n },\n "value": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "name",\n "value",\n "unit"\n ],\n "type": "object"\n },\n "type": "array"\n },\n "omitted_count": {\n "anyOf": [\n {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n {\n "type": "null"\n }\n ]\n },\n "status": {\n "const": "partial",\n "type": "string"\n },\n "truncated": {\n "const": false,\n "type": "boolean"\n }\n },\n "required": [\n "status",\n "truncated",\n "omitted_count",\n "limits"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "limits": {\n "items": {\n "additionalProperties": false,\n "properties": {\n "name": {\n "minLength": 1,\n "type": "string"\n },\n "unit": {\n "enum": [\n "items",\n "bytes",\n "milliseconds",\n "depth",\n "characters",\n "instructions",\n "other"\n ],\n "type": "string"\n },\n "value": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "name",\n "value",\n "unit"\n ],\n "type": "object"\n },\n "minItems": 1,\n "type": "array"\n },\n "omitted_count": {\n "anyOf": [\n {\n "exclusiveMinimum": 0,\n "maximum": 9007199254740991,\n "type": "integer"\n },\n {\n "type": "null"\n }\n ]\n },\n "status": {\n "const": "partial",\n "type": "string"\n },\n "truncated": {\n "const": true,\n "type": "boolean"\n }\n },\n "required": [\n "status",\n "truncated",\n "omitted_count",\n "limits"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "limits": {\n "items": {\n "additionalProperties": false,\n "properties": {\n "name": {\n "minLength": 1,\n "type": "string"\n },\n "unit": {\n "enum": [\n "items",\n "bytes",\n "milliseconds",\n "depth",\n "characters",\n "instructions",\n "other"\n ],\n "type": "string"\n },\n "value": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "name",\n "value",\n "unit"\n ],\n "type": "object"\n },\n "type": "array"\n },\n "omitted_count": {\n "type": "null"\n },\n "status": {\n "enum": [\n "unknown",\n "unavailable"\n ],\n "type": "string"\n },\n "truncated": {\n "const": false,\n "type": "boolean"\n }\n },\n "required": [\n "status",\n "truncated",\n "omitted_count",\n "limits"\n ],\n "type": "object"\n }\n ]\n },\n "evidence_ids": {\n "items": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "type": "array"\n },\n "extractor": {\n "additionalProperties": false,\n "properties": {\n "executable_sha256": {\n "anyOf": [\n {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "name": {\n "minLength": 1,\n "type": "string"\n },\n "operation": {\n "minLength": 1,\n "type": "string"\n },\n "version": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "name",\n "version",\n "operation",\n "executable_sha256"\n ],\n "type": "object"\n },\n "limitations": {\n "items": {\n "minLength": 1,\n "type": "string"\n },\n "type": "array"\n },\n "location": {\n "oneOf": [\n {\n "additionalProperties": false,\n "properties": {\n "available": {\n "const": true,\n "type": "boolean"\n },\n "value": {\n "oneOf": [\n {\n "additionalProperties": false,\n "properties": {\n "kind": {\n "const": "artifact-path",\n "type": "string"\n },\n "path": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "kind",\n "path"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "end": {\n "additionalProperties": false,\n "properties": {\n "column": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "line": {\n "maximum": 9007199254740991,\n "minimum": 1,\n "type": "integer"\n }\n },\n "required": [\n "line",\n "column"\n ],\n "type": "object"\n },\n "kind": {\n "const": "source-range",\n "type": "string"\n },\n "source": {\n "minLength": 1,\n "type": "string"\n },\n "start": {\n "additionalProperties": false,\n "properties": {\n "column": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "line": {\n "maximum": 9007199254740991,\n "minimum": 1,\n "type": "integer"\n }\n },\n "required": [\n "line",\n "column"\n ],\n "type": "object"\n }\n },\n "required": [\n "kind",\n "source",\n "start",\n "end"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "end": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "kind": {\n "const": "file-offset-range",\n "type": "string"\n },\n "start": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "kind",\n "start",\n "end"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "kind": {\n "const": "url",\n "type": "string"\n },\n "url": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "kind",\n "url"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "capture_sha256": {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n },\n "frame_key": {\n "anyOf": [\n {\n "minLength": 1,\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "kind": {\n "const": "runtime",\n "type": "string"\n },\n "script_key": {\n "anyOf": [\n {\n "minLength": 1,\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "target_key": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "kind",\n "capture_sha256",\n "target_key",\n "frame_key",\n "script_key"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "address": {\n "minLength": 1,\n "type": "string"\n },\n "kind": {\n "const": "native-address",\n "type": "string"\n },\n "symbol": {\n "anyOf": [\n {\n "minLength": 1,\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "kind",\n "address",\n "symbol"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "export_path": {\n "minLength": 1,\n "type": "string"\n },\n "kind": {\n "const": "package-export",\n "type": "string"\n },\n "package_name": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "kind",\n "package_name",\n "export_path"\n ],\n "type": "object"\n }\n ]\n }\n },\n "required": [\n "available",\n "value"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "available": {\n "const": false,\n "type": "boolean"\n },\n "detail": {\n "minLength": 1,\n "type": "string"\n },\n "reason": {\n "enum": [\n "not-applicable",\n "not-observed",\n "truncated",\n "provider-unavailable",\n "unresolved",\n "unknown"\n ],\n "type": "string"\n }\n },\n "required": [\n "available",\n "reason",\n "detail"\n ],\n "type": "object"\n }\n ]\n },\n "state": {\n "enum": [\n "observed",\n "inferred",\n "unknown",\n "unavailable"\n ],\n "type": "string"\n }\n },\n "required": [\n "authority",\n "state",\n "confidence",\n "artifact",\n "location",\n "extractor",\n "coverage",\n "limitations",\n "evidence_ids"\n ],\n "type": "object"\n },\n "function_node_id": {\n "anyOf": [\n {\n "pattern": "^jsrg_node_[a-f0-9]{64}$",\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "identifier_strategy": {\n "additionalProperties": false,\n "properties": {\n "stability": {\n "const": "artifact-version",\n "type": "string"\n },\n "strategy": {\n "const": "semantic-content-sha256",\n "type": "string"\n }\n },\n "required": [\n "strategy",\n "stability"\n ],\n "type": "object"\n },\n "identity": {\n "additionalProperties": false,\n "properties": {\n "artifact_sha256": {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n },\n "module_path": {\n "minLength": 1,\n "type": "string"\n },\n "role_key": {\n "minLength": 1,\n "type": "string"\n },\n "source_range": {\n "anyOf": [\n {\n "additionalProperties": false,\n "properties": {\n "end": {\n "additionalProperties": false,\n "properties": {\n "column": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "line": {\n "maximum": 9007199254740991,\n "minimum": 1,\n "type": "integer"\n }\n },\n "required": [\n "line",\n "column"\n ],\n "type": "object"\n },\n "start": {\n "additionalProperties": false,\n "properties": {\n "column": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "line": {\n "maximum": 9007199254740991,\n "minimum": 1,\n "type": "integer"\n }\n },\n "required": [\n "line",\n "column"\n ],\n "type": "object"\n }\n },\n "required": [\n "start",\n "end"\n ],\n "type": "object"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "artifact_sha256",\n "module_path",\n "source_range",\n "role_key"\n ],\n "type": "object"\n },\n "kind": {\n "enum": [\n "module",\n "function",\n "parameter",\n "binding",\n "expression",\n "literal",\n "property-slot",\n "call-site",\n "return-site",\n "closure-capture",\n "promise",\n "task",\n "event",\n "listener",\n "timer",\n "child-process",\n "stdio",\n "signal",\n "config-source",\n "request",\n "response",\n "boundary",\n "resource",\n "unknown-frontier"\n ],\n "type": "string"\n },\n "label": {\n "anyOf": [\n {\n "minLength": 1,\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "node_id": {\n "pattern": "^jsrg_node_[a-f0-9]{64}$",\n "type": "string"\n },\n "properties": {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "propertyNames": {\n "minLength": 1,\n "type": "string"\n },\n "type": "object"\n }\n },\n "required": [\n "kind",\n "identity",\n "function_node_id",\n "application_node_ids",\n "label",\n "properties",\n "evidence",\n "node_id",\n "identifier_strategy"\n ],\n "type": "object"\n },\n "type": "array"\n },\n "query_id": {\n "pattern": "^jsrq_[a-f0-9]{64}$",\n "type": "string"\n },\n "relations": {\n "items": {\n "additionalProperties": false,\n "properties": {\n "evidence": {\n "additionalProperties": false,\n "properties": {\n "artifact": {\n "oneOf": [\n {\n "additionalProperties": false,\n "properties": {\n "artifact_id": {\n "pattern": "^art_[a-f0-9]{64}$",\n "type": "string"\n },\n "available": {\n "const": true,\n "type": "boolean"\n },\n "sha256": {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n }\n },\n "required": [\n "available",\n "artifact_id",\n "sha256"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "available": {\n "const": false,\n "type": "boolean"\n },\n "detail": {\n "minLength": 1,\n "type": "string"\n },\n "reason": {\n "enum": [\n "not-applicable",\n "not-observed",\n "truncated",\n "provider-unavailable",\n "unresolved",\n "unknown"\n ],\n "type": "string"\n }\n },\n "required": [\n "available",\n "reason",\n "detail"\n ],\n "type": "object"\n }\n ]\n },\n "authority": {\n "enum": [\n "artifact-bytes",\n "ast-static-analysis",\n "static-relationship-inference",\n "passive-cdp-runtime",\n "cross-layer-reconciliation",\n "cross-version-comparison",\n "controlled-replay",\n "native-analysis-provider",\n "managed-static-analysis",\n "historical-reference",\n "user-assertion",\n "unknown"\n ],\n "type": "string"\n },\n "confidence": {\n "enum": [\n "exact",\n "high",\n "medium",\n "low",\n "unknown"\n ],\n "type": "string"\n },\n "coverage": {\n "anyOf": [\n {\n "additionalProperties": false,\n "properties": {\n "limits": {\n "items": {\n "additionalProperties": false,\n "properties": {\n "name": {\n "minLength": 1,\n "type": "string"\n },\n "unit": {\n "enum": [\n "items",\n "bytes",\n "milliseconds",\n "depth",\n "characters",\n "instructions",\n "other"\n ],\n "type": "string"\n },\n "value": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "name",\n "value",\n "unit"\n ],\n "type": "object"\n },\n "type": "array"\n },\n "omitted_count": {\n "const": 0,\n "type": "number"\n },\n "status": {\n "const": "complete",\n "type": "string"\n },\n "truncated": {\n "const": false,\n "type": "boolean"\n }\n },\n "required": [\n "status",\n "truncated",\n "omitted_count",\n "limits"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "limits": {\n "items": {\n "additionalProperties": false,\n "properties": {\n "name": {\n "minLength": 1,\n "type": "string"\n },\n "unit": {\n "enum": [\n "items",\n "bytes",\n "milliseconds",\n "depth",\n "characters",\n "instructions",\n "other"\n ],\n "type": "string"\n },\n "value": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "name",\n "value",\n "unit"\n ],\n "type": "object"\n },\n "type": "array"\n },\n "omitted_count": {\n "anyOf": [\n {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n {\n "type": "null"\n }\n ]\n },\n "status": {\n "const": "partial",\n "type": "string"\n },\n "truncated": {\n "const": false,\n "type": "boolean"\n }\n },\n "required": [\n "status",\n "truncated",\n "omitted_count",\n "limits"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "limits": {\n "items": {\n "additionalProperties": false,\n "properties": {\n "name": {\n "minLength": 1,\n "type": "string"\n },\n "unit": {\n "enum": [\n "items",\n "bytes",\n "milliseconds",\n "depth",\n "characters",\n "instructions",\n "other"\n ],\n "type": "string"\n },\n "value": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "name",\n "value",\n "unit"\n ],\n "type": "object"\n },\n "minItems": 1,\n "type": "array"\n },\n "omitted_count": {\n "anyOf": [\n {\n "exclusiveMinimum": 0,\n "maximum": 9007199254740991,\n "type": "integer"\n },\n {\n "type": "null"\n }\n ]\n },\n "status": {\n "const": "partial",\n "type": "string"\n },\n "truncated": {\n "const": true,\n "type": "boolean"\n }\n },\n "required": [\n "status",\n "truncated",\n "omitted_count",\n "limits"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "limits": {\n "items": {\n "additionalProperties": false,\n "properties": {\n "name": {\n "minLength": 1,\n "type": "string"\n },\n "unit": {\n "enum": [\n "items",\n "bytes",\n "milliseconds",\n "depth",\n "characters",\n "instructions",\n "other"\n ],\n "type": "string"\n },\n "value": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "name",\n "value",\n "unit"\n ],\n "type": "object"\n },\n "type": "array"\n },\n "omitted_count": {\n "type": "null"\n },\n "status": {\n "enum": [\n "unknown",\n "unavailable"\n ],\n "type": "string"\n },\n "truncated": {\n "const": false,\n "type": "boolean"\n }\n },\n "required": [\n "status",\n "truncated",\n "omitted_count",\n "limits"\n ],\n "type": "object"\n }\n ]\n },\n "evidence_ids": {\n "items": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "type": "array"\n },\n "extractor": {\n "additionalProperties": false,\n "properties": {\n "executable_sha256": {\n "anyOf": [\n {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "name": {\n "minLength": 1,\n "type": "string"\n },\n "operation": {\n "minLength": 1,\n "type": "string"\n },\n "version": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "name",\n "version",\n "operation",\n "executable_sha256"\n ],\n "type": "object"\n },\n "limitations": {\n "items": {\n "minLength": 1,\n "type": "string"\n },\n "type": "array"\n },\n "location": {\n "oneOf": [\n {\n "additionalProperties": false,\n "properties": {\n "available": {\n "const": true,\n "type": "boolean"\n },\n "value": {\n "oneOf": [\n {\n "additionalProperties": false,\n "properties": {\n "kind": {\n "const": "artifact-path",\n "type": "string"\n },\n "path": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "kind",\n "path"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "end": {\n "additionalProperties": false,\n "properties": {\n "column": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "line": {\n "maximum": 9007199254740991,\n "minimum": 1,\n "type": "integer"\n }\n },\n "required": [\n "line",\n "column"\n ],\n "type": "object"\n },\n "kind": {\n "const": "source-range",\n "type": "string"\n },\n "source": {\n "minLength": 1,\n "type": "string"\n },\n "start": {\n "additionalProperties": false,\n "properties": {\n "column": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "line": {\n "maximum": 9007199254740991,\n "minimum": 1,\n "type": "integer"\n }\n },\n "required": [\n "line",\n "column"\n ],\n "type": "object"\n }\n },\n "required": [\n "kind",\n "source",\n "start",\n "end"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "end": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "kind": {\n "const": "file-offset-range",\n "type": "string"\n },\n "start": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "kind",\n "start",\n "end"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "kind": {\n "const": "url",\n "type": "string"\n },\n "url": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "kind",\n "url"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "capture_sha256": {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n },\n "frame_key": {\n "anyOf": [\n {\n "minLength": 1,\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "kind": {\n "const": "runtime",\n "type": "string"\n },\n "script_key": {\n "anyOf": [\n {\n "minLength": 1,\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "target_key": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "kind",\n "capture_sha256",\n "target_key",\n "frame_key",\n "script_key"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "address": {\n "minLength": 1,\n "type": "string"\n },\n "kind": {\n "const": "native-address",\n "type": "string"\n },\n "symbol": {\n "anyOf": [\n {\n "minLength": 1,\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "kind",\n "address",\n "symbol"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "export_path": {\n "minLength": 1,\n "type": "string"\n },\n "kind": {\n "const": "package-export",\n "type": "string"\n },\n "package_name": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "kind",\n "package_name",\n "export_path"\n ],\n "type": "object"\n }\n ]\n }\n },\n "required": [\n "available",\n "value"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "available": {\n "const": false,\n "type": "boolean"\n },\n "detail": {\n "minLength": 1,\n "type": "string"\n },\n "reason": {\n "enum": [\n "not-applicable",\n "not-observed",\n "truncated",\n "provider-unavailable",\n "unresolved",\n "unknown"\n ],\n "type": "string"\n }\n },\n "required": [\n "available",\n "reason",\n "detail"\n ],\n "type": "object"\n }\n ]\n },\n "state": {\n "enum": [\n "observed",\n "inferred",\n "unknown",\n "unavailable"\n ],\n "type": "string"\n }\n },\n "required": [\n "authority",\n "state",\n "confidence",\n "artifact",\n "location",\n "extractor",\n "coverage",\n "limitations",\n "evidence_ids"\n ],\n "type": "object"\n },\n "identifier_strategy": {\n "additionalProperties": false,\n "properties": {\n "stability": {\n "const": "relationship-exact",\n "type": "string"\n },\n "strategy": {\n "const": "semantic-content-sha256",\n "type": "string"\n }\n },\n "required": [\n "strategy",\n "stability"\n ],\n "type": "object"\n },\n "properties": {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "propertyNames": {\n "minLength": 1,\n "type": "string"\n },\n "type": "object"\n },\n "relation": {\n "enum": [\n "acquires",\n "aggregates",\n "aliases",\n "argument-to-parameter",\n "awaits",\n "calls",\n "cancels-timer",\n "captures",\n "chains",\n "coerces",\n "connects-stdio",\n "consumed-by",\n "constructs-request",\n "creates-promise",\n "defaults",\n "defines",\n "destructures",\n "detaches-task",\n "dispatches-candidate",\n "forwards-signal",\n "listens-error",\n "listens-exit",\n "owns",\n "overrides",\n "parses",\n "reads",\n "reads-argv",\n "reads-config",\n "reads-environment",\n "reads-property",\n "registers-listener",\n "releases",\n "removes-listener",\n "returns-task",\n "returns-to-call",\n "schedules-timer",\n "spawns",\n "spreads",\n "supplies-argv",\n "supplies-env",\n "supplies-request-field",\n "validates",\n "writes",\n "writes-property"\n ],\n "type": "string"\n },\n "relation_id": {\n "pattern": "^jsrg_relation_[a-f0-9]{64}$",\n "type": "string"\n },\n "resolution": {\n "enum": [\n "resolved",\n "candidate"\n ],\n "type": "string"\n },\n "source_node_id": {\n "pattern": "^jsrg_node_[a-f0-9]{64}$",\n "type": "string"\n },\n "target_node_id": {\n "pattern": "^jsrg_node_[a-f0-9]{64}$",\n "type": "string"\n }\n },\n "required": [\n "source_node_id",\n "target_node_id",\n "relation",\n "resolution",\n "properties",\n "evidence",\n "relation_id",\n "identifier_strategy"\n ],\n "type": "object"\n },\n "type": "array"\n },\n "seed": {\n "oneOf": [\n {\n "additionalProperties": false,\n "properties": {\n "kind": {\n "const": "semantic-node",\n "type": "string"\n },\n "node_id": {\n "pattern": "^jsrg_node_[a-f0-9]{64}$",\n "type": "string"\n }\n },\n "required": [\n "kind",\n "node_id"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "kind": {\n "const": "application-node",\n "type": "string"\n },\n "node_id": {\n "pattern": "^jag_node_[a-f0-9]{64}$",\n "type": "string"\n }\n },\n "required": [\n "kind",\n "node_id"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "kind": {\n "const": "literal",\n "type": "string"\n },\n "value": {\n "$ref": "#/$defs/__schema0"\n }\n },\n "required": [\n "kind",\n "value"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "fingerprint_sha256": {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n },\n "kind": {\n "const": "function",\n "type": "string"\n }\n },\n "required": [\n "kind",\n "fingerprint_sha256"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "kind": {\n "const": "property",\n "type": "string"\n },\n "name": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "kind",\n "name"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "kind": {\n "const": "endpoint",\n "type": "string"\n },\n "value": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "kind",\n "value"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "kind": {\n "const": "event",\n "type": "string"\n },\n "name": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "kind",\n "name"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "field": {\n "minLength": 1,\n "type": "string"\n },\n "kind": {\n "const": "boundary-field",\n "type": "string"\n }\n },\n "required": [\n "kind",\n "field"\n ],\n "type": "object"\n }\n ]\n },\n "seed_node_ids": {\n "items": {\n "pattern": "^jsrg_node_[a-f0-9]{64}$",\n "type": "string"\n },\n "type": "array"\n },\n "source_evidence_id": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "source_graph_id": {\n "pattern": "^jsrg_[a-f0-9]{64}$",\n "type": "string"\n },\n "status": {\n "enum": [\n "found",\n "no-match",\n "ambiguous",\n "partial",\n "unsupported"\n ],\n "type": "string"\n },\n "summary": {\n "additionalProperties": false,\n "properties": {\n "relevant_unknowns": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "total_seed_matches": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "traversed_functions": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "traversed_modules": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "traversed_nodes": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "traversed_relations": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "total_seed_matches",\n "traversed_nodes",\n "traversed_relations",\n "traversed_functions",\n "traversed_modules",\n "relevant_unknowns"\n ],\n "type": "object"\n },\n "unknowns": {\n "items": {\n "additionalProperties": false,\n "properties": {\n "candidate_node_ids": {\n "items": {\n "pattern": "^jsrg_node_[a-f0-9]{64}$",\n "type": "string"\n },\n "type": "array"\n },\n "detail": {\n "minLength": 1,\n "type": "string"\n },\n "evidence": {\n "additionalProperties": false,\n "properties": {\n "artifact": {\n "oneOf": [\n {\n "additionalProperties": false,\n "properties": {\n "artifact_id": {\n "pattern": "^art_[a-f0-9]{64}$",\n "type": "string"\n },\n "available": {\n "const": true,\n "type": "boolean"\n },\n "sha256": {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n }\n },\n "required": [\n "available",\n "artifact_id",\n "sha256"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "available": {\n "const": false,\n "type": "boolean"\n },\n "detail": {\n "minLength": 1,\n "type": "string"\n },\n "reason": {\n "enum": [\n "not-applicable",\n "not-observed",\n "truncated",\n "provider-unavailable",\n "unresolved",\n "unknown"\n ],\n "type": "string"\n }\n },\n "required": [\n "available",\n "reason",\n "detail"\n ],\n "type": "object"\n }\n ]\n },\n "authority": {\n "enum": [\n "artifact-bytes",\n "ast-static-analysis",\n "static-relationship-inference",\n "passive-cdp-runtime",\n "cross-layer-reconciliation",\n "cross-version-comparison",\n "controlled-replay",\n "native-analysis-provider",\n "managed-static-analysis",\n "historical-reference",\n "user-assertion",\n "unknown"\n ],\n "type": "string"\n },\n "confidence": {\n "enum": [\n "exact",\n "high",\n "medium",\n "low",\n "unknown"\n ],\n "type": "string"\n },\n "coverage": {\n "anyOf": [\n {\n "additionalProperties": false,\n "properties": {\n "limits": {\n "items": {\n "additionalProperties": false,\n "properties": {\n "name": {\n "minLength": 1,\n "type": "string"\n },\n "unit": {\n "enum": [\n "items",\n "bytes",\n "milliseconds",\n "depth",\n "characters",\n "instructions",\n "other"\n ],\n "type": "string"\n },\n "value": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "name",\n "value",\n "unit"\n ],\n "type": "object"\n },\n "type": "array"\n },\n "omitted_count": {\n "const": 0,\n "type": "number"\n },\n "status": {\n "const": "complete",\n "type": "string"\n },\n "truncated": {\n "const": false,\n "type": "boolean"\n }\n },\n "required": [\n "status",\n "truncated",\n "omitted_count",\n "limits"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "limits": {\n "items": {\n "additionalProperties": false,\n "properties": {\n "name": {\n "minLength": 1,\n "type": "string"\n },\n "unit": {\n "enum": [\n "items",\n "bytes",\n "milliseconds",\n "depth",\n "characters",\n "instructions",\n "other"\n ],\n "type": "string"\n },\n "value": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "name",\n "value",\n "unit"\n ],\n "type": "object"\n },\n "type": "array"\n },\n "omitted_count": {\n "anyOf": [\n {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n {\n "type": "null"\n }\n ]\n },\n "status": {\n "const": "partial",\n "type": "string"\n },\n "truncated": {\n "const": false,\n "type": "boolean"\n }\n },\n "required": [\n "status",\n "truncated",\n "omitted_count",\n "limits"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "limits": {\n "items": {\n "additionalProperties": false,\n "properties": {\n "name": {\n "minLength": 1,\n "type": "string"\n },\n "unit": {\n "enum": [\n "items",\n "bytes",\n "milliseconds",\n "depth",\n "characters",\n "instructions",\n "other"\n ],\n "type": "string"\n },\n "value": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "name",\n "value",\n "unit"\n ],\n "type": "object"\n },\n "minItems": 1,\n "type": "array"\n },\n "omitted_count": {\n "anyOf": [\n {\n "exclusiveMinimum": 0,\n "maximum": 9007199254740991,\n "type": "integer"\n },\n {\n "type": "null"\n }\n ]\n },\n "status": {\n "const": "partial",\n "type": "string"\n },\n "truncated": {\n "const": true,\n "type": "boolean"\n }\n },\n "required": [\n "status",\n "truncated",\n "omitted_count",\n "limits"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "limits": {\n "items": {\n "additionalProperties": false,\n "properties": {\n "name": {\n "minLength": 1,\n "type": "string"\n },\n "unit": {\n "enum": [\n "items",\n "bytes",\n "milliseconds",\n "depth",\n "characters",\n "instructions",\n "other"\n ],\n "type": "string"\n },\n "value": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "name",\n "value",\n "unit"\n ],\n "type": "object"\n },\n "type": "array"\n },\n "omitted_count": {\n "type": "null"\n },\n "status": {\n "enum": [\n "unknown",\n "unavailable"\n ],\n "type": "string"\n },\n "truncated": {\n "const": false,\n "type": "boolean"\n }\n },\n "required": [\n "status",\n "truncated",\n "omitted_count",\n "limits"\n ],\n "type": "object"\n }\n ]\n },\n "evidence_ids": {\n "items": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "type": "array"\n },\n "extractor": {\n "additionalProperties": false,\n "properties": {\n "executable_sha256": {\n "anyOf": [\n {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "name": {\n "minLength": 1,\n "type": "string"\n },\n "operation": {\n "minLength": 1,\n "type": "string"\n },\n "version": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "name",\n "version",\n "operation",\n "executable_sha256"\n ],\n "type": "object"\n },\n "limitations": {\n "items": {\n "minLength": 1,\n "type": "string"\n },\n "type": "array"\n },\n "location": {\n "oneOf": [\n {\n "additionalProperties": false,\n "properties": {\n "available": {\n "const": true,\n "type": "boolean"\n },\n "value": {\n "oneOf": [\n {\n "additionalProperties": false,\n "properties": {\n "kind": {\n "const": "artifact-path",\n "type": "string"\n },\n "path": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "kind",\n "path"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "end": {\n "additionalProperties": false,\n "properties": {\n "column": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "line": {\n "maximum": 9007199254740991,\n "minimum": 1,\n "type": "integer"\n }\n },\n "required": [\n "line",\n "column"\n ],\n "type": "object"\n },\n "kind": {\n "const": "source-range",\n "type": "string"\n },\n "source": {\n "minLength": 1,\n "type": "string"\n },\n "start": {\n "additionalProperties": false,\n "properties": {\n "column": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "line": {\n "maximum": 9007199254740991,\n "minimum": 1,\n "type": "integer"\n }\n },\n "required": [\n "line",\n "column"\n ],\n "type": "object"\n }\n },\n "required": [\n "kind",\n "source",\n "start",\n "end"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "end": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "kind": {\n "const": "file-offset-range",\n "type": "string"\n },\n "start": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "kind",\n "start",\n "end"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "kind": {\n "const": "url",\n "type": "string"\n },\n "url": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "kind",\n "url"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "capture_sha256": {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n },\n "frame_key": {\n "anyOf": [\n {\n "minLength": 1,\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "kind": {\n "const": "runtime",\n "type": "string"\n },\n "script_key": {\n "anyOf": [\n {\n "minLength": 1,\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "target_key": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "kind",\n "capture_sha256",\n "target_key",\n "frame_key",\n "script_key"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "address": {\n "minLength": 1,\n "type": "string"\n },\n "kind": {\n "const": "native-address",\n "type": "string"\n },\n "symbol": {\n "anyOf": [\n {\n "minLength": 1,\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "kind",\n "address",\n "symbol"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "export_path": {\n "minLength": 1,\n "type": "string"\n },\n "kind": {\n "const": "package-export",\n "type": "string"\n },\n "package_name": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "kind",\n "package_name",\n "export_path"\n ],\n "type": "object"\n }\n ]\n }\n },\n "required": [\n "available",\n "value"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "available": {\n "const": false,\n "type": "boolean"\n },\n "detail": {\n "minLength": 1,\n "type": "string"\n },\n "reason": {\n "enum": [\n "not-applicable",\n "not-observed",\n "truncated",\n "provider-unavailable",\n "unresolved",\n "unknown"\n ],\n "type": "string"\n }\n },\n "required": [\n "available",\n "reason",\n "detail"\n ],\n "type": "object"\n }\n ]\n },\n "state": {\n "enum": [\n "observed",\n "inferred",\n "unknown",\n "unavailable"\n ],\n "type": "string"\n }\n },\n "required": [\n "authority",\n "state",\n "confidence",\n "artifact",\n "location",\n "extractor",\n "coverage",\n "limitations",\n "evidence_ids"\n ],\n "type": "object"\n },\n "family": {\n "enum": [\n "boundary",\n "call-flow",\n "child-process",\n "closure",\n "configuration",\n "data-flow",\n "event",\n "object-flow",\n "promise-ownership",\n "request",\n "resource-lifecycle",\n "timer"\n ],\n "type": "string"\n },\n "node_id": {\n "anyOf": [\n {\n "pattern": "^jsrg_node_[a-f0-9]{64}$",\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "reason": {\n "enum": [\n "ambiguous-target",\n "bound-reached",\n "dynamic-call",\n "dynamic-property",\n "dynamic-scope",\n "eval-or-generated-code",\n "incomplete-module",\n "missing-source",\n "unsupported-syntax"\n ],\n "type": "string"\n },\n "relation_kinds": {\n "items": {\n "enum": [\n "acquires",\n "aggregates",\n "aliases",\n "argument-to-parameter",\n "awaits",\n "calls",\n "cancels-timer",\n "captures",\n "chains",\n "coerces",\n "connects-stdio",\n "consumed-by",\n "constructs-request",\n "creates-promise",\n "defaults",\n "defines",\n "destructures",\n "detaches-task",\n "dispatches-candidate",\n "forwards-signal",\n "listens-error",\n "listens-exit",\n "owns",\n "overrides",\n "parses",\n "reads",\n "reads-argv",\n "reads-config",\n "reads-environment",\n "reads-property",\n "registers-listener",\n "releases",\n "removes-listener",\n "returns-task",\n "returns-to-call",\n "schedules-timer",\n "spawns",\n "spreads",\n "supplies-argv",\n "supplies-env",\n "supplies-request-field",\n "validates",\n "writes",\n "writes-property"\n ],\n "type": "string"\n },\n "minItems": 1,\n "type": "array"\n },\n "unknown_id": {\n "pattern": "^jsrg_unknown_[a-f0-9]{64}$",\n "type": "string"\n }\n },\n "required": [\n "node_id",\n "family",\n "relation_kinds",\n "reason",\n "detail",\n "candidate_node_ids",\n "evidence",\n "unknown_id"\n ],\n "type": "object"\n },\n "type": "array"\n }\n },\n "required": [\n "query_id",\n "source_graph_id",\n "seed",\n "direction",\n "status",\n "seed_node_ids",\n "nodes",\n "relations",\n "unknowns",\n "expected_match_node_ids",\n "summary",\n "coverage",\n "limitations",\n "source_evidence_id",\n "evidence_links"\n ],\n "type": "object"\n }\n },\n "required": [\n "result",\n "evidence_id",\n "evidence"\n ],\n "type": "object"\n },\n "requiresSession": false,\n "title": "Trace Javascript Semantics"\n },\n {\n "analysisOperation": null,\n "annotations": {\n "destructiveHint": false,\n "idempotentHint": true,\n "openWorldHint": false,\n "readOnlyHint": false\n },\n "description": "Compare two authenticated JavaScript Application Graph versions supplied as inline Evidence or exact same-session retained references. 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 the complete matching changed_from graph without fuzzy or module-ordinal pairing.",\n "effects": {\n "accessesNetwork": false,\n "changesUiState": false,\n "idempotent": true,\n "launchesProcess": false,\n "mayDiscardData": false,\n "mutatesSession": true,\n "mutatesTarget": false,\n "writesFilesystem": false\n },\n "inputSchema": {\n "$defs": {\n "__schema0": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "number"\n },\n {\n "type": "boolean"\n },\n {\n "type": "null"\n },\n {\n "items": {\n "$ref": "#/$defs/__schema0"\n },\n "type": "array"\n },\n {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n }\n ]\n }\n },\n "$schema": "https://json-schema.org/draft/2020-12/schema",\n "additionalProperties": false,\n "examples": [\n {\n "left": {\n "authority": "shipped-artifact",\n "confidence": "derived",\n "environment": null,\n "evidence_id": "ev_a4ae2c7b5c501fb6dff695b168f35a6dd157fa957410910684f3a4ce4c8b5d54",\n "evidence_links": [],\n "limitations": [],\n "locations": [],\n "normalized_result": {\n "format": "directory",\n "graph": {\n "coverage": {\n "limits": [],\n "omitted_count": 0,\n "status": "complete",\n "truncated": false\n },\n "edges": [],\n "graph_id": "jag_ab15669664efc0a86bb49c9c60241913cce6980dc2293fbeef6d9c862ca01d9d",\n "limitations": [],\n "nodes": [\n {\n "identity": {\n "sha256": "c4c0d760a4c84f0e182de99f6ef89ef10831f8170e486c4d4bd934924151ba64",\n "stability": "global-exact",\n "strategy": "content-digest"\n },\n "kind": "javascript-asset",\n "node_id": "jag_node_3c82da5492d90eb5b0bee41c1a994d88b7ba98c0b4955270d70e57a76e224c2e",\n "observations": [\n {\n "evidence": {\n "artifact": {\n "artifact_id": "art_c4c0d760a4c84f0e182de99f6ef89ef10831f8170e486c4d4bd934924151ba64",\n "available": true,\n "sha256": "c4c0d760a4c84f0e182de99f6ef89ef10831f8170e486c4d4bd934924151ba64"\n },\n "authority": "artifact-bytes",\n "confidence": "exact",\n "coverage": {\n "limits": [],\n "omitted_count": 0,\n "status": "complete",\n "truncated": false\n },\n "evidence_ids": [],\n "extractor": {\n "executable_sha256": null,\n "name": "rea-javascript-application",\n "operation": "inventory-relevant-file",\n "version": "1"\n },\n "limitations": [],\n "location": {\n "available": true,\n "value": {\n "kind": "artifact-path",\n "path": "renderer.js"\n }\n },\n "state": "observed"\n },\n "identifier_strategy": {\n "stability": "observation-exact",\n "strategy": "semantic-content-sha256"\n },\n "label": "renderer.js",\n "observation_id": "jag_observation_20b4d076ce370db14ae2b477915624c62e0c4a0c9e56803a2c5cb4fa60c16230",\n "properties": {\n "bytes": 29,\n "path": "renderer.js"\n }\n }\n ]\n }\n ],\n "root_node_ids": [\n "jag_node_3c82da5492d90eb5b0bee41c1a994d88b7ba98c0b4955270d70e57a76e224c2e"\n ],\n "schema": "JavaScriptApplicationGraph"\n },\n "input_path": "/Applications/Example.app/Contents/Resources/app",\n "inventory_graph_sha256": "3333333333333333333333333333333333333333333333333333333333333333",\n "inventory_manifest_id": "agm_2222222222222222222222222222222222222222222222222222222222222222",\n "limitations": [],\n "root_artifact_sha256": "1111111111111111111111111111111111111111111111111111111111111111",\n "semantic_graph": {\n "application_graph_id": "jag_ab15669664efc0a86bb49c9c60241913cce6980dc2293fbeef6d9c862ca01d9d",\n "coverage": {\n "families": [\n {\n "family": "boundary",\n "omitted_relations": 0,\n "retained_relations": 0,\n "status": "unknown",\n "unknown_ids": []\n },\n {\n "family": "call-flow",\n "omitted_relations": 0,\n "retained_relations": 0,\n "status": "unknown",\n "unknown_ids": []\n },\n {\n "family": "child-process",\n "omitted_relations": 0,\n "retained_relations": 0,\n "status": "unknown",\n "unknown_ids": []\n },\n {\n "family": "closure",\n "omitted_relations": 0,\n "retained_relations": 0,\n "status": "unknown",\n "unknown_ids": []\n },\n {\n "family": "configuration",\n "omitted_relations": 0,\n "retained_relations": 0,\n "status": "unknown",\n "unknown_ids": []\n },\n {\n "family": "data-flow",\n "omitted_relations": 0,\n "retained_relations": 0,\n "status": "unknown",\n "unknown_ids": []\n },\n {\n "family": "event",\n "omitted_relations": 0,\n "retained_relations": 0,\n "status": "unknown",\n "unknown_ids": []\n },\n {\n "family": "object-flow",\n "omitted_relations": 0,\n "retained_relations": 0,\n "status": "unknown",\n "unknown_ids": []\n },\n {\n "family": "promise-ownership",\n "omitted_relations": 0,\n "retained_relations": 0,\n "status": "unknown",\n "unknown_ids": []\n },\n {\n "family": "request",\n "omitted_relations": 0,\n "retained_relations": 0,\n "status": "unknown",\n "unknown_ids": []\n },\n {\n "family": "resource-lifecycle",\n "omitted_relations": 0,\n "retained_relations": 0,\n "status": "unknown",\n "unknown_ids": []\n },\n {\n "family": "timer",\n "omitted_relations": 0,\n "retained_relations": 0,\n "status": "unknown",\n "unknown_ids": []\n }\n ],\n "limits": [],\n "omitted_nodes": 0,\n "omitted_relations": 0,\n "status": "unknown",\n "truncated": false\n },\n "fingerprints": [],\n "graph_id": "jsrg_08c925d2bf4ef56d770e0e67901d5bdfb610744cf001a50d36c9bb6dcb195508",\n "limitations": [\n "Semantic relations are unavailable in this minimal example."\n ],\n "nodes": [\n {\n "application_node_ids": [\n "jag_node_3c82da5492d90eb5b0bee41c1a994d88b7ba98c0b4955270d70e57a76e224c2e"\n ],\n "evidence": {\n "artifact": {\n "artifact_id": "art_c4c0d760a4c84f0e182de99f6ef89ef10831f8170e486c4d4bd934924151ba64",\n "available": true,\n "sha256": "c4c0d760a4c84f0e182de99f6ef89ef10831f8170e486c4d4bd934924151ba64"\n },\n "authority": "artifact-bytes",\n "confidence": "exact",\n "coverage": {\n "limits": [],\n "omitted_count": 0,\n "status": "complete",\n "truncated": false\n },\n "evidence_ids": [],\n "extractor": {\n "executable_sha256": null,\n "name": "rea-javascript-application",\n "operation": "inventory-relevant-file",\n "version": "1"\n },\n "limitations": [],\n "location": {\n "available": true,\n "value": {\n "kind": "artifact-path",\n "path": "renderer.js"\n }\n },\n "state": "observed"\n },\n "function_node_id": null,\n "identifier_strategy": {\n "stability": "artifact-version",\n "strategy": "semantic-content-sha256"\n },\n "identity": {\n "artifact_sha256": "1111111111111111111111111111111111111111111111111111111111111111",\n "module_path": "renderer.js",\n "role_key": "example-module",\n "source_range": null\n },\n "kind": "module",\n "label": "renderer.js",\n "node_id": "jsrg_node_9476602f1f74433a2bd3dadb040a25734d203b8f831b31a8d96f7efdfc5cd66a",\n "properties": {}\n }\n ],\n "relations": [],\n "root_artifact_sha256": "1111111111111111111111111111111111111111111111111111111111111111",\n "root_node_ids": [\n "jsrg_node_9476602f1f74433a2bd3dadb040a25734d203b8f831b31a8d96f7efdfc5cd66a"\n ],\n "schema": "JavaScriptSemanticRelationGraph",\n "unknowns": []\n },\n "statistics": {\n "findings": 0,\n "invalid_utf8_files": 0,\n "modules": 0,\n "nested_asar_containers": 0,\n "parse_failures": 0,\n "parsed_javascript_files": 1,\n "relevant_files": 1,\n "text_bytes_read": 29,\n "truncated_scopes": 0,\n "visited_ast_nodes": 1\n },\n "summary": {\n "browser_windows": 0,\n "context_bridge_apis": 0,\n "explicit_web_preferences": 0,\n "exposed_api_members": 0,\n "ipc": {\n "ambiguous_renderer_transmissions": 0,\n "dynamic_channel_operations": 0,\n "literal_channels": 0,\n "main_handlers": 0,\n "operations": 0,\n "paired_renderer_transmissions": 0,\n "renderer_listeners": 0,\n "renderer_transmissions": 0,\n "unpaired_literal_renderer_transmissions": 0\n },\n "native_addon_bindings": 0,\n "preload_entrypoints": 0,\n "resolved_native_addon_bindings": 0,\n "resolved_utility_entrypoints": 0,\n "sender_validation_observations": 0,\n "utility_processes": 0\n }\n },\n "operation": "analyze_javascript_application",\n "parameters": {},\n "predicate_type": "rea.javascript-application-analysis",\n "provider": {\n "id": "rea-javascript-application",\n "name": "REA JavaScript application analyzer",\n "version": "1"\n },\n "raw_result": null,\n "subject": {\n "architecture": null,\n "digest": {\n "sha256": "1111111111111111111111111111111111111111111111111111111111111111"\n },\n "format": "directory",\n "local_path": "/Applications/Example.app/Contents/Resources/app",\n "name": "app"\n }\n },\n "right": {\n "authority": "analyst-inference",\n "confidence": "inferred",\n "environment": null,\n "evidence_id": "ev_c2754cf75e286b839ed825f247062067a6472acb1e7b6ce0f9aaceec6448d6d7",\n "evidence_links": [\n "ev_a42606ee799a093832ad3d6cfd0edd50dc9b99f78cc6d5d9130b734d48a56b4e",\n "ev_a4ae2c7b5c501fb6dff695b168f35a6dd157fa957410910684f3a4ce4c8b5d54"\n ],\n "limitations": [\n "Artifact identity is unavailable for this observation.",\n "A static module resident in an observed bundle is not reported as executed.",\n "Caller-declared file and URL mappings are inference inputs and do not expand CDP origin or filesystem-root authority.",\n "Digest equality establishes byte identity but not code reachability, module initialization, or feature execution.",\n "Not-observed means absent from the bounded captures in scope, never globally unloaded.",\n "Only caller-supplied, semantically verified Evidence records were reconciled.",\n "Source-map authority remains separate from passive runtime authority."\n ],\n "locations": [],\n "normalized_result": {\n "coverage": {\n "omitted_graph_items": 0,\n "omitted_reconciliation_items": 0,\n "omitted_runtime_entities": 0,\n "omitted_static_load_states": 0,\n "status": "complete-within-inputs",\n "truncated": false\n },\n "evidence_links": [\n "ev_a42606ee799a093832ad3d6cfd0edd50dc9b99f78cc6d5d9130b734d48a56b4e",\n "ev_a4ae2c7b5c501fb6dff695b168f35a6dd157fa957410910684f3a4ce4c8b5d54"\n ],\n "graph": {\n "coverage": {\n "limits": [],\n "omitted_count": 0,\n "status": "complete",\n "truncated": false\n },\n "edges": [\n {\n "edge_id": "jag_edge_3799eb1c2b0f224013a0edba8911a8b9edabd5fa6da2f893a6cfa24a899c9463",\n "evidence": {\n "artifact": {\n "artifact_id": "art_c4c0d760a4c84f0e182de99f6ef89ef10831f8170e486c4d4bd934924151ba64",\n "available": true,\n "sha256": "c4c0d760a4c84f0e182de99f6ef89ef10831f8170e486c4d4bd934924151ba64"\n },\n "authority": "cross-layer-reconciliation",\n "confidence": "high",\n "coverage": {\n "limits": [],\n "omitted_count": 0,\n "status": "complete",\n "truncated": false\n },\n "evidence_ids": [\n "ev_a42606ee799a093832ad3d6cfd0edd50dc9b99f78cc6d5d9130b734d48a56b4e",\n "ev_a4ae2c7b5c501fb6dff695b168f35a6dd157fa957410910684f3a4ce4c8b5d54"\n ],\n "extractor": {\n "executable_sha256": null,\n "name": "rea-javascript-runtime-reconciliation",\n "operation": "reconcile_javascript_runtime",\n "version": "1"\n },\n "limitations": [\n "Equal content digests establish byte identity, not execution causality.",\n "Passive script parsing or target presence does not prove feature execution."\n ],\n "location": {\n "available": true,\n "value": {\n "capture_sha256": "a4dd260f01b45e3df92482755baed7a1922b4af2226edc7f896bdbc4d2bbbd9c",\n "frame_key": null,\n "kind": "runtime",\n "script_key": "electron_script_4444444444444444444444444444444444444444444444444444444444444444",\n "target_key": "example-target"\n }\n },\n "state": "inferred"\n },\n "identifier_strategy": {\n "stability": "relationship-exact",\n "strategy": "semantic-content-sha256"\n },\n "properties": {\n "basis": "content-and-location",\n "reconciliation_id": "jrr_item_ea9d751c4bf3a2234af56b80d5ac8a1f953da9a9477cd46586a62934ff4a5fb2",\n "static_layer_id": "jrl_96fcfc590e7ca88f94b602638421674d8b13ccc7d25efff15a15b03c33b34753"\n },\n "relation": "observed_as",\n "source_node_id": "jag_node_3c82da5492d90eb5b0bee41c1a994d88b7ba98c0b4955270d70e57a76e224c2e",\n "target_node_id": "jag_node_af8ea5d1909955f39da1d844b2cad8f2f68c34b7d575ded6d04c00fa4095a88e"\n },\n {\n "edge_id": "jag_edge_f3c06b02c5ac77056b5d2a9f8de834ea0a9123b01dc369a011e3adc4a535338b",\n "evidence": {\n "artifact": {\n "available": false,\n "detail": "The relationship is runtime metadata, not standalone bytes.",\n "reason": "not-applicable"\n },\n "authority": "passive-cdp-runtime",\n "confidence": "exact",\n "coverage": {\n "limits": [],\n "omitted_count": 0,\n "status": "complete",\n "truncated": false\n },\n "evidence_ids": [\n "ev_a42606ee799a093832ad3d6cfd0edd50dc9b99f78cc6d5d9130b734d48a56b4e"\n ],\n "extractor": {\n "executable_sha256": null,\n "name": "rea-cdp-electron",\n "operation": "inspect_electron_page",\n "version": "1"\n },\n "limitations": [\n "The relationship was observed only within one bounded passive CDP capture."\n ],\n "location": {\n "available": true,\n "value": {\n "capture_sha256": "a4dd260f01b45e3df92482755baed7a1922b4af2226edc7f896bdbc4d2bbbd9c",\n "frame_key": null,\n "kind": "runtime",\n "script_key": "electron_script_4444444444444444444444444444444444444444444444444444444444444444",\n "target_key": "example-target"\n }\n },\n "state": "observed"\n },\n "identifier_strategy": {\n "stability": "relationship-exact",\n "strategy": "semantic-content-sha256"\n },\n "properties": {\n "basis": "passive-cdp-observation"\n },\n "relation": "loads",\n "source_node_id": "jag_node_f360c35c86d4893fcf83ef0fdef92cebd688fba883aa39698a1c12dd5a237265",\n "target_node_id": "jag_node_af8ea5d1909955f39da1d844b2cad8f2f68c34b7d575ded6d04c00fa4095a88e"\n }\n ],\n "graph_id": "jag_0536a9584eb91a16f78f71e8bef4cffc3105df18098fe65a7b114add520203ca",\n "limitations": [\n "Cross-layer observed_as edges are inferences; digest equality proves byte identity only.",\n "Runtime presence is bounded to passive capture windows and does not prove feature execution.",\n "Source-map relationships retain their original static authority and are not promoted into runtime matches."\n ],\n "nodes": [\n {\n "identity": {\n "sha256": "c4c0d760a4c84f0e182de99f6ef89ef10831f8170e486c4d4bd934924151ba64",\n "stability": "global-exact",\n "strategy": "content-digest"\n },\n "kind": "javascript-asset",\n "node_id": "jag_node_3c82da5492d90eb5b0bee41c1a994d88b7ba98c0b4955270d70e57a76e224c2e",\n "observations": [\n {\n "evidence": {\n "artifact": {\n "artifact_id": "art_c4c0d760a4c84f0e182de99f6ef89ef10831f8170e486c4d4bd934924151ba64",\n "available": true,\n "sha256": "c4c0d760a4c84f0e182de99f6ef89ef10831f8170e486c4d4bd934924151ba64"\n },\n "authority": "artifact-bytes",\n "confidence": "exact",\n "coverage": {\n "limits": [],\n "omitted_count": 0,\n "status": "complete",\n "truncated": false\n },\n "evidence_ids": [],\n "extractor": {\n "executable_sha256": null,\n "name": "rea-javascript-application",\n "operation": "inventory-relevant-file",\n "version": "1"\n },\n "limitations": [],\n "location": {\n "available": true,\n "value": {\n "kind": "artifact-path",\n "path": "renderer.js"\n }\n },\n "state": "observed"\n },\n "identifier_strategy": {\n "stability": "observation-exact",\n "strategy": "semantic-content-sha256"\n },\n "label": "renderer.js",\n "observation_id": "jag_observation_20b4d076ce370db14ae2b477915624c62e0c4a0c9e56803a2c5cb4fa60c16230",\n "properties": {\n "bytes": 29,\n "path": "renderer.js"\n }\n }\n ]\n },\n {\n "identity": {\n "capture_sha256": "a4dd260f01b45e3df92482755baed7a1922b4af2226edc7f896bdbc4d2bbbd9c",\n "runtime_key": "electron_script_4444444444444444444444444444444444444444444444444444444444444444",\n "stability": "capture-only",\n "strategy": "runtime-instance"\n },\n "kind": "runtime-script-instance",\n "node_id": "jag_node_af8ea5d1909955f39da1d844b2cad8f2f68c34b7d575ded6d04c00fa4095a88e",\n "observations": [\n {\n "evidence": {\n "artifact": {\n "artifact_id": "art_c4c0d760a4c84f0e182de99f6ef89ef10831f8170e486c4d4bd934924151ba64",\n "available": true,\n "sha256": "c4c0d760a4c84f0e182de99f6ef89ef10831f8170e486c4d4bd934924151ba64"\n },\n "authority": "passive-cdp-runtime",\n "confidence": "exact",\n "coverage": {\n "limits": [],\n "omitted_count": 0,\n "status": "complete",\n "truncated": false\n },\n "evidence_ids": [\n "ev_a42606ee799a093832ad3d6cfd0edd50dc9b99f78cc6d5d9130b734d48a56b4e"\n ],\n "extractor": {\n "executable_sha256": null,\n "name": "rea-cdp-electron",\n "operation": "inspect_electron_page",\n "version": "1"\n },\n "limitations": [\n "The entity was observed only within one bounded passive CDP capture."\n ],\n "location": {\n "available": true,\n "value": {\n "capture_sha256": "a4dd260f01b45e3df92482755baed7a1922b4af2226edc7f896bdbc4d2bbbd9c",\n "frame_key": null,\n "kind": "runtime",\n "script_key": "electron_script_4444444444444444444444444444444444444444444444444444444444444444",\n "target_key": "example-target"\n }\n },\n "state": "observed"\n },\n "identifier_strategy": {\n "stability": "observation-exact",\n "strategy": "semantic-content-sha256"\n },\n "label": "/Applications/Example.app/Contents/Resources/app/renderer.js",\n "observation_id": "jag_observation_9315403b875ea70c310909daf797780ab9045ff8f4803db38a9184e4f0704f11",\n "properties": {\n "cdp_hash": "example",\n "is_module": true,\n "language": "JavaScript",\n "length": 29,\n "location": "/Applications/Example.app/Contents/Resources/app/renderer.js",\n "source_sha256": "c4c0d760a4c84f0e182de99f6ef89ef10831f8170e486c4d4bd934924151ba64"\n }\n }\n ]\n },\n {\n "identity": {\n "capture_sha256": "a4dd260f01b45e3df92482755baed7a1922b4af2226edc7f896bdbc4d2bbbd9c",\n "runtime_key": "example-target",\n "stability": "capture-only",\n "strategy": "runtime-instance"\n },\n "kind": "target",\n "node_id": "jag_node_f360c35c86d4893fcf83ef0fdef92cebd688fba883aa39698a1c12dd5a237265",\n "observations": [\n {\n "evidence": {\n "artifact": {\n "available": false,\n "detail": "This runtime entity has no standalone artifact bytes.",\n "reason": "not-applicable"\n },\n "authority": "passive-cdp-runtime",\n "confidence": "exact",\n "coverage": {\n "limits": [],\n "omitted_count": 0,\n "status": "complete",\n "truncated": false\n },\n "evidence_ids": [\n "ev_a42606ee799a093832ad3d6cfd0edd50dc9b99f78cc6d5d9130b734d48a56b4e"\n ],\n "extractor": {\n "executable_sha256": null,\n "name": "rea-cdp-electron",\n "operation": "inspect_electron_page",\n "version": "1"\n },\n "limitations": [\n "The entity was observed only within one bounded passive CDP capture."\n ],\n "location": {\n "available": true,\n "value": {\n "capture_sha256": "a4dd260f01b45e3df92482755baed7a1922b4af2226edc7f896bdbc4d2bbbd9c",\n "frame_key": null,\n "kind": "runtime",\n "script_key": null,\n "target_key": "example-target"\n }\n },\n "state": "observed"\n },\n "identifier_strategy": {\n "stability": "observation-exact",\n "strategy": "semantic-content-sha256"\n },\n "label": "Example",\n "observation_id": "jag_observation_844a03a29af96a0bcd4625e0377b67c439af68a462c5fa83009c7c27283c5dee",\n "properties": {\n "attached": false,\n "location": "/Applications/Example.app/Contents/Resources/app/index.html",\n "runtime_type": "page"\n }\n }\n ]\n }\n ],\n "root_node_ids": [\n "jag_node_3c82da5492d90eb5b0bee41c1a994d88b7ba98c0b4955270d70e57a76e224c2e",\n "jag_node_f360c35c86d4893fcf83ef0fdef92cebd688fba883aa39698a1c12dd5a237265"\n ],\n "schema": "JavaScriptApplicationGraph"\n },\n "limitations": [\n "A static module resident in an observed bundle is not reported as executed.",\n "Caller-declared file and URL mappings are inference inputs and do not expand CDP origin or filesystem-root authority.",\n "Digest equality establishes byte identity but not code reachability, module initialization, or feature execution.",\n "Not-observed means absent from the bounded captures in scope, never globally unloaded.",\n "Only caller-supplied, semantically verified Evidence records were reconciled.",\n "Source-map authority remains separate from passive runtime authority."\n ],\n "reconciliation_id": "jrr_ec50425a5a5a5cb85aa40f13f72dcba54a8ab16170d9421a0277fbdf0fa4c9eb",\n "reconciliations": [\n {\n "basis": "none",\n "candidate_static_count": 0,\n "candidate_static_nodes": [],\n "confidence": "unknown",\n "entity_kind": "target",\n "reason": "no-static-content-match",\n "reconciliation_id": "jrr_item_abd5635b06340f082ef46bff8802a361c7b30011085f1c9e7437b29b451c1e5e",\n "runtime_evidence_id": "ev_a42606ee799a093832ad3d6cfd0edd50dc9b99f78cc6d5d9130b734d48a56b4e",\n "runtime_node_id": "jag_node_f360c35c86d4893fcf83ef0fdef92cebd688fba883aa39698a1c12dd5a237265",\n "static_layer_id": null,\n "static_node_id": null,\n "status": "unmatched"\n },\n {\n "basis": "content-and-location",\n "candidate_static_count": 1,\n "candidate_static_nodes": [\n {\n "static_layer_id": "jrl_96fcfc590e7ca88f94b602638421674d8b13ccc7d25efff15a15b03c33b34753",\n "static_node_id": "jag_node_3c82da5492d90eb5b0bee41c1a994d88b7ba98c0b4955270d70e57a76e224c2e"\n }\n ],\n "confidence": "high",\n "entity_kind": "script",\n "reason": "content-and-location-match",\n "reconciliation_id": "jrr_item_ea9d751c4bf3a2234af56b80d5ac8a1f953da9a9477cd46586a62934ff4a5fb2",\n "runtime_evidence_id": "ev_a42606ee799a093832ad3d6cfd0edd50dc9b99f78cc6d5d9130b734d48a56b4e",\n "runtime_node_id": "jag_node_af8ea5d1909955f39da1d844b2cad8f2f68c34b7d575ded6d04c00fa4095a88e",\n "static_layer_id": "jrl_96fcfc590e7ca88f94b602638421674d8b13ccc7d25efff15a15b03c33b34753",\n "static_node_id": "jag_node_3c82da5492d90eb5b0bee41c1a994d88b7ba98c0b4955270d70e57a76e224c2e",\n "status": "matched"\n }\n ],\n "runtime_captures": [\n {\n "capture_sha256": "a4dd260f01b45e3df92482755baed7a1922b4af2226edc7f896bdbc4d2bbbd9c",\n "evidence_id": "ev_a42606ee799a093832ad3d6cfd0edd50dc9b99f78cc6d5d9130b734d48a56b4e",\n "frames": 0,\n "kind": "electron",\n "scripts": 1,\n "scripts_complete_within_scope": true,\n "target_key": "example-target",\n "target_location": "/Applications/Example.app/Contents/Resources/app/index.html",\n "target_node_id": "jag_node_f360c35c86d4893fcf83ef0fdef92cebd688fba883aa39698a1c12dd5a237265",\n "workers": 0\n }\n ],\n "source_map_authority": {\n "limitation": "Source-map declarations and original-source content retain separate static authority and are not used as primary runtime byte matches.",\n "runtime_script_declarations": 0,\n "static_layer_count": 1,\n "used_for_primary_matching": false\n },\n "static_layers": [\n {\n "evidence_id": "ev_a4ae2c7b5c501fb6dff695b168f35a6dd157fa957410910684f3a4ce4c8b5d54",\n "format": "directory",\n "graph_id": "jag_ab15669664efc0a86bb49c9c60241913cce6980dc2293fbeef6d9c862ca01d9d",\n "input_path": "/Applications/Example.app/Contents/Resources/app",\n "layer_id": "jrl_96fcfc590e7ca88f94b602638421674d8b13ccc7d25efff15a15b03c33b34753",\n "role": "application",\n "root_artifact_sha256": "1111111111111111111111111111111111111111111111111111111111111111",\n "runtime_mappings": []\n }\n ],\n "static_load_states": [\n {\n "kind": "javascript-asset",\n "reason": "runtime-script-correspondence",\n "runtime_node_ids": [\n "jag_node_af8ea5d1909955f39da1d844b2cad8f2f68c34b7d575ded6d04c00fa4095a88e"\n ],\n "static_layer_id": "jrl_96fcfc590e7ca88f94b602638421674d8b13ccc7d25efff15a15b03c33b34753",\n "static_node_id": "jag_node_3c82da5492d90eb5b0bee41c1a994d88b7ba98c0b4955270d70e57a76e224c2e",\n "status": "loaded"\n }\n ],\n "summary": {\n "ambiguous": 0,\n "matched": 1,\n "runtime_frames": 0,\n "runtime_scripts": 1,\n "runtime_targets": 1,\n "runtime_workers": 0,\n "static_loaded": 1,\n "static_not_observed": 0,\n "static_resident": 0,\n "static_unknown": 0,\n "unknown": 0,\n "unmatched": 1\n }\n },\n "operation": "reconcile_javascript_runtime",\n "parameters": {\n "runtime_evidence_ids": [\n "ev_a42606ee799a093832ad3d6cfd0edd50dc9b99f78cc6d5d9130b734d48a56b4e"\n ],\n "static_layers": [\n {\n "evidence_id": "ev_a4ae2c7b5c501fb6dff695b168f35a6dd157fa957410910684f3a4ce4c8b5d54",\n "role": "application",\n "runtime_mappings": []\n }\n ]\n },\n "predicate_type": "rea.javascript-runtime-reconciliation",\n "provider": {\n "id": "rea-javascript-runtime-reconciliation",\n "name": "REA JavaScript runtime reconciliation",\n "version": "1"\n },\n "raw_result": null,\n "subject": null\n }\n },\n {\n "left": {\n "evidence_id": "ev_a4ae2c7b5c501fb6dff695b168f35a6dd157fa957410910684f3a4ce4c8b5d54",\n "kind": "retained-evidence"\n },\n "right": {\n "evidence_id": "ev_c2754cf75e286b839ed825f247062067a6472acb1e7b6ce0f9aaceec6448d6d7",\n "kind": "retained-evidence"\n }\n }\n ],\n "properties": {\n "left": {\n "anyOf": [\n {\n "additionalProperties": false,\n "properties": {\n "analysis_profile": {\n "description": "Value for analysis profile.",\n "properties": {\n "digest": {\n "description": "Value for digest.",\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n },\n "parameters": {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "description": "Value for parameters.",\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n },\n "provider": {\n "description": "Value for provider.",\n "properties": {\n "id": {\n "description": "Value for id.",\n "minLength": 1,\n "type": "string"\n },\n "name": {\n "description": "Exact name used by this operation.",\n "minLength": 1,\n "type": "string"\n },\n "version": {\n "description": "Value for version.",\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "id",\n "name",\n "version"\n ],\n "type": "object"\n }\n },\n "required": [\n "provider",\n "parameters",\n "digest"\n ],\n "type": "object"\n },\n "authority": {\n "description": "Value for authority.",\n "enum": [\n "shipped-artifact",\n "controlled-replay",\n "historical-reference",\n "external-service",\n "analyst-inference"\n ],\n "type": "string"\n },\n "confidence": {\n "description": "Value for confidence.",\n "enum": [\n "observed",\n "derived",\n "inferred"\n ],\n "type": "string"\n },\n "environment": {\n "anyOf": [\n {\n "properties": {\n "architecture": {\n "description": "Value for architecture.",\n "minLength": 1,\n "type": "string"\n },\n "id": {\n "description": "Value for id.",\n "minLength": 1,\n "type": "string"\n },\n "isolation": {\n "description": "Value for isolation.",\n "enum": [\n "none",\n "process",\n "container",\n "virtual-machine"\n ],\n "type": "string"\n },\n "platform": {\n "description": "Value for platform.",\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "id",\n "platform",\n "architecture",\n "isolation"\n ],\n "type": "object"\n },\n {\n "type": "null"\n }\n ],\n "description": "Value for environment."\n },\n "evidence_id": {\n "description": "Stable identifier of the recorded Evidence observation.",\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "evidence_links": {\n "description": "Value for evidence links.",\n "items": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "type": "array"\n },\n "limitations": {\n "description": "Value for limitations.",\n "items": {\n "type": "string"\n },\n "type": "array"\n },\n "locations": {\n "description": "Value for locations.",\n "items": {\n "oneOf": [\n {\n "properties": {\n "address": {\n "description": "Value for address.",\n "minLength": 1,\n "type": "string"\n },\n "kind": {\n "const": "address",\n "description": "Value for kind.",\n "type": "string"\n }\n },\n "required": [\n "kind",\n "address"\n ],\n "type": "object"\n },\n {\n "properties": {\n "end": {\n "description": "Value for end.",\n "minLength": 1,\n "type": "string"\n },\n "kind": {\n "const": "address-range",\n "description": "Value for kind.",\n "type": "string"\n },\n "start": {\n "description": "Value for start.",\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "kind",\n "start",\n "end"\n ],\n "type": "object"\n },\n {\n "properties": {\n "kind": {\n "const": "artifact-path",\n "description": "Value for kind.",\n "type": "string"\n },\n "path": {\n "description": "Local filesystem path used by this operation.",\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "kind",\n "path"\n ],\n "type": "object"\n },\n {\n "properties": {\n "kind": {\n "const": "file-offset",\n "description": "Value for kind.",\n "type": "string"\n },\n "offset": {\n "description": "Value for offset.",\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "kind",\n "offset"\n ],\n "type": "object"\n },\n {\n "properties": {\n "end": {\n "description": "Value for end.",\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "kind": {\n "const": "file-offset-range",\n "description": "Value for kind.",\n "type": "string"\n },\n "start": {\n "description": "Value for start.",\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "kind",\n "start",\n "end"\n ],\n "type": "object"\n }\n ]\n },\n "type": "array"\n },\n "normalized_result": {\n "$ref": "#/$defs/__schema0",\n "description": "Value for normalized result."\n },\n "operation": {\n "description": "Value for operation.",\n "minLength": 1,\n "type": "string"\n },\n "parameters": {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "description": "Value for parameters.",\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n },\n "predicate_type": {\n "description": "Value for predicate type.",\n "minLength": 1,\n "type": "string"\n },\n "provider": {\n "description": "Value for provider.",\n "properties": {\n "id": {\n "description": "Value for id.",\n "minLength": 1,\n "type": "string"\n },\n "name": {\n "description": "Exact name used by this operation.",\n "minLength": 1,\n "type": "string"\n },\n "version": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ],\n "description": "Value for version."\n }\n },\n "required": [\n "id",\n "name",\n "version"\n ],\n "type": "object"\n },\n "raw_result": {\n "anyOf": [\n {\n "$ref": "#/$defs/__schema0"\n },\n {\n "type": "null"\n }\n ],\n "description": "Value for raw result."\n },\n "subject": {\n "anyOf": [\n {\n "properties": {\n "architecture": {\n "anyOf": [\n {\n "enum": [\n "x86",\n "x86_64",\n "arm",\n "arm64"\n ],\n "type": "string"\n },\n {\n "type": "null"\n }\n ],\n "description": "Value for architecture."\n },\n "digest": {\n "description": "Value for digest.",\n "properties": {\n "sha256": {\n "description": "Value for sha256.",\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n }\n },\n "required": [\n "sha256"\n ],\n "type": "object"\n },\n "format": {\n "description": "Declared input artifact format.",\n "enum": [\n "hopper",\n "analysis-database",\n "mach-o",\n "elf",\n "pe",\n "dos-mz",\n "dos-com",\n "zip",\n "ipa",\n "apk",\n "msix",\n "appx",\n "asar",\n "dmg",\n "pkg",\n "plist",\n "javascript",\n "source-map",\n "directory",\n "file",\n "unknown",\n "mach-o-universal",\n "javascript-bundle",\n "entitlements"\n ],\n "type": "string"\n },\n "local_path": {\n "description": "Local filesystem path for local.",\n "type": "string"\n },\n "name": {\n "description": "Exact name used by this operation.",\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "name",\n "digest",\n "format",\n "architecture",\n "local_path"\n ],\n "type": "object"\n },\n {\n "type": "null"\n }\n ],\n "description": "Value for subject."\n }\n },\n "required": [\n "evidence_id",\n "subject",\n "provider",\n "predicate_type",\n "operation",\n "parameters",\n "raw_result",\n "normalized_result",\n "confidence",\n "authority",\n "environment",\n "limitations",\n "locations",\n "evidence_links"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "evidence_id": {\n "description": "Stable identifier of the recorded Evidence observation.",\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "kind": {\n "const": "retained-evidence",\n "description": "Value for kind.",\n "type": "string"\n }\n },\n "required": [\n "kind",\n "evidence_id"\n ],\n "type": "object"\n }\n ],\n "description": "Left-hand input used for comparison or differential execution."\n },\n "left_native_observations": {\n "default": [],\n "description": "Value for left native observations.",\n "items": {\n "additionalProperties": false,\n "properties": {\n "analysis_profile": {\n "description": "Value for analysis profile.",\n "properties": {\n "digest": {\n "description": "Value for digest.",\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n },\n "parameters": {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "description": "Value for parameters.",\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n },\n "provider": {\n "description": "Value for provider.",\n "properties": {\n "id": {\n "description": "Value for id.",\n "minLength": 1,\n "type": "string"\n },\n "name": {\n "description": "Exact name used by this operation.",\n "minLength": 1,\n "type": "string"\n },\n "version": {\n "description": "Value for version.",\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "id",\n "name",\n "version"\n ],\n "type": "object"\n }\n },\n "required": [\n "provider",\n "parameters",\n "digest"\n ],\n "type": "object"\n },\n "authority": {\n "description": "Value for authority.",\n "enum": [\n "shipped-artifact",\n "controlled-replay",\n "historical-reference",\n "external-service",\n "analyst-inference"\n ],\n "type": "string"\n },\n "confidence": {\n "description": "Value for confidence.",\n "enum": [\n "observed",\n "derived",\n "inferred"\n ],\n "type": "string"\n },\n "environment": {\n "anyOf": [\n {\n "properties": {\n "architecture": {\n "description": "Value for architecture.",\n "minLength": 1,\n "type": "string"\n },\n "id": {\n "description": "Value for id.",\n "minLength": 1,\n "type": "string"\n },\n "isolation": {\n "description": "Value for isolation.",\n "enum": [\n "none",\n "process",\n "container",\n "virtual-machine"\n ],\n "type": "string"\n },\n "platform": {\n "description": "Value for platform.",\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "id",\n "platform",\n "architecture",\n "isolation"\n ],\n "type": "object"\n },\n {\n "type": "null"\n }\n ],\n "description": "Value for environment."\n },\n "evidence_id": {\n "description": "Stable identifier of the recorded Evidence observation.",\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "evidence_links": {\n "description": "Value for evidence links.",\n "items": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "type": "array"\n },\n "limitations": {\n "description": "Value for limitations.",\n "items": {\n "type": "string"\n },\n "type": "array"\n },\n "locations": {\n "description": "Value for locations.",\n "items": {\n "oneOf": [\n {\n "properties": {\n "address": {\n "description": "Value for address.",\n "minLength": 1,\n "type": "string"\n },\n "kind": {\n "const": "address",\n "description": "Value for kind.",\n "type": "string"\n }\n },\n "required": [\n "kind",\n "address"\n ],\n "type": "object"\n },\n {\n "properties": {\n "end": {\n "description": "Value for end.",\n "minLength": 1,\n "type": "string"\n },\n "kind": {\n "const": "address-range",\n "description": "Value for kind.",\n "type": "string"\n },\n "start": {\n "description": "Value for start.",\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "kind",\n "start",\n "end"\n ],\n "type": "object"\n },\n {\n "properties": {\n "kind": {\n "const": "artifact-path",\n "description": "Value for kind.",\n "type": "string"\n },\n "path": {\n "description": "Local filesystem path used by this operation.",\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "kind",\n "path"\n ],\n "type": "object"\n },\n {\n "properties": {\n "kind": {\n "const": "file-offset",\n "description": "Value for kind.",\n "type": "string"\n },\n "offset": {\n "description": "Value for offset.",\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "kind",\n "offset"\n ],\n "type": "object"\n },\n {\n "properties": {\n "end": {\n "description": "Value for end.",\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "kind": {\n "const": "file-offset-range",\n "description": "Value for kind.",\n "type": "string"\n },\n "start": {\n "description": "Value for start.",\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "kind",\n "start",\n "end"\n ],\n "type": "object"\n }\n ]\n },\n "type": "array"\n },\n "normalized_result": {\n "$ref": "#/$defs/__schema0",\n "description": "Value for normalized result."\n },\n "operation": {\n "description": "Value for operation.",\n "minLength": 1,\n "type": "string"\n },\n "parameters": {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "description": "Value for parameters.",\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n },\n "predicate_type": {\n "description": "Value for predicate type.",\n "minLength": 1,\n "type": "string"\n },\n "provider": {\n "description": "Value for provider.",\n "properties": {\n "id": {\n "description": "Value for id.",\n "minLength": 1,\n "type": "string"\n },\n "name": {\n "description": "Exact name used by this operation.",\n "minLength": 1,\n "type": "string"\n },\n "version": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ],\n "description": "Value for version."\n }\n },\n "required": [\n "id",\n "name",\n "version"\n ],\n "type": "object"\n },\n "raw_result": {\n "anyOf": [\n {\n "$ref": "#/$defs/__schema0"\n },\n {\n "type": "null"\n }\n ],\n "description": "Value for raw result."\n },\n "subject": {\n "anyOf": [\n {\n "properties": {\n "architecture": {\n "anyOf": [\n {\n "enum": [\n "x86",\n "x86_64",\n "arm",\n "arm64"\n ],\n "type": "string"\n },\n {\n "type": "null"\n }\n ],\n "description": "Value for architecture."\n },\n "digest": {\n "description": "Value for digest.",\n "properties": {\n "sha256": {\n "description": "Value for sha256.",\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n }\n },\n "required": [\n "sha256"\n ],\n "type": "object"\n },\n "format": {\n "description": "Declared input artifact format.",\n "enum": [\n "hopper",\n "analysis-database",\n "mach-o",\n "elf",\n "pe",\n "dos-mz",\n "dos-com",\n "zip",\n "ipa",\n "apk",\n "msix",\n "appx",\n "asar",\n "dmg",\n "pkg",\n "plist",\n "javascript",\n "source-map",\n "directory",\n "file",\n "unknown",\n "mach-o-universal",\n "javascript-bundle",\n "entitlements"\n ],\n "type": "string"\n },\n "local_path": {\n "description": "Local filesystem path for local.",\n "type": "string"\n },\n "name": {\n "description": "Exact name used by this operation.",\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "name",\n "digest",\n "format",\n "architecture",\n "local_path"\n ],\n "type": "object"\n },\n {\n "type": "null"\n }\n ],\n "description": "Value for subject."\n }\n },\n "required": [\n "evidence_id",\n "subject",\n "provider",\n "predicate_type",\n "operation",\n "parameters",\n "raw_result",\n "normalized_result",\n "confidence",\n "authority",\n "environment",\n "limitations",\n "locations",\n "evidence_links"\n ],\n "type": "object"\n },\n "type": "array"\n },\n "right": {\n "anyOf": [\n {\n "additionalProperties": false,\n "properties": {\n "analysis_profile": {\n "description": "Value for analysis profile.",\n "properties": {\n "digest": {\n "description": "Value for digest.",\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n },\n "parameters": {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "description": "Value for parameters.",\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n },\n "provider": {\n "description": "Value for provider.",\n "properties": {\n "id": {\n "description": "Value for id.",\n "minLength": 1,\n "type": "string"\n },\n "name": {\n "description": "Exact name used by this operation.",\n "minLength": 1,\n "type": "string"\n },\n "version": {\n "description": "Value for version.",\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "id",\n "name",\n "version"\n ],\n "type": "object"\n }\n },\n "required": [\n "provider",\n "parameters",\n "digest"\n ],\n "type": "object"\n },\n "authority": {\n "description": "Value for authority.",\n "enum": [\n "shipped-artifact",\n "controlled-replay",\n "historical-reference",\n "external-service",\n "analyst-inference"\n ],\n "type": "string"\n },\n "confidence": {\n "description": "Value for confidence.",\n "enum": [\n "observed",\n "derived",\n "inferred"\n ],\n "type": "string"\n },\n "environment": {\n "anyOf": [\n {\n "properties": {\n "architecture": {\n "description": "Value for architecture.",\n "minLength": 1,\n "type": "string"\n },\n "id": {\n "description": "Value for id.",\n "minLength": 1,\n "type": "string"\n },\n "isolation": {\n "description": "Value for isolation.",\n "enum": [\n "none",\n "process",\n "container",\n "virtual-machine"\n ],\n "type": "string"\n },\n "platform": {\n "description": "Value for platform.",\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "id",\n "platform",\n "architecture",\n "isolation"\n ],\n "type": "object"\n },\n {\n "type": "null"\n }\n ],\n "description": "Value for environment."\n },\n "evidence_id": {\n "description": "Stable identifier of the recorded Evidence observation.",\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "evidence_links": {\n "description": "Value for evidence links.",\n "items": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "type": "array"\n },\n "limitations": {\n "description": "Value for limitations.",\n "items": {\n "type": "string"\n },\n "type": "array"\n },\n "locations": {\n "description": "Value for locations.",\n "items": {\n "oneOf": [\n {\n "properties": {\n "address": {\n "description": "Value for address.",\n "minLength": 1,\n "type": "string"\n },\n "kind": {\n "const": "address",\n "description": "Value for kind.",\n "type": "string"\n }\n },\n "required": [\n "kind",\n "address"\n ],\n "type": "object"\n },\n {\n "properties": {\n "end": {\n "description": "Value for end.",\n "minLength": 1,\n "type": "string"\n },\n "kind": {\n "const": "address-range",\n "description": "Value for kind.",\n "type": "string"\n },\n "start": {\n "description": "Value for start.",\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "kind",\n "start",\n "end"\n ],\n "type": "object"\n },\n {\n "properties": {\n "kind": {\n "const": "artifact-path",\n "description": "Value for kind.",\n "type": "string"\n },\n "path": {\n "description": "Local filesystem path used by this operation.",\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "kind",\n "path"\n ],\n "type": "object"\n },\n {\n "properties": {\n "kind": {\n "const": "file-offset",\n "description": "Value for kind.",\n "type": "string"\n },\n "offset": {\n "description": "Value for offset.",\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "kind",\n "offset"\n ],\n "type": "object"\n },\n {\n "properties": {\n "end": {\n "description": "Value for end.",\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "kind": {\n "const": "file-offset-range",\n "description": "Value for kind.",\n "type": "string"\n },\n "start": {\n "description": "Value for start.",\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "kind",\n "start",\n "end"\n ],\n "type": "object"\n }\n ]\n },\n "type": "array"\n },\n "normalized_result": {\n "$ref": "#/$defs/__schema0",\n "description": "Value for normalized result."\n },\n "operation": {\n "description": "Value for operation.",\n "minLength": 1,\n "type": "string"\n },\n "parameters": {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "description": "Value for parameters.",\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n },\n "predicate_type": {\n "description": "Value for predicate type.",\n "minLength": 1,\n "type": "string"\n },\n "provider": {\n "description": "Value for provider.",\n "properties": {\n "id": {\n "description": "Value for id.",\n "minLength": 1,\n "type": "string"\n },\n "name": {\n "description": "Exact name used by this operation.",\n "minLength": 1,\n "type": "string"\n },\n "version": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ],\n "description": "Value for version."\n }\n },\n "required": [\n "id",\n "name",\n "version"\n ],\n "type": "object"\n },\n "raw_result": {\n "anyOf": [\n {\n "$ref": "#/$defs/__schema0"\n },\n {\n "type": "null"\n }\n ],\n "description": "Value for raw result."\n },\n "subject": {\n "anyOf": [\n {\n "properties": {\n "architecture": {\n "anyOf": [\n {\n "enum": [\n "x86",\n "x86_64",\n "arm",\n "arm64"\n ],\n "type": "string"\n },\n {\n "type": "null"\n }\n ],\n "description": "Value for architecture."\n },\n "digest": {\n "description": "Value for digest.",\n "properties": {\n "sha256": {\n "description": "Value for sha256.",\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n }\n },\n "required": [\n "sha256"\n ],\n "type": "object"\n },\n "format": {\n "description": "Declared input artifact format.",\n "enum": [\n "hopper",\n "analysis-database",\n "mach-o",\n "elf",\n "pe",\n "dos-mz",\n "dos-com",\n "zip",\n "ipa",\n "apk",\n "msix",\n "appx",\n "asar",\n "dmg",\n "pkg",\n "plist",\n "javascript",\n "source-map",\n "directory",\n "file",\n "unknown",\n "mach-o-universal",\n "javascript-bundle",\n "entitlements"\n ],\n "type": "string"\n },\n "local_path": {\n "description": "Local filesystem path for local.",\n "type": "string"\n },\n "name": {\n "description": "Exact name used by this operation.",\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "name",\n "digest",\n "format",\n "architecture",\n "local_path"\n ],\n "type": "object"\n },\n {\n "type": "null"\n }\n ],\n "description": "Value for subject."\n }\n },\n "required": [\n "evidence_id",\n "subject",\n "provider",\n "predicate_type",\n "operation",\n "parameters",\n "raw_result",\n "normalized_result",\n "confidence",\n "authority",\n "environment",\n "limitations",\n "locations",\n "evidence_links"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "evidence_id": {\n "description": "Stable identifier of the recorded Evidence observation.",\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "kind": {\n "const": "retained-evidence",\n "description": "Value for kind.",\n "type": "string"\n }\n },\n "required": [\n "kind",\n "evidence_id"\n ],\n "type": "object"\n }\n ],\n "description": "Right-hand input used for comparison or differential execution."\n },\n "right_native_observations": {\n "default": [],\n "description": "Value for right native observations.",\n "items": {\n "additionalProperties": false,\n "properties": {\n "analysis_profile": {\n "description": "Value for analysis profile.",\n "properties": {\n "digest": {\n "description": "Value for digest.",\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n },\n "parameters": {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "description": "Value for parameters.",\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n },\n "provider": {\n "description": "Value for provider.",\n "properties": {\n "id": {\n "description": "Value for id.",\n "minLength": 1,\n "type": "string"\n },\n "name": {\n "description": "Exact name used by this operation.",\n "minLength": 1,\n "type": "string"\n },\n "version": {\n "description": "Value for version.",\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "id",\n "name",\n "version"\n ],\n "type": "object"\n }\n },\n "required": [\n "provider",\n "parameters",\n "digest"\n ],\n "type": "object"\n },\n "authority": {\n "description": "Value for authority.",\n "enum": [\n "shipped-artifact",\n "controlled-replay",\n "historical-reference",\n "external-service",\n "analyst-inference"\n ],\n "type": "string"\n },\n "confidence": {\n "description": "Value for confidence.",\n "enum": [\n "observed",\n "derived",\n "inferred"\n ],\n "type": "string"\n },\n "environment": {\n "anyOf": [\n {\n "properties": {\n "architecture": {\n "description": "Value for architecture.",\n "minLength": 1,\n "type": "string"\n },\n "id": {\n "description": "Value for id.",\n "minLength": 1,\n "type": "string"\n },\n "isolation": {\n "description": "Value for isolation.",\n "enum": [\n "none",\n "process",\n "container",\n "virtual-machine"\n ],\n "type": "string"\n },\n "platform": {\n "description": "Value for platform.",\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "id",\n "platform",\n "architecture",\n "isolation"\n ],\n "type": "object"\n },\n {\n "type": "null"\n }\n ],\n "description": "Value for environment."\n },\n "evidence_id": {\n "description": "Stable identifier of the recorded Evidence observation.",\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "evidence_links": {\n "description": "Value for evidence links.",\n "items": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "type": "array"\n },\n "limitations": {\n "description": "Value for limitations.",\n "items": {\n "type": "string"\n },\n "type": "array"\n },\n "locations": {\n "description": "Value for locations.",\n "items": {\n "oneOf": [\n {\n "properties": {\n "address": {\n "description": "Value for address.",\n "minLength": 1,\n "type": "string"\n },\n "kind": {\n "const": "address",\n "description": "Value for kind.",\n "type": "string"\n }\n },\n "required": [\n "kind",\n "address"\n ],\n "type": "object"\n },\n {\n "properties": {\n "end": {\n "description": "Value for end.",\n "minLength": 1,\n "type": "string"\n },\n "kind": {\n "const": "address-range",\n "description": "Value for kind.",\n "type": "string"\n },\n "start": {\n "description": "Value for start.",\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "kind",\n "start",\n "end"\n ],\n "type": "object"\n },\n {\n "properties": {\n "kind": {\n "const": "artifact-path",\n "description": "Value for kind.",\n "type": "string"\n },\n "path": {\n "description": "Local filesystem path used by this operation.",\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "kind",\n "path"\n ],\n "type": "object"\n },\n {\n "properties": {\n "kind": {\n "const": "file-offset",\n "description": "Value for kind.",\n "type": "string"\n },\n "offset": {\n "description": "Value for offset.",\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "kind",\n "offset"\n ],\n "type": "object"\n },\n {\n "properties": {\n "end": {\n "description": "Value for end.",\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "kind": {\n "const": "file-offset-range",\n "description": "Value for kind.",\n "type": "string"\n },\n "start": {\n "description": "Value for start.",\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "kind",\n "start",\n "end"\n ],\n "type": "object"\n }\n ]\n },\n "type": "array"\n },\n "normalized_result": {\n "$ref": "#/$defs/__schema0",\n "description": "Value for normalized result."\n },\n "operation": {\n "description": "Value for operation.",\n "minLength": 1,\n "type": "string"\n },\n "parameters": {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "description": "Value for parameters.",\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n },\n "predicate_type": {\n "description": "Value for predicate type.",\n "minLength": 1,\n "type": "string"\n },\n "provider": {\n "description": "Value for provider.",\n "properties": {\n "id": {\n "description": "Value for id.",\n "minLength": 1,\n "type": "string"\n },\n "name": {\n "description": "Exact name used by this operation.",\n "minLength": 1,\n "type": "string"\n },\n "version": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ],\n "description": "Value for version."\n }\n },\n "required": [\n "id",\n "name",\n "version"\n ],\n "type": "object"\n },\n "raw_result": {\n "anyOf": [\n {\n "$ref": "#/$defs/__schema0"\n },\n {\n "type": "null"\n }\n ],\n "description": "Value for raw result."\n },\n "subject": {\n "anyOf": [\n {\n "properties": {\n "architecture": {\n "anyOf": [\n {\n "enum": [\n "x86",\n "x86_64",\n "arm",\n "arm64"\n ],\n "type": "string"\n },\n {\n "type": "null"\n }\n ],\n "description": "Value for architecture."\n },\n "digest": {\n "description": "Value for digest.",\n "properties": {\n "sha256": {\n "description": "Value for sha256.",\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n }\n },\n "required": [\n "sha256"\n ],\n "type": "object"\n },\n "format": {\n "description": "Declared input artifact format.",\n "enum": [\n "hopper",\n "analysis-database",\n "mach-o",\n "elf",\n "pe",\n "dos-mz",\n "dos-com",\n "zip",\n "ipa",\n "apk",\n "msix",\n "appx",\n "asar",\n "dmg",\n "pkg",\n "plist",\n "javascript",\n "source-map",\n "directory",\n "file",\n "unknown",\n "mach-o-universal",\n "javascript-bundle",\n "entitlements"\n ],\n "type": "string"\n },\n "local_path": {\n "description": "Local filesystem path for local.",\n "type": "string"\n },\n "name": {\n "description": "Exact name used by this operation.",\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "name",\n "digest",\n "format",\n "architecture",\n "local_path"\n ],\n "type": "object"\n },\n {\n "type": "null"\n }\n ],\n "description": "Value for subject."\n }\n },\n "required": [\n "evidence_id",\n "subject",\n "provider",\n "predicate_type",\n "operation",\n "parameters",\n "raw_result",\n "normalized_result",\n "confidence",\n "authority",\n "environment",\n "limitations",\n "locations",\n "evidence_links"\n ],\n "type": "object"\n },\n "type": "array"\n }\n },\n "required": [\n "left",\n "right"\n ],\n "type": "object"\n },\n "kind": "application",\n "name": "compare_application_versions",\n "outputSchema": {\n "$defs": {\n "__schema0": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "number"\n },\n {\n "type": "boolean"\n },\n {\n "type": "null"\n },\n {\n "items": {\n "$ref": "#/$defs/__schema0"\n },\n "type": "array"\n },\n {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n }\n ]\n }\n },\n "$schema": "https://json-schema.org/draft/2020-12/schema",\n "additionalProperties": false,\n "properties": {\n "evidence": {\n "additionalProperties": false,\n "properties": {\n "analysis_profile": {\n "additionalProperties": false,\n "properties": {\n "digest": {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n },\n "parameters": {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n },\n "provider": {\n "additionalProperties": false,\n "properties": {\n "id": {\n "minLength": 1,\n "type": "string"\n },\n "name": {\n "minLength": 1,\n "type": "string"\n },\n "version": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "id",\n "name",\n "version"\n ],\n "type": "object"\n }\n },\n "required": [\n "provider",\n "parameters",\n "digest"\n ],\n "type": "object"\n },\n "authority": {\n "enum": [\n "shipped-artifact",\n "controlled-replay",\n "historical-reference",\n "external-service",\n "analyst-inference"\n ],\n "type": "string"\n },\n "confidence": {\n "enum": [\n "observed",\n "derived",\n "inferred"\n ],\n "type": "string"\n },\n "environment": {\n "anyOf": [\n {\n "additionalProperties": false,\n "properties": {\n "architecture": {\n "minLength": 1,\n "type": "string"\n },\n "id": {\n "minLength": 1,\n "type": "string"\n },\n "isolation": {\n "enum": [\n "none",\n "process",\n "container",\n "virtual-machine"\n ],\n "type": "string"\n },\n "platform": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "id",\n "platform",\n "architecture",\n "isolation"\n ],\n "type": "object"\n },\n {\n "type": "null"\n }\n ]\n },\n "evidence_id": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "evidence_links": {\n "items": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "type": "array"\n },\n "limitations": {\n "items": {\n "type": "string"\n },\n "type": "array"\n },\n "locations": {\n "items": {\n "oneOf": [\n {\n "additionalProperties": false,\n "properties": {\n "address": {\n "minLength": 1,\n "type": "string"\n },\n "kind": {\n "const": "address",\n "type": "string"\n }\n },\n "required": [\n "kind",\n "address"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "end": {\n "minLength": 1,\n "type": "string"\n },\n "kind": {\n "const": "address-range",\n "type": "string"\n },\n "start": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "kind",\n "start",\n "end"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "kind": {\n "const": "artifact-path",\n "type": "string"\n },\n "path": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "kind",\n "path"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "kind": {\n "const": "file-offset",\n "type": "string"\n },\n "offset": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "kind",\n "offset"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "end": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "kind": {\n "const": "file-offset-range",\n "type": "string"\n },\n "start": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "kind",\n "start",\n "end"\n ],\n "type": "object"\n }\n ]\n },\n "type": "array"\n },\n "normalized_result": {\n "$ref": "#/$defs/__schema0"\n },\n "operation": {\n "minLength": 1,\n "type": "string"\n },\n "parameters": {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n },\n "predicate_type": {\n "minLength": 1,\n "type": "string"\n },\n "provider": {\n "additionalProperties": false,\n "properties": {\n "id": {\n "minLength": 1,\n "type": "string"\n },\n "name": {\n "minLength": 1,\n "type": "string"\n },\n "version": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "id",\n "name",\n "version"\n ],\n "type": "object"\n },\n "raw_result": {\n "anyOf": [\n {\n "$ref": "#/$defs/__schema0"\n },\n {\n "type": "null"\n }\n ]\n },\n "subject": {\n "anyOf": [\n {\n "additionalProperties": false,\n "properties": {\n "architecture": {\n "anyOf": [\n {\n "enum": [\n "x86",\n "x86_64",\n "arm",\n "arm64"\n ],\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "digest": {\n "additionalProperties": false,\n "properties": {\n "sha256": {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n }\n },\n "required": [\n "sha256"\n ],\n "type": "object"\n },\n "format": {\n "enum": [\n "hopper",\n "analysis-database",\n "mach-o",\n "elf",\n "pe",\n "dos-mz",\n "dos-com",\n "zip",\n "ipa",\n "apk",\n "msix",\n "appx",\n "asar",\n "dmg",\n "pkg",\n "plist",\n "javascript",\n "source-map",\n "directory",\n "file",\n "unknown",\n "mach-o-universal",\n "javascript-bundle",\n "entitlements"\n ],\n "type": "string"\n },\n "local_path": {\n "type": "string"\n },\n "name": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "name",\n "digest",\n "format",\n "architecture",\n "local_path"\n ],\n "type": "object"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "evidence_id",\n "subject",\n "provider",\n "predicate_type",\n "operation",\n "parameters",\n "raw_result",\n "normalized_result",\n "confidence",\n "authority",\n "environment",\n "limitations",\n "locations",\n "evidence_links"\n ],\n "type": "object"\n },\n "evidence_id": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "result": {\n "additionalProperties": false,\n "properties": {\n "comparison_id": {\n "pattern": "^javc_[a-f0-9]{64}$",\n "type": "string"\n },\n "coverage": {\n "additionalProperties": false,\n "properties": {\n "left_graph_omitted_count": {\n "anyOf": [\n {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n {\n "type": "null"\n }\n ]\n },\n "left_graph_status": {\n "enum": [\n "complete",\n "partial",\n "unknown",\n "unavailable"\n ],\n "type": "string"\n },\n "right_graph_omitted_count": {\n "anyOf": [\n {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n {\n "type": "null"\n }\n ]\n },\n "right_graph_status": {\n "enum": [\n "complete",\n "partial",\n "unknown",\n "unavailable"\n ],\n "type": "string"\n },\n "status": {\n "enum": [\n "complete-within-inputs",\n "partial",\n "truncated"\n ],\n "type": "string"\n }\n },\n "required": [\n "left_graph_status",\n "right_graph_status",\n "left_graph_omitted_count",\n "right_graph_omitted_count",\n "status"\n ],\n "type": "object"\n },\n "evidence_links": {\n "items": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "minItems": 2,\n "type": "array"\n },\n "graph": {\n "additionalProperties": false,\n "properties": {\n "coverage": {\n "anyOf": [\n {\n "additionalProperties": false,\n "properties": {\n "limits": {\n "items": {\n "additionalProperties": false,\n "properties": {\n "name": {\n "minLength": 1,\n "type": "string"\n },\n "unit": {\n "enum": [\n "items",\n "bytes",\n "milliseconds",\n "depth",\n "characters",\n "instructions",\n "other"\n ],\n "type": "string"\n },\n "value": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "name",\n "value",\n "unit"\n ],\n "type": "object"\n },\n "type": "array"\n },\n "omitted_count": {\n "const": 0,\n "type": "number"\n },\n "status": {\n "const": "complete",\n "type": "string"\n },\n "truncated": {\n "const": false,\n "type": "boolean"\n }\n },\n "required": [\n "status",\n "truncated",\n "omitted_count",\n "limits"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "limits": {\n "items": {\n "additionalProperties": false,\n "properties": {\n "name": {\n "minLength": 1,\n "type": "string"\n },\n "unit": {\n "enum": [\n "items",\n "bytes",\n "milliseconds",\n "depth",\n "characters",\n "instructions",\n "other"\n ],\n "type": "string"\n },\n "value": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "name",\n "value",\n "unit"\n ],\n "type": "object"\n },\n "type": "array"\n },\n "omitted_count": {\n "anyOf": [\n {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n {\n "type": "null"\n }\n ]\n },\n "status": {\n "const": "partial",\n "type": "string"\n },\n "truncated": {\n "const": false,\n "type": "boolean"\n }\n },\n "required": [\n "status",\n "truncated",\n "omitted_count",\n "limits"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "limits": {\n "items": {\n "additionalProperties": false,\n "properties": {\n "name": {\n "minLength": 1,\n "type": "string"\n },\n "unit": {\n "enum": [\n "items",\n "bytes",\n "milliseconds",\n "depth",\n "characters",\n "instructions",\n "other"\n ],\n "type": "string"\n },\n "value": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "name",\n "value",\n "unit"\n ],\n "type": "object"\n },\n "minItems": 1,\n "type": "array"\n },\n "omitted_count": {\n "anyOf": [\n {\n "exclusiveMinimum": 0,\n "maximum": 9007199254740991,\n "type": "integer"\n },\n {\n "type": "null"\n }\n ]\n },\n "status": {\n "const": "partial",\n "type": "string"\n },\n "truncated": {\n "const": true,\n "type": "boolean"\n }\n },\n "required": [\n "status",\n "truncated",\n "omitted_count",\n "limits"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "limits": {\n "items": {\n "additionalProperties": false,\n "properties": {\n "name": {\n "minLength": 1,\n "type": "string"\n },\n "unit": {\n "enum": [\n "items",\n "bytes",\n "milliseconds",\n "depth",\n "characters",\n "instructions",\n "other"\n ],\n "type": "string"\n },\n "value": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "name",\n "value",\n "unit"\n ],\n "type": "object"\n },\n "type": "array"\n },\n "omitted_count": {\n "type": "null"\n },\n "status": {\n "enum": [\n "unknown",\n "unavailable"\n ],\n "type": "string"\n },\n "truncated": {\n "const": false,\n "type": "boolean"\n }\n },\n "required": [\n "status",\n "truncated",\n "omitted_count",\n "limits"\n ],\n "type": "object"\n }\n ]\n },\n "edges": {\n "items": {\n "additionalProperties": false,\n "properties": {\n "edge_id": {\n "pattern": "^jag_edge_[a-f0-9]{64}$",\n "type": "string"\n },\n "evidence": {\n "additionalProperties": false,\n "properties": {\n "artifact": {\n "oneOf": [\n {\n "additionalProperties": false,\n "properties": {\n "artifact_id": {\n "pattern": "^art_[a-f0-9]{64}$",\n "type": "string"\n },\n "available": {\n "const": true,\n "type": "boolean"\n },\n "sha256": {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n }\n },\n "required": [\n "available",\n "artifact_id",\n "sha256"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "available": {\n "const": false,\n "type": "boolean"\n },\n "detail": {\n "minLength": 1,\n "type": "string"\n },\n "reason": {\n "enum": [\n "not-applicable",\n "not-observed",\n "truncated",\n "provider-unavailable",\n "unresolved",\n "unknown"\n ],\n "type": "string"\n }\n },\n "required": [\n "available",\n "reason",\n "detail"\n ],\n "type": "object"\n }\n ]\n },\n "authority": {\n "enum": [\n "artifact-bytes",\n "ast-static-analysis",\n "static-relationship-inference",\n "passive-cdp-runtime",\n "cross-layer-reconciliation",\n "cross-version-comparison",\n "controlled-replay",\n "native-analysis-provider",\n "managed-static-analysis",\n "historical-reference",\n "user-assertion",\n "unknown"\n ],\n "type": "string"\n },\n "confidence": {\n "enum": [\n "exact",\n "high",\n "medium",\n "low",\n "unknown"\n ],\n "type": "string"\n },\n "coverage": {\n "anyOf": [\n {\n "additionalProperties": false,\n "properties": {\n "limits": {\n "items": {\n "additionalProperties": false,\n "properties": {\n "name": {\n "minLength": 1,\n "type": "string"\n },\n "unit": {\n "enum": [\n "items",\n "bytes",\n "milliseconds",\n "depth",\n "characters",\n "instructions",\n "other"\n ],\n "type": "string"\n },\n "value": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "name",\n "value",\n "unit"\n ],\n "type": "object"\n },\n "type": "array"\n },\n "omitted_count": {\n "const": 0,\n "type": "number"\n },\n "status": {\n "const": "complete",\n "type": "string"\n },\n "truncated": {\n "const": false,\n "type": "boolean"\n }\n },\n "required": [\n "status",\n "truncated",\n "omitted_count",\n "limits"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "limits": {\n "items": {\n "additionalProperties": false,\n "properties": {\n "name": {\n "minLength": 1,\n "type": "string"\n },\n "unit": {\n "enum": [\n "items",\n "bytes",\n "milliseconds",\n "depth",\n "characters",\n "instructions",\n "other"\n ],\n "type": "string"\n },\n "value": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "name",\n "value",\n "unit"\n ],\n "type": "object"\n },\n "type": "array"\n },\n "omitted_count": {\n "anyOf": [\n {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n {\n "type": "null"\n }\n ]\n },\n "status": {\n "const": "partial",\n "type": "string"\n },\n "truncated": {\n "const": false,\n "type": "boolean"\n }\n },\n "required": [\n "status",\n "truncated",\n "omitted_count",\n "limits"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "limits": {\n "items": {\n "additionalProperties": false,\n "properties": {\n "name": {\n "minLength": 1,\n "type": "string"\n },\n "unit": {\n "enum": [\n "items",\n "bytes",\n "milliseconds",\n "depth",\n "characters",\n "instructions",\n "other"\n ],\n "type": "string"\n },\n "value": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "name",\n "value",\n "unit"\n ],\n "type": "object"\n },\n "minItems": 1,\n "type": "array"\n },\n "omitted_count": {\n "anyOf": [\n {\n "exclusiveMinimum": 0,\n "maximum": 9007199254740991,\n "type": "integer"\n },\n {\n "type": "null"\n }\n ]\n },\n "status": {\n "const": "partial",\n "type": "string"\n },\n "truncated": {\n "const": true,\n "type": "boolean"\n }\n },\n "required": [\n "status",\n "truncated",\n "omitted_count",\n "limits"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "limits": {\n "items": {\n "additionalProperties": false,\n "properties": {\n "name": {\n "minLength": 1,\n "type": "string"\n },\n "unit": {\n "enum": [\n "items",\n "bytes",\n "milliseconds",\n "depth",\n "characters",\n "instructions",\n "other"\n ],\n "type": "string"\n },\n "value": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "name",\n "value",\n "unit"\n ],\n "type": "object"\n },\n "type": "array"\n },\n "omitted_count": {\n "type": "null"\n },\n "status": {\n "enum": [\n "unknown",\n "unavailable"\n ],\n "type": "string"\n },\n "truncated": {\n "const": false,\n "type": "boolean"\n }\n },\n "required": [\n "status",\n "truncated",\n "omitted_count",\n "limits"\n ],\n "type": "object"\n }\n ]\n },\n "evidence_ids": {\n "items": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "type": "array"\n },\n "extractor": {\n "additionalProperties": false,\n "properties": {\n "executable_sha256": {\n "anyOf": [\n {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "name": {\n "minLength": 1,\n "type": "string"\n },\n "operation": {\n "minLength": 1,\n "type": "string"\n },\n "version": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "name",\n "version",\n "operation",\n "executable_sha256"\n ],\n "type": "object"\n },\n "limitations": {\n "items": {\n "minLength": 1,\n "type": "string"\n },\n "type": "array"\n },\n "location": {\n "oneOf": [\n {\n "additionalProperties": false,\n "properties": {\n "available": {\n "const": true,\n "type": "boolean"\n },\n "value": {\n "oneOf": [\n {\n "additionalProperties": false,\n "properties": {\n "kind": {\n "const": "artifact-path",\n "type": "string"\n },\n "path": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "kind",\n "path"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "end": {\n "additionalProperties": false,\n "properties": {\n "column": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "line": {\n "maximum": 9007199254740991,\n "minimum": 1,\n "type": "integer"\n }\n },\n "required": [\n "line",\n "column"\n ],\n "type": "object"\n },\n "kind": {\n "const": "source-range",\n "type": "string"\n },\n "source": {\n "minLength": 1,\n "type": "string"\n },\n "start": {\n "additionalProperties": false,\n "properties": {\n "column": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "line": {\n "maximum": 9007199254740991,\n "minimum": 1,\n "type": "integer"\n }\n },\n "required": [\n "line",\n "column"\n ],\n "type": "object"\n }\n },\n "required": [\n "kind",\n "source",\n "start",\n "end"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "end": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "kind": {\n "const": "file-offset-range",\n "type": "string"\n },\n "start": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "kind",\n "start",\n "end"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "kind": {\n "const": "url",\n "type": "string"\n },\n "url": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "kind",\n "url"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "capture_sha256": {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n },\n "frame_key": {\n "anyOf": [\n {\n "minLength": 1,\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "kind": {\n "const": "runtime",\n "type": "string"\n },\n "script_key": {\n "anyOf": [\n {\n "minLength": 1,\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "target_key": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "kind",\n "capture_sha256",\n "target_key",\n "frame_key",\n "script_key"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "address": {\n "minLength": 1,\n "type": "string"\n },\n "kind": {\n "const": "native-address",\n "type": "string"\n },\n "symbol": {\n "anyOf": [\n {\n "minLength": 1,\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "kind",\n "address",\n "symbol"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "export_path": {\n "minLength": 1,\n "type": "string"\n },\n "kind": {\n "const": "package-export",\n "type": "string"\n },\n "package_name": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "kind",\n "package_name",\n "export_path"\n ],\n "type": "object"\n }\n ]\n }\n },\n "required": [\n "available",\n "value"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "available": {\n "const": false,\n "type": "boolean"\n },\n "detail": {\n "minLength": 1,\n "type": "string"\n },\n "reason": {\n "enum": [\n "not-applicable",\n "not-observed",\n "truncated",\n "provider-unavailable",\n "unresolved",\n "unknown"\n ],\n "type": "string"\n }\n },\n "required": [\n "available",\n "reason",\n "detail"\n ],\n "type": "object"\n }\n ]\n },\n "state": {\n "enum": [\n "observed",\n "inferred",\n "unknown",\n "unavailable"\n ],\n "type": "string"\n }\n },\n "required": [\n "authority",\n "state",\n "confidence",\n "artifact",\n "location",\n "extractor",\n "coverage",\n "limitations",\n "evidence_ids"\n ],\n "type": "object"\n },\n "identifier_strategy": {\n "additionalProperties": false,\n "properties": {\n "stability": {\n "const": "relationship-exact",\n "type": "string"\n },\n "strategy": {\n "const": "semantic-content-sha256",\n "type": "string"\n }\n },\n "required": [\n "strategy",\n "stability"\n ],\n "type": "object"\n },\n "properties": {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "propertyNames": {\n "minLength": 1,\n "type": "string"\n },\n "type": "object"\n },\n "relation": {\n "enum": [\n "contains",\n "loads",\n "imports",\n "maps_to",\n "exposes",\n "sends",\n "invokes",\n "handles",\n "calls",\n "persists_to",\n "observed_as",\n "changed_from"\n ],\n "type": "string"\n },\n "source_node_id": {\n "pattern": "^jag_node_[a-f0-9]{64}$",\n "type": "string"\n },\n "target_node_id": {\n "pattern": "^jag_node_[a-f0-9]{64}$",\n "type": "string"\n }\n },\n "required": [\n "source_node_id",\n "target_node_id",\n "relation",\n "properties",\n "evidence",\n "edge_id",\n "identifier_strategy"\n ],\n "type": "object"\n },\n "type": "array"\n },\n "graph_id": {\n "pattern": "^jag_[a-f0-9]{64}$",\n "type": "string"\n },\n "limitations": {\n "items": {\n "minLength": 1,\n "type": "string"\n },\n "type": "array"\n },\n "nodes": {\n "items": {\n "additionalProperties": false,\n "properties": {\n "identity": {\n "oneOf": [\n {\n "additionalProperties": false,\n "properties": {\n "sha256": {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n },\n "stability": {\n "const": "global-exact",\n "type": "string"\n },\n "strategy": {\n "const": "content-digest",\n "type": "string"\n }\n },\n "required": [\n "strategy",\n "stability",\n "sha256"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "original_source": {\n "type": "string"\n },\n "source_map_sha256": {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n },\n "source_sha256": {\n "anyOf": [\n {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "stability": {\n "const": "source-map-exact",\n "type": "string"\n },\n "strategy": {\n "const": "source-map-original",\n "type": "string"\n }\n },\n "required": [\n "strategy",\n "stability",\n "source_map_sha256",\n "original_source",\n "source_sha256"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "artifact_sha256": {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n },\n "path": {\n "minLength": 1,\n "type": "string"\n },\n "stability": {\n "const": "artifact-version",\n "type": "string"\n },\n "strategy": {\n "const": "canonical-path",\n "type": "string"\n }\n },\n "required": [\n "strategy",\n "stability",\n "artifact_sha256",\n "path"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "algorithm": {\n "minLength": 1,\n "type": "string"\n },\n "basis": {\n "items": {\n "enum": [\n "syntax-tree",\n "control-flow",\n "imports",\n "exports",\n "literals",\n "api-usage"\n ],\n "type": "string"\n },\n "minItems": 1,\n "type": "array"\n },\n "fingerprint_sha256": {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n },\n "stability": {\n "const": "cross-version-inference",\n "type": "string"\n },\n "strategy": {\n "const": "structural-fingerprint",\n "type": "string"\n }\n },\n "required": [\n "strategy",\n "stability",\n "algorithm",\n "fingerprint_sha256",\n "basis"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "artifact_sha256": {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n },\n "key": {\n "type": "string"\n },\n "namespace": {\n "minLength": 1,\n "type": "string"\n },\n "stability": {\n "const": "artifact-version",\n "type": "string"\n },\n "strategy": {\n "const": "artifact-local-key",\n "type": "string"\n }\n },\n "required": [\n "strategy",\n "stability",\n "artifact_sha256",\n "namespace",\n "key"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "capture_sha256": {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n },\n "runtime_key": {\n "minLength": 1,\n "type": "string"\n },\n "stability": {\n "const": "capture-only",\n "type": "string"\n },\n "strategy": {\n "const": "runtime-instance",\n "type": "string"\n }\n },\n "required": [\n "strategy",\n "stability",\n "capture_sha256",\n "runtime_key"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "observation_sha256": {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n },\n "scope": {\n "minLength": 1,\n "type": "string"\n },\n "stability": {\n "const": "observation-only",\n "type": "string"\n },\n "strategy": {\n "const": "observation-fingerprint",\n "type": "string"\n }\n },\n "required": [\n "strategy",\n "stability",\n "observation_sha256",\n "scope"\n ],\n "type": "object"\n }\n ]\n },\n "kind": {\n "enum": [\n "package",\n "installer",\n "artifact",\n "asar-entry",\n "electron-main",\n "electron-preload",\n "electron-renderer",\n "electron-utility",\n "javascript-asset",\n "javascript-chunk",\n "javascript-module",\n "source-map",\n "source-module",\n "browser-window",\n "frame",\n "target",\n "context-bridge-api",\n "ipc-channel",\n "ipc-handler",\n "worker",\n "service-worker",\n "endpoint",\n "storage",\n "native-addon",\n "native-export",\n "managed-assembly",\n "managed-module",\n "managed-type",\n "managed-method",\n "managed-field",\n "managed-pinvoke-import",\n "managed-native-implementation",\n "runtime-script-instance",\n "unknown"\n ],\n "type": "string"\n },\n "node_id": {\n "pattern": "^jag_node_[a-f0-9]{64}$",\n "type": "string"\n },\n "observations": {\n "items": {\n "additionalProperties": false,\n "properties": {\n "evidence": {\n "additionalProperties": false,\n "properties": {\n "artifact": {\n "oneOf": [\n {\n "additionalProperties": false,\n "properties": {\n "artifact_id": {\n "pattern": "^art_[a-f0-9]{64}$",\n "type": "string"\n },\n "available": {\n "const": true,\n "type": "boolean"\n },\n "sha256": {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n }\n },\n "required": [\n "available",\n "artifact_id",\n "sha256"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "available": {\n "const": false,\n "type": "boolean"\n },\n "detail": {\n "minLength": 1,\n "type": "string"\n },\n "reason": {\n "enum": [\n "not-applicable",\n "not-observed",\n "truncated",\n "provider-unavailable",\n "unresolved",\n "unknown"\n ],\n "type": "string"\n }\n },\n "required": [\n "available",\n "reason",\n "detail"\n ],\n "type": "object"\n }\n ]\n },\n "authority": {\n "enum": [\n "artifact-bytes",\n "ast-static-analysis",\n "static-relationship-inference",\n "passive-cdp-runtime",\n "cross-layer-reconciliation",\n "cross-version-comparison",\n "controlled-replay",\n "native-analysis-provider",\n "managed-static-analysis",\n "historical-reference",\n "user-assertion",\n "unknown"\n ],\n "type": "string"\n },\n "confidence": {\n "enum": [\n "exact",\n "high",\n "medium",\n "low",\n "unknown"\n ],\n "type": "string"\n },\n "coverage": {\n "anyOf": [\n {\n "additionalProperties": false,\n "properties": {\n "limits": {\n "items": {\n "additionalProperties": false,\n "properties": {\n "name": {\n "minLength": 1,\n "type": "string"\n },\n "unit": {\n "enum": [\n "items",\n "bytes",\n "milliseconds",\n "depth",\n "characters",\n "instructions",\n "other"\n ],\n "type": "string"\n },\n "value": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "name",\n "value",\n "unit"\n ],\n "type": "object"\n },\n "type": "array"\n },\n "omitted_count": {\n "const": 0,\n "type": "number"\n },\n "status": {\n "const": "complete",\n "type": "string"\n },\n "truncated": {\n "const": false,\n "type": "boolean"\n }\n },\n "required": [\n "status",\n "truncated",\n "omitted_count",\n "limits"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "limits": {\n "items": {\n "additionalProperties": false,\n "properties": {\n "name": {\n "minLength": 1,\n "type": "string"\n },\n "unit": {\n "enum": [\n "items",\n "bytes",\n "milliseconds",\n "depth",\n "characters",\n "instructions",\n "other"\n ],\n "type": "string"\n },\n "value": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "name",\n "value",\n "unit"\n ],\n "type": "object"\n },\n "type": "array"\n },\n "omitted_count": {\n "anyOf": [\n {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n {\n "type": "null"\n }\n ]\n },\n "status": {\n "const": "partial",\n "type": "string"\n },\n "truncated": {\n "const": false,\n "type": "boolean"\n }\n },\n "required": [\n "status",\n "truncated",\n "omitted_count",\n "limits"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "limits": {\n "items": {\n "additionalProperties": false,\n "properties": {\n "name": {\n "minLength": 1,\n "type": "string"\n },\n "unit": {\n "enum": [\n "items",\n "bytes",\n "milliseconds",\n "depth",\n "characters",\n "instructions",\n "other"\n ],\n "type": "string"\n },\n "value": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "name",\n "value",\n "unit"\n ],\n "type": "object"\n },\n "minItems": 1,\n "type": "array"\n },\n "omitted_count": {\n "anyOf": [\n {\n "exclusiveMinimum": 0,\n "maximum": 9007199254740991,\n "type": "integer"\n },\n {\n "type": "null"\n }\n ]\n },\n "status": {\n "const": "partial",\n "type": "string"\n },\n "truncated": {\n "const": true,\n "type": "boolean"\n }\n },\n "required": [\n "status",\n "truncated",\n "omitted_count",\n "limits"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "limits": {\n "items": {\n "additionalProperties": false,\n "properties": {\n "name": {\n "minLength": 1,\n "type": "string"\n },\n "unit": {\n "enum": [\n "items",\n "bytes",\n "milliseconds",\n "depth",\n "characters",\n "instructions",\n "other"\n ],\n "type": "string"\n },\n "value": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "name",\n "value",\n "unit"\n ],\n "type": "object"\n },\n "type": "array"\n },\n "omitted_count": {\n "type": "null"\n },\n "status": {\n "enum": [\n "unknown",\n "unavailable"\n ],\n "type": "string"\n },\n "truncated": {\n "const": false,\n "type": "boolean"\n }\n },\n "required": [\n "status",\n "truncated",\n "omitted_count",\n "limits"\n ],\n "type": "object"\n }\n ]\n },\n "evidence_ids": {\n "items": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "type": "array"\n },\n "extractor": {\n "additionalProperties": false,\n "properties": {\n "executable_sha256": {\n "anyOf": [\n {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "name": {\n "minLength": 1,\n "type": "string"\n },\n "operation": {\n "minLength": 1,\n "type": "string"\n },\n "version": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "name",\n "version",\n "operation",\n "executable_sha256"\n ],\n "type": "object"\n },\n "limitations": {\n "items": {\n "minLength": 1,\n "type": "string"\n },\n "type": "array"\n },\n "location": {\n "oneOf": [\n {\n "additionalProperties": false,\n "properties": {\n "available": {\n "const": true,\n "type": "boolean"\n },\n "value": {\n "oneOf": [\n {\n "additionalProperties": false,\n "properties": {\n "kind": {\n "const": "artifact-path",\n "type": "string"\n },\n "path": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "kind",\n "path"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "end": {\n "additionalProperties": false,\n "properties": {\n "column": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "line": {\n "maximum": 9007199254740991,\n "minimum": 1,\n "type": "integer"\n }\n },\n "required": [\n "line",\n "column"\n ],\n "type": "object"\n },\n "kind": {\n "const": "source-range",\n "type": "string"\n },\n "source": {\n "minLength": 1,\n "type": "string"\n },\n "start": {\n "additionalProperties": false,\n "properties": {\n "column": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "line": {\n "maximum": 9007199254740991,\n "minimum": 1,\n "type": "integer"\n }\n },\n "required": [\n "line",\n "column"\n ],\n "type": "object"\n }\n },\n "required": [\n "kind",\n "source",\n "start",\n "end"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "end": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "kind": {\n "const": "file-offset-range",\n "type": "string"\n },\n "start": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "kind",\n "start",\n "end"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "kind": {\n "const": "url",\n "type": "string"\n },\n "url": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "kind",\n "url"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "capture_sha256": {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n },\n "frame_key": {\n "anyOf": [\n {\n "minLength": 1,\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "kind": {\n "const": "runtime",\n "type": "string"\n },\n "script_key": {\n "anyOf": [\n {\n "minLength": 1,\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "target_key": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "kind",\n "capture_sha256",\n "target_key",\n "frame_key",\n "script_key"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "address": {\n "minLength": 1,\n "type": "string"\n },\n "kind": {\n "const": "native-address",\n "type": "string"\n },\n "symbol": {\n "anyOf": [\n {\n "minLength": 1,\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "kind",\n "address",\n "symbol"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "export_path": {\n "minLength": 1,\n "type": "string"\n },\n "kind": {\n "const": "package-export",\n "type": "string"\n },\n "package_name": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "kind",\n "package_name",\n "export_path"\n ],\n "type": "object"\n }\n ]\n }\n },\n "required": [\n "available",\n "value"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "available": {\n "const": false,\n "type": "boolean"\n },\n "detail": {\n "minLength": 1,\n "type": "string"\n },\n "reason": {\n "enum": [\n "not-applicable",\n "not-observed",\n "truncated",\n "provider-unavailable",\n "unresolved",\n "unknown"\n ],\n "type": "string"\n }\n },\n "required": [\n "available",\n "reason",\n "detail"\n ],\n "type": "object"\n }\n ]\n },\n "state": {\n "enum": [\n "observed",\n "inferred",\n "unknown",\n "unavailable"\n ],\n "type": "string"\n }\n },\n "required": [\n "authority",\n "state",\n "confidence",\n "artifact",\n "location",\n "extractor",\n "coverage",\n "limitations",\n "evidence_ids"\n ],\n "type": "object"\n },\n "identifier_strategy": {\n "additionalProperties": false,\n "properties": {\n "stability": {\n "const": "observation-exact",\n "type": "string"\n },\n "strategy": {\n "const": "semantic-content-sha256",\n "type": "string"\n }\n },\n "required": [\n "strategy",\n "stability"\n ],\n "type": "object"\n },\n "label": {\n "anyOf": [\n {\n "minLength": 1,\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "observation_id": {\n "pattern": "^jag_observation_[a-f0-9]{64}$",\n "type": "string"\n },\n "properties": {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "propertyNames": {\n "minLength": 1,\n "type": "string"\n },\n "type": "object"\n }\n },\n "required": [\n "label",\n "properties",\n "evidence",\n "observation_id",\n "identifier_strategy"\n ],\n "type": "object"\n },\n "minItems": 1,\n "type": "array"\n }\n },\n "required": [\n "node_id",\n "kind",\n "identity",\n "observations"\n ],\n "type": "object"\n },\n "minItems": 1,\n "type": "array"\n },\n "root_node_ids": {\n "items": {\n "pattern": "^jag_node_[a-f0-9]{64}$",\n "type": "string"\n },\n "minItems": 1,\n "type": "array"\n },\n "schema": {\n "const": "JavaScriptApplicationGraph",\n "type": "string"\n }\n },\n "required": [\n "schema",\n "root_node_ids",\n "nodes",\n "edges",\n "coverage",\n "limitations",\n "graph_id"\n ],\n "type": "object"\n },\n "items": {\n "items": {\n "anyOf": [\n {\n "additionalProperties": false,\n "properties": {\n "dimensions": {\n "items": {\n "enum": [\n "content",\n "location",\n "properties",\n "relationships",\n "availability",\n "coverage"\n ],\n "type": "string"\n },\n "type": "array"\n },\n "evidence_links": {\n "items": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "minItems": 2,\n "type": "array"\n },\n "item_id": {\n "pattern": "^javc_item_[a-f0-9]{64}$",\n "type": "string"\n },\n "left_node_id": {\n "pattern": "^jag_node_[a-f0-9]{64}$",\n "type": "string"\n },\n "limitations": {\n "items": {\n "minLength": 1,\n "type": "string"\n },\n "type": "array"\n },\n "match": {\n "anyOf": [\n {\n "additionalProperties": false,\n "properties": {\n "basis": {\n "enum": [\n "exact-node-identity",\n "exact-content-digest",\n "exact-module-source-digest"\n ],\n "type": "string"\n },\n "candidate_left_node_ids": {\n "items": {\n "not": {}\n },\n "maxItems": 0,\n "minItems": 0,\n "type": "array"\n },\n "candidate_right_node_ids": {\n "items": {\n "not": {}\n },\n "maxItems": 0,\n "minItems": 0,\n "type": "array"\n },\n "confidence": {\n "const": "exact",\n "type": "string"\n },\n "status": {\n "const": "matched",\n "type": "string"\n }\n },\n "required": [\n "status",\n "basis",\n "confidence",\n "candidate_left_node_ids",\n "candidate_right_node_ids"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "basis": {\n "const": "source-map-identity",\n "type": "string"\n },\n "candidate_left_node_ids": {\n "items": {\n "not": {}\n },\n "maxItems": 0,\n "minItems": 0,\n "type": "array"\n },\n "candidate_right_node_ids": {\n "items": {\n "not": {}\n },\n "maxItems": 0,\n "minItems": 0,\n "type": "array"\n },\n "confidence": {\n "const": "high",\n "type": "string"\n },\n "status": {\n "const": "matched",\n "type": "string"\n }\n },\n "required": [\n "status",\n "basis",\n "confidence",\n "candidate_left_node_ids",\n "candidate_right_node_ids"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "basis": {\n "enum": [\n "structural-fingerprint",\n "semantic-key"\n ],\n "type": "string"\n },\n "candidate_left_node_ids": {\n "items": {\n "not": {}\n },\n "maxItems": 0,\n "minItems": 0,\n "type": "array"\n },\n "candidate_right_node_ids": {\n "items": {\n "not": {}\n },\n "maxItems": 0,\n "minItems": 0,\n "type": "array"\n },\n "confidence": {\n "const": "medium",\n "type": "string"\n },\n "status": {\n "const": "matched",\n "type": "string"\n }\n },\n "required": [\n "status",\n "basis",\n "confidence",\n "candidate_left_node_ids",\n "candidate_right_node_ids"\n ],\n "type": "object"\n }\n ]\n },\n "node_kind": {\n "enum": [\n "package",\n "installer",\n "artifact",\n "asar-entry",\n "electron-main",\n "electron-preload",\n "electron-renderer",\n "electron-utility",\n "javascript-asset",\n "javascript-chunk",\n "javascript-module",\n "source-map",\n "source-module",\n "browser-window",\n "frame",\n "target",\n "context-bridge-api",\n "ipc-channel",\n "ipc-handler",\n "worker",\n "service-worker",\n "endpoint",\n "storage",\n "native-addon",\n "native-export",\n "managed-assembly",\n "managed-module",\n "managed-type",\n "managed-method",\n "managed-field",\n "managed-pinvoke-import",\n "managed-native-implementation",\n "runtime-script-instance",\n "unknown"\n ],\n "type": "string"\n },\n "right_node_id": {\n "pattern": "^jag_node_[a-f0-9]{64}$",\n "type": "string"\n },\n "status": {\n "enum": [\n "unchanged",\n "changed",\n "unknown"\n ],\n "type": "string"\n }\n },\n "required": [\n "item_id",\n "node_kind",\n "dimensions",\n "evidence_links",\n "limitations",\n "status",\n "left_node_id",\n "right_node_id",\n "match"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "dimensions": {\n "items": {\n "enum": [\n "content",\n "location",\n "properties",\n "relationships",\n "availability",\n "coverage"\n ],\n "type": "string"\n },\n "type": "array"\n },\n "evidence_links": {\n "items": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "minItems": 2,\n "type": "array"\n },\n "item_id": {\n "pattern": "^javc_item_[a-f0-9]{64}$",\n "type": "string"\n },\n "left_node_id": {\n "pattern": "^jag_node_[a-f0-9]{64}$",\n "type": "string"\n },\n "limitations": {\n "items": {\n "minLength": 1,\n "type": "string"\n },\n "type": "array"\n },\n "match": {\n "additionalProperties": false,\n "properties": {\n "basis": {\n "const": "none",\n "type": "string"\n },\n "candidate_left_node_ids": {\n "items": {\n "not": {}\n },\n "maxItems": 0,\n "minItems": 0,\n "type": "array"\n },\n "candidate_right_node_ids": {\n "items": {\n "not": {}\n },\n "maxItems": 0,\n "minItems": 0,\n "type": "array"\n },\n "confidence": {\n "const": "unknown",\n "type": "string"\n },\n "status": {\n "const": "unmatched",\n "type": "string"\n }\n },\n "required": [\n "status",\n "basis",\n "confidence",\n "candidate_left_node_ids",\n "candidate_right_node_ids"\n ],\n "type": "object"\n },\n "node_kind": {\n "enum": [\n "package",\n "installer",\n "artifact",\n "asar-entry",\n "electron-main",\n "electron-preload",\n "electron-renderer",\n "electron-utility",\n "javascript-asset",\n "javascript-chunk",\n "javascript-module",\n "source-map",\n "source-module",\n "browser-window",\n "frame",\n "target",\n "context-bridge-api",\n "ipc-channel",\n "ipc-handler",\n "worker",\n "service-worker",\n "endpoint",\n "storage",\n "native-addon",\n "native-export",\n "managed-assembly",\n "managed-module",\n "managed-type",\n "managed-method",\n "managed-field",\n "managed-pinvoke-import",\n "managed-native-implementation",\n "runtime-script-instance",\n "unknown"\n ],\n "type": "string"\n },\n "right_node_id": {\n "type": "null"\n },\n "status": {\n "enum": [\n "removed",\n "unknown"\n ],\n "type": "string"\n }\n },\n "required": [\n "item_id",\n "node_kind",\n "dimensions",\n "evidence_links",\n "limitations",\n "status",\n "left_node_id",\n "right_node_id",\n "match"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "dimensions": {\n "items": {\n "enum": [\n "content",\n "location",\n "properties",\n "relationships",\n "availability",\n "coverage"\n ],\n "type": "string"\n },\n "type": "array"\n },\n "evidence_links": {\n "items": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "minItems": 2,\n "type": "array"\n },\n "item_id": {\n "pattern": "^javc_item_[a-f0-9]{64}$",\n "type": "string"\n },\n "left_node_id": {\n "type": "null"\n },\n "limitations": {\n "items": {\n "minLength": 1,\n "type": "string"\n },\n "type": "array"\n },\n "match": {\n "additionalProperties": false,\n "properties": {\n "basis": {\n "const": "none",\n "type": "string"\n },\n "candidate_left_node_ids": {\n "items": {\n "not": {}\n },\n "maxItems": 0,\n "minItems": 0,\n "type": "array"\n },\n "candidate_right_node_ids": {\n "items": {\n "not": {}\n },\n "maxItems": 0,\n "minItems": 0,\n "type": "array"\n },\n "confidence": {\n "const": "unknown",\n "type": "string"\n },\n "status": {\n "const": "unmatched",\n "type": "string"\n }\n },\n "required": [\n "status",\n "basis",\n "confidence",\n "candidate_left_node_ids",\n "candidate_right_node_ids"\n ],\n "type": "object"\n },\n "node_kind": {\n "enum": [\n "package",\n "installer",\n "artifact",\n "asar-entry",\n "electron-main",\n "electron-preload",\n "electron-renderer",\n "electron-utility",\n "javascript-asset",\n "javascript-chunk",\n "javascript-module",\n "source-map",\n "source-module",\n "browser-window",\n "frame",\n "target",\n "context-bridge-api",\n "ipc-channel",\n "ipc-handler",\n "worker",\n "service-worker",\n "endpoint",\n "storage",\n "native-addon",\n "native-export",\n "managed-assembly",\n "managed-module",\n "managed-type",\n "managed-method",\n "managed-field",\n "managed-pinvoke-import",\n "managed-native-implementation",\n "runtime-script-instance",\n "unknown"\n ],\n "type": "string"\n },\n "right_node_id": {\n "pattern": "^jag_node_[a-f0-9]{64}$",\n "type": "string"\n },\n "status": {\n "enum": [\n "added",\n "unknown"\n ],\n "type": "string"\n }\n },\n "required": [\n "item_id",\n "node_kind",\n "dimensions",\n "evidence_links",\n "limitations",\n "status",\n "left_node_id",\n "right_node_id",\n "match"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "dimensions": {\n "items": {\n "enum": [\n "content",\n "location",\n "properties",\n "relationships",\n "availability",\n "coverage"\n ],\n "type": "string"\n },\n "type": "array"\n },\n "evidence_links": {\n "items": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "minItems": 2,\n "type": "array"\n },\n "item_id": {\n "pattern": "^javc_item_[a-f0-9]{64}$",\n "type": "string"\n },\n "left_node_id": {\n "pattern": "^jag_node_[a-f0-9]{64}$",\n "type": "string"\n },\n "limitations": {\n "items": {\n "minLength": 1,\n "type": "string"\n },\n "type": "array"\n },\n "match": {\n "additionalProperties": false,\n "properties": {\n "basis": {\n "const": "none",\n "type": "string"\n },\n "candidate_left_node_ids": {\n "items": {\n "not": {}\n },\n "maxItems": 0,\n "minItems": 0,\n "type": "array"\n },\n "candidate_right_node_ids": {\n "items": {\n "pattern": "^jag_node_[a-f0-9]{64}$",\n "type": "string"\n },\n "prefixItems": [\n {\n "pattern": "^jag_node_[a-f0-9]{64}$",\n "type": "string"\n }\n ],\n "type": "array"\n },\n "confidence": {\n "const": "unknown",\n "type": "string"\n },\n "status": {\n "const": "ambiguous",\n "type": "string"\n }\n },\n "required": [\n "status",\n "basis",\n "confidence",\n "candidate_left_node_ids",\n "candidate_right_node_ids"\n ],\n "type": "object"\n },\n "node_kind": {\n "enum": [\n "package",\n "installer",\n "artifact",\n "asar-entry",\n "electron-main",\n "electron-preload",\n "electron-renderer",\n "electron-utility",\n "javascript-asset",\n "javascript-chunk",\n "javascript-module",\n "source-map",\n "source-module",\n "browser-window",\n "frame",\n "target",\n "context-bridge-api",\n "ipc-channel",\n "ipc-handler",\n "worker",\n "service-worker",\n "endpoint",\n "storage",\n "native-addon",\n "native-export",\n "managed-assembly",\n "managed-module",\n "managed-type",\n "managed-method",\n "managed-field",\n "managed-pinvoke-import",\n "managed-native-implementation",\n "runtime-script-instance",\n "unknown"\n ],\n "type": "string"\n },\n "right_node_id": {\n "type": "null"\n },\n "status": {\n "const": "unknown",\n "type": "string"\n }\n },\n "required": [\n "item_id",\n "node_kind",\n "dimensions",\n "evidence_links",\n "limitations",\n "status",\n "left_node_id",\n "right_node_id",\n "match"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "dimensions": {\n "items": {\n "enum": [\n "content",\n "location",\n "properties",\n "relationships",\n "availability",\n "coverage"\n ],\n "type": "string"\n },\n "type": "array"\n },\n "evidence_links": {\n "items": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "minItems": 2,\n "type": "array"\n },\n "item_id": {\n "pattern": "^javc_item_[a-f0-9]{64}$",\n "type": "string"\n },\n "left_node_id": {\n "type": "null"\n },\n "limitations": {\n "items": {\n "minLength": 1,\n "type": "string"\n },\n "type": "array"\n },\n "match": {\n "additionalProperties": false,\n "properties": {\n "basis": {\n "const": "none",\n "type": "string"\n },\n "candidate_left_node_ids": {\n "items": {\n "pattern": "^jag_node_[a-f0-9]{64}$",\n "type": "string"\n },\n "prefixItems": [\n {\n "pattern": "^jag_node_[a-f0-9]{64}$",\n "type": "string"\n }\n ],\n "type": "array"\n },\n "candidate_right_node_ids": {\n "items": {\n "not": {}\n },\n "maxItems": 0,\n "minItems": 0,\n "type": "array"\n },\n "confidence": {\n "const": "unknown",\n "type": "string"\n },\n "status": {\n "const": "ambiguous",\n "type": "string"\n }\n },\n "required": [\n "status",\n "basis",\n "confidence",\n "candidate_left_node_ids",\n "candidate_right_node_ids"\n ],\n "type": "object"\n },\n "node_kind": {\n "enum": [\n "package",\n "installer",\n "artifact",\n "asar-entry",\n "electron-main",\n "electron-preload",\n "electron-renderer",\n "electron-utility",\n "javascript-asset",\n "javascript-chunk",\n "javascript-module",\n "source-map",\n "source-module",\n "browser-window",\n "frame",\n "target",\n "context-bridge-api",\n "ipc-channel",\n "ipc-handler",\n "worker",\n "service-worker",\n "endpoint",\n "storage",\n "native-addon",\n "native-export",\n "managed-assembly",\n "managed-module",\n "managed-type",\n "managed-method",\n "managed-field",\n "managed-pinvoke-import",\n "managed-native-implementation",\n "runtime-script-instance",\n "unknown"\n ],\n "type": "string"\n },\n "right_node_id": {\n "pattern": "^jag_node_[a-f0-9]{64}$",\n "type": "string"\n },\n "status": {\n "const": "unknown",\n "type": "string"\n }\n },\n "required": [\n "item_id",\n "node_kind",\n "dimensions",\n "evidence_links",\n "limitations",\n "status",\n "left_node_id",\n "right_node_id",\n "match"\n ],\n "type": "object"\n }\n ]\n },\n "type": "array"\n },\n "left": {\n "additionalProperties": false,\n "properties": {\n "evidence_id": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "graph_id": {\n "pattern": "^jag_[a-f0-9]{64}$",\n "type": "string"\n },\n "root_artifact_sha256": {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n }\n },\n "required": [\n "evidence_id",\n "graph_id",\n "root_artifact_sha256"\n ],\n "type": "object"\n },\n "limitations": {\n "items": {\n "minLength": 1,\n "type": "string"\n },\n "type": "array"\n },\n "matching": {\n "additionalProperties": false,\n "properties": {\n "ambiguous": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "exact_content_digest": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "exact_module_source_digest": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "exact_node_identity": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "semantic_key": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "source_map_identity": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "structural_fingerprint": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "unmatched": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "exact_node_identity",\n "exact_content_digest",\n "exact_module_source_digest",\n "source_map_identity",\n "structural_fingerprint",\n "semantic_key",\n "ambiguous",\n "unmatched"\n ],\n "type": "object"\n },\n "right": {\n "additionalProperties": false,\n "properties": {\n "evidence_id": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "graph_id": {\n "pattern": "^jag_[a-f0-9]{64}$",\n "type": "string"\n },\n "root_artifact_sha256": {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n }\n },\n "required": [\n "evidence_id",\n "graph_id",\n "root_artifact_sha256"\n ],\n "type": "object"\n },\n "summary": {\n "additionalProperties": false,\n "properties": {\n "added": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "changed": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "removed": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "unchanged": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "unknown": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "unchanged",\n "added",\n "removed",\n "changed",\n "unknown"\n ],\n "type": "object"\n }\n },\n "required": [\n "comparison_id",\n "left",\n "right",\n "summary",\n "matching",\n "items",\n "graph",\n "coverage",\n "evidence_links",\n "limitations"\n ],\n "type": "object"\n }\n },\n "required": [\n "result",\n "evidence_id",\n "evidence"\n ],\n "type": "object"\n },\n "requiresSession": false,\n "title": "Compare Application Versions"\n },\n {\n "analysisOperation": null,\n "annotations": {\n "destructiveHint": false,\n "idempotentHint": true,\n "openWorldHint": false,\n "readOnlyHint": false\n },\n "description": "Compare a cryptographically committed HistoricalSourceGraph with authenticated JavaScript Application Graph Evidence supplied inline or by exact same-session retained reference. 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.",\n "effects": {\n "accessesNetwork": false,\n "changesUiState": false,\n "idempotent": true,\n "launchesProcess": false,\n "mayDiscardData": false,\n "mutatesSession": true,\n "mutatesTarget": false,\n "writesFilesystem": false\n },\n "inputSchema": {\n "$defs": {\n "__schema0": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "number"\n },\n {\n "type": "boolean"\n },\n {\n "type": "null"\n },\n {\n "items": {\n "$ref": "#/$defs/__schema0"\n },\n "type": "array"\n },\n {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n }\n ]\n }\n },\n "$schema": "https://json-schema.org/draft/2020-12/schema",\n "additionalProperties": false,\n "examples": [\n {\n "application": {\n "authority": "shipped-artifact",\n "confidence": "derived",\n "environment": null,\n "evidence_id": "ev_a4ae2c7b5c501fb6dff695b168f35a6dd157fa957410910684f3a4ce4c8b5d54",\n "evidence_links": [],\n "limitations": [],\n "locations": [],\n "normalized_result": {\n "format": "directory",\n "graph": {\n "coverage": {\n "limits": [],\n "omitted_count": 0,\n "status": "complete",\n "truncated": false\n },\n "edges": [],\n "graph_id": "jag_ab15669664efc0a86bb49c9c60241913cce6980dc2293fbeef6d9c862ca01d9d",\n "limitations": [],\n "nodes": [\n {\n "identity": {\n "sha256": "c4c0d760a4c84f0e182de99f6ef89ef10831f8170e486c4d4bd934924151ba64",\n "stability": "global-exact",\n "strategy": "content-digest"\n },\n "kind": "javascript-asset",\n "node_id": "jag_node_3c82da5492d90eb5b0bee41c1a994d88b7ba98c0b4955270d70e57a76e224c2e",\n "observations": [\n {\n "evidence": {\n "artifact": {\n "artifact_id": "art_c4c0d760a4c84f0e182de99f6ef89ef10831f8170e486c4d4bd934924151ba64",\n "available": true,\n "sha256": "c4c0d760a4c84f0e182de99f6ef89ef10831f8170e486c4d4bd934924151ba64"\n },\n "authority": "artifact-bytes",\n "confidence": "exact",\n "coverage": {\n "limits": [],\n "omitted_count": 0,\n "status": "complete",\n "truncated": false\n },\n "evidence_ids": [],\n "extractor": {\n "executable_sha256": null,\n "name": "rea-javascript-application",\n "operation": "inventory-relevant-file",\n "version": "1"\n },\n "limitations": [],\n "location": {\n "available": true,\n "value": {\n "kind": "artifact-path",\n "path": "renderer.js"\n }\n },\n "state": "observed"\n },\n "identifier_strategy": {\n "stability": "observation-exact",\n "strategy": "semantic-content-sha256"\n },\n "label": "renderer.js",\n "observation_id": "jag_observation_20b4d076ce370db14ae2b477915624c62e0c4a0c9e56803a2c5cb4fa60c16230",\n "properties": {\n "bytes": 29,\n "path": "renderer.js"\n }\n }\n ]\n }\n ],\n "root_node_ids": [\n "jag_node_3c82da5492d90eb5b0bee41c1a994d88b7ba98c0b4955270d70e57a76e224c2e"\n ],\n "schema": "JavaScriptApplicationGraph"\n },\n "input_path": "/Applications/Example.app/Contents/Resources/app",\n "inventory_graph_sha256": "3333333333333333333333333333333333333333333333333333333333333333",\n "inventory_manifest_id": "agm_2222222222222222222222222222222222222222222222222222222222222222",\n "limitations": [],\n "root_artifact_sha256": "1111111111111111111111111111111111111111111111111111111111111111",\n "semantic_graph": {\n "application_graph_id": "jag_ab15669664efc0a86bb49c9c60241913cce6980dc2293fbeef6d9c862ca01d9d",\n "coverage": {\n "families": [\n {\n "family": "boundary",\n "omitted_relations": 0,\n "retained_relations": 0,\n "status": "unknown",\n "unknown_ids": []\n },\n {\n "family": "call-flow",\n "omitted_relations": 0,\n "retained_relations": 0,\n "status": "unknown",\n "unknown_ids": []\n },\n {\n "family": "child-process",\n "omitted_relations": 0,\n "retained_relations": 0,\n "status": "unknown",\n "unknown_ids": []\n },\n {\n "family": "closure",\n "omitted_relations": 0,\n "retained_relations": 0,\n "status": "unknown",\n "unknown_ids": []\n },\n {\n "family": "configuration",\n "omitted_relations": 0,\n "retained_relations": 0,\n "status": "unknown",\n "unknown_ids": []\n },\n {\n "family": "data-flow",\n "omitted_relations": 0,\n "retained_relations": 0,\n "status": "unknown",\n "unknown_ids": []\n },\n {\n "family": "event",\n "omitted_relations": 0,\n "retained_relations": 0,\n "status": "unknown",\n "unknown_ids": []\n },\n {\n "family": "object-flow",\n "omitted_relations": 0,\n "retained_relations": 0,\n "status": "unknown",\n "unknown_ids": []\n },\n {\n "family": "promise-ownership",\n "omitted_relations": 0,\n "retained_relations": 0,\n "status": "unknown",\n "unknown_ids": []\n },\n {\n "family": "request",\n "omitted_relations": 0,\n "retained_relations": 0,\n "status": "unknown",\n "unknown_ids": []\n },\n {\n "family": "resource-lifecycle",\n "omitted_relations": 0,\n "retained_relations": 0,\n "status": "unknown",\n "unknown_ids": []\n },\n {\n "family": "timer",\n "omitted_relations": 0,\n "retained_relations": 0,\n "status": "unknown",\n "unknown_ids": []\n }\n ],\n "limits": [],\n "omitted_nodes": 0,\n "omitted_relations": 0,\n "status": "unknown",\n "truncated": false\n },\n "fingerprints": [],\n "graph_id": "jsrg_08c925d2bf4ef56d770e0e67901d5bdfb610744cf001a50d36c9bb6dcb195508",\n "limitations": [\n "Semantic relations are unavailable in this minimal example."\n ],\n "nodes": [\n {\n "application_node_ids": [\n "jag_node_3c82da5492d90eb5b0bee41c1a994d88b7ba98c0b4955270d70e57a76e224c2e"\n ],\n "evidence": {\n "artifact": {\n "artifact_id": "art_c4c0d760a4c84f0e182de99f6ef89ef10831f8170e486c4d4bd934924151ba64",\n "available": true,\n "sha256": "c4c0d760a4c84f0e182de99f6ef89ef10831f8170e486c4d4bd934924151ba64"\n },\n "authority": "artifact-bytes",\n "confidence": "exact",\n "coverage": {\n "limits": [],\n "omitted_count": 0,\n "status": "complete",\n "truncated": false\n },\n "evidence_ids": [],\n "extractor": {\n "executable_sha256": null,\n "name": "rea-javascript-application",\n "operation": "inventory-relevant-file",\n "version": "1"\n },\n "limitations": [],\n "location": {\n "available": true,\n "value": {\n "kind": "artifact-path",\n "path": "renderer.js"\n }\n },\n "state": "observed"\n },\n "function_node_id": null,\n "identifier_strategy": {\n "stability": "artifact-version",\n "strategy": "semantic-content-sha256"\n },\n "identity": {\n "artifact_sha256": "1111111111111111111111111111111111111111111111111111111111111111",\n "module_path": "renderer.js",\n "role_key": "example-module",\n "source_range": null\n },\n "kind": "module",\n "label": "renderer.js",\n "node_id": "jsrg_node_9476602f1f74433a2bd3dadb040a25734d203b8f831b31a8d96f7efdfc5cd66a",\n "properties": {}\n }\n ],\n "relations": [],\n "root_artifact_sha256": "1111111111111111111111111111111111111111111111111111111111111111",\n "root_node_ids": [\n "jsrg_node_9476602f1f74433a2bd3dadb040a25734d203b8f831b31a8d96f7efdfc5cd66a"\n ],\n "schema": "JavaScriptSemanticRelationGraph",\n "unknowns": []\n },\n "statistics": {\n "findings": 0,\n "invalid_utf8_files": 0,\n "modules": 0,\n "nested_asar_containers": 0,\n "parse_failures": 0,\n "parsed_javascript_files": 1,\n "relevant_files": 1,\n "text_bytes_read": 29,\n "truncated_scopes": 0,\n "visited_ast_nodes": 1\n },\n "summary": {\n "browser_windows": 0,\n "context_bridge_apis": 0,\n "explicit_web_preferences": 0,\n "exposed_api_members": 0,\n "ipc": {\n "ambiguous_renderer_transmissions": 0,\n "dynamic_channel_operations": 0,\n "literal_channels": 0,\n "main_handlers": 0,\n "operations": 0,\n "paired_renderer_transmissions": 0,\n "renderer_listeners": 0,\n "renderer_transmissions": 0,\n "unpaired_literal_renderer_transmissions": 0\n },\n "native_addon_bindings": 0,\n "preload_entrypoints": 0,\n "resolved_native_addon_bindings": 0,\n "resolved_utility_entrypoints": 0,\n "sender_validation_observations": 0,\n "utility_processes": 0\n }\n },\n "operation": "analyze_javascript_application",\n "parameters": {},\n "predicate_type": "rea.javascript-application-analysis",\n "provider": {\n "id": "rea-javascript-application",\n "name": "REA JavaScript application analyzer",\n "version": "1"\n },\n "raw_result": null,\n "subject": {\n "architecture": null,\n "digest": {\n "sha256": "1111111111111111111111111111111111111111111111111111111111111111"\n },\n "format": "directory",\n "local_path": "/Applications/Example.app/Contents/Resources/app",\n "name": "app"\n }\n },\n "reference": {\n "authority": "historical-reference",\n "entries": [\n {\n "classifications": [\n "source"\n ],\n "kind": "directory",\n "limitations": [],\n "path": "src",\n "tree_state": "enumerated"\n },\n {\n "classifications": [\n "source"\n ],\n "content_state": "hashed",\n "kind": "file",\n "language": "TypeScript",\n "limitations": [],\n "path": "src/main.ts",\n "sha256": "2222222222222222222222222222222222222222222222222222222222222222",\n "size": 128\n }\n ],\n "exclusions": [],\n "inventory_state": "complete",\n "languages": [\n "TypeScript"\n ],\n "limitations": [],\n "manifests": [],\n "parse_failures": [],\n "provenance": {\n "caller": "contract-example",\n "importer": "rea",\n "importer_version": "1"\n },\n "relationships": [],\n "root_alias": "$REFERENCE_ROOT",\n "root_sha256": "683969414c3e674a368392213c78021322fb39609b0c57f346b22da6464b2110",\n "schema": "HistoricalSourceGraph",\n "vcs": {\n "dirty": null,\n "head": null,\n "kind": "none"\n }\n }\n }\n ],\n "properties": {\n "application": {\n "anyOf": [\n {\n "additionalProperties": false,\n "properties": {\n "analysis_profile": {\n "description": "Value for analysis profile.",\n "properties": {\n "digest": {\n "description": "Value for digest.",\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n },\n "parameters": {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "description": "Value for parameters.",\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n },\n "provider": {\n "description": "Value for provider.",\n "properties": {\n "id": {\n "description": "Value for id.",\n "minLength": 1,\n "type": "string"\n },\n "name": {\n "description": "Exact name used by this operation.",\n "minLength": 1,\n "type": "string"\n },\n "version": {\n "description": "Value for version.",\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "id",\n "name",\n "version"\n ],\n "type": "object"\n }\n },\n "required": [\n "provider",\n "parameters",\n "digest"\n ],\n "type": "object"\n },\n "authority": {\n "description": "Value for authority.",\n "enum": [\n "shipped-artifact",\n "controlled-replay",\n "historical-reference",\n "external-service",\n "analyst-inference"\n ],\n "type": "string"\n },\n "confidence": {\n "description": "Value for confidence.",\n "enum": [\n "observed",\n "derived",\n "inferred"\n ],\n "type": "string"\n },\n "environment": {\n "anyOf": [\n {\n "properties": {\n "architecture": {\n "description": "Value for architecture.",\n "minLength": 1,\n "type": "string"\n },\n "id": {\n "description": "Value for id.",\n "minLength": 1,\n "type": "string"\n },\n "isolation": {\n "description": "Value for isolation.",\n "enum": [\n "none",\n "process",\n "container",\n "virtual-machine"\n ],\n "type": "string"\n },\n "platform": {\n "description": "Value for platform.",\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "id",\n "platform",\n "architecture",\n "isolation"\n ],\n "type": "object"\n },\n {\n "type": "null"\n }\n ],\n "description": "Value for environment."\n },\n "evidence_id": {\n "description": "Stable identifier of the recorded Evidence observation.",\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "evidence_links": {\n "description": "Value for evidence links.",\n "items": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "type": "array"\n },\n "limitations": {\n "description": "Value for limitations.",\n "items": {\n "type": "string"\n },\n "type": "array"\n },\n "locations": {\n "description": "Value for locations.",\n "items": {\n "oneOf": [\n {\n "properties": {\n "address": {\n "description": "Value for address.",\n "minLength": 1,\n "type": "string"\n },\n "kind": {\n "const": "address",\n "description": "Value for kind.",\n "type": "string"\n }\n },\n "required": [\n "kind",\n "address"\n ],\n "type": "object"\n },\n {\n "properties": {\n "end": {\n "description": "Value for end.",\n "minLength": 1,\n "type": "string"\n },\n "kind": {\n "const": "address-range",\n "description": "Value for kind.",\n "type": "string"\n },\n "start": {\n "description": "Value for start.",\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "kind",\n "start",\n "end"\n ],\n "type": "object"\n },\n {\n "properties": {\n "kind": {\n "const": "artifact-path",\n "description": "Value for kind.",\n "type": "string"\n },\n "path": {\n "description": "Local filesystem path used by this operation.",\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "kind",\n "path"\n ],\n "type": "object"\n },\n {\n "properties": {\n "kind": {\n "const": "file-offset",\n "description": "Value for kind.",\n "type": "string"\n },\n "offset": {\n "description": "Value for offset.",\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "kind",\n "offset"\n ],\n "type": "object"\n },\n {\n "properties": {\n "end": {\n "description": "Value for end.",\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "kind": {\n "const": "file-offset-range",\n "description": "Value for kind.",\n "type": "string"\n },\n "start": {\n "description": "Value for start.",\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "kind",\n "start",\n "end"\n ],\n "type": "object"\n }\n ]\n },\n "type": "array"\n },\n "normalized_result": {\n "$ref": "#/$defs/__schema0",\n "description": "Value for normalized result."\n },\n "operation": {\n "description": "Value for operation.",\n "minLength": 1,\n "type": "string"\n },\n "parameters": {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "description": "Value for parameters.",\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n },\n "predicate_type": {\n "description": "Value for predicate type.",\n "minLength": 1,\n "type": "string"\n },\n "provider": {\n "description": "Value for provider.",\n "properties": {\n "id": {\n "description": "Value for id.",\n "minLength": 1,\n "type": "string"\n },\n "name": {\n "description": "Exact name used by this operation.",\n "minLength": 1,\n "type": "string"\n },\n "version": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ],\n "description": "Value for version."\n }\n },\n "required": [\n "id",\n "name",\n "version"\n ],\n "type": "object"\n },\n "raw_result": {\n "anyOf": [\n {\n "$ref": "#/$defs/__schema0"\n },\n {\n "type": "null"\n }\n ],\n "description": "Value for raw result."\n },\n "subject": {\n "anyOf": [\n {\n "properties": {\n "architecture": {\n "anyOf": [\n {\n "enum": [\n "x86",\n "x86_64",\n "arm",\n "arm64"\n ],\n "type": "string"\n },\n {\n "type": "null"\n }\n ],\n "description": "Value for architecture."\n },\n "digest": {\n "description": "Value for digest.",\n "properties": {\n "sha256": {\n "description": "Value for sha256.",\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n }\n },\n "required": [\n "sha256"\n ],\n "type": "object"\n },\n "format": {\n "description": "Declared input artifact format.",\n "enum": [\n "hopper",\n "analysis-database",\n "mach-o",\n "elf",\n "pe",\n "dos-mz",\n "dos-com",\n "zip",\n "ipa",\n "apk",\n "msix",\n "appx",\n "asar",\n "dmg",\n "pkg",\n "plist",\n "javascript",\n "source-map",\n "directory",\n "file",\n "unknown",\n "mach-o-universal",\n "javascript-bundle",\n "entitlements"\n ],\n "type": "string"\n },\n "local_path": {\n "description": "Local filesystem path for local.",\n "type": "string"\n },\n "name": {\n "description": "Exact name used by this operation.",\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "name",\n "digest",\n "format",\n "architecture",\n "local_path"\n ],\n "type": "object"\n },\n {\n "type": "null"\n }\n ],\n "description": "Value for subject."\n }\n },\n "required": [\n "evidence_id",\n "subject",\n "provider",\n "predicate_type",\n "operation",\n "parameters",\n "raw_result",\n "normalized_result",\n "confidence",\n "authority",\n "environment",\n "limitations",\n "locations",\n "evidence_links"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "evidence_id": {\n "description": "Stable identifier of the recorded Evidence observation.",\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "kind": {\n "const": "retained-evidence",\n "description": "Value for kind.",\n "type": "string"\n }\n },\n "required": [\n "kind",\n "evidence_id"\n ],\n "type": "object"\n }\n ],\n "description": "Value for application."\n },\n "reference": {\n "additionalProperties": false,\n "description": "Value for reference.",\n "properties": {\n "authority": {\n "const": "historical-reference",\n "description": "Value for authority.",\n "type": "string"\n },\n "entries": {\n "description": "Value for entries.",\n "items": {\n "anyOf": [\n {\n "anyOf": [\n {\n "additionalProperties": false,\n "properties": {\n "classifications": {\n "description": "Value for classifications.",\n "items": {\n "enum": [\n "source",\n "test",\n "config",\n "manifest",\n "generated",\n "vendor",\n "documentation",\n "unknown"\n ],\n "type": "string"\n },\n "minItems": 1,\n "type": "array"\n },\n "content_state": {\n "const": "hashed",\n "description": "Value for content state.",\n "type": "string"\n },\n "kind": {\n "const": "file",\n "description": "Value for kind.",\n "type": "string"\n },\n "language": {\n "anyOf": [\n {\n "minLength": 1,\n "type": "string"\n },\n {\n "type": "null"\n }\n ],\n "description": "Value for language."\n },\n "limitations": {\n "description": "Value for limitations.",\n "items": {\n "minLength": 1,\n "type": "string"\n },\n "type": "array"\n },\n "path": {\n "description": "Local filesystem path used by this operation.",\n "minLength": 1,\n "type": "string"\n },\n "sha256": {\n "description": "Value for sha256.",\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n },\n "size": {\n "description": "Value for size.",\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "path",\n "classifications",\n "limitations",\n "kind",\n "language",\n "sha256",\n "size",\n "content_state"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "classifications": {\n "description": "Value for classifications.",\n "items": {\n "enum": [\n "source",\n "test",\n "config",\n "manifest",\n "generated",\n "vendor",\n "documentation",\n "unknown"\n ],\n "type": "string"\n },\n "minItems": 1,\n "type": "array"\n },\n "content_state": {\n "description": "Value for content state.",\n "enum": [\n "redacted-secret",\n "excluded",\n "unreadable",\n "unknown"\n ],\n "type": "string"\n },\n "kind": {\n "const": "file",\n "description": "Value for kind.",\n "type": "string"\n },\n "language": {\n "anyOf": [\n {\n "minLength": 1,\n "type": "string"\n },\n {\n "type": "null"\n }\n ],\n "description": "Value for language."\n },\n "limitations": {\n "description": "Value for limitations.",\n "items": {\n "minLength": 1,\n "type": "string"\n },\n "type": "array"\n },\n "path": {\n "description": "Local filesystem path used by this operation.",\n "minLength": 1,\n "type": "string"\n },\n "sha256": {\n "description": "Value for sha256.",\n "type": "null"\n },\n "size": {\n "anyOf": [\n {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n {\n "type": "null"\n }\n ],\n "description": "Value for size."\n }\n },\n "required": [\n "path",\n "classifications",\n "limitations",\n "kind",\n "language",\n "sha256",\n "size",\n "content_state"\n ],\n "type": "object"\n }\n ]\n },\n {\n "additionalProperties": false,\n "properties": {\n "classifications": {\n "description": "Value for classifications.",\n "items": {\n "enum": [\n "source",\n "test",\n "config",\n "manifest",\n "generated",\n "vendor",\n "documentation",\n "unknown"\n ],\n "type": "string"\n },\n "minItems": 1,\n "type": "array"\n },\n "kind": {\n "const": "directory",\n "description": "Value for kind.",\n "type": "string"\n },\n "limitations": {\n "description": "Value for limitations.",\n "items": {\n "minLength": 1,\n "type": "string"\n },\n "type": "array"\n },\n "path": {\n "description": "Local filesystem path used by this operation.",\n "minLength": 1,\n "type": "string"\n },\n "tree_state": {\n "description": "Value for tree state.",\n "enum": [\n "enumerated",\n "partial",\n "excluded",\n "unreadable",\n "unknown"\n ],\n "type": "string"\n }\n },\n "required": [\n "path",\n "classifications",\n "limitations",\n "kind",\n "tree_state"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "classifications": {\n "description": "Value for classifications.",\n "items": {\n "enum": [\n "source",\n "test",\n "config",\n "manifest",\n "generated",\n "vendor",\n "documentation",\n "unknown"\n ],\n "type": "string"\n },\n "minItems": 1,\n "type": "array"\n },\n "kind": {\n "const": "symlink",\n "description": "Value for kind.",\n "type": "string"\n },\n "limitations": {\n "description": "Value for limitations.",\n "items": {\n "minLength": 1,\n "type": "string"\n },\n "type": "array"\n },\n "path": {\n "description": "Local filesystem path used by this operation.",\n "minLength": 1,\n "type": "string"\n },\n "target": {\n "description": "Value for target.",\n "minLength": 1,\n "type": "string"\n },\n "target_state": {\n "description": "Value for target state.",\n "enum": [\n "internal",\n "external",\n "missing",\n "unreadable",\n "unknown"\n ],\n "type": "string"\n }\n },\n "required": [\n "path",\n "classifications",\n "limitations",\n "kind",\n "target",\n "target_state"\n ],\n "type": "object"\n }\n ]\n },\n "type": "array"\n },\n "exclusions": {\n "description": "Value for exclusions.",\n "items": {\n "additionalProperties": false,\n "properties": {\n "path": {\n "description": "Local filesystem path used by this operation.",\n "minLength": 1,\n "type": "string"\n },\n "reason": {\n "description": "Value for reason.",\n "enum": [\n "configured-secret",\n "symlink-escape",\n "size-limit",\n "inventory-limit",\n "unreadable",\n "caller-excluded"\n ],\n "type": "string"\n }\n },\n "required": [\n "path",\n "reason"\n ],\n "type": "object"\n },\n "type": "array"\n },\n "inventory_state": {\n "description": "Value for inventory state.",\n "enum": [\n "complete",\n "partial",\n "unknown"\n ],\n "type": "string"\n },\n "languages": {\n "description": "Value for languages.",\n "items": {\n "minLength": 1,\n "type": "string"\n },\n "type": "array"\n },\n "limitations": {\n "description": "Value for limitations.",\n "items": {\n "minLength": 1,\n "type": "string"\n },\n "type": "array"\n },\n "manifests": {\n "description": "Value for manifests.",\n "items": {\n "minLength": 1,\n "type": "string"\n },\n "type": "array"\n },\n "parse_failures": {\n "description": "Value for parse failures.",\n "items": {\n "additionalProperties": false,\n "properties": {\n "parser": {\n "description": "Value for parser.",\n "minLength": 1,\n "type": "string"\n },\n "path": {\n "description": "Local filesystem path used by this operation.",\n "minLength": 1,\n "type": "string"\n },\n "reason": {\n "description": "Value for reason.",\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "path",\n "parser",\n "reason"\n ],\n "type": "object"\n },\n "type": "array"\n },\n "provenance": {\n "additionalProperties": false,\n "description": "Value for provenance.",\n "properties": {\n "caller": {\n "description": "Value for caller.",\n "minLength": 1,\n "pattern": "^[\\\\w .:@/+-]+$",\n "type": "string"\n },\n "importer": {\n "description": "Value for importer.",\n "minLength": 1,\n "type": "string"\n },\n "importer_version": {\n "anyOf": [\n {\n "minLength": 1,\n "type": "string"\n },\n {\n "type": "null"\n }\n ],\n "description": "Value for importer version."\n }\n },\n "required": [\n "importer",\n "importer_version",\n "caller"\n ],\n "type": "object"\n },\n "relationships": {\n "description": "Value for relationships.",\n "items": {\n "additionalProperties": false,\n "properties": {\n "from_path": {\n "description": "Local filesystem path for from.",\n "minLength": 1,\n "type": "string"\n },\n "kind": {\n "description": "Value for kind.",\n "enum": [\n "imports",\n "requires",\n "references",\n "declares-module"\n ],\n "type": "string"\n },\n "parse_state": {\n "description": "Value for parse state.",\n "enum": [\n "parsed",\n "partial",\n "unknown"\n ],\n "type": "string"\n },\n "resolution": {\n "description": "Value for resolution.",\n "enum": [\n "internal",\n "external",\n "unresolved",\n "unknown"\n ],\n "type": "string"\n },\n "to": {\n "description": "Value for to.",\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "from_path",\n "to",\n "kind",\n "resolution",\n "parse_state"\n ],\n "type": "object"\n },\n "type": "array"\n },\n "root_alias": {\n "const": "$REFERENCE_ROOT",\n "description": "Value for root alias.",\n "type": "string"\n },\n "root_sha256": {\n "description": "Exact SHA-256 digest of root.",\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n },\n "schema": {\n "const": "HistoricalSourceGraph",\n "description": "Value for schema.",\n "type": "string"\n },\n "vcs": {\n "anyOf": [\n {\n "oneOf": [\n {\n "additionalProperties": false,\n "properties": {\n "dirty": {\n "anyOf": [\n {\n "type": "boolean"\n },\n {\n "type": "null"\n }\n ],\n "description": "Value for dirty."\n },\n "head": {\n "description": "Value for head.",\n "pattern": "^(?:[a-f0-9]{40}|[a-f0-9]{64})$",\n "type": "string"\n },\n "kind": {\n "const": "git",\n "description": "Value for kind.",\n "type": "string"\n }\n },\n "required": [\n "kind",\n "head",\n "dirty"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "dirty": {\n "description": "Value for dirty.",\n "type": "null"\n },\n "head": {\n "description": "Value for head.",\n "type": "null"\n },\n "kind": {\n "const": "none",\n "description": "Value for kind.",\n "type": "string"\n }\n },\n "required": [\n "kind",\n "head",\n "dirty"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "dirty": {\n "description": "Value for dirty.",\n "type": "null"\n },\n "head": {\n "description": "Value for head.",\n "type": "null"\n },\n "kind": {\n "const": "unknown",\n "description": "Value for kind.",\n "type": "string"\n }\n },\n "required": [\n "kind",\n "head",\n "dirty"\n ],\n "type": "object"\n }\n ]\n },\n {\n "type": "null"\n }\n ],\n "description": "Value for vcs."\n }\n },\n "required": [\n "schema",\n "authority",\n "root_alias",\n "root_sha256",\n "inventory_state",\n "entries",\n "relationships",\n "parse_failures",\n "exclusions",\n "languages",\n "manifests",\n "vcs",\n "provenance",\n "limitations"\n ],\n "type": "object"\n }\n },\n "required": [\n "reference",\n "application"\n ],\n "type": "object"\n },\n "kind": "application",\n "name": "compare_source_to_bundle",\n "outputSchema": {\n "$defs": {\n "__schema0": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "number"\n },\n {\n "type": "boolean"\n },\n {\n "type": "null"\n },\n {\n "items": {\n "$ref": "#/$defs/__schema0"\n },\n "type": "array"\n },\n {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n }\n ]\n }\n },\n "$schema": "https://json-schema.org/draft/2020-12/schema",\n "additionalProperties": false,\n "properties": {\n "evidence": {\n "additionalProperties": false,\n "properties": {\n "analysis_profile": {\n "additionalProperties": false,\n "properties": {\n "digest": {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n },\n "parameters": {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n },\n "provider": {\n "additionalProperties": false,\n "properties": {\n "id": {\n "minLength": 1,\n "type": "string"\n },\n "name": {\n "minLength": 1,\n "type": "string"\n },\n "version": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "id",\n "name",\n "version"\n ],\n "type": "object"\n }\n },\n "required": [\n "provider",\n "parameters",\n "digest"\n ],\n "type": "object"\n },\n "authority": {\n "enum": [\n "shipped-artifact",\n "controlled-replay",\n "historical-reference",\n "external-service",\n "analyst-inference"\n ],\n "type": "string"\n },\n "confidence": {\n "enum": [\n "observed",\n "derived",\n "inferred"\n ],\n "type": "string"\n },\n "environment": {\n "anyOf": [\n {\n "additionalProperties": false,\n "properties": {\n "architecture": {\n "minLength": 1,\n "type": "string"\n },\n "id": {\n "minLength": 1,\n "type": "string"\n },\n "isolation": {\n "enum": [\n "none",\n "process",\n "container",\n "virtual-machine"\n ],\n "type": "string"\n },\n "platform": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "id",\n "platform",\n "architecture",\n "isolation"\n ],\n "type": "object"\n },\n {\n "type": "null"\n }\n ]\n },\n "evidence_id": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "evidence_links": {\n "items": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "type": "array"\n },\n "limitations": {\n "items": {\n "type": "string"\n },\n "type": "array"\n },\n "locations": {\n "items": {\n "oneOf": [\n {\n "additionalProperties": false,\n "properties": {\n "address": {\n "minLength": 1,\n "type": "string"\n },\n "kind": {\n "const": "address",\n "type": "string"\n }\n },\n "required": [\n "kind",\n "address"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "end": {\n "minLength": 1,\n "type": "string"\n },\n "kind": {\n "const": "address-range",\n "type": "string"\n },\n "start": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "kind",\n "start",\n "end"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "kind": {\n "const": "artifact-path",\n "type": "string"\n },\n "path": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "kind",\n "path"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "kind": {\n "const": "file-offset",\n "type": "string"\n },\n "offset": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "kind",\n "offset"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "end": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "kind": {\n "const": "file-offset-range",\n "type": "string"\n },\n "start": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "kind",\n "start",\n "end"\n ],\n "type": "object"\n }\n ]\n },\n "type": "array"\n },\n "normalized_result": {\n "$ref": "#/$defs/__schema0"\n },\n "operation": {\n "minLength": 1,\n "type": "string"\n },\n "parameters": {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n },\n "predicate_type": {\n "minLength": 1,\n "type": "string"\n },\n "provider": {\n "additionalProperties": false,\n "properties": {\n "id": {\n "minLength": 1,\n "type": "string"\n },\n "name": {\n "minLength": 1,\n "type": "string"\n },\n "version": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "id",\n "name",\n "version"\n ],\n "type": "object"\n },\n "raw_result": {\n "anyOf": [\n {\n "$ref": "#/$defs/__schema0"\n },\n {\n "type": "null"\n }\n ]\n },\n "subject": {\n "anyOf": [\n {\n "additionalProperties": false,\n "properties": {\n "architecture": {\n "anyOf": [\n {\n "enum": [\n "x86",\n "x86_64",\n "arm",\n "arm64"\n ],\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "digest": {\n "additionalProperties": false,\n "properties": {\n "sha256": {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n }\n },\n "required": [\n "sha256"\n ],\n "type": "object"\n },\n "format": {\n "enum": [\n "hopper",\n "analysis-database",\n "mach-o",\n "elf",\n "pe",\n "dos-mz",\n "dos-com",\n "zip",\n "ipa",\n "apk",\n "msix",\n "appx",\n "asar",\n "dmg",\n "pkg",\n "plist",\n "javascript",\n "source-map",\n "directory",\n "file",\n "unknown",\n "mach-o-universal",\n "javascript-bundle",\n "entitlements"\n ],\n "type": "string"\n },\n "local_path": {\n "type": "string"\n },\n "name": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "name",\n "digest",\n "format",\n "architecture",\n "local_path"\n ],\n "type": "object"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "evidence_id",\n "subject",\n "provider",\n "predicate_type",\n "operation",\n "parameters",\n "raw_result",\n "normalized_result",\n "confidence",\n "authority",\n "environment",\n "limitations",\n "locations",\n "evidence_links"\n ],\n "type": "object"\n },\n "evidence_id": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "result": {\n "additionalProperties": false,\n "properties": {\n "application": {\n "additionalProperties": false,\n "properties": {\n "evidence_id": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "graph_id": {\n "pattern": "^jag_[a-f0-9]{64}$",\n "type": "string"\n },\n "root_artifact_sha256": {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n }\n },\n "required": [\n "evidence_id",\n "graph_id",\n "root_artifact_sha256"\n ],\n "type": "object"\n },\n "comparison_id": {\n "pattern": "^stbc_[a-f0-9]{64}$",\n "type": "string"\n },\n "coverage": {\n "additionalProperties": false,\n "properties": {\n "application_graph_status": {\n "enum": [\n "complete",\n "partial",\n "unknown",\n "unavailable"\n ],\n "type": "string"\n },\n "candidate_evaluations": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "reference_inventory_state": {\n "enum": [\n "complete",\n "partial",\n "unknown"\n ],\n "type": "string"\n },\n "retained_application_nodes": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "retained_source_files": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "status": {\n "enum": [\n "complete-within-inputs",\n "partial"\n ],\n "type": "string"\n }\n },\n "required": [\n "status",\n "reference_inventory_state",\n "application_graph_status",\n "retained_source_files",\n "retained_application_nodes",\n "candidate_evaluations"\n ],\n "type": "object"\n },\n "evidence_links": {\n "items": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "maxItems": 1,\n "minItems": 1,\n "type": "array"\n },\n "items": {\n "items": {\n "additionalProperties": false,\n "properties": {\n "candidates": {\n "items": {\n "additionalProperties": false,\n "properties": {\n "confidence": {\n "enum": [\n "exact",\n "high",\n "medium",\n "low"\n ],\n "type": "string"\n },\n "current_node_id": {\n "pattern": "^jag_node_[a-f0-9]{64}$",\n "type": "string"\n },\n "current_node_kind": {\n "enum": [\n "package",\n "installer",\n "artifact",\n "asar-entry",\n "electron-main",\n "electron-preload",\n "electron-renderer",\n "electron-utility",\n "javascript-asset",\n "javascript-chunk",\n "javascript-module",\n "source-map",\n "source-module",\n "browser-window",\n "frame",\n "target",\n "context-bridge-api",\n "ipc-channel",\n "ipc-handler",\n "worker",\n "service-worker",\n "endpoint",\n "storage",\n "native-addon",\n "native-export",\n "managed-assembly",\n "managed-module",\n "managed-type",\n "managed-method",\n "managed-field",\n "managed-pinvoke-import",\n "managed-native-implementation",\n "runtime-script-instance",\n "unknown"\n ],\n "type": "string"\n },\n "score": {\n "maximum": 9007199254740991,\n "minimum": 1,\n "type": "integer"\n },\n "signals": {\n "items": {\n "additionalProperties": false,\n "properties": {\n "current_values": {\n "items": {\n "minLength": 1,\n "type": "string"\n },\n "minItems": 1,\n "type": "array"\n },\n "kind": {\n "enum": [\n "exact-source-digest",\n "source-map-original-path",\n "current-path-exact",\n "current-path-suffix",\n "basename-match",\n "language-extension"\n ],\n "type": "string"\n },\n "source_value": {\n "minLength": 1,\n "type": "string"\n },\n "weight": {\n "maximum": 100,\n "minimum": 1,\n "type": "integer"\n }\n },\n "required": [\n "kind",\n "weight",\n "source_value",\n "current_values"\n ],\n "type": "object"\n },\n "minItems": 1,\n "type": "array"\n }\n },\n "required": [\n "current_node_id",\n "current_node_kind",\n "score",\n "confidence",\n "signals"\n ],\n "type": "object"\n },\n "type": "array"\n },\n "confidence": {\n "enum": [\n "exact",\n "high",\n "medium",\n "unknown"\n ],\n "type": "string"\n },\n "current_node_ids": {\n "items": {\n "pattern": "^jag_node_[a-f0-9]{64}$",\n "type": "string"\n },\n "type": "array"\n },\n "limitations": {\n "items": {\n "minLength": 1,\n "type": "string"\n },\n "type": "array"\n },\n "mapping_id": {\n "pattern": "^stbc_item_[a-f0-9]{64}$",\n "type": "string"\n },\n "source_language": {\n "anyOf": [\n {\n "minLength": 1,\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "source_path": {\n "minLength": 1,\n "type": "string"\n },\n "source_sha256": {\n "anyOf": [\n {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "status": {\n "enum": [\n "unchanged",\n "modified",\n "removed",\n "split",\n "merged",\n "duplicated",\n "unknown"\n ],\n "type": "string"\n }\n },\n "required": [\n "mapping_id",\n "source_path",\n "source_sha256",\n "source_language",\n "status",\n "confidence",\n "current_node_ids",\n "candidates",\n "limitations"\n ],\n "type": "object"\n },\n "type": "array"\n },\n "limitations": {\n "items": {\n "minLength": 1,\n "type": "string"\n },\n "type": "array"\n },\n "reference": {\n "additionalProperties": false,\n "properties": {\n "inventory_state": {\n "enum": [\n "complete",\n "partial",\n "unknown"\n ],\n "type": "string"\n },\n "root_sha256": {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n }\n },\n "required": [\n "root_sha256",\n "inventory_state"\n ],\n "type": "object"\n },\n "scoring": {\n "additionalProperties": false,\n "properties": {\n "algorithm": {\n "const": "rea-source-to-bundle-signals",\n "type": "string"\n },\n "minimum_candidate_score": {\n "const": 20,\n "type": "number"\n },\n "weights": {\n "items": {\n "additionalProperties": false,\n "properties": {\n "signal": {\n "enum": [\n "exact-source-digest",\n "source-map-original-path",\n "current-path-exact",\n "current-path-suffix",\n "basename-match",\n "language-extension"\n ],\n "type": "string"\n },\n "weight": {\n "maximum": 100,\n "minimum": 1,\n "type": "integer"\n }\n },\n "required": [\n "signal",\n "weight"\n ],\n "type": "object"\n },\n "type": "array"\n }\n },\n "required": [\n "algorithm",\n "minimum_candidate_score",\n "weights"\n ],\n "type": "object"\n },\n "summary": {\n "additionalProperties": false,\n "properties": {\n "duplicated": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "merged": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "modified": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "removed": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "split": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "unchanged": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "unknown": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "unchanged",\n "modified",\n "removed",\n "split",\n "merged",\n "duplicated",\n "unknown"\n ],\n "type": "object"\n },\n "unmapped_current_node_ids": {\n "items": {\n "pattern": "^jag_node_[a-f0-9]{64}$",\n "type": "string"\n },\n "type": "array"\n }\n },\n "required": [\n "comparison_id",\n "reference",\n "application",\n "scoring",\n "summary",\n "items",\n "unmapped_current_node_ids",\n "coverage",\n "evidence_links",\n "limitations"\n ],\n "type": "object"\n }\n },\n "required": [\n "result",\n "evidence_id",\n "evidence"\n ],\n "type": "object"\n },\n "requiresSession": false,\n "title": "Compare Source To Bundle"\n },\n {\n "analysisOperation": null,\n "annotations": {\n "destructiveHint": false,\n "idempotentHint": true,\n "openWorldHint": false,\n "readOnlyHint": false\n },\n "description": "Compare static return shapes for one exact module/export selector on each authenticated JavaScript Application Graph supplied as inline Evidence or exact same-session retained references. Variants pair only by reciprocal unique literal discriminants; dynamic values, incomplete properties, and ambiguous variants remain unknown. Reports JSON Pointer changes without executing JavaScript; runtime behavior requires a separate agent-run probe.",\n "effects": {\n "accessesNetwork": false,\n "changesUiState": false,\n "idempotent": true,\n "launchesProcess": false,\n "mayDiscardData": false,\n "mutatesSession": true,\n "mutatesTarget": false,\n "writesFilesystem": false\n },\n "inputSchema": {\n "$defs": {\n "__schema0": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "number"\n },\n {\n "type": "boolean"\n },\n {\n "type": "null"\n },\n {\n "items": {\n "$ref": "#/$defs/__schema0"\n },\n "type": "array"\n },\n {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n }\n ]\n }\n },\n "$schema": "https://json-schema.org/draft/2020-12/schema",\n "additionalProperties": false,\n "examples": [\n {\n "left": {\n "authority": "shipped-artifact",\n "confidence": "derived",\n "environment": null,\n "evidence_id": "ev_a4ae2c7b5c501fb6dff695b168f35a6dd157fa957410910684f3a4ce4c8b5d54",\n "evidence_links": [],\n "limitations": [],\n "locations": [],\n "normalized_result": {\n "format": "directory",\n "graph": {\n "coverage": {\n "limits": [],\n "omitted_count": 0,\n "status": "complete",\n "truncated": false\n },\n "edges": [],\n "graph_id": "jag_ab15669664efc0a86bb49c9c60241913cce6980dc2293fbeef6d9c862ca01d9d",\n "limitations": [],\n "nodes": [\n {\n "identity": {\n "sha256": "c4c0d760a4c84f0e182de99f6ef89ef10831f8170e486c4d4bd934924151ba64",\n "stability": "global-exact",\n "strategy": "content-digest"\n },\n "kind": "javascript-asset",\n "node_id": "jag_node_3c82da5492d90eb5b0bee41c1a994d88b7ba98c0b4955270d70e57a76e224c2e",\n "observations": [\n {\n "evidence": {\n "artifact": {\n "artifact_id": "art_c4c0d760a4c84f0e182de99f6ef89ef10831f8170e486c4d4bd934924151ba64",\n "available": true,\n "sha256": "c4c0d760a4c84f0e182de99f6ef89ef10831f8170e486c4d4bd934924151ba64"\n },\n "authority": "artifact-bytes",\n "confidence": "exact",\n "coverage": {\n "limits": [],\n "omitted_count": 0,\n "status": "complete",\n "truncated": false\n },\n "evidence_ids": [],\n "extractor": {\n "executable_sha256": null,\n "name": "rea-javascript-application",\n "operation": "inventory-relevant-file",\n "version": "1"\n },\n "limitations": [],\n "location": {\n "available": true,\n "value": {\n "kind": "artifact-path",\n "path": "renderer.js"\n }\n },\n "state": "observed"\n },\n "identifier_strategy": {\n "stability": "observation-exact",\n "strategy": "semantic-content-sha256"\n },\n "label": "renderer.js",\n "observation_id": "jag_observation_20b4d076ce370db14ae2b477915624c62e0c4a0c9e56803a2c5cb4fa60c16230",\n "properties": {\n "bytes": 29,\n "path": "renderer.js"\n }\n }\n ]\n }\n ],\n "root_node_ids": [\n "jag_node_3c82da5492d90eb5b0bee41c1a994d88b7ba98c0b4955270d70e57a76e224c2e"\n ],\n "schema": "JavaScriptApplicationGraph"\n },\n "input_path": "/Applications/Example.app/Contents/Resources/app",\n "inventory_graph_sha256": "3333333333333333333333333333333333333333333333333333333333333333",\n "inventory_manifest_id": "agm_2222222222222222222222222222222222222222222222222222222222222222",\n "limitations": [],\n "root_artifact_sha256": "1111111111111111111111111111111111111111111111111111111111111111",\n "semantic_graph": {\n "application_graph_id": "jag_ab15669664efc0a86bb49c9c60241913cce6980dc2293fbeef6d9c862ca01d9d",\n "coverage": {\n "families": [\n {\n "family": "boundary",\n "omitted_relations": 0,\n "retained_relations": 0,\n "status": "unknown",\n "unknown_ids": []\n },\n {\n "family": "call-flow",\n "omitted_relations": 0,\n "retained_relations": 0,\n "status": "unknown",\n "unknown_ids": []\n },\n {\n "family": "child-process",\n "omitted_relations": 0,\n "retained_relations": 0,\n "status": "unknown",\n "unknown_ids": []\n },\n {\n "family": "closure",\n "omitted_relations": 0,\n "retained_relations": 0,\n "status": "unknown",\n "unknown_ids": []\n },\n {\n "family": "configuration",\n "omitted_relations": 0,\n "retained_relations": 0,\n "status": "unknown",\n "unknown_ids": []\n },\n {\n "family": "data-flow",\n "omitted_relations": 0,\n "retained_relations": 0,\n "status": "unknown",\n "unknown_ids": []\n },\n {\n "family": "event",\n "omitted_relations": 0,\n "retained_relations": 0,\n "status": "unknown",\n "unknown_ids": []\n },\n {\n "family": "object-flow",\n "omitted_relations": 0,\n "retained_relations": 0,\n "status": "unknown",\n "unknown_ids": []\n },\n {\n "family": "promise-ownership",\n "omitted_relations": 0,\n "retained_relations": 0,\n "status": "unknown",\n "unknown_ids": []\n },\n {\n "family": "request",\n "omitted_relations": 0,\n "retained_relations": 0,\n "status": "unknown",\n "unknown_ids": []\n },\n {\n "family": "resource-lifecycle",\n "omitted_relations": 0,\n "retained_relations": 0,\n "status": "unknown",\n "unknown_ids": []\n },\n {\n "family": "timer",\n "omitted_relations": 0,\n "retained_relations": 0,\n "status": "unknown",\n "unknown_ids": []\n }\n ],\n "limits": [],\n "omitted_nodes": 0,\n "omitted_relations": 0,\n "status": "unknown",\n "truncated": false\n },\n "fingerprints": [],\n "graph_id": "jsrg_08c925d2bf4ef56d770e0e67901d5bdfb610744cf001a50d36c9bb6dcb195508",\n "limitations": [\n "Semantic relations are unavailable in this minimal example."\n ],\n "nodes": [\n {\n "application_node_ids": [\n "jag_node_3c82da5492d90eb5b0bee41c1a994d88b7ba98c0b4955270d70e57a76e224c2e"\n ],\n "evidence": {\n "artifact": {\n "artifact_id": "art_c4c0d760a4c84f0e182de99f6ef89ef10831f8170e486c4d4bd934924151ba64",\n "available": true,\n "sha256": "c4c0d760a4c84f0e182de99f6ef89ef10831f8170e486c4d4bd934924151ba64"\n },\n "authority": "artifact-bytes",\n "confidence": "exact",\n "coverage": {\n "limits": [],\n "omitted_count": 0,\n "status": "complete",\n "truncated": false\n },\n "evidence_ids": [],\n "extractor": {\n "executable_sha256": null,\n "name": "rea-javascript-application",\n "operation": "inventory-relevant-file",\n "version": "1"\n },\n "limitations": [],\n "location": {\n "available": true,\n "value": {\n "kind": "artifact-path",\n "path": "renderer.js"\n }\n },\n "state": "observed"\n },\n "function_node_id": null,\n "identifier_strategy": {\n "stability": "artifact-version",\n "strategy": "semantic-content-sha256"\n },\n "identity": {\n "artifact_sha256": "1111111111111111111111111111111111111111111111111111111111111111",\n "module_path": "renderer.js",\n "role_key": "example-module",\n "source_range": null\n },\n "kind": "module",\n "label": "renderer.js",\n "node_id": "jsrg_node_9476602f1f74433a2bd3dadb040a25734d203b8f831b31a8d96f7efdfc5cd66a",\n "properties": {}\n }\n ],\n "relations": [],\n "root_artifact_sha256": "1111111111111111111111111111111111111111111111111111111111111111",\n "root_node_ids": [\n "jsrg_node_9476602f1f74433a2bd3dadb040a25734d203b8f831b31a8d96f7efdfc5cd66a"\n ],\n "schema": "JavaScriptSemanticRelationGraph",\n "unknowns": []\n },\n "statistics": {\n "findings": 0,\n "invalid_utf8_files": 0,\n "modules": 0,\n "nested_asar_containers": 0,\n "parse_failures": 0,\n "parsed_javascript_files": 1,\n "relevant_files": 1,\n "text_bytes_read": 29,\n "truncated_scopes": 0,\n "visited_ast_nodes": 1\n },\n "summary": {\n "browser_windows": 0,\n "context_bridge_apis": 0,\n "explicit_web_preferences": 0,\n "exposed_api_members": 0,\n "ipc": {\n "ambiguous_renderer_transmissions": 0,\n "dynamic_channel_operations": 0,\n "literal_channels": 0,\n "main_handlers": 0,\n "operations": 0,\n "paired_renderer_transmissions": 0,\n "renderer_listeners": 0,\n "renderer_transmissions": 0,\n "unpaired_literal_renderer_transmissions": 0\n },\n "native_addon_bindings": 0,\n "preload_entrypoints": 0,\n "resolved_native_addon_bindings": 0,\n "resolved_utility_entrypoints": 0,\n "sender_validation_observations": 0,\n "utility_processes": 0\n }\n },\n "operation": "analyze_javascript_application",\n "parameters": {},\n "predicate_type": "rea.javascript-application-analysis",\n "provider": {\n "id": "rea-javascript-application",\n "name": "REA JavaScript application analyzer",\n "version": "1"\n },\n "raw_result": null,\n "subject": {\n "architecture": null,\n "digest": {\n "sha256": "1111111111111111111111111111111111111111111111111111111111111111"\n },\n "format": "directory",\n "local_path": "/Applications/Example.app/Contents/Resources/app",\n "name": "app"\n }\n },\n "left_export_name": "default",\n "left_module_path": "parser.mjs",\n "right": {\n "authority": "analyst-inference",\n "confidence": "inferred",\n "environment": null,\n "evidence_id": "ev_c2754cf75e286b839ed825f247062067a6472acb1e7b6ce0f9aaceec6448d6d7",\n "evidence_links": [\n "ev_a42606ee799a093832ad3d6cfd0edd50dc9b99f78cc6d5d9130b734d48a56b4e",\n "ev_a4ae2c7b5c501fb6dff695b168f35a6dd157fa957410910684f3a4ce4c8b5d54"\n ],\n "limitations": [\n "Artifact identity is unavailable for this observation.",\n "A static module resident in an observed bundle is not reported as executed.",\n "Caller-declared file and URL mappings are inference inputs and do not expand CDP origin or filesystem-root authority.",\n "Digest equality establishes byte identity but not code reachability, module initialization, or feature execution.",\n "Not-observed means absent from the bounded captures in scope, never globally unloaded.",\n "Only caller-supplied, semantically verified Evidence records were reconciled.",\n "Source-map authority remains separate from passive runtime authority."\n ],\n "locations": [],\n "normalized_result": {\n "coverage": {\n "omitted_graph_items": 0,\n "omitted_reconciliation_items": 0,\n "omitted_runtime_entities": 0,\n "omitted_static_load_states": 0,\n "status": "complete-within-inputs",\n "truncated": false\n },\n "evidence_links": [\n "ev_a42606ee799a093832ad3d6cfd0edd50dc9b99f78cc6d5d9130b734d48a56b4e",\n "ev_a4ae2c7b5c501fb6dff695b168f35a6dd157fa957410910684f3a4ce4c8b5d54"\n ],\n "graph": {\n "coverage": {\n "limits": [],\n "omitted_count": 0,\n "status": "complete",\n "truncated": false\n },\n "edges": [\n {\n "edge_id": "jag_edge_3799eb1c2b0f224013a0edba8911a8b9edabd5fa6da2f893a6cfa24a899c9463",\n "evidence": {\n "artifact": {\n "artifact_id": "art_c4c0d760a4c84f0e182de99f6ef89ef10831f8170e486c4d4bd934924151ba64",\n "available": true,\n "sha256": "c4c0d760a4c84f0e182de99f6ef89ef10831f8170e486c4d4bd934924151ba64"\n },\n "authority": "cross-layer-reconciliation",\n "confidence": "high",\n "coverage": {\n "limits": [],\n "omitted_count": 0,\n "status": "complete",\n "truncated": false\n },\n "evidence_ids": [\n "ev_a42606ee799a093832ad3d6cfd0edd50dc9b99f78cc6d5d9130b734d48a56b4e",\n "ev_a4ae2c7b5c501fb6dff695b168f35a6dd157fa957410910684f3a4ce4c8b5d54"\n ],\n "extractor": {\n "executable_sha256": null,\n "name": "rea-javascript-runtime-reconciliation",\n "operation": "reconcile_javascript_runtime",\n "version": "1"\n },\n "limitations": [\n "Equal content digests establish byte identity, not execution causality.",\n "Passive script parsing or target presence does not prove feature execution."\n ],\n "location": {\n "available": true,\n "value": {\n "capture_sha256": "a4dd260f01b45e3df92482755baed7a1922b4af2226edc7f896bdbc4d2bbbd9c",\n "frame_key": null,\n "kind": "runtime",\n "script_key": "electron_script_4444444444444444444444444444444444444444444444444444444444444444",\n "target_key": "example-target"\n }\n },\n "state": "inferred"\n },\n "identifier_strategy": {\n "stability": "relationship-exact",\n "strategy": "semantic-content-sha256"\n },\n "properties": {\n "basis": "content-and-location",\n "reconciliation_id": "jrr_item_ea9d751c4bf3a2234af56b80d5ac8a1f953da9a9477cd46586a62934ff4a5fb2",\n "static_layer_id": "jrl_96fcfc590e7ca88f94b602638421674d8b13ccc7d25efff15a15b03c33b34753"\n },\n "relation": "observed_as",\n "source_node_id": "jag_node_3c82da5492d90eb5b0bee41c1a994d88b7ba98c0b4955270d70e57a76e224c2e",\n "target_node_id": "jag_node_af8ea5d1909955f39da1d844b2cad8f2f68c34b7d575ded6d04c00fa4095a88e"\n },\n {\n "edge_id": "jag_edge_f3c06b02c5ac77056b5d2a9f8de834ea0a9123b01dc369a011e3adc4a535338b",\n "evidence": {\n "artifact": {\n "available": false,\n "detail": "The relationship is runtime metadata, not standalone bytes.",\n "reason": "not-applicable"\n },\n "authority": "passive-cdp-runtime",\n "confidence": "exact",\n "coverage": {\n "limits": [],\n "omitted_count": 0,\n "status": "complete",\n "truncated": false\n },\n "evidence_ids": [\n "ev_a42606ee799a093832ad3d6cfd0edd50dc9b99f78cc6d5d9130b734d48a56b4e"\n ],\n "extractor": {\n "executable_sha256": null,\n "name": "rea-cdp-electron",\n "operation": "inspect_electron_page",\n "version": "1"\n },\n "limitations": [\n "The relationship was observed only within one bounded passive CDP capture."\n ],\n "location": {\n "available": true,\n "value": {\n "capture_sha256": "a4dd260f01b45e3df92482755baed7a1922b4af2226edc7f896bdbc4d2bbbd9c",\n "frame_key": null,\n "kind": "runtime",\n "script_key": "electron_script_4444444444444444444444444444444444444444444444444444444444444444",\n "target_key": "example-target"\n }\n },\n "state": "observed"\n },\n "identifier_strategy": {\n "stability": "relationship-exact",\n "strategy": "semantic-content-sha256"\n },\n "properties": {\n "basis": "passive-cdp-observation"\n },\n "relation": "loads",\n "source_node_id": "jag_node_f360c35c86d4893fcf83ef0fdef92cebd688fba883aa39698a1c12dd5a237265",\n "target_node_id": "jag_node_af8ea5d1909955f39da1d844b2cad8f2f68c34b7d575ded6d04c00fa4095a88e"\n }\n ],\n "graph_id": "jag_0536a9584eb91a16f78f71e8bef4cffc3105df18098fe65a7b114add520203ca",\n "limitations": [\n "Cross-layer observed_as edges are inferences; digest equality proves byte identity only.",\n "Runtime presence is bounded to passive capture windows and does not prove feature execution.",\n "Source-map relationships retain their original static authority and are not promoted into runtime matches."\n ],\n "nodes": [\n {\n "identity": {\n "sha256": "c4c0d760a4c84f0e182de99f6ef89ef10831f8170e486c4d4bd934924151ba64",\n "stability": "global-exact",\n "strategy": "content-digest"\n },\n "kind": "javascript-asset",\n "node_id": "jag_node_3c82da5492d90eb5b0bee41c1a994d88b7ba98c0b4955270d70e57a76e224c2e",\n "observations": [\n {\n "evidence": {\n "artifact": {\n "artifact_id": "art_c4c0d760a4c84f0e182de99f6ef89ef10831f8170e486c4d4bd934924151ba64",\n "available": true,\n "sha256": "c4c0d760a4c84f0e182de99f6ef89ef10831f8170e486c4d4bd934924151ba64"\n },\n "authority": "artifact-bytes",\n "confidence": "exact",\n "coverage": {\n "limits": [],\n "omitted_count": 0,\n "status": "complete",\n "truncated": false\n },\n "evidence_ids": [],\n "extractor": {\n "executable_sha256": null,\n "name": "rea-javascript-application",\n "operation": "inventory-relevant-file",\n "version": "1"\n },\n "limitations": [],\n "location": {\n "available": true,\n "value": {\n "kind": "artifact-path",\n "path": "renderer.js"\n }\n },\n "state": "observed"\n },\n "identifier_strategy": {\n "stability": "observation-exact",\n "strategy": "semantic-content-sha256"\n },\n "label": "renderer.js",\n "observation_id": "jag_observation_20b4d076ce370db14ae2b477915624c62e0c4a0c9e56803a2c5cb4fa60c16230",\n "properties": {\n "bytes": 29,\n "path": "renderer.js"\n }\n }\n ]\n },\n {\n "identity": {\n "capture_sha256": "a4dd260f01b45e3df92482755baed7a1922b4af2226edc7f896bdbc4d2bbbd9c",\n "runtime_key": "electron_script_4444444444444444444444444444444444444444444444444444444444444444",\n "stability": "capture-only",\n "strategy": "runtime-instance"\n },\n "kind": "runtime-script-instance",\n "node_id": "jag_node_af8ea5d1909955f39da1d844b2cad8f2f68c34b7d575ded6d04c00fa4095a88e",\n "observations": [\n {\n "evidence": {\n "artifact": {\n "artifact_id": "art_c4c0d760a4c84f0e182de99f6ef89ef10831f8170e486c4d4bd934924151ba64",\n "available": true,\n "sha256": "c4c0d760a4c84f0e182de99f6ef89ef10831f8170e486c4d4bd934924151ba64"\n },\n "authority": "passive-cdp-runtime",\n "confidence": "exact",\n "coverage": {\n "limits": [],\n "omitted_count": 0,\n "status": "complete",\n "truncated": false\n },\n "evidence_ids": [\n "ev_a42606ee799a093832ad3d6cfd0edd50dc9b99f78cc6d5d9130b734d48a56b4e"\n ],\n "extractor": {\n "executable_sha256": null,\n "name": "rea-cdp-electron",\n "operation": "inspect_electron_page",\n "version": "1"\n },\n "limitations": [\n "The entity was observed only within one bounded passive CDP capture."\n ],\n "location": {\n "available": true,\n "value": {\n "capture_sha256": "a4dd260f01b45e3df92482755baed7a1922b4af2226edc7f896bdbc4d2bbbd9c",\n "frame_key": null,\n "kind": "runtime",\n "script_key": "electron_script_4444444444444444444444444444444444444444444444444444444444444444",\n "target_key": "example-target"\n }\n },\n "state": "observed"\n },\n "identifier_strategy": {\n "stability": "observation-exact",\n "strategy": "semantic-content-sha256"\n },\n "label": "/Applications/Example.app/Contents/Resources/app/renderer.js",\n "observation_id": "jag_observation_9315403b875ea70c310909daf797780ab9045ff8f4803db38a9184e4f0704f11",\n "properties": {\n "cdp_hash": "example",\n "is_module": true,\n "language": "JavaScript",\n "length": 29,\n "location": "/Applications/Example.app/Contents/Resources/app/renderer.js",\n "source_sha256": "c4c0d760a4c84f0e182de99f6ef89ef10831f8170e486c4d4bd934924151ba64"\n }\n }\n ]\n },\n {\n "identity": {\n "capture_sha256": "a4dd260f01b45e3df92482755baed7a1922b4af2226edc7f896bdbc4d2bbbd9c",\n "runtime_key": "example-target",\n "stability": "capture-only",\n "strategy": "runtime-instance"\n },\n "kind": "target",\n "node_id": "jag_node_f360c35c86d4893fcf83ef0fdef92cebd688fba883aa39698a1c12dd5a237265",\n "observations": [\n {\n "evidence": {\n "artifact": {\n "available": false,\n "detail": "This runtime entity has no standalone artifact bytes.",\n "reason": "not-applicable"\n },\n "authority": "passive-cdp-runtime",\n "confidence": "exact",\n "coverage": {\n "limits": [],\n "omitted_count": 0,\n "status": "complete",\n "truncated": false\n },\n "evidence_ids": [\n "ev_a42606ee799a093832ad3d6cfd0edd50dc9b99f78cc6d5d9130b734d48a56b4e"\n ],\n "extractor": {\n "executable_sha256": null,\n "name": "rea-cdp-electron",\n "operation": "inspect_electron_page",\n "version": "1"\n },\n "limitations": [\n "The entity was observed only within one bounded passive CDP capture."\n ],\n "location": {\n "available": true,\n "value": {\n "capture_sha256": "a4dd260f01b45e3df92482755baed7a1922b4af2226edc7f896bdbc4d2bbbd9c",\n "frame_key": null,\n "kind": "runtime",\n "script_key": null,\n "target_key": "example-target"\n }\n },\n "state": "observed"\n },\n "identifier_strategy": {\n "stability": "observation-exact",\n "strategy": "semantic-content-sha256"\n },\n "label": "Example",\n "observation_id": "jag_observation_844a03a29af96a0bcd4625e0377b67c439af68a462c5fa83009c7c27283c5dee",\n "properties": {\n "attached": false,\n "location": "/Applications/Example.app/Contents/Resources/app/index.html",\n "runtime_type": "page"\n }\n }\n ]\n }\n ],\n "root_node_ids": [\n "jag_node_3c82da5492d90eb5b0bee41c1a994d88b7ba98c0b4955270d70e57a76e224c2e",\n "jag_node_f360c35c86d4893fcf83ef0fdef92cebd688fba883aa39698a1c12dd5a237265"\n ],\n "schema": "JavaScriptApplicationGraph"\n },\n "limitations": [\n "A static module resident in an observed bundle is not reported as executed.",\n "Caller-declared file and URL mappings are inference inputs and do not expand CDP origin or filesystem-root authority.",\n "Digest equality establishes byte identity but not code reachability, module initialization, or feature execution.",\n "Not-observed means absent from the bounded captures in scope, never globally unloaded.",\n "Only caller-supplied, semantically verified Evidence records were reconciled.",\n "Source-map authority remains separate from passive runtime authority."\n ],\n "reconciliation_id": "jrr_ec50425a5a5a5cb85aa40f13f72dcba54a8ab16170d9421a0277fbdf0fa4c9eb",\n "reconciliations": [\n {\n "basis": "none",\n "candidate_static_count": 0,\n "candidate_static_nodes": [],\n "confidence": "unknown",\n "entity_kind": "target",\n "reason": "no-static-content-match",\n "reconciliation_id": "jrr_item_abd5635b06340f082ef46bff8802a361c7b30011085f1c9e7437b29b451c1e5e",\n "runtime_evidence_id": "ev_a42606ee799a093832ad3d6cfd0edd50dc9b99f78cc6d5d9130b734d48a56b4e",\n "runtime_node_id": "jag_node_f360c35c86d4893fcf83ef0fdef92cebd688fba883aa39698a1c12dd5a237265",\n "static_layer_id": null,\n "static_node_id": null,\n "status": "unmatched"\n },\n {\n "basis": "content-and-location",\n "candidate_static_count": 1,\n "candidate_static_nodes": [\n {\n "static_layer_id": "jrl_96fcfc590e7ca88f94b602638421674d8b13ccc7d25efff15a15b03c33b34753",\n "static_node_id": "jag_node_3c82da5492d90eb5b0bee41c1a994d88b7ba98c0b4955270d70e57a76e224c2e"\n }\n ],\n "confidence": "high",\n "entity_kind": "script",\n "reason": "content-and-location-match",\n "reconciliation_id": "jrr_item_ea9d751c4bf3a2234af56b80d5ac8a1f953da9a9477cd46586a62934ff4a5fb2",\n "runtime_evidence_id": "ev_a42606ee799a093832ad3d6cfd0edd50dc9b99f78cc6d5d9130b734d48a56b4e",\n "runtime_node_id": "jag_node_af8ea5d1909955f39da1d844b2cad8f2f68c34b7d575ded6d04c00fa4095a88e",\n "static_layer_id": "jrl_96fcfc590e7ca88f94b602638421674d8b13ccc7d25efff15a15b03c33b34753",\n "static_node_id": "jag_node_3c82da5492d90eb5b0bee41c1a994d88b7ba98c0b4955270d70e57a76e224c2e",\n "status": "matched"\n }\n ],\n "runtime_captures": [\n {\n "capture_sha256": "a4dd260f01b45e3df92482755baed7a1922b4af2226edc7f896bdbc4d2bbbd9c",\n "evidence_id": "ev_a42606ee799a093832ad3d6cfd0edd50dc9b99f78cc6d5d9130b734d48a56b4e",\n "frames": 0,\n "kind": "electron",\n "scripts": 1,\n "scripts_complete_within_scope": true,\n "target_key": "example-target",\n "target_location": "/Applications/Example.app/Contents/Resources/app/index.html",\n "target_node_id": "jag_node_f360c35c86d4893fcf83ef0fdef92cebd688fba883aa39698a1c12dd5a237265",\n "workers": 0\n }\n ],\n "source_map_authority": {\n "limitation": "Source-map declarations and original-source content retain separate static authority and are not used as primary runtime byte matches.",\n "runtime_script_declarations": 0,\n "static_layer_count": 1,\n "used_for_primary_matching": false\n },\n "static_layers": [\n {\n "evidence_id": "ev_a4ae2c7b5c501fb6dff695b168f35a6dd157fa957410910684f3a4ce4c8b5d54",\n "format": "directory",\n "graph_id": "jag_ab15669664efc0a86bb49c9c60241913cce6980dc2293fbeef6d9c862ca01d9d",\n "input_path": "/Applications/Example.app/Contents/Resources/app",\n "layer_id": "jrl_96fcfc590e7ca88f94b602638421674d8b13ccc7d25efff15a15b03c33b34753",\n "role": "application",\n "root_artifact_sha256": "1111111111111111111111111111111111111111111111111111111111111111",\n "runtime_mappings": []\n }\n ],\n "static_load_states": [\n {\n "kind": "javascript-asset",\n "reason": "runtime-script-correspondence",\n "runtime_node_ids": [\n "jag_node_af8ea5d1909955f39da1d844b2cad8f2f68c34b7d575ded6d04c00fa4095a88e"\n ],\n "static_layer_id": "jrl_96fcfc590e7ca88f94b602638421674d8b13ccc7d25efff15a15b03c33b34753",\n "static_node_id": "jag_node_3c82da5492d90eb5b0bee41c1a994d88b7ba98c0b4955270d70e57a76e224c2e",\n "status": "loaded"\n }\n ],\n "summary": {\n "ambiguous": 0,\n "matched": 1,\n "runtime_frames": 0,\n "runtime_scripts": 1,\n "runtime_targets": 1,\n "runtime_workers": 0,\n "static_loaded": 1,\n "static_not_observed": 0,\n "static_resident": 0,\n "static_unknown": 0,\n "unknown": 0,\n "unmatched": 1\n }\n },\n "operation": "reconcile_javascript_runtime",\n "parameters": {\n "runtime_evidence_ids": [\n "ev_a42606ee799a093832ad3d6cfd0edd50dc9b99f78cc6d5d9130b734d48a56b4e"\n ],\n "static_layers": [\n {\n "evidence_id": "ev_a4ae2c7b5c501fb6dff695b168f35a6dd157fa957410910684f3a4ce4c8b5d54",\n "role": "application",\n "runtime_mappings": []\n }\n ]\n },\n "predicate_type": "rea.javascript-runtime-reconciliation",\n "provider": {\n "id": "rea-javascript-runtime-reconciliation",\n "name": "REA JavaScript runtime reconciliation",\n "version": "1"\n },\n "raw_result": null,\n "subject": null\n },\n "right_export_name": "default",\n "right_module_path": "parser.mjs"\n },\n {\n "left": {\n "evidence_id": "ev_a4ae2c7b5c501fb6dff695b168f35a6dd157fa957410910684f3a4ce4c8b5d54",\n "kind": "retained-evidence"\n },\n "left_export_name": "default",\n "left_module_path": "parser.mjs",\n "right": {\n "evidence_id": "ev_c2754cf75e286b839ed825f247062067a6472acb1e7b6ce0f9aaceec6448d6d7",\n "kind": "retained-evidence"\n },\n "right_export_name": "default",\n "right_module_path": "parser.mjs"\n }\n ],\n "properties": {\n "left": {\n "anyOf": [\n {\n "additionalProperties": false,\n "properties": {\n "analysis_profile": {\n "description": "Value for analysis profile.",\n "properties": {\n "digest": {\n "description": "Value for digest.",\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n },\n "parameters": {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "description": "Value for parameters.",\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n },\n "provider": {\n "description": "Value for provider.",\n "properties": {\n "id": {\n "description": "Value for id.",\n "minLength": 1,\n "type": "string"\n },\n "name": {\n "description": "Exact name used by this operation.",\n "minLength": 1,\n "type": "string"\n },\n "version": {\n "description": "Value for version.",\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "id",\n "name",\n "version"\n ],\n "type": "object"\n }\n },\n "required": [\n "provider",\n "parameters",\n "digest"\n ],\n "type": "object"\n },\n "authority": {\n "description": "Value for authority.",\n "enum": [\n "shipped-artifact",\n "controlled-replay",\n "historical-reference",\n "external-service",\n "analyst-inference"\n ],\n "type": "string"\n },\n "confidence": {\n "description": "Value for confidence.",\n "enum": [\n "observed",\n "derived",\n "inferred"\n ],\n "type": "string"\n },\n "environment": {\n "anyOf": [\n {\n "properties": {\n "architecture": {\n "description": "Value for architecture.",\n "minLength": 1,\n "type": "string"\n },\n "id": {\n "description": "Value for id.",\n "minLength": 1,\n "type": "string"\n },\n "isolation": {\n "description": "Value for isolation.",\n "enum": [\n "none",\n "process",\n "container",\n "virtual-machine"\n ],\n "type": "string"\n },\n "platform": {\n "description": "Value for platform.",\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "id",\n "platform",\n "architecture",\n "isolation"\n ],\n "type": "object"\n },\n {\n "type": "null"\n }\n ],\n "description": "Value for environment."\n },\n "evidence_id": {\n "description": "Stable identifier of the recorded Evidence observation.",\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "evidence_links": {\n "description": "Value for evidence links.",\n "items": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "type": "array"\n },\n "limitations": {\n "description": "Value for limitations.",\n "items": {\n "type": "string"\n },\n "type": "array"\n },\n "locations": {\n "description": "Value for locations.",\n "items": {\n "oneOf": [\n {\n "properties": {\n "address": {\n "description": "Value for address.",\n "minLength": 1,\n "type": "string"\n },\n "kind": {\n "const": "address",\n "description": "Value for kind.",\n "type": "string"\n }\n },\n "required": [\n "kind",\n "address"\n ],\n "type": "object"\n },\n {\n "properties": {\n "end": {\n "description": "Value for end.",\n "minLength": 1,\n "type": "string"\n },\n "kind": {\n "const": "address-range",\n "description": "Value for kind.",\n "type": "string"\n },\n "start": {\n "description": "Value for start.",\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "kind",\n "start",\n "end"\n ],\n "type": "object"\n },\n {\n "properties": {\n "kind": {\n "const": "artifact-path",\n "description": "Value for kind.",\n "type": "string"\n },\n "path": {\n "description": "Local filesystem path used by this operation.",\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "kind",\n "path"\n ],\n "type": "object"\n },\n {\n "properties": {\n "kind": {\n "const": "file-offset",\n "description": "Value for kind.",\n "type": "string"\n },\n "offset": {\n "description": "Value for offset.",\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "kind",\n "offset"\n ],\n "type": "object"\n },\n {\n "properties": {\n "end": {\n "description": "Value for end.",\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "kind": {\n "const": "file-offset-range",\n "description": "Value for kind.",\n "type": "string"\n },\n "start": {\n "description": "Value for start.",\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "kind",\n "start",\n "end"\n ],\n "type": "object"\n }\n ]\n },\n "type": "array"\n },\n "normalized_result": {\n "$ref": "#/$defs/__schema0",\n "description": "Value for normalized result."\n },\n "operation": {\n "description": "Value for operation.",\n "minLength": 1,\n "type": "string"\n },\n "parameters": {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "description": "Value for parameters.",\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n },\n "predicate_type": {\n "description": "Value for predicate type.",\n "minLength": 1,\n "type": "string"\n },\n "provider": {\n "description": "Value for provider.",\n "properties": {\n "id": {\n "description": "Value for id.",\n "minLength": 1,\n "type": "string"\n },\n "name": {\n "description": "Exact name used by this operation.",\n "minLength": 1,\n "type": "string"\n },\n "version": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ],\n "description": "Value for version."\n }\n },\n "required": [\n "id",\n "name",\n "version"\n ],\n "type": "object"\n },\n "raw_result": {\n "anyOf": [\n {\n "$ref": "#/$defs/__schema0"\n },\n {\n "type": "null"\n }\n ],\n "description": "Value for raw result."\n },\n "subject": {\n "anyOf": [\n {\n "properties": {\n "architecture": {\n "anyOf": [\n {\n "enum": [\n "x86",\n "x86_64",\n "arm",\n "arm64"\n ],\n "type": "string"\n },\n {\n "type": "null"\n }\n ],\n "description": "Value for architecture."\n },\n "digest": {\n "description": "Value for digest.",\n "properties": {\n "sha256": {\n "description": "Value for sha256.",\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n }\n },\n "required": [\n "sha256"\n ],\n "type": "object"\n },\n "format": {\n "description": "Declared input artifact format.",\n "enum": [\n "hopper",\n "analysis-database",\n "mach-o",\n "elf",\n "pe",\n "dos-mz",\n "dos-com",\n "zip",\n "ipa",\n "apk",\n "msix",\n "appx",\n "asar",\n "dmg",\n "pkg",\n "plist",\n "javascript",\n "source-map",\n "directory",\n "file",\n "unknown",\n "mach-o-universal",\n "javascript-bundle",\n "entitlements"\n ],\n "type": "string"\n },\n "local_path": {\n "description": "Local filesystem path for local.",\n "type": "string"\n },\n "name": {\n "description": "Exact name used by this operation.",\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "name",\n "digest",\n "format",\n "architecture",\n "local_path"\n ],\n "type": "object"\n },\n {\n "type": "null"\n }\n ],\n "description": "Value for subject."\n }\n },\n "required": [\n "evidence_id",\n "subject",\n "provider",\n "predicate_type",\n "operation",\n "parameters",\n "raw_result",\n "normalized_result",\n "confidence",\n "authority",\n "environment",\n "limitations",\n "locations",\n "evidence_links"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "evidence_id": {\n "description": "Stable identifier of the recorded Evidence observation.",\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "kind": {\n "const": "retained-evidence",\n "description": "Value for kind.",\n "type": "string"\n }\n },\n "required": [\n "kind",\n "evidence_id"\n ],\n "type": "object"\n }\n ],\n "description": "Left-hand input used for comparison or differential execution."\n },\n "left_export_name": {\n "description": "Value for left export name.",\n "minLength": 1,\n "type": "string"\n },\n "left_module_path": {\n "description": "Local filesystem path for left module.",\n "minLength": 1,\n "type": "string"\n },\n "right": {\n "anyOf": [\n {\n "additionalProperties": false,\n "properties": {\n "analysis_profile": {\n "description": "Value for analysis profile.",\n "properties": {\n "digest": {\n "description": "Value for digest.",\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n },\n "parameters": {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "description": "Value for parameters.",\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n },\n "provider": {\n "description": "Value for provider.",\n "properties": {\n "id": {\n "description": "Value for id.",\n "minLength": 1,\n "type": "string"\n },\n "name": {\n "description": "Exact name used by this operation.",\n "minLength": 1,\n "type": "string"\n },\n "version": {\n "description": "Value for version.",\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "id",\n "name",\n "version"\n ],\n "type": "object"\n }\n },\n "required": [\n "provider",\n "parameters",\n "digest"\n ],\n "type": "object"\n },\n "authority": {\n "description": "Value for authority.",\n "enum": [\n "shipped-artifact",\n "controlled-replay",\n "historical-reference",\n "external-service",\n "analyst-inference"\n ],\n "type": "string"\n },\n "confidence": {\n "description": "Value for confidence.",\n "enum": [\n "observed",\n "derived",\n "inferred"\n ],\n "type": "string"\n },\n "environment": {\n "anyOf": [\n {\n "properties": {\n "architecture": {\n "description": "Value for architecture.",\n "minLength": 1,\n "type": "string"\n },\n "id": {\n "description": "Value for id.",\n "minLength": 1,\n "type": "string"\n },\n "isolation": {\n "description": "Value for isolation.",\n "enum": [\n "none",\n "process",\n "container",\n "virtual-machine"\n ],\n "type": "string"\n },\n "platform": {\n "description": "Value for platform.",\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "id",\n "platform",\n "architecture",\n "isolation"\n ],\n "type": "object"\n },\n {\n "type": "null"\n }\n ],\n "description": "Value for environment."\n },\n "evidence_id": {\n "description": "Stable identifier of the recorded Evidence observation.",\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "evidence_links": {\n "description": "Value for evidence links.",\n "items": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "type": "array"\n },\n "limitations": {\n "description": "Value for limitations.",\n "items": {\n "type": "string"\n },\n "type": "array"\n },\n "locations": {\n "description": "Value for locations.",\n "items": {\n "oneOf": [\n {\n "properties": {\n "address": {\n "description": "Value for address.",\n "minLength": 1,\n "type": "string"\n },\n "kind": {\n "const": "address",\n "description": "Value for kind.",\n "type": "string"\n }\n },\n "required": [\n "kind",\n "address"\n ],\n "type": "object"\n },\n {\n "properties": {\n "end": {\n "description": "Value for end.",\n "minLength": 1,\n "type": "string"\n },\n "kind": {\n "const": "address-range",\n "description": "Value for kind.",\n "type": "string"\n },\n "start": {\n "description": "Value for start.",\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "kind",\n "start",\n "end"\n ],\n "type": "object"\n },\n {\n "properties": {\n "kind": {\n "const": "artifact-path",\n "description": "Value for kind.",\n "type": "string"\n },\n "path": {\n "description": "Local filesystem path used by this operation.",\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "kind",\n "path"\n ],\n "type": "object"\n },\n {\n "properties": {\n "kind": {\n "const": "file-offset",\n "description": "Value for kind.",\n "type": "string"\n },\n "offset": {\n "description": "Value for offset.",\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "kind",\n "offset"\n ],\n "type": "object"\n },\n {\n "properties": {\n "end": {\n "description": "Value for end.",\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "kind": {\n "const": "file-offset-range",\n "description": "Value for kind.",\n "type": "string"\n },\n "start": {\n "description": "Value for start.",\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "kind",\n "start",\n "end"\n ],\n "type": "object"\n }\n ]\n },\n "type": "array"\n },\n "normalized_result": {\n "$ref": "#/$defs/__schema0",\n "description": "Value for normalized result."\n },\n "operation": {\n "description": "Value for operation.",\n "minLength": 1,\n "type": "string"\n },\n "parameters": {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "description": "Value for parameters.",\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n },\n "predicate_type": {\n "description": "Value for predicate type.",\n "minLength": 1,\n "type": "string"\n },\n "provider": {\n "description": "Value for provider.",\n "properties": {\n "id": {\n "description": "Value for id.",\n "minLength": 1,\n "type": "string"\n },\n "name": {\n "description": "Exact name used by this operation.",\n "minLength": 1,\n "type": "string"\n },\n "version": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ],\n "description": "Value for version."\n }\n },\n "required": [\n "id",\n "name",\n "version"\n ],\n "type": "object"\n },\n "raw_result": {\n "anyOf": [\n {\n "$ref": "#/$defs/__schema0"\n },\n {\n "type": "null"\n }\n ],\n "description": "Value for raw result."\n },\n "subject": {\n "anyOf": [\n {\n "properties": {\n "architecture": {\n "anyOf": [\n {\n "enum": [\n "x86",\n "x86_64",\n "arm",\n "arm64"\n ],\n "type": "string"\n },\n {\n "type": "null"\n }\n ],\n "description": "Value for architecture."\n },\n "digest": {\n "description": "Value for digest.",\n "properties": {\n "sha256": {\n "description": "Value for sha256.",\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n }\n },\n "required": [\n "sha256"\n ],\n "type": "object"\n },\n "format": {\n "description": "Declared input artifact format.",\n "enum": [\n "hopper",\n "analysis-database",\n "mach-o",\n "elf",\n "pe",\n "dos-mz",\n "dos-com",\n "zip",\n "ipa",\n "apk",\n "msix",\n "appx",\n "asar",\n "dmg",\n "pkg",\n "plist",\n "javascript",\n "source-map",\n "directory",\n "file",\n "unknown",\n "mach-o-universal",\n "javascript-bundle",\n "entitlements"\n ],\n "type": "string"\n },\n "local_path": {\n "description": "Local filesystem path for local.",\n "type": "string"\n },\n "name": {\n "description": "Exact name used by this operation.",\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "name",\n "digest",\n "format",\n "architecture",\n "local_path"\n ],\n "type": "object"\n },\n {\n "type": "null"\n }\n ],\n "description": "Value for subject."\n }\n },\n "required": [\n "evidence_id",\n "subject",\n "provider",\n "predicate_type",\n "operation",\n "parameters",\n "raw_result",\n "normalized_result",\n "confidence",\n "authority",\n "environment",\n "limitations",\n "locations",\n "evidence_links"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "evidence_id": {\n "description": "Stable identifier of the recorded Evidence observation.",\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "kind": {\n "const": "retained-evidence",\n "description": "Value for kind.",\n "type": "string"\n }\n },\n "required": [\n "kind",\n "evidence_id"\n ],\n "type": "object"\n }\n ],\n "description": "Right-hand input used for comparison or differential execution."\n },\n "right_export_name": {\n "description": "Value for right export name.",\n "minLength": 1,\n "type": "string"\n },\n "right_module_path": {\n "description": "Local filesystem path for right module.",\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "left_module_path",\n "left_export_name",\n "right_module_path",\n "right_export_name",\n "left",\n "right"\n ],\n "type": "object"\n },\n "kind": "application",\n "name": "compare_javascript_export_shapes",\n "outputSchema": {\n "$defs": {\n "__schema0": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "number"\n },\n {\n "type": "boolean"\n },\n {\n "type": "null"\n },\n {\n "items": {\n "$ref": "#/$defs/__schema0"\n },\n "type": "array"\n },\n {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n }\n ]\n }\n },\n "$schema": "https://json-schema.org/draft/2020-12/schema",\n "additionalProperties": false,\n "properties": {\n "evidence": {\n "additionalProperties": false,\n "properties": {\n "analysis_profile": {\n "additionalProperties": false,\n "properties": {\n "digest": {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n },\n "parameters": {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n },\n "provider": {\n "additionalProperties": false,\n "properties": {\n "id": {\n "minLength": 1,\n "type": "string"\n },\n "name": {\n "minLength": 1,\n "type": "string"\n },\n "version": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "id",\n "name",\n "version"\n ],\n "type": "object"\n }\n },\n "required": [\n "provider",\n "parameters",\n "digest"\n ],\n "type": "object"\n },\n "authority": {\n "enum": [\n "shipped-artifact",\n "controlled-replay",\n "historical-reference",\n "external-service",\n "analyst-inference"\n ],\n "type": "string"\n },\n "confidence": {\n "enum": [\n "observed",\n "derived",\n "inferred"\n ],\n "type": "string"\n },\n "environment": {\n "anyOf": [\n {\n "additionalProperties": false,\n "properties": {\n "architecture": {\n "minLength": 1,\n "type": "string"\n },\n "id": {\n "minLength": 1,\n "type": "string"\n },\n "isolation": {\n "enum": [\n "none",\n "process",\n "container",\n "virtual-machine"\n ],\n "type": "string"\n },\n "platform": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "id",\n "platform",\n "architecture",\n "isolation"\n ],\n "type": "object"\n },\n {\n "type": "null"\n }\n ]\n },\n "evidence_id": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "evidence_links": {\n "items": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "type": "array"\n },\n "limitations": {\n "items": {\n "type": "string"\n },\n "type": "array"\n },\n "locations": {\n "items": {\n "oneOf": [\n {\n "additionalProperties": false,\n "properties": {\n "address": {\n "minLength": 1,\n "type": "string"\n },\n "kind": {\n "const": "address",\n "type": "string"\n }\n },\n "required": [\n "kind",\n "address"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "end": {\n "minLength": 1,\n "type": "string"\n },\n "kind": {\n "const": "address-range",\n "type": "string"\n },\n "start": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "kind",\n "start",\n "end"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "kind": {\n "const": "artifact-path",\n "type": "string"\n },\n "path": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "kind",\n "path"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "kind": {\n "const": "file-offset",\n "type": "string"\n },\n "offset": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "kind",\n "offset"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "end": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "kind": {\n "const": "file-offset-range",\n "type": "string"\n },\n "start": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "kind",\n "start",\n "end"\n ],\n "type": "object"\n }\n ]\n },\n "type": "array"\n },\n "normalized_result": {\n "$ref": "#/$defs/__schema0"\n },\n "operation": {\n "minLength": 1,\n "type": "string"\n },\n "parameters": {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n },\n "predicate_type": {\n "minLength": 1,\n "type": "string"\n },\n "provider": {\n "additionalProperties": false,\n "properties": {\n "id": {\n "minLength": 1,\n "type": "string"\n },\n "name": {\n "minLength": 1,\n "type": "string"\n },\n "version": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "id",\n "name",\n "version"\n ],\n "type": "object"\n },\n "raw_result": {\n "anyOf": [\n {\n "$ref": "#/$defs/__schema0"\n },\n {\n "type": "null"\n }\n ]\n },\n "subject": {\n "anyOf": [\n {\n "additionalProperties": false,\n "properties": {\n "architecture": {\n "anyOf": [\n {\n "enum": [\n "x86",\n "x86_64",\n "arm",\n "arm64"\n ],\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "digest": {\n "additionalProperties": false,\n "properties": {\n "sha256": {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n }\n },\n "required": [\n "sha256"\n ],\n "type": "object"\n },\n "format": {\n "enum": [\n "hopper",\n "analysis-database",\n "mach-o",\n "elf",\n "pe",\n "dos-mz",\n "dos-com",\n "zip",\n "ipa",\n "apk",\n "msix",\n "appx",\n "asar",\n "dmg",\n "pkg",\n "plist",\n "javascript",\n "source-map",\n "directory",\n "file",\n "unknown",\n "mach-o-universal",\n "javascript-bundle",\n "entitlements"\n ],\n "type": "string"\n },\n "local_path": {\n "type": "string"\n },\n "name": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "name",\n "digest",\n "format",\n "architecture",\n "local_path"\n ],\n "type": "object"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "evidence_id",\n "subject",\n "provider",\n "predicate_type",\n "operation",\n "parameters",\n "raw_result",\n "normalized_result",\n "confidence",\n "authority",\n "environment",\n "limitations",\n "locations",\n "evidence_links"\n ],\n "type": "object"\n },\n "evidence_id": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "result": {\n "additionalProperties": false,\n "properties": {\n "changes": {\n "items": {\n "additionalProperties": false,\n "properties": {\n "change_id": {\n "pattern": "^jesc_change_[a-f0-9]{64}$",\n "type": "string"\n },\n "discriminant": {\n "anyOf": [\n {\n "additionalProperties": false,\n "properties": {\n "path": {\n "type": "string"\n },\n "value": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "number"\n },\n {\n "type": "boolean"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "path",\n "value"\n ],\n "type": "object"\n },\n {\n "type": "null"\n }\n ]\n },\n "evidence_links": {\n "items": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "maxItems": 2,\n "minItems": 2,\n "type": "array"\n },\n "left": {\n "oneOf": [\n {\n "additionalProperties": false,\n "properties": {\n "availability": {\n "const": "absent",\n "type": "string"\n }\n },\n "required": [\n "availability"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "availability": {\n "const": "literal",\n "type": "string"\n },\n "value": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "number"\n },\n {\n "type": "boolean"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "availability",\n "value"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "availability": {\n "const": "union",\n "type": "string"\n },\n "values": {\n "items": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "number"\n },\n {\n "type": "boolean"\n },\n {\n "type": "null"\n }\n ]\n },\n "minItems": 1,\n "type": "array"\n }\n },\n "required": [\n "availability",\n "values"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "availability": {\n "const": "unknown",\n "type": "string"\n },\n "reason": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "availability",\n "reason"\n ],\n "type": "object"\n }\n ]\n },\n "left_source_range": {\n "anyOf": [\n {\n "additionalProperties": false,\n "properties": {\n "end": {\n "additionalProperties": false,\n "properties": {\n "column": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "line": {\n "maximum": 9007199254740991,\n "minimum": 1,\n "type": "integer"\n }\n },\n "required": [\n "line",\n "column"\n ],\n "type": "object"\n },\n "start": {\n "additionalProperties": false,\n "properties": {\n "column": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "line": {\n "maximum": 9007199254740991,\n "minimum": 1,\n "type": "integer"\n }\n },\n "required": [\n "line",\n "column"\n ],\n "type": "object"\n }\n },\n "required": [\n "start",\n "end"\n ],\n "type": "object"\n },\n {\n "type": "null"\n }\n ]\n },\n "limitations": {\n "items": {\n "minLength": 1,\n "type": "string"\n },\n "type": "array"\n },\n "path": {\n "type": "string"\n },\n "right": {\n "oneOf": [\n {\n "additionalProperties": false,\n "properties": {\n "availability": {\n "const": "absent",\n "type": "string"\n }\n },\n "required": [\n "availability"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "availability": {\n "const": "literal",\n "type": "string"\n },\n "value": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "number"\n },\n {\n "type": "boolean"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "availability",\n "value"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "availability": {\n "const": "union",\n "type": "string"\n },\n "values": {\n "items": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "number"\n },\n {\n "type": "boolean"\n },\n {\n "type": "null"\n }\n ]\n },\n "minItems": 1,\n "type": "array"\n }\n },\n "required": [\n "availability",\n "values"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "availability": {\n "const": "unknown",\n "type": "string"\n },\n "reason": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "availability",\n "reason"\n ],\n "type": "object"\n }\n ]\n },\n "right_source_range": {\n "anyOf": [\n {\n "additionalProperties": false,\n "properties": {\n "end": {\n "additionalProperties": false,\n "properties": {\n "column": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "line": {\n "maximum": 9007199254740991,\n "minimum": 1,\n "type": "integer"\n }\n },\n "required": [\n "line",\n "column"\n ],\n "type": "object"\n },\n "start": {\n "additionalProperties": false,\n "properties": {\n "column": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "line": {\n "maximum": 9007199254740991,\n "minimum": 1,\n "type": "integer"\n }\n },\n "required": [\n "line",\n "column"\n ],\n "type": "object"\n }\n },\n "required": [\n "start",\n "end"\n ],\n "type": "object"\n },\n {\n "type": "null"\n }\n ]\n },\n "status": {\n "enum": [\n "added",\n "removed",\n "changed",\n "unknown"\n ],\n "type": "string"\n }\n },\n "required": [\n "change_id",\n "status",\n "path",\n "discriminant",\n "left",\n "right",\n "left_source_range",\n "right_source_range",\n "evidence_links",\n "limitations"\n ],\n "type": "object"\n },\n "type": "array"\n },\n "comparison_id": {\n "pattern": "^jesc_[a-f0-9]{64}$",\n "type": "string"\n },\n "coverage": {\n "additionalProperties": false,\n "properties": {\n "left_graph_status": {\n "enum": [\n "complete",\n "partial",\n "unknown",\n "unavailable"\n ],\n "type": "string"\n },\n "left_omitted_fields": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "left_omitted_property_coverage": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "left_source_omitted_variants": {\n "anyOf": [\n {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n {\n "type": "null"\n }\n ]\n },\n "omitted_candidates": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "omitted_changes": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "omitted_left_variants": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "omitted_right_variants": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "paired_variants": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "right_graph_status": {\n "enum": [\n "complete",\n "partial",\n "unknown",\n "unavailable"\n ],\n "type": "string"\n },\n "right_omitted_fields": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "right_omitted_property_coverage": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "right_source_omitted_variants": {\n "anyOf": [\n {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n {\n "type": "null"\n }\n ]\n },\n "status": {\n "enum": [\n "complete-within-inputs",\n "partial",\n "truncated"\n ],\n "type": "string"\n },\n "unpaired_left_variants": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "unpaired_right_variants": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "status",\n "left_graph_status",\n "right_graph_status",\n "paired_variants",\n "unpaired_left_variants",\n "unpaired_right_variants",\n "omitted_left_variants",\n "omitted_right_variants",\n "left_source_omitted_variants",\n "right_source_omitted_variants",\n "left_omitted_fields",\n "right_omitted_fields",\n "left_omitted_property_coverage",\n "right_omitted_property_coverage",\n "omitted_candidates",\n "omitted_changes"\n ],\n "type": "object"\n },\n "evidence_links": {\n "items": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "maxItems": 2,\n "minItems": 2,\n "type": "array"\n },\n "left": {\n "anyOf": [\n {\n "additionalProperties": false,\n "properties": {\n "candidates": {\n "items": {\n "additionalProperties": false,\n "properties": {\n "export_name": {\n "minLength": 1,\n "type": "string"\n },\n "matches_requested_export": {\n "type": "boolean"\n },\n "matches_requested_module": {\n "type": "boolean"\n },\n "module_path": {\n "minLength": 1,\n "type": "string"\n },\n "node_id": {\n "pattern": "^jag_node_[a-f0-9]{64}$",\n "type": "string"\n }\n },\n "required": [\n "node_id",\n "module_path",\n "export_name",\n "matches_requested_module",\n "matches_requested_export"\n ],\n "type": "object"\n },\n "type": "array"\n },\n "evidence_id": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "graph_id": {\n "pattern": "^jag_[a-f0-9]{64}$",\n "type": "string"\n },\n "omitted_candidates": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "requested_export_name": {\n "minLength": 1,\n "type": "string"\n },\n "requested_module_path": {\n "minLength": 1,\n "type": "string"\n },\n "selected_node_id": {\n "pattern": "^jag_node_[a-f0-9]{64}$",\n "type": "string"\n },\n "status": {\n "const": "selected",\n "type": "string"\n }\n },\n "required": [\n "evidence_id",\n "graph_id",\n "requested_module_path",\n "requested_export_name",\n "candidates",\n "omitted_candidates",\n "status",\n "selected_node_id"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "candidates": {\n "items": {\n "additionalProperties": false,\n "properties": {\n "export_name": {\n "minLength": 1,\n "type": "string"\n },\n "matches_requested_export": {\n "type": "boolean"\n },\n "matches_requested_module": {\n "type": "boolean"\n },\n "module_path": {\n "minLength": 1,\n "type": "string"\n },\n "node_id": {\n "pattern": "^jag_node_[a-f0-9]{64}$",\n "type": "string"\n }\n },\n "required": [\n "node_id",\n "module_path",\n "export_name",\n "matches_requested_module",\n "matches_requested_export"\n ],\n "type": "object"\n },\n "type": "array"\n },\n "evidence_id": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "graph_id": {\n "pattern": "^jag_[a-f0-9]{64}$",\n "type": "string"\n },\n "omitted_candidates": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "requested_export_name": {\n "minLength": 1,\n "type": "string"\n },\n "requested_module_path": {\n "minLength": 1,\n "type": "string"\n },\n "selected_node_id": {\n "type": "null"\n },\n "status": {\n "enum": [\n "missing",\n "ambiguous"\n ],\n "type": "string"\n }\n },\n "required": [\n "evidence_id",\n "graph_id",\n "requested_module_path",\n "requested_export_name",\n "candidates",\n "omitted_candidates",\n "status",\n "selected_node_id"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "candidates": {\n "items": {\n "additionalProperties": false,\n "properties": {\n "export_name": {\n "minLength": 1,\n "type": "string"\n },\n "matches_requested_export": {\n "type": "boolean"\n },\n "matches_requested_module": {\n "type": "boolean"\n },\n "module_path": {\n "minLength": 1,\n "type": "string"\n },\n "node_id": {\n "pattern": "^jag_node_[a-f0-9]{64}$",\n "type": "string"\n }\n },\n "required": [\n "node_id",\n "module_path",\n "export_name",\n "matches_requested_module",\n "matches_requested_export"\n ],\n "type": "object"\n },\n "type": "array"\n },\n "evidence_id": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "graph_id": {\n "pattern": "^jag_[a-f0-9]{64}$",\n "type": "string"\n },\n "omitted_candidates": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "requested_export_name": {\n "minLength": 1,\n "type": "string"\n },\n "requested_module_path": {\n "minLength": 1,\n "type": "string"\n },\n "selected_node_id": {\n "anyOf": [\n {\n "pattern": "^jag_node_[a-f0-9]{64}$",\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "status": {\n "const": "unavailable",\n "type": "string"\n }\n },\n "required": [\n "evidence_id",\n "graph_id",\n "requested_module_path",\n "requested_export_name",\n "candidates",\n "omitted_candidates",\n "status",\n "selected_node_id"\n ],\n "type": "object"\n }\n ]\n },\n "limitations": {\n "items": {\n "minLength": 1,\n "type": "string"\n },\n "type": "array"\n },\n "right": {\n "anyOf": [\n {\n "additionalProperties": false,\n "properties": {\n "candidates": {\n "items": {\n "additionalProperties": false,\n "properties": {\n "export_name": {\n "minLength": 1,\n "type": "string"\n },\n "matches_requested_export": {\n "type": "boolean"\n },\n "matches_requested_module": {\n "type": "boolean"\n },\n "module_path": {\n "minLength": 1,\n "type": "string"\n },\n "node_id": {\n "pattern": "^jag_node_[a-f0-9]{64}$",\n "type": "string"\n }\n },\n "required": [\n "node_id",\n "module_path",\n "export_name",\n "matches_requested_module",\n "matches_requested_export"\n ],\n "type": "object"\n },\n "type": "array"\n },\n "evidence_id": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "graph_id": {\n "pattern": "^jag_[a-f0-9]{64}$",\n "type": "string"\n },\n "omitted_candidates": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "requested_export_name": {\n "minLength": 1,\n "type": "string"\n },\n "requested_module_path": {\n "minLength": 1,\n "type": "string"\n },\n "selected_node_id": {\n "pattern": "^jag_node_[a-f0-9]{64}$",\n "type": "string"\n },\n "status": {\n "const": "selected",\n "type": "string"\n }\n },\n "required": [\n "evidence_id",\n "graph_id",\n "requested_module_path",\n "requested_export_name",\n "candidates",\n "omitted_candidates",\n "status",\n "selected_node_id"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "candidates": {\n "items": {\n "additionalProperties": false,\n "properties": {\n "export_name": {\n "minLength": 1,\n "type": "string"\n },\n "matches_requested_export": {\n "type": "boolean"\n },\n "matches_requested_module": {\n "type": "boolean"\n },\n "module_path": {\n "minLength": 1,\n "type": "string"\n },\n "node_id": {\n "pattern": "^jag_node_[a-f0-9]{64}$",\n "type": "string"\n }\n },\n "required": [\n "node_id",\n "module_path",\n "export_name",\n "matches_requested_module",\n "matches_requested_export"\n ],\n "type": "object"\n },\n "type": "array"\n },\n "evidence_id": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "graph_id": {\n "pattern": "^jag_[a-f0-9]{64}$",\n "type": "string"\n },\n "omitted_candidates": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "requested_export_name": {\n "minLength": 1,\n "type": "string"\n },\n "requested_module_path": {\n "minLength": 1,\n "type": "string"\n },\n "selected_node_id": {\n "type": "null"\n },\n "status": {\n "enum": [\n "missing",\n "ambiguous"\n ],\n "type": "string"\n }\n },\n "required": [\n "evidence_id",\n "graph_id",\n "requested_module_path",\n "requested_export_name",\n "candidates",\n "omitted_candidates",\n "status",\n "selected_node_id"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "candidates": {\n "items": {\n "additionalProperties": false,\n "properties": {\n "export_name": {\n "minLength": 1,\n "type": "string"\n },\n "matches_requested_export": {\n "type": "boolean"\n },\n "matches_requested_module": {\n "type": "boolean"\n },\n "module_path": {\n "minLength": 1,\n "type": "string"\n },\n "node_id": {\n "pattern": "^jag_node_[a-f0-9]{64}$",\n "type": "string"\n }\n },\n "required": [\n "node_id",\n "module_path",\n "export_name",\n "matches_requested_module",\n "matches_requested_export"\n ],\n "type": "object"\n },\n "type": "array"\n },\n "evidence_id": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "graph_id": {\n "pattern": "^jag_[a-f0-9]{64}$",\n "type": "string"\n },\n "omitted_candidates": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "requested_export_name": {\n "minLength": 1,\n "type": "string"\n },\n "requested_module_path": {\n "minLength": 1,\n "type": "string"\n },\n "selected_node_id": {\n "anyOf": [\n {\n "pattern": "^jag_node_[a-f0-9]{64}$",\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "status": {\n "const": "unavailable",\n "type": "string"\n }\n },\n "required": [\n "evidence_id",\n "graph_id",\n "requested_module_path",\n "requested_export_name",\n "candidates",\n "omitted_candidates",\n "status",\n "selected_node_id"\n ],\n "type": "object"\n }\n ]\n },\n "summary": {\n "additionalProperties": false,\n "properties": {\n "added": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "changed": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "removed": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "unknown": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "added",\n "removed",\n "changed",\n "unknown"\n ],\n "type": "object"\n }\n },\n "required": [\n "comparison_id",\n "left",\n "right",\n "summary",\n "changes",\n "coverage",\n "evidence_links",\n "limitations"\n ],\n "type": "object"\n }\n },\n "required": [\n "result",\n "evidence_id",\n "evidence"\n ],\n "type": "object"\n },\n "requiresSession": false,\n "title": "Compare Javascript Export Shapes"\n },\n {\n "analysisOperation": null,\n "annotations": {\n "destructiveHint": false,\n "idempotentHint": true,\n "openWorldHint": false,\n "readOnlyHint": false\n },\n "description": "Generate the complete deterministic ReconstructionObligationLedger from an authenticated Evidence 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. The inline result carries the full-ledger closure digest and typed per-obligation diagnostics.",\n "effects": {\n "accessesNetwork": false,\n "changesUiState": false,\n "idempotent": true,\n "launchesProcess": false,\n "mayDiscardData": false,\n "mutatesSession": true,\n "mutatesTarget": false,\n "writesFilesystem": false\n },\n "inputSchema": {\n "$defs": {\n "__schema0": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "number"\n },\n {\n "type": "boolean"\n },\n {\n "type": "null"\n },\n {\n "items": {\n "$ref": "#/$defs/__schema0"\n },\n "type": "array"\n },\n {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n }\n ]\n }\n },\n "$schema": "https://json-schema.org/draft/2020-12/schema",\n "additionalProperties": false,\n "examples": [\n {\n "evidence_bundle": {\n "artifacts": [],\n "captures": [],\n "environments": [],\n "providers": [],\n "records": [],\n "scenarios": [],\n "unknowns": []\n },\n "manifest": {\n "bindings": [],\n "contradictions": []\n },\n "reviewed_obligations": []\n }\n ],\n "properties": {\n "evidence_bundle": {\n "description": "Value for evidence bundle.",\n "properties": {\n "artifacts": {\n "description": "Value for artifacts.",\n "items": {\n "properties": {\n "architecture": {\n "anyOf": [\n {\n "enum": [\n "x86",\n "x86_64",\n "arm",\n "arm64"\n ],\n "type": "string"\n },\n {\n "type": "null"\n }\n ],\n "description": "Value for architecture."\n },\n "digest": {\n "description": "Value for digest.",\n "properties": {\n "sha256": {\n "description": "Value for sha256.",\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n }\n },\n "required": [\n "sha256"\n ],\n "type": "object"\n },\n "format": {\n "description": "Declared input artifact format.",\n "enum": [\n "hopper",\n "analysis-database",\n "mach-o",\n "elf",\n "pe",\n "dos-mz",\n "dos-com",\n "zip",\n "ipa",\n "apk",\n "msix",\n "appx",\n "asar",\n "dmg",\n "pkg",\n "plist",\n "javascript",\n "source-map",\n "directory",\n "file",\n "unknown",\n "mach-o-universal",\n "javascript-bundle",\n "entitlements"\n ],\n "type": "string"\n }\n },\n "required": [\n "digest",\n "format",\n "architecture"\n ],\n "type": "object"\n },\n "type": "array"\n },\n "captures": {\n "description": "Value for captures.",\n "items": {\n "properties": {\n "evidence_id": {\n "description": "Stable identifier of the recorded Evidence observation.",\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "predicate_type": {\n "description": "Value for predicate type.",\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "evidence_id",\n "predicate_type"\n ],\n "type": "object"\n },\n "type": "array"\n },\n "environments": {\n "description": "Value for environments.",\n "items": {\n "properties": {\n "architecture": {\n "description": "Value for architecture.",\n "minLength": 1,\n "type": "string"\n },\n "id": {\n "description": "Value for id.",\n "minLength": 1,\n "type": "string"\n },\n "isolation": {\n "description": "Value for isolation.",\n "enum": [\n "none",\n "process",\n "container",\n "virtual-machine"\n ],\n "type": "string"\n },\n "platform": {\n "description": "Value for platform.",\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "id",\n "platform",\n "architecture",\n "isolation"\n ],\n "type": "object"\n },\n "type": "array"\n },\n "providers": {\n "description": "Value for providers.",\n "items": {\n "properties": {\n "id": {\n "description": "Value for id.",\n "minLength": 1,\n "type": "string"\n },\n "name": {\n "description": "Exact name used by this operation.",\n "minLength": 1,\n "type": "string"\n },\n "version": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ],\n "description": "Value for version."\n }\n },\n "required": [\n "id",\n "name",\n "version"\n ],\n "type": "object"\n },\n "type": "array"\n },\n "records": {\n "description": "Value for records.",\n "items": {\n "anyOf": [\n {\n "additionalProperties": false,\n "properties": {\n "analysis_profile": {\n "description": "Value for analysis profile.",\n "properties": {\n "digest": {\n "description": "Value for digest.",\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n },\n "parameters": {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "description": "Value for parameters.",\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n },\n "provider": {\n "description": "Value for provider.",\n "properties": {\n "id": {\n "description": "Value for id.",\n "minLength": 1,\n "type": "string"\n },\n "name": {\n "description": "Exact name used by this operation.",\n "minLength": 1,\n "type": "string"\n },\n "version": {\n "description": "Value for version.",\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "id",\n "name",\n "version"\n ],\n "type": "object"\n }\n },\n "required": [\n "provider",\n "parameters",\n "digest"\n ],\n "type": "object"\n },\n "authority": {\n "description": "Value for authority.",\n "enum": [\n "shipped-artifact",\n "controlled-replay",\n "historical-reference",\n "external-service",\n "analyst-inference"\n ],\n "type": "string"\n },\n "confidence": {\n "description": "Value for confidence.",\n "enum": [\n "observed",\n "derived",\n "inferred"\n ],\n "type": "string"\n },\n "environment": {\n "anyOf": [\n {\n "properties": {\n "architecture": {\n "description": "Value for architecture.",\n "minLength": 1,\n "type": "string"\n },\n "id": {\n "description": "Value for id.",\n "minLength": 1,\n "type": "string"\n },\n "isolation": {\n "description": "Value for isolation.",\n "enum": [\n "none",\n "process",\n "container",\n "virtual-machine"\n ],\n "type": "string"\n },\n "platform": {\n "description": "Value for platform.",\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "id",\n "platform",\n "architecture",\n "isolation"\n ],\n "type": "object"\n },\n {\n "type": "null"\n }\n ],\n "description": "Value for environment."\n },\n "evidence_id": {\n "description": "Stable identifier of the recorded Evidence observation.",\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "evidence_links": {\n "description": "Value for evidence links.",\n "items": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "type": "array"\n },\n "limitations": {\n "description": "Value for limitations.",\n "items": {\n "type": "string"\n },\n "type": "array"\n },\n "locations": {\n "description": "Value for locations.",\n "items": {\n "oneOf": [\n {\n "properties": {\n "address": {\n "description": "Value for address.",\n "minLength": 1,\n "type": "string"\n },\n "kind": {\n "const": "address",\n "description": "Value for kind.",\n "type": "string"\n }\n },\n "required": [\n "kind",\n "address"\n ],\n "type": "object"\n },\n {\n "properties": {\n "end": {\n "description": "Value for end.",\n "minLength": 1,\n "type": "string"\n },\n "kind": {\n "const": "address-range",\n "description": "Value for kind.",\n "type": "string"\n },\n "start": {\n "description": "Value for start.",\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "kind",\n "start",\n "end"\n ],\n "type": "object"\n },\n {\n "properties": {\n "kind": {\n "const": "artifact-path",\n "description": "Value for kind.",\n "type": "string"\n },\n "path": {\n "description": "Local filesystem path used by this operation.",\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "kind",\n "path"\n ],\n "type": "object"\n },\n {\n "properties": {\n "kind": {\n "const": "file-offset",\n "description": "Value for kind.",\n "type": "string"\n },\n "offset": {\n "description": "Value for offset.",\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "kind",\n "offset"\n ],\n "type": "object"\n },\n {\n "properties": {\n "end": {\n "description": "Value for end.",\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "kind": {\n "const": "file-offset-range",\n "description": "Value for kind.",\n "type": "string"\n },\n "start": {\n "description": "Value for start.",\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "kind",\n "start",\n "end"\n ],\n "type": "object"\n }\n ]\n },\n "type": "array"\n },\n "normalized_result": {\n "$ref": "#/$defs/__schema0",\n "description": "Value for normalized result."\n },\n "operation": {\n "description": "Value for operation.",\n "minLength": 1,\n "type": "string"\n },\n "parameters": {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "description": "Value for parameters.",\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n },\n "predicate_type": {\n "description": "Value for predicate type.",\n "minLength": 1,\n "type": "string"\n },\n "provider": {\n "description": "Value for provider.",\n "properties": {\n "id": {\n "description": "Value for id.",\n "minLength": 1,\n "type": "string"\n },\n "name": {\n "description": "Exact name used by this operation.",\n "minLength": 1,\n "type": "string"\n },\n "version": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ],\n "description": "Value for version."\n }\n },\n "required": [\n "id",\n "name",\n "version"\n ],\n "type": "object"\n },\n "raw_result": {\n "anyOf": [\n {\n "$ref": "#/$defs/__schema0"\n },\n {\n "type": "null"\n }\n ],\n "description": "Value for raw result."\n },\n "subject": {\n "anyOf": [\n {\n "properties": {\n "architecture": {\n "anyOf": [\n {\n "enum": [\n "x86",\n "x86_64",\n "arm",\n "arm64"\n ],\n "type": "string"\n },\n {\n "type": "null"\n }\n ],\n "description": "Value for architecture."\n },\n "digest": {\n "description": "Value for digest.",\n "properties": {\n "sha256": {\n "description": "Value for sha256.",\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n }\n },\n "required": [\n "sha256"\n ],\n "type": "object"\n },\n "format": {\n "description": "Declared input artifact format.",\n "enum": [\n "hopper",\n "analysis-database",\n "mach-o",\n "elf",\n "pe",\n "dos-mz",\n "dos-com",\n "zip",\n "ipa",\n "apk",\n "msix",\n "appx",\n "asar",\n "dmg",\n "pkg",\n "plist",\n "javascript",\n "source-map",\n "directory",\n "file",\n "unknown",\n "mach-o-universal",\n "javascript-bundle",\n "entitlements"\n ],\n "type": "string"\n },\n "local_path": {\n "description": "Local filesystem path for local.",\n "type": "string"\n },\n "name": {\n "description": "Exact name used by this operation.",\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "name",\n "digest",\n "format",\n "architecture",\n "local_path"\n ],\n "type": "object"\n },\n {\n "type": "null"\n }\n ],\n "description": "Value for subject."\n }\n },\n "required": [\n "evidence_id",\n "subject",\n "provider",\n "predicate_type",\n "operation",\n "parameters",\n "raw_result",\n "normalized_result",\n "confidence",\n "authority",\n "environment",\n "limitations",\n "locations",\n "evidence_links",\n "analysis_profile"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "authority": {\n "description": "Value for authority.",\n "enum": [\n "shipped-artifact",\n "controlled-replay",\n "historical-reference",\n "external-service",\n "analyst-inference"\n ],\n "type": "string"\n },\n "confidence": {\n "description": "Value for confidence.",\n "enum": [\n "observed",\n "derived",\n "inferred"\n ],\n "type": "string"\n },\n "environment": {\n "anyOf": [\n {\n "properties": {\n "architecture": {\n "description": "Value for architecture.",\n "minLength": 1,\n "type": "string"\n },\n "id": {\n "description": "Value for id.",\n "minLength": 1,\n "type": "string"\n },\n "isolation": {\n "description": "Value for isolation.",\n "enum": [\n "none",\n "process",\n "container",\n "virtual-machine"\n ],\n "type": "string"\n },\n "platform": {\n "description": "Value for platform.",\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "id",\n "platform",\n "architecture",\n "isolation"\n ],\n "type": "object"\n },\n {\n "type": "null"\n }\n ],\n "description": "Value for environment."\n },\n "evidence_id": {\n "description": "Stable identifier of the recorded Evidence observation.",\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "evidence_links": {\n "description": "Value for evidence links.",\n "items": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "type": "array"\n },\n "limitations": {\n "description": "Value for limitations.",\n "items": {\n "type": "string"\n },\n "type": "array"\n },\n "locations": {\n "description": "Value for locations.",\n "items": {\n "oneOf": [\n {\n "properties": {\n "address": {\n "description": "Value for address.",\n "minLength": 1,\n "type": "string"\n },\n "kind": {\n "const": "address",\n "description": "Value for kind.",\n "type": "string"\n }\n },\n "required": [\n "kind",\n "address"\n ],\n "type": "object"\n },\n {\n "properties": {\n "end": {\n "description": "Value for end.",\n "minLength": 1,\n "type": "string"\n },\n "kind": {\n "const": "address-range",\n "description": "Value for kind.",\n "type": "string"\n },\n "start": {\n "description": "Value for start.",\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "kind",\n "start",\n "end"\n ],\n "type": "object"\n },\n {\n "properties": {\n "kind": {\n "const": "artifact-path",\n "description": "Value for kind.",\n "type": "string"\n },\n "path": {\n "description": "Local filesystem path used by this operation.",\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "kind",\n "path"\n ],\n "type": "object"\n },\n {\n "properties": {\n "kind": {\n "const": "file-offset",\n "description": "Value for kind.",\n "type": "string"\n },\n "offset": {\n "description": "Value for offset.",\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "kind",\n "offset"\n ],\n "type": "object"\n },\n {\n "properties": {\n "end": {\n "description": "Value for end.",\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "kind": {\n "const": "file-offset-range",\n "description": "Value for kind.",\n "type": "string"\n },\n "start": {\n "description": "Value for start.",\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "kind",\n "start",\n "end"\n ],\n "type": "object"\n }\n ]\n },\n "type": "array"\n },\n "normalized_result": {\n "$ref": "#/$defs/__schema0",\n "description": "Value for normalized result."\n },\n "operation": {\n "description": "Value for operation.",\n "minLength": 1,\n "type": "string"\n },\n "parameters": {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "description": "Value for parameters.",\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n },\n "predicate_type": {\n "description": "Value for predicate type.",\n "minLength": 1,\n "type": "string"\n },\n "provider": {\n "description": "Value for provider.",\n "properties": {\n "id": {\n "description": "Value for id.",\n "minLength": 1,\n "type": "string"\n },\n "name": {\n "description": "Exact name used by this operation.",\n "minLength": 1,\n "type": "string"\n },\n "version": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ],\n "description": "Value for version."\n }\n },\n "required": [\n "id",\n "name",\n "version"\n ],\n "type": "object"\n },\n "raw_result": {\n "anyOf": [\n {\n "$ref": "#/$defs/__schema0"\n },\n {\n "type": "null"\n }\n ],\n "description": "Value for raw result."\n },\n "subject": {\n "anyOf": [\n {\n "properties": {\n "architecture": {\n "anyOf": [\n {\n "enum": [\n "x86",\n "x86_64",\n "arm",\n "arm64"\n ],\n "type": "string"\n },\n {\n "type": "null"\n }\n ],\n "description": "Value for architecture."\n },\n "digest": {\n "description": "Value for digest.",\n "properties": {\n "sha256": {\n "description": "Value for sha256.",\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n }\n },\n "required": [\n "sha256"\n ],\n "type": "object"\n },\n "format": {\n "description": "Declared input artifact format.",\n "enum": [\n "hopper",\n "analysis-database",\n "mach-o",\n "elf",\n "pe",\n "dos-mz",\n "dos-com",\n "zip",\n "ipa",\n "apk",\n "msix",\n "appx",\n "asar",\n "dmg",\n "pkg",\n "plist",\n "javascript",\n "source-map",\n "directory",\n "file",\n "unknown",\n "mach-o-universal",\n "javascript-bundle",\n "entitlements"\n ],\n "type": "string"\n },\n "local_path": {\n "description": "Local filesystem path for local.",\n "type": "string"\n },\n "name": {\n "description": "Exact name used by this operation.",\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "name",\n "digest",\n "format",\n "architecture",\n "local_path"\n ],\n "type": "object"\n },\n {\n "type": "null"\n }\n ],\n "description": "Value for subject."\n }\n },\n "required": [\n "evidence_id",\n "subject",\n "provider",\n "predicate_type",\n "operation",\n "parameters",\n "raw_result",\n "normalized_result",\n "confidence",\n "authority",\n "environment",\n "limitations",\n "locations",\n "evidence_links"\n ],\n "type": "object"\n }\n ]\n },\n "type": "array"\n },\n "scenarios": {\n "description": "Value for scenarios.",\n "items": {\n "properties": {\n "authority": {\n "const": "controlled-replay",\n "description": "Value for authority.",\n "type": "string"\n },\n "evidence_id": {\n "description": "Stable identifier of the recorded Evidence observation.",\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "operation": {\n "description": "Value for operation.",\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "evidence_id",\n "operation",\n "authority"\n ],\n "type": "object"\n },\n "type": "array"\n },\n "unknowns": {\n "description": "Value for unknowns.",\n "items": {\n "properties": {\n "contradicting_evidence_ids": {\n "description": "Ordered Evidence identifiers for the contradicting observations.",\n "items": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "type": "array"\n },\n "domain": {\n "description": "Value for domain.",\n "minLength": 1,\n "type": "string"\n },\n "mutation_evidence_ids": {\n "description": "Ordered Evidence identifiers for the mutation observations.",\n "items": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "minItems": 1,\n "type": "array"\n },\n "previous_revision_digest": {\n "anyOf": [\n {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n },\n {\n "type": "null"\n }\n ],\n "description": "Value for previous revision digest."\n },\n "question": {\n "description": "Concrete unresolved question to retain for later investigation.",\n "minLength": 1,\n "type": "string"\n },\n "recommended_probes": {\n "description": "Value for recommended probes.",\n "items": {\n "properties": {\n "operation": {\n "description": "Value for operation.",\n "minLength": 1,\n "type": "string"\n },\n "rationale": {\n "description": "Value for rationale.",\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "operation",\n "rationale"\n ],\n "type": "object"\n },\n "type": "array"\n },\n "relationships": {\n "description": "Value for relationships.",\n "items": {\n "properties": {\n "type": {\n "description": "Value for type.",\n "enum": [\n "depends-on",\n "related-to",\n "contradicts"\n ],\n "type": "string"\n },\n "unknown_id": {\n "description": "Exact residual-unknown identifier.",\n "pattern": "^unk_[a-f0-9]{64}$",\n "type": "string"\n }\n },\n "required": [\n "type",\n "unknown_id"\n ],\n "type": "object"\n },\n "type": "array"\n },\n "required_authority": {\n "anyOf": [\n {\n "enum": [\n "shipped-artifact",\n "controlled-replay",\n "historical-reference",\n "external-service",\n "analyst-inference"\n ],\n "type": "string"\n },\n {\n "type": "null"\n }\n ],\n "description": "Value for required authority."\n },\n "required_confidence": {\n "description": "Value for required confidence.",\n "enum": [\n "observed",\n "derived",\n "inferred"\n ],\n "type": "string"\n },\n "required_environment": {\n "anyOf": [\n {\n "properties": {\n "architecture": {\n "anyOf": [\n {\n "minLength": 1,\n "type": "string"\n },\n {\n "type": "null"\n }\n ],\n "description": "Value for architecture."\n },\n "id": {\n "anyOf": [\n {\n "minLength": 1,\n "type": "string"\n },\n {\n "type": "null"\n }\n ],\n "description": "Value for id."\n },\n "isolation": {\n "anyOf": [\n {\n "enum": [\n "none",\n "process",\n "container",\n "virtual-machine"\n ],\n "type": "string"\n },\n {\n "type": "null"\n }\n ],\n "description": "Value for isolation."\n },\n "platform": {\n "anyOf": [\n {\n "minLength": 1,\n "type": "string"\n },\n {\n "type": "null"\n }\n ],\n "description": "Value for platform."\n }\n },\n "required": [\n "id",\n "platform",\n "architecture",\n "isolation"\n ],\n "type": "object"\n },\n {\n "type": "null"\n }\n ],\n "description": "Value for required environment."\n },\n "resolution": {\n "anyOf": [\n {\n "oneOf": [\n {\n "properties": {\n "disposition": {\n "const": "verified",\n "description": "Value for disposition.",\n "type": "string"\n },\n "evidence_ids": {\n "description": "Value for evidence ids.",\n "items": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "minItems": 1,\n "type": "array"\n },\n "rationale": {\n "description": "Value for rationale.",\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "disposition",\n "rationale",\n "evidence_ids"\n ],\n "type": "object"\n },\n {\n "properties": {\n "disposition": {\n "description": "Value for disposition.",\n "enum": [\n "withdrawn",\n "out-of-scope"\n ],\n "type": "string"\n },\n "evidence_ids": {\n "description": "Value for evidence ids.",\n "items": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "type": "array"\n },\n "rationale": {\n "description": "Value for rationale.",\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "disposition",\n "rationale",\n "evidence_ids"\n ],\n "type": "object"\n }\n ]\n },\n {\n "type": "null"\n }\n ],\n "description": "Value for resolution."\n },\n "revision": {\n "description": "Value for revision.",\n "maximum": 9007199254740991,\n "minimum": 1,\n "type": "integer"\n },\n "revision_digest": {\n "description": "Value for revision digest.",\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n },\n "scope_digest": {\n "anyOf": [\n {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n },\n {\n "type": "null"\n }\n ],\n "description": "Value for scope digest."\n },\n "severity": {\n "description": "Value for severity.",\n "enum": [\n "low",\n "medium",\n "high",\n "critical"\n ],\n "type": "string"\n },\n "status": {\n "description": "Current lifecycle or verification status.",\n "enum": [\n "open",\n "investigating",\n "blocked",\n "contradicted",\n "resolved"\n ],\n "type": "string"\n },\n "supporting_evidence_ids": {\n "description": "Ordered Evidence identifiers for the supporting observations.",\n "items": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "type": "array"\n },\n "unknown_id": {\n "description": "Exact residual-unknown identifier.",\n "pattern": "^unk_[a-f0-9]{64}$",\n "type": "string"\n }\n },\n "required": [\n "unknown_id",\n "revision",\n "previous_revision_digest",\n "revision_digest",\n "scope_digest",\n "question",\n "status",\n "severity",\n "domain",\n "supporting_evidence_ids",\n "contradicting_evidence_ids",\n "required_authority",\n "required_confidence",\n "required_environment",\n "recommended_probes",\n "relationships",\n "resolution",\n "mutation_evidence_ids"\n ],\n "type": "object"\n },\n "type": "array"\n }\n },\n "required": [\n "artifacts",\n "providers",\n "environments",\n "scenarios",\n "captures",\n "unknowns",\n "records"\n ],\n "type": "object"\n },\n "manifest": {\n "additionalProperties": false,\n "description": "Value for manifest.",\n "properties": {\n "bindings": {\n "description": "Value for bindings.",\n "items": {\n "additionalProperties": false,\n "properties": {\n "fixtures": {\n "description": "Value for fixtures.",\n "items": {\n "additionalProperties": false,\n "properties": {\n "authority": {\n "description": "Value for authority.",\n "enum": [\n "unit",\n "integration",\n "protocol",\n "renderer",\n "packaged-process",\n "native-abi",\n "live-observation",\n "external"\n ],\n "type": "string"\n },\n "case_kind": {\n "description": "Value for case kind.",\n "enum": [\n "positive",\n "negative",\n "malformed",\n "cancellation",\n "teardown"\n ],\n "type": "string"\n },\n "evidence_ids": {\n "description": "Value for evidence ids.",\n "items": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "minItems": 1,\n "type": "array"\n },\n "fixture_id": {\n "description": "Value for fixture id.",\n "pattern": "^[A-Za-z][A-Za-z0-9._:/-]*$",\n "type": "string"\n }\n },\n "required": [\n "fixture_id",\n "case_kind",\n "authority",\n "evidence_ids"\n ],\n "type": "object"\n },\n "type": "array"\n },\n "obligation_id": {\n "description": "Value for obligation id.",\n "pattern": "^[A-Za-z][A-Za-z0-9._:/-]*$",\n "type": "string"\n },\n "original_cases": {\n "description": "Value for original cases.",\n "items": {\n "additionalProperties": false,\n "properties": {\n "evidence_id": {\n "description": "Stable identifier of the recorded Evidence observation.",\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "kind": {\n "description": "Value for kind.",\n "enum": [\n "positive",\n "negative",\n "malformed",\n "cancellation",\n "teardown"\n ],\n "type": "string"\n },\n "location": {\n "description": "Value for location.",\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "kind",\n "evidence_id",\n "location"\n ],\n "type": "object"\n },\n "type": "array"\n },\n "owner": {\n "additionalProperties": false,\n "description": "Value for owner.",\n "properties": {\n "module_path": {\n "description": "Local filesystem path for module.",\n "minLength": 1,\n "type": "string"\n },\n "owner_sha256": {\n "description": "Exact SHA-256 digest of owner.",\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n },\n "symbol": {\n "description": "Value for symbol.",\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "module_path",\n "symbol",\n "owner_sha256"\n ],\n "type": "object"\n },\n "parser_type": {\n "anyOf": [\n {\n "additionalProperties": false,\n "properties": {\n "domain_type": {\n "description": "Value for domain type.",\n "minLength": 1,\n "type": "string"\n },\n "parser": {\n "description": "Value for parser.",\n "minLength": 1,\n "type": "string"\n },\n "schema": {\n "description": "Value for schema.",\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "parser",\n "schema",\n "domain_type"\n ],\n "type": "object"\n },\n {\n "type": "null"\n }\n ],\n "description": "Value for parser type."\n },\n "verifier": {\n "anyOf": [\n {\n "additionalProperties": false,\n "properties": {\n "authority": {\n "description": "Value for authority.",\n "enum": [\n "unit",\n "integration",\n "protocol",\n "renderer",\n "packaged-process",\n "native-abi",\n "live-observation",\n "external"\n ],\n "type": "string"\n },\n "claim_id": {\n "description": "Value for claim id.",\n "pattern": "^[A-Za-z][A-Za-z0-9._:/-]*$",\n "type": "string"\n },\n "command": {\n "description": "Value for command.",\n "minLength": 1,\n "type": "string"\n },\n "enumerated_obligation_ids": {\n "description": "Value for enumerated obligation ids.",\n "items": {\n "pattern": "^[A-Za-z][A-Za-z0-9._:/-]*$",\n "type": "string"\n },\n "minItems": 1,\n "type": "array"\n },\n "nondeterminism": {\n "additionalProperties": false,\n "description": "Value for nondeterminism.",\n "properties": {\n "mode": {\n "description": "Operation mode that selects the requested behavior.",\n "enum": [\n "total-order",\n "partial-order",\n "finite-traces"\n ],\n "type": "string"\n },\n "specification": {\n "description": "Value for specification.",\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "mode",\n "specification"\n ],\n "type": "object"\n },\n "result_evidence_id": {\n "description": "Exact Evidence identifier for the result observation.",\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "status": {\n "description": "Current lifecycle or verification status.",\n "enum": [\n "pass",\n "fail",\n "unknown",\n "unsupported",\n "skipped"\n ],\n "type": "string"\n },\n "verifier_id": {\n "description": "Value for verifier id.",\n "pattern": "^[A-Za-z][A-Za-z0-9._:/-]*$",\n "type": "string"\n }\n },\n "required": [\n "verifier_id",\n "claim_id",\n "command",\n "authority",\n "status",\n "result_evidence_id",\n "enumerated_obligation_ids",\n "nondeterminism"\n ],\n "type": "object"\n },\n {\n "type": "null"\n }\n ],\n "description": "Value for verifier."\n }\n },\n "required": [\n "obligation_id",\n "owner",\n "parser_type",\n "original_cases",\n "fixtures",\n "verifier"\n ],\n "type": "object"\n },\n "type": "array"\n },\n "contradictions": {\n "description": "Value for contradictions.",\n "items": {\n "additionalProperties": false,\n "properties": {\n "evidence_ids": {\n "description": "Value for evidence ids.",\n "items": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "minItems": 2,\n "type": "array"\n },\n "obligation_id": {\n "description": "Value for obligation id.",\n "pattern": "^[A-Za-z][A-Za-z0-9._:/-]*$",\n "type": "string"\n }\n },\n "required": [\n "obligation_id",\n "evidence_ids"\n ],\n "type": "object"\n },\n "type": "array"\n }\n },\n "required": [\n "bindings",\n "contradictions"\n ],\n "type": "object"\n },\n "reviewed_obligations": {\n "description": "Value for reviewed obligations.",\n "items": {\n "additionalProperties": false,\n "properties": {\n "application_layer": {\n "description": "Value for application layer.",\n "enum": [\n "cli",\n "protocol",\n "electron",\n "persistence",\n "process",\n "runtime",\n "packaging",\n "native-abi",\n "application",\n "other"\n ],\n "type": "string"\n },\n "dependency_obligation_ids": {\n "description": "Value for dependency obligation ids.",\n "items": {\n "pattern": "^[A-Za-z][A-Za-z0-9._:/-]*$",\n "type": "string"\n },\n "type": "array"\n },\n "disposition": {\n "description": "Value for disposition.",\n "enum": [\n "active",\n "blocked",\n "out-of-scope"\n ],\n "type": "string"\n },\n "family": {\n "description": "Value for family.",\n "minLength": 1,\n "type": "string"\n },\n "obligation_id": {\n "description": "Value for obligation id.",\n "pattern": "^[A-Za-z][A-Za-z0-9._:/-]*$",\n "type": "string"\n },\n "obligation_version": {\n "description": "Value for obligation version.",\n "maximum": 9007199254740991,\n "minimum": 1,\n "type": "integer"\n },\n "required": {\n "description": "Value for required.",\n "type": "boolean"\n },\n "required_case_kinds": {\n "description": "Value for required case kinds.",\n "items": {\n "enum": [\n "positive",\n "negative",\n "malformed",\n "cancellation",\n "teardown"\n ],\n "type": "string"\n },\n "minItems": 1,\n "type": "array"\n },\n "required_fixture_authority": {\n "description": "Value for required fixture authority.",\n "enum": [\n "unit",\n "integration",\n "protocol",\n "renderer",\n "packaged-process",\n "native-abi",\n "live-observation",\n "external"\n ],\n "type": "string"\n },\n "required_next_evidence": {\n "description": "Value for required next evidence.",\n "items": {\n "minLength": 1,\n "type": "string"\n },\n "type": "array"\n },\n "required_original_authority": {\n "description": "Value for required original authority.",\n "enum": [\n "static",\n "runtime",\n "process",\n "external"\n ],\n "type": "string"\n },\n "required_verifier_authority": {\n "description": "Value for required verifier authority.",\n "enum": [\n "unit",\n "integration",\n "protocol",\n "renderer",\n "packaged-process",\n "native-abi",\n "live-observation",\n "external"\n ],\n "type": "string"\n },\n "requires_parser_type": {\n "description": "Value for requires parser type.",\n "type": "boolean"\n },\n "residual_unknown_ids": {\n "description": "Value for residual unknown ids.",\n "items": {\n "pattern": "^[A-Za-z][A-Za-z0-9._:/-]*$",\n "type": "string"\n },\n "type": "array"\n },\n "review_evidence_ids": {\n "description": "Ordered Evidence identifiers for the review observations.",\n "items": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "minItems": 1,\n "type": "array"\n },\n "target": {\n "additionalProperties": false,\n "description": "Value for target.",\n "properties": {\n "application_node_id": {\n "anyOf": [\n {\n "pattern": "^jag_node_[a-f0-9]{64}$",\n "type": "string"\n },\n {\n "type": "null"\n }\n ],\n "description": "Value for application node id."\n },\n "artifact_sha256": {\n "anyOf": [\n {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n },\n {\n "type": "null"\n }\n ],\n "description": "Exact SHA-256 digest of artifact."\n },\n "location": {\n "description": "Value for location.",\n "minLength": 1,\n "type": "string"\n },\n "semantic_node_id": {\n "anyOf": [\n {\n "pattern": "^jsrg_node_[a-f0-9]{64}$",\n "type": "string"\n },\n {\n "type": "null"\n }\n ],\n "description": "Value for semantic node id."\n }\n },\n "required": [\n "artifact_sha256",\n "application_node_id",\n "semantic_node_id",\n "location"\n ],\n "type": "object"\n },\n "title": {\n "description": "Value for title.",\n "minLength": 1,\n "type": "string"\n },\n "unavailable_authority": {\n "description": "Value for unavailable authority.",\n "items": {\n "minLength": 1,\n "type": "string"\n },\n "type": "array"\n }\n },\n "required": [\n "obligation_id",\n "obligation_version",\n "title",\n "application_layer",\n "family",\n "target",\n "required",\n "required_case_kinds",\n "required_original_authority",\n "required_fixture_authority",\n "required_verifier_authority",\n "requires_parser_type",\n "dependency_obligation_ids",\n "residual_unknown_ids",\n "unavailable_authority",\n "required_next_evidence",\n "disposition",\n "review_evidence_ids"\n ],\n "type": "object"\n },\n "type": "array"\n }\n },\n "required": [\n "evidence_bundle",\n "reviewed_obligations",\n "manifest"\n ],\n "type": "object"\n },\n "kind": "application",\n "name": "build_reconstruction_obligation_ledger",\n "outputSchema": {\n "$defs": {\n "__schema0": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "number"\n },\n {\n "type": "boolean"\n },\n {\n "type": "null"\n },\n {\n "items": {\n "$ref": "#/$defs/__schema0"\n },\n "type": "array"\n },\n {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n }\n ]\n }\n },\n "$schema": "https://json-schema.org/draft/2020-12/schema",\n "additionalProperties": false,\n "properties": {\n "evidence": {\n "additionalProperties": false,\n "properties": {\n "analysis_profile": {\n "additionalProperties": false,\n "properties": {\n "digest": {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n },\n "parameters": {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n },\n "provider": {\n "additionalProperties": false,\n "properties": {\n "id": {\n "minLength": 1,\n "type": "string"\n },\n "name": {\n "minLength": 1,\n "type": "string"\n },\n "version": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "id",\n "name",\n "version"\n ],\n "type": "object"\n }\n },\n "required": [\n "provider",\n "parameters",\n "digest"\n ],\n "type": "object"\n },\n "authority": {\n "enum": [\n "shipped-artifact",\n "controlled-replay",\n "historical-reference",\n "external-service",\n "analyst-inference"\n ],\n "type": "string"\n },\n "confidence": {\n "enum": [\n "observed",\n "derived",\n "inferred"\n ],\n "type": "string"\n },\n "environment": {\n "anyOf": [\n {\n "additionalProperties": false,\n "properties": {\n "architecture": {\n "minLength": 1,\n "type": "string"\n },\n "id": {\n "minLength": 1,\n "type": "string"\n },\n "isolation": {\n "enum": [\n "none",\n "process",\n "container",\n "virtual-machine"\n ],\n "type": "string"\n },\n "platform": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "id",\n "platform",\n "architecture",\n "isolation"\n ],\n "type": "object"\n },\n {\n "type": "null"\n }\n ]\n },\n "evidence_id": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "evidence_links": {\n "items": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "type": "array"\n },\n "limitations": {\n "items": {\n "type": "string"\n },\n "type": "array"\n },\n "locations": {\n "items": {\n "oneOf": [\n {\n "additionalProperties": false,\n "properties": {\n "address": {\n "minLength": 1,\n "type": "string"\n },\n "kind": {\n "const": "address",\n "type": "string"\n }\n },\n "required": [\n "kind",\n "address"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "end": {\n "minLength": 1,\n "type": "string"\n },\n "kind": {\n "const": "address-range",\n "type": "string"\n },\n "start": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "kind",\n "start",\n "end"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "kind": {\n "const": "artifact-path",\n "type": "string"\n },\n "path": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "kind",\n "path"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "kind": {\n "const": "file-offset",\n "type": "string"\n },\n "offset": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "kind",\n "offset"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "end": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "kind": {\n "const": "file-offset-range",\n "type": "string"\n },\n "start": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "kind",\n "start",\n "end"\n ],\n "type": "object"\n }\n ]\n },\n "type": "array"\n },\n "normalized_result": {\n "$ref": "#/$defs/__schema0"\n },\n "operation": {\n "minLength": 1,\n "type": "string"\n },\n "parameters": {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n },\n "predicate_type": {\n "minLength": 1,\n "type": "string"\n },\n "provider": {\n "additionalProperties": false,\n "properties": {\n "id": {\n "minLength": 1,\n "type": "string"\n },\n "name": {\n "minLength": 1,\n "type": "string"\n },\n "version": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "id",\n "name",\n "version"\n ],\n "type": "object"\n },\n "raw_result": {\n "anyOf": [\n {\n "$ref": "#/$defs/__schema0"\n },\n {\n "type": "null"\n }\n ]\n },\n "subject": {\n "anyOf": [\n {\n "additionalProperties": false,\n "properties": {\n "architecture": {\n "anyOf": [\n {\n "enum": [\n "x86",\n "x86_64",\n "arm",\n "arm64"\n ],\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "digest": {\n "additionalProperties": false,\n "properties": {\n "sha256": {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n }\n },\n "required": [\n "sha256"\n ],\n "type": "object"\n },\n "format": {\n "enum": [\n "hopper",\n "analysis-database",\n "mach-o",\n "elf",\n "pe",\n "dos-mz",\n "dos-com",\n "zip",\n "ipa",\n "apk",\n "msix",\n "appx",\n "asar",\n "dmg",\n "pkg",\n "plist",\n "javascript",\n "source-map",\n "directory",\n "file",\n "unknown",\n "mach-o-universal",\n "javascript-bundle",\n "entitlements"\n ],\n "type": "string"\n },\n "local_path": {\n "type": "string"\n },\n "name": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "name",\n "digest",\n "format",\n "architecture",\n "local_path"\n ],\n "type": "object"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "evidence_id",\n "subject",\n "provider",\n "predicate_type",\n "operation",\n "parameters",\n "raw_result",\n "normalized_result",\n "confidence",\n "authority",\n "environment",\n "limitations",\n "locations",\n "evidence_links"\n ],\n "type": "object"\n },\n "evidence_id": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "result": {\n "additionalProperties": false,\n "properties": {\n "closure_digest": {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n },\n "coverage": {\n "additionalProperties": false,\n "properties": {\n "status": {\n "enum": [\n "complete",\n "partial"\n ],\n "type": "string"\n }\n },\n "required": [\n "status"\n ],\n "type": "object"\n },\n "dependency_graph": {\n "items": {\n "additionalProperties": false,\n "properties": {\n "depends_on_obligation_id": {\n "pattern": "^[A-Za-z][A-Za-z0-9._:/-]*$",\n "type": "string"\n },\n "obligation_id": {\n "pattern": "^[A-Za-z][A-Za-z0-9._:/-]*$",\n "type": "string"\n }\n },\n "required": [\n "obligation_id",\n "depends_on_obligation_id"\n ],\n "type": "object"\n },\n "type": "array"\n },\n "evidence_links": {\n "items": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "type": "array"\n },\n "ledger_id": {\n "pattern": "^rol_[a-f0-9]{64}$",\n "type": "string"\n },\n "limitations": {\n "items": {\n "minLength": 1,\n "type": "string"\n },\n "type": "array"\n },\n "obligations": {\n "items": {\n "additionalProperties": false,\n "properties": {\n "application_layer": {\n "enum": [\n "cli",\n "protocol",\n "electron",\n "persistence",\n "process",\n "runtime",\n "packaging",\n "native-abi",\n "application",\n "other"\n ],\n "type": "string"\n },\n "authority_references": {\n "items": {\n "additionalProperties": false,\n "properties": {\n "authority": {\n "enum": [\n "shipped-artifact",\n "controlled-replay",\n "historical-reference",\n "external-service",\n "analyst-inference"\n ],\n "type": "string"\n },\n "evidence_id": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "location": {\n "minLength": 1,\n "type": "string"\n },\n "state": {\n "enum": [\n "candidate",\n "observed",\n "reviewed",\n "unknown"\n ],\n "type": "string"\n }\n },\n "required": [\n "evidence_id",\n "authority",\n "state",\n "location"\n ],\n "type": "object"\n },\n "minItems": 1,\n "type": "array"\n },\n "binding": {\n "anyOf": [\n {\n "additionalProperties": false,\n "properties": {\n "fixtures": {\n "items": {\n "additionalProperties": false,\n "properties": {\n "authority": {\n "enum": [\n "unit",\n "integration",\n "protocol",\n "renderer",\n "packaged-process",\n "native-abi",\n "live-observation",\n "external"\n ],\n "type": "string"\n },\n "case_kind": {\n "enum": [\n "positive",\n "negative",\n "malformed",\n "cancellation",\n "teardown"\n ],\n "type": "string"\n },\n "evidence_ids": {\n "items": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "minItems": 1,\n "type": "array"\n },\n "fixture_id": {\n "pattern": "^[A-Za-z][A-Za-z0-9._:/-]*$",\n "type": "string"\n }\n },\n "required": [\n "fixture_id",\n "case_kind",\n "authority",\n "evidence_ids"\n ],\n "type": "object"\n },\n "type": "array"\n },\n "obligation_id": {\n "pattern": "^[A-Za-z][A-Za-z0-9._:/-]*$",\n "type": "string"\n },\n "original_cases": {\n "items": {\n "additionalProperties": false,\n "properties": {\n "evidence_id": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "kind": {\n "enum": [\n "positive",\n "negative",\n "malformed",\n "cancellation",\n "teardown"\n ],\n "type": "string"\n },\n "location": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "kind",\n "evidence_id",\n "location"\n ],\n "type": "object"\n },\n "type": "array"\n },\n "owner": {\n "additionalProperties": false,\n "properties": {\n "module_path": {\n "minLength": 1,\n "type": "string"\n },\n "owner_sha256": {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n },\n "symbol": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "module_path",\n "symbol",\n "owner_sha256"\n ],\n "type": "object"\n },\n "parser_type": {\n "anyOf": [\n {\n "additionalProperties": false,\n "properties": {\n "domain_type": {\n "minLength": 1,\n "type": "string"\n },\n "parser": {\n "minLength": 1,\n "type": "string"\n },\n "schema": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "parser",\n "schema",\n "domain_type"\n ],\n "type": "object"\n },\n {\n "type": "null"\n }\n ]\n },\n "verifier": {\n "anyOf": [\n {\n "additionalProperties": false,\n "properties": {\n "authority": {\n "enum": [\n "unit",\n "integration",\n "protocol",\n "renderer",\n "packaged-process",\n "native-abi",\n "live-observation",\n "external"\n ],\n "type": "string"\n },\n "claim_id": {\n "pattern": "^[A-Za-z][A-Za-z0-9._:/-]*$",\n "type": "string"\n },\n "command": {\n "minLength": 1,\n "type": "string"\n },\n "enumerated_obligation_ids": {\n "items": {\n "pattern": "^[A-Za-z][A-Za-z0-9._:/-]*$",\n "type": "string"\n },\n "minItems": 1,\n "type": "array"\n },\n "nondeterminism": {\n "additionalProperties": false,\n "properties": {\n "mode": {\n "enum": [\n "total-order",\n "partial-order",\n "finite-traces"\n ],\n "type": "string"\n },\n "specification": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "mode",\n "specification"\n ],\n "type": "object"\n },\n "result_evidence_id": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "status": {\n "enum": [\n "pass",\n "fail",\n "unknown",\n "unsupported",\n "skipped"\n ],\n "type": "string"\n },\n "verifier_id": {\n "pattern": "^[A-Za-z][A-Za-z0-9._:/-]*$",\n "type": "string"\n }\n },\n "required": [\n "verifier_id",\n "claim_id",\n "command",\n "authority",\n "status",\n "result_evidence_id",\n "enumerated_obligation_ids",\n "nondeterminism"\n ],\n "type": "object"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "obligation_id",\n "owner",\n "parser_type",\n "original_cases",\n "fixtures",\n "verifier"\n ],\n "type": "object"\n },\n {\n "type": "null"\n }\n ]\n },\n "dependency_obligation_ids": {\n "items": {\n "pattern": "^[A-Za-z][A-Za-z0-9._:/-]*$",\n "type": "string"\n },\n "type": "array"\n },\n "diagnostics": {\n "items": {\n "additionalProperties": false,\n "properties": {\n "code": {\n "enum": [\n "duplicate-definition",\n "missing-owner",\n "ambiguous-owner",\n "missing-parser-type",\n "missing-original-case",\n "weak-original-case-authority",\n "missing-case",\n "weak-fixture-authority",\n "missing-verifier",\n "verifier-does-not-enumerate",\n "missing-verifier-result",\n "weak-verifier-authority",\n "verifier-failed",\n "static-only",\n "contradiction",\n "contradiction-evidence-missing",\n "residual-unknown",\n "dependency-missing",\n "dependency-open",\n "unavailable-authority",\n "blocked",\n "out-of-scope"\n ],\n "type": "string"\n },\n "detail": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "code",\n "detail"\n ],\n "type": "object"\n },\n "type": "array"\n },\n "family": {\n "minLength": 1,\n "type": "string"\n },\n "obligation_id": {\n "pattern": "^[A-Za-z][A-Za-z0-9._:/-]*$",\n "type": "string"\n },\n "obligation_version": {\n "maximum": 9007199254740991,\n "minimum": 1,\n "type": "integer"\n },\n "observed_cases": {\n "items": {\n "additionalProperties": false,\n "properties": {\n "evidence_id": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "kind": {\n "enum": [\n "positive",\n "negative",\n "malformed",\n "cancellation",\n "teardown"\n ],\n "type": "string"\n },\n "location": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "kind",\n "evidence_id",\n "location"\n ],\n "type": "object"\n },\n "type": "array"\n },\n "origin": {\n "enum": [\n "generated",\n "reviewed"\n ],\n "type": "string"\n },\n "required": {\n "type": "boolean"\n },\n "required_case_kinds": {\n "items": {\n "enum": [\n "positive",\n "negative",\n "malformed",\n "cancellation",\n "teardown"\n ],\n "type": "string"\n },\n "minItems": 1,\n "type": "array"\n },\n "required_fixture_authority": {\n "enum": [\n "unit",\n "integration",\n "protocol",\n "renderer",\n "packaged-process",\n "native-abi",\n "live-observation",\n "external"\n ],\n "type": "string"\n },\n "required_next_evidence": {\n "items": {\n "minLength": 1,\n "type": "string"\n },\n "type": "array"\n },\n "required_original_authority": {\n "enum": [\n "static",\n "runtime",\n "process",\n "external"\n ],\n "type": "string"\n },\n "required_verifier_authority": {\n "enum": [\n "unit",\n "integration",\n "protocol",\n "renderer",\n "packaged-process",\n "native-abi",\n "live-observation",\n "external"\n ],\n "type": "string"\n },\n "requires_parser_type": {\n "type": "boolean"\n },\n "residual_unknown_ids": {\n "items": {\n "pattern": "^[A-Za-z][A-Za-z0-9._:/-]*$",\n "type": "string"\n },\n "type": "array"\n },\n "source_state": {\n "enum": [\n "candidate",\n "observed",\n "reviewed",\n "unknown"\n ],\n "type": "string"\n },\n "status": {\n "enum": [\n "unowned",\n "characterized",\n "implemented",\n "verified",\n "contradicted",\n "blocked",\n "out-of-scope",\n "unknown"\n ],\n "type": "string"\n },\n "target": {\n "additionalProperties": false,\n "properties": {\n "application_node_id": {\n "anyOf": [\n {\n "pattern": "^jag_node_[a-f0-9]{64}$",\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "artifact_sha256": {\n "anyOf": [\n {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "location": {\n "minLength": 1,\n "type": "string"\n },\n "semantic_node_id": {\n "anyOf": [\n {\n "pattern": "^jsrg_node_[a-f0-9]{64}$",\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "artifact_sha256",\n "application_node_id",\n "semantic_node_id",\n "location"\n ],\n "type": "object"\n },\n "title": {\n "minLength": 1,\n "type": "string"\n },\n "unavailable_authority": {\n "items": {\n "minLength": 1,\n "type": "string"\n },\n "type": "array"\n }\n },\n "required": [\n "obligation_id",\n "obligation_version",\n "title",\n "origin",\n "application_layer",\n "family",\n "target",\n "authority_references",\n "source_state",\n "observed_cases",\n "required",\n "required_case_kinds",\n "required_original_authority",\n "required_fixture_authority",\n "required_verifier_authority",\n "requires_parser_type",\n "dependency_obligation_ids",\n "residual_unknown_ids",\n "unavailable_authority",\n "required_next_evidence",\n "binding",\n "status",\n "diagnostics"\n ],\n "type": "object"\n },\n "type": "array"\n },\n "ownership_graph": {\n "items": {\n "additionalProperties": false,\n "properties": {\n "module_path": {\n "minLength": 1,\n "type": "string"\n },\n "obligation_id": {\n "pattern": "^[A-Za-z][A-Za-z0-9._:/-]*$",\n "type": "string"\n },\n "symbol": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "obligation_id",\n "module_path",\n "symbol"\n ],\n "type": "object"\n },\n "type": "array"\n },\n "reports": {\n "additionalProperties": false,\n "properties": {\n "contradicted_obligation_ids": {\n "items": {\n "pattern": "^[A-Za-z][A-Za-z0-9._:/-]*$",\n "type": "string"\n },\n "type": "array"\n },\n "missing_owner_obligation_ids": {\n "items": {\n "pattern": "^[A-Za-z][A-Za-z0-9._:/-]*$",\n "type": "string"\n },\n "type": "array"\n },\n "missing_verifier_obligation_ids": {\n "items": {\n "pattern": "^[A-Za-z][A-Za-z0-9._:/-]*$",\n "type": "string"\n },\n "type": "array"\n },\n "residual_unknown_ids": {\n "items": {\n "pattern": "^[A-Za-z][A-Za-z0-9._:/-]*$",\n "type": "string"\n },\n "type": "array"\n }\n },\n "required": [\n "missing_owner_obligation_ids",\n "missing_verifier_obligation_ids",\n "contradicted_obligation_ids",\n "residual_unknown_ids"\n ],\n "type": "object"\n },\n "schema": {\n "const": "ReconstructionObligationLedger",\n "type": "string"\n },\n "status": {\n "enum": [\n "ready",\n "open",\n "failed",\n "unknown"\n ],\n "type": "string"\n },\n "summary": {\n "additionalProperties": false,\n "properties": {\n "by_application_layer": {\n "items": {\n "additionalProperties": false,\n "properties": {\n "count": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "key": {\n "enum": [\n "cli",\n "protocol",\n "electron",\n "persistence",\n "process",\n "runtime",\n "packaging",\n "native-abi",\n "application",\n "other"\n ],\n "type": "string"\n }\n },\n "required": [\n "key",\n "count"\n ],\n "type": "object"\n },\n "type": "array"\n },\n "by_evidence_authority": {\n "items": {\n "additionalProperties": false,\n "properties": {\n "count": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "key": {\n "enum": [\n "candidate",\n "observed",\n "reviewed",\n "unknown"\n ],\n "type": "string"\n }\n },\n "required": [\n "key",\n "count"\n ],\n "type": "object"\n },\n "type": "array"\n },\n "by_status": {\n "items": {\n "additionalProperties": false,\n "properties": {\n "count": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "key": {\n "enum": [\n "unowned",\n "characterized",\n "implemented",\n "verified",\n "contradicted",\n "blocked",\n "out-of-scope",\n "unknown"\n ],\n "type": "string"\n }\n },\n "required": [\n "key",\n "count"\n ],\n "type": "object"\n },\n "type": "array"\n },\n "required": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "required_open": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "total": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "verified": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "total",\n "required",\n "verified",\n "required_open",\n "by_status",\n "by_application_layer",\n "by_evidence_authority"\n ],\n "type": "object"\n }\n },\n "required": [\n "schema",\n "ledger_id",\n "closure_digest",\n "status",\n "coverage",\n "summary",\n "reports",\n "ownership_graph",\n "dependency_graph",\n "obligations",\n "evidence_links",\n "limitations"\n ],\n "type": "object"\n }\n },\n "required": [\n "result",\n "evidence_id",\n "evidence"\n ],\n "type": "object"\n },\n "requiresSession": false,\n "title": "Build Reconstruction Obligation Ledger"\n },\n {\n "analysisOperation": null,\n "annotations": {\n "destructiveHint": false,\n "idempotentHint": true,\n "openWorldHint": false,\n "readOnlyHint": true\n },\n "description": "Evaluate inline evidence-backed reconstruction coverage against one named boundary. 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.",\n "effects": {\n "accessesNetwork": false,\n "changesUiState": false,\n "idempotent": true,\n "launchesProcess": false,\n "mayDiscardData": false,\n "mutatesSession": false,\n "mutatesTarget": false,\n "writesFilesystem": false\n },\n "inputSchema": {\n "$defs": {\n "__schema0": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "number"\n },\n {\n "type": "boolean"\n },\n {\n "type": "null"\n },\n {\n "items": {\n "$ref": "#/$defs/__schema0"\n },\n "type": "array"\n },\n {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n }\n ]\n }\n },\n "$schema": "https://json-schema.org/draft/2020-12/schema",\n "additionalProperties": false,\n "examples": [\n {\n "boundary_id": "replacement.cli",\n "coverage": {\n "artifacts": [],\n "boundaries": [\n {\n "allowed_dispositions": [],\n "allowed_unknown_ids": [],\n "boundary_id": "replacement.cli",\n "required_claim_ids": [\n "claim.cli.help"\n ],\n "required_package_proof_kinds": [\n "clean-install",\n "authority-independence"\n ],\n "required_surface_ids": [\n "cli.help"\n ],\n "title": "CLI replacement"\n }\n ],\n "claims": [],\n "contradictions": [],\n "evidence_bundle": {\n "artifacts": [],\n "captures": [],\n "environments": [],\n "providers": [],\n "records": [],\n "scenarios": [],\n "unknowns": []\n },\n "owners": [],\n "package_proofs": [],\n "residual_unknown_ids": [],\n "surfaces": [],\n "verifier_contracts": [],\n "verifier_results": []\n }\n }\n ],\n "properties": {\n "boundary_id": {\n "description": "Exact reconstruction boundary identifier to evaluate.",\n "minLength": 1,\n "type": "string"\n },\n "coverage": {\n "additionalProperties": false,\n "description": "Exact reconstruction-coverage commitment to verify.",\n "properties": {\n "artifacts": {\n "description": "Value for artifacts.",\n "items": {\n "additionalProperties": false,\n "properties": {\n "artifact_id": {\n "description": "Value for artifact id.",\n "pattern": "^[A-Za-z][A-Za-z0-9._:/-]{0,199}$",\n "type": "string"\n },\n "artifact_sha256": {\n "description": "Exact SHA-256 digest of artifact.",\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n },\n "environment_sha256": {\n "description": "Exact SHA-256 digest of environment.",\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n },\n "evidence_ids": {\n "description": "Value for evidence ids.",\n "items": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "minItems": 1,\n "type": "array"\n },\n "version": {\n "description": "Value for version.",\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "artifact_id",\n "artifact_sha256",\n "version",\n "environment_sha256",\n "evidence_ids"\n ],\n "type": "object"\n },\n "type": "array"\n },\n "boundaries": {\n "description": "Value for boundaries.",\n "items": {\n "additionalProperties": false,\n "properties": {\n "allowed_dispositions": {\n "description": "Value for allowed dispositions.",\n "items": {\n "enum": [\n "external",\n "non-goal"\n ],\n "type": "string"\n },\n "type": "array"\n },\n "allowed_unknown_ids": {\n "description": "Value for allowed unknown ids.",\n "items": {\n "pattern": "^[A-Za-z][A-Za-z0-9._:/-]{0,199}$",\n "type": "string"\n },\n "type": "array"\n },\n "boundary_id": {\n "description": "Exact reconstruction boundary identifier to evaluate.",\n "pattern": "^[A-Za-z][A-Za-z0-9._:/-]{0,199}$",\n "type": "string"\n },\n "required_claim_ids": {\n "description": "Value for required claim ids.",\n "items": {\n "pattern": "^[A-Za-z][A-Za-z0-9._:/-]{0,199}$",\n "type": "string"\n },\n "minItems": 1,\n "type": "array"\n },\n "required_package_proof_kinds": {\n "description": "Value for required package proof kinds.",\n "items": {\n "enum": [\n "build",\n "clean-install",\n "package-contents",\n "runtime-routing",\n "authority-independence"\n ],\n "type": "string"\n },\n "minItems": 1,\n "type": "array"\n },\n "required_surface_ids": {\n "description": "Value for required surface ids.",\n "items": {\n "pattern": "^[A-Za-z][A-Za-z0-9._:/-]{0,199}$",\n "type": "string"\n },\n "minItems": 1,\n "type": "array"\n },\n "title": {\n "description": "Value for title.",\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "boundary_id",\n "title",\n "required_surface_ids",\n "required_claim_ids",\n "required_package_proof_kinds",\n "allowed_dispositions",\n "allowed_unknown_ids"\n ],\n "type": "object"\n },\n "type": "array"\n },\n "claims": {\n "description": "Value for claims.",\n "items": {\n "additionalProperties": false,\n "properties": {\n "claim_id": {\n "description": "Value for claim id.",\n "pattern": "^[A-Za-z][A-Za-z0-9._:/-]{0,199}$",\n "type": "string"\n },\n "kind": {\n "description": "Value for kind.",\n "minLength": 1,\n "type": "string"\n },\n "required_authority": {\n "description": "Value for required authority.",\n "enum": [\n "shipped-artifact",\n "controlled-replay",\n "live-observation",\n "external"\n ],\n "type": "string"\n },\n "required_dimensions": {\n "description": "Value for required dimensions.",\n "items": {\n "pattern": "^[A-Za-z][A-Za-z0-9._:/-]{0,199}$",\n "type": "string"\n },\n "minItems": 1,\n "type": "array"\n },\n "surface_ids": {\n "description": "Value for surface ids.",\n "items": {\n "pattern": "^[A-Za-z][A-Za-z0-9._:/-]{0,199}$",\n "type": "string"\n },\n "minItems": 1,\n "type": "array"\n },\n "title": {\n "description": "Value for title.",\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "claim_id",\n "title",\n "kind",\n "surface_ids",\n "required_dimensions",\n "required_authority"\n ],\n "type": "object"\n },\n "type": "array"\n },\n "contradictions": {\n "description": "Value for contradictions.",\n "items": {\n "additionalProperties": false,\n "properties": {\n "claim_ids": {\n "description": "Value for claim ids.",\n "items": {\n "pattern": "^[A-Za-z][A-Za-z0-9._:/-]{0,199}$",\n "type": "string"\n },\n "type": "array"\n },\n "contradiction_id": {\n "description": "Value for contradiction id.",\n "pattern": "^[A-Za-z][A-Za-z0-9._:/-]{0,199}$",\n "type": "string"\n },\n "evidence_ids": {\n "description": "Value for evidence ids.",\n "items": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "minItems": 2,\n "type": "array"\n },\n "status": {\n "description": "Current lifecycle or verification status.",\n "enum": [\n "active",\n "resolved"\n ],\n "type": "string"\n },\n "surface_ids": {\n "description": "Value for surface ids.",\n "items": {\n "pattern": "^[A-Za-z][A-Za-z0-9._:/-]{0,199}$",\n "type": "string"\n },\n "type": "array"\n }\n },\n "required": [\n "contradiction_id",\n "status",\n "surface_ids",\n "claim_ids",\n "evidence_ids"\n ],\n "type": "object"\n },\n "type": "array"\n },\n "evidence_bundle": {\n "description": "Value for evidence bundle.",\n "properties": {\n "artifacts": {\n "description": "Value for artifacts.",\n "items": {\n "properties": {\n "architecture": {\n "anyOf": [\n {\n "enum": [\n "x86",\n "x86_64",\n "arm",\n "arm64"\n ],\n "type": "string"\n },\n {\n "type": "null"\n }\n ],\n "description": "Value for architecture."\n },\n "digest": {\n "description": "Value for digest.",\n "properties": {\n "sha256": {\n "description": "Value for sha256.",\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n }\n },\n "required": [\n "sha256"\n ],\n "type": "object"\n },\n "format": {\n "description": "Declared input artifact format.",\n "enum": [\n "hopper",\n "analysis-database",\n "mach-o",\n "elf",\n "pe",\n "dos-mz",\n "dos-com",\n "zip",\n "ipa",\n "apk",\n "msix",\n "appx",\n "asar",\n "dmg",\n "pkg",\n "plist",\n "javascript",\n "source-map",\n "directory",\n "file",\n "unknown",\n "mach-o-universal",\n "javascript-bundle",\n "entitlements"\n ],\n "type": "string"\n }\n },\n "required": [\n "digest",\n "format",\n "architecture"\n ],\n "type": "object"\n },\n "type": "array"\n },\n "captures": {\n "description": "Value for captures.",\n "items": {\n "properties": {\n "evidence_id": {\n "description": "Stable identifier of the recorded Evidence observation.",\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "predicate_type": {\n "description": "Value for predicate type.",\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "evidence_id",\n "predicate_type"\n ],\n "type": "object"\n },\n "type": "array"\n },\n "environments": {\n "description": "Value for environments.",\n "items": {\n "properties": {\n "architecture": {\n "description": "Value for architecture.",\n "minLength": 1,\n "type": "string"\n },\n "id": {\n "description": "Value for id.",\n "minLength": 1,\n "type": "string"\n },\n "isolation": {\n "description": "Value for isolation.",\n "enum": [\n "none",\n "process",\n "container",\n "virtual-machine"\n ],\n "type": "string"\n },\n "platform": {\n "description": "Value for platform.",\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "id",\n "platform",\n "architecture",\n "isolation"\n ],\n "type": "object"\n },\n "type": "array"\n },\n "providers": {\n "description": "Value for providers.",\n "items": {\n "properties": {\n "id": {\n "description": "Value for id.",\n "minLength": 1,\n "type": "string"\n },\n "name": {\n "description": "Exact name used by this operation.",\n "minLength": 1,\n "type": "string"\n },\n "version": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ],\n "description": "Value for version."\n }\n },\n "required": [\n "id",\n "name",\n "version"\n ],\n "type": "object"\n },\n "type": "array"\n },\n "records": {\n "description": "Value for records.",\n "items": {\n "anyOf": [\n {\n "additionalProperties": false,\n "properties": {\n "analysis_profile": {\n "description": "Value for analysis profile.",\n "properties": {\n "digest": {\n "description": "Value for digest.",\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n },\n "parameters": {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "description": "Value for parameters.",\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n },\n "provider": {\n "description": "Value for provider.",\n "properties": {\n "id": {\n "description": "Value for id.",\n "minLength": 1,\n "type": "string"\n },\n "name": {\n "description": "Exact name used by this operation.",\n "minLength": 1,\n "type": "string"\n },\n "version": {\n "description": "Value for version.",\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "id",\n "name",\n "version"\n ],\n "type": "object"\n }\n },\n "required": [\n "provider",\n "parameters",\n "digest"\n ],\n "type": "object"\n },\n "authority": {\n "description": "Value for authority.",\n "enum": [\n "shipped-artifact",\n "controlled-replay",\n "historical-reference",\n "external-service",\n "analyst-inference"\n ],\n "type": "string"\n },\n "confidence": {\n "description": "Value for confidence.",\n "enum": [\n "observed",\n "derived",\n "inferred"\n ],\n "type": "string"\n },\n "environment": {\n "anyOf": [\n {\n "properties": {\n "architecture": {\n "description": "Value for architecture.",\n "minLength": 1,\n "type": "string"\n },\n "id": {\n "description": "Value for id.",\n "minLength": 1,\n "type": "string"\n },\n "isolation": {\n "description": "Value for isolation.",\n "enum": [\n "none",\n "process",\n "container",\n "virtual-machine"\n ],\n "type": "string"\n },\n "platform": {\n "description": "Value for platform.",\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "id",\n "platform",\n "architecture",\n "isolation"\n ],\n "type": "object"\n },\n {\n "type": "null"\n }\n ],\n "description": "Value for environment."\n },\n "evidence_id": {\n "description": "Stable identifier of the recorded Evidence observation.",\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "evidence_links": {\n "description": "Value for evidence links.",\n "items": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "type": "array"\n },\n "limitations": {\n "description": "Value for limitations.",\n "items": {\n "type": "string"\n },\n "type": "array"\n },\n "locations": {\n "description": "Value for locations.",\n "items": {\n "oneOf": [\n {\n "properties": {\n "address": {\n "description": "Value for address.",\n "minLength": 1,\n "type": "string"\n },\n "kind": {\n "const": "address",\n "description": "Value for kind.",\n "type": "string"\n }\n },\n "required": [\n "kind",\n "address"\n ],\n "type": "object"\n },\n {\n "properties": {\n "end": {\n "description": "Value for end.",\n "minLength": 1,\n "type": "string"\n },\n "kind": {\n "const": "address-range",\n "description": "Value for kind.",\n "type": "string"\n },\n "start": {\n "description": "Value for start.",\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "kind",\n "start",\n "end"\n ],\n "type": "object"\n },\n {\n "properties": {\n "kind": {\n "const": "artifact-path",\n "description": "Value for kind.",\n "type": "string"\n },\n "path": {\n "description": "Local filesystem path used by this operation.",\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "kind",\n "path"\n ],\n "type": "object"\n },\n {\n "properties": {\n "kind": {\n "const": "file-offset",\n "description": "Value for kind.",\n "type": "string"\n },\n "offset": {\n "description": "Value for offset.",\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "kind",\n "offset"\n ],\n "type": "object"\n },\n {\n "properties": {\n "end": {\n "description": "Value for end.",\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "kind": {\n "const": "file-offset-range",\n "description": "Value for kind.",\n "type": "string"\n },\n "start": {\n "description": "Value for start.",\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "kind",\n "start",\n "end"\n ],\n "type": "object"\n }\n ]\n },\n "type": "array"\n },\n "normalized_result": {\n "$ref": "#/$defs/__schema0",\n "description": "Value for normalized result."\n },\n "operation": {\n "description": "Value for operation.",\n "minLength": 1,\n "type": "string"\n },\n "parameters": {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "description": "Value for parameters.",\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n },\n "predicate_type": {\n "description": "Value for predicate type.",\n "minLength": 1,\n "type": "string"\n },\n "provider": {\n "description": "Value for provider.",\n "properties": {\n "id": {\n "description": "Value for id.",\n "minLength": 1,\n "type": "string"\n },\n "name": {\n "description": "Exact name used by this operation.",\n "minLength": 1,\n "type": "string"\n },\n "version": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ],\n "description": "Value for version."\n }\n },\n "required": [\n "id",\n "name",\n "version"\n ],\n "type": "object"\n },\n "raw_result": {\n "anyOf": [\n {\n "$ref": "#/$defs/__schema0"\n },\n {\n "type": "null"\n }\n ],\n "description": "Value for raw result."\n },\n "subject": {\n "anyOf": [\n {\n "properties": {\n "architecture": {\n "anyOf": [\n {\n "enum": [\n "x86",\n "x86_64",\n "arm",\n "arm64"\n ],\n "type": "string"\n },\n {\n "type": "null"\n }\n ],\n "description": "Value for architecture."\n },\n "digest": {\n "description": "Value for digest.",\n "properties": {\n "sha256": {\n "description": "Value for sha256.",\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n }\n },\n "required": [\n "sha256"\n ],\n "type": "object"\n },\n "format": {\n "description": "Declared input artifact format.",\n "enum": [\n "hopper",\n "analysis-database",\n "mach-o",\n "elf",\n "pe",\n "dos-mz",\n "dos-com",\n "zip",\n "ipa",\n "apk",\n "msix",\n "appx",\n "asar",\n "dmg",\n "pkg",\n "plist",\n "javascript",\n "source-map",\n "directory",\n "file",\n "unknown",\n "mach-o-universal",\n "javascript-bundle",\n "entitlements"\n ],\n "type": "string"\n },\n "local_path": {\n "description": "Local filesystem path for local.",\n "type": "string"\n },\n "name": {\n "description": "Exact name used by this operation.",\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "name",\n "digest",\n "format",\n "architecture",\n "local_path"\n ],\n "type": "object"\n },\n {\n "type": "null"\n }\n ],\n "description": "Value for subject."\n }\n },\n "required": [\n "evidence_id",\n "subject",\n "provider",\n "predicate_type",\n "operation",\n "parameters",\n "raw_result",\n "normalized_result",\n "confidence",\n "authority",\n "environment",\n "limitations",\n "locations",\n "evidence_links",\n "analysis_profile"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "authority": {\n "description": "Value for authority.",\n "enum": [\n "shipped-artifact",\n "controlled-replay",\n "historical-reference",\n "external-service",\n "analyst-inference"\n ],\n "type": "string"\n },\n "confidence": {\n "description": "Value for confidence.",\n "enum": [\n "observed",\n "derived",\n "inferred"\n ],\n "type": "string"\n },\n "environment": {\n "anyOf": [\n {\n "properties": {\n "architecture": {\n "description": "Value for architecture.",\n "minLength": 1,\n "type": "string"\n },\n "id": {\n "description": "Value for id.",\n "minLength": 1,\n "type": "string"\n },\n "isolation": {\n "description": "Value for isolation.",\n "enum": [\n "none",\n "process",\n "container",\n "virtual-machine"\n ],\n "type": "string"\n },\n "platform": {\n "description": "Value for platform.",\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "id",\n "platform",\n "architecture",\n "isolation"\n ],\n "type": "object"\n },\n {\n "type": "null"\n }\n ],\n "description": "Value for environment."\n },\n "evidence_id": {\n "description": "Stable identifier of the recorded Evidence observation.",\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "evidence_links": {\n "description": "Value for evidence links.",\n "items": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "type": "array"\n },\n "limitations": {\n "description": "Value for limitations.",\n "items": {\n "type": "string"\n },\n "type": "array"\n },\n "locations": {\n "description": "Value for locations.",\n "items": {\n "oneOf": [\n {\n "properties": {\n "address": {\n "description": "Value for address.",\n "minLength": 1,\n "type": "string"\n },\n "kind": {\n "const": "address",\n "description": "Value for kind.",\n "type": "string"\n }\n },\n "required": [\n "kind",\n "address"\n ],\n "type": "object"\n },\n {\n "properties": {\n "end": {\n "description": "Value for end.",\n "minLength": 1,\n "type": "string"\n },\n "kind": {\n "const": "address-range",\n "description": "Value for kind.",\n "type": "string"\n },\n "start": {\n "description": "Value for start.",\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "kind",\n "start",\n "end"\n ],\n "type": "object"\n },\n {\n "properties": {\n "kind": {\n "const": "artifact-path",\n "description": "Value for kind.",\n "type": "string"\n },\n "path": {\n "description": "Local filesystem path used by this operation.",\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "kind",\n "path"\n ],\n "type": "object"\n },\n {\n "properties": {\n "kind": {\n "const": "file-offset",\n "description": "Value for kind.",\n "type": "string"\n },\n "offset": {\n "description": "Value for offset.",\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "kind",\n "offset"\n ],\n "type": "object"\n },\n {\n "properties": {\n "end": {\n "description": "Value for end.",\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "kind": {\n "const": "file-offset-range",\n "description": "Value for kind.",\n "type": "string"\n },\n "start": {\n "description": "Value for start.",\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "kind",\n "start",\n "end"\n ],\n "type": "object"\n }\n ]\n },\n "type": "array"\n },\n "normalized_result": {\n "$ref": "#/$defs/__schema0",\n "description": "Value for normalized result."\n },\n "operation": {\n "description": "Value for operation.",\n "minLength": 1,\n "type": "string"\n },\n "parameters": {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "description": "Value for parameters.",\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n },\n "predicate_type": {\n "description": "Value for predicate type.",\n "minLength": 1,\n "type": "string"\n },\n "provider": {\n "description": "Value for provider.",\n "properties": {\n "id": {\n "description": "Value for id.",\n "minLength": 1,\n "type": "string"\n },\n "name": {\n "description": "Exact name used by this operation.",\n "minLength": 1,\n "type": "string"\n },\n "version": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ],\n "description": "Value for version."\n }\n },\n "required": [\n "id",\n "name",\n "version"\n ],\n "type": "object"\n },\n "raw_result": {\n "anyOf": [\n {\n "$ref": "#/$defs/__schema0"\n },\n {\n "type": "null"\n }\n ],\n "description": "Value for raw result."\n },\n "subject": {\n "anyOf": [\n {\n "properties": {\n "architecture": {\n "anyOf": [\n {\n "enum": [\n "x86",\n "x86_64",\n "arm",\n "arm64"\n ],\n "type": "string"\n },\n {\n "type": "null"\n }\n ],\n "description": "Value for architecture."\n },\n "digest": {\n "description": "Value for digest.",\n "properties": {\n "sha256": {\n "description": "Value for sha256.",\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n }\n },\n "required": [\n "sha256"\n ],\n "type": "object"\n },\n "format": {\n "description": "Declared input artifact format.",\n "enum": [\n "hopper",\n "analysis-database",\n "mach-o",\n "elf",\n "pe",\n "dos-mz",\n "dos-com",\n "zip",\n "ipa",\n "apk",\n "msix",\n "appx",\n "asar",\n "dmg",\n "pkg",\n "plist",\n "javascript",\n "source-map",\n "directory",\n "file",\n "unknown",\n "mach-o-universal",\n "javascript-bundle",\n "entitlements"\n ],\n "type": "string"\n },\n "local_path": {\n "description": "Local filesystem path for local.",\n "type": "string"\n },\n "name": {\n "description": "Exact name used by this operation.",\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "name",\n "digest",\n "format",\n "architecture",\n "local_path"\n ],\n "type": "object"\n },\n {\n "type": "null"\n }\n ],\n "description": "Value for subject."\n }\n },\n "required": [\n "evidence_id",\n "subject",\n "provider",\n "predicate_type",\n "operation",\n "parameters",\n "raw_result",\n "normalized_result",\n "confidence",\n "authority",\n "environment",\n "limitations",\n "locations",\n "evidence_links"\n ],\n "type": "object"\n }\n ]\n },\n "type": "array"\n },\n "scenarios": {\n "description": "Value for scenarios.",\n "items": {\n "properties": {\n "authority": {\n "const": "controlled-replay",\n "description": "Value for authority.",\n "type": "string"\n },\n "evidence_id": {\n "description": "Stable identifier of the recorded Evidence observation.",\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "operation": {\n "description": "Value for operation.",\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "evidence_id",\n "operation",\n "authority"\n ],\n "type": "object"\n },\n "type": "array"\n },\n "unknowns": {\n "description": "Value for unknowns.",\n "items": {\n "properties": {\n "contradicting_evidence_ids": {\n "description": "Ordered Evidence identifiers for the contradicting observations.",\n "items": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "type": "array"\n },\n "domain": {\n "description": "Value for domain.",\n "minLength": 1,\n "type": "string"\n },\n "mutation_evidence_ids": {\n "description": "Ordered Evidence identifiers for the mutation observations.",\n "items": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "minItems": 1,\n "type": "array"\n },\n "previous_revision_digest": {\n "anyOf": [\n {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n },\n {\n "type": "null"\n }\n ],\n "description": "Value for previous revision digest."\n },\n "question": {\n "description": "Concrete unresolved question to retain for later investigation.",\n "minLength": 1,\n "type": "string"\n },\n "recommended_probes": {\n "description": "Value for recommended probes.",\n "items": {\n "properties": {\n "operation": {\n "description": "Value for operation.",\n "minLength": 1,\n "type": "string"\n },\n "rationale": {\n "description": "Value for rationale.",\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "operation",\n "rationale"\n ],\n "type": "object"\n },\n "type": "array"\n },\n "relationships": {\n "description": "Value for relationships.",\n "items": {\n "properties": {\n "type": {\n "description": "Value for type.",\n "enum": [\n "depends-on",\n "related-to",\n "contradicts"\n ],\n "type": "string"\n },\n "unknown_id": {\n "description": "Exact residual-unknown identifier.",\n "pattern": "^unk_[a-f0-9]{64}$",\n "type": "string"\n }\n },\n "required": [\n "type",\n "unknown_id"\n ],\n "type": "object"\n },\n "type": "array"\n },\n "required_authority": {\n "anyOf": [\n {\n "enum": [\n "shipped-artifact",\n "controlled-replay",\n "historical-reference",\n "external-service",\n "analyst-inference"\n ],\n "type": "string"\n },\n {\n "type": "null"\n }\n ],\n "description": "Value for required authority."\n },\n "required_confidence": {\n "description": "Value for required confidence.",\n "enum": [\n "observed",\n "derived",\n "inferred"\n ],\n "type": "string"\n },\n "required_environment": {\n "anyOf": [\n {\n "properties": {\n "architecture": {\n "anyOf": [\n {\n "minLength": 1,\n "type": "string"\n },\n {\n "type": "null"\n }\n ],\n "description": "Value for architecture."\n },\n "id": {\n "anyOf": [\n {\n "minLength": 1,\n "type": "string"\n },\n {\n "type": "null"\n }\n ],\n "description": "Value for id."\n },\n "isolation": {\n "anyOf": [\n {\n "enum": [\n "none",\n "process",\n "container",\n "virtual-machine"\n ],\n "type": "string"\n },\n {\n "type": "null"\n }\n ],\n "description": "Value for isolation."\n },\n "platform": {\n "anyOf": [\n {\n "minLength": 1,\n "type": "string"\n },\n {\n "type": "null"\n }\n ],\n "description": "Value for platform."\n }\n },\n "required": [\n "id",\n "platform",\n "architecture",\n "isolation"\n ],\n "type": "object"\n },\n {\n "type": "null"\n }\n ],\n "description": "Value for required environment."\n },\n "resolution": {\n "anyOf": [\n {\n "oneOf": [\n {\n "properties": {\n "disposition": {\n "const": "verified",\n "description": "Value for disposition.",\n "type": "string"\n },\n "evidence_ids": {\n "description": "Value for evidence ids.",\n "items": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "minItems": 1,\n "type": "array"\n },\n "rationale": {\n "description": "Value for rationale.",\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "disposition",\n "rationale",\n "evidence_ids"\n ],\n "type": "object"\n },\n {\n "properties": {\n "disposition": {\n "description": "Value for disposition.",\n "enum": [\n "withdrawn",\n "out-of-scope"\n ],\n "type": "string"\n },\n "evidence_ids": {\n "description": "Value for evidence ids.",\n "items": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "type": "array"\n },\n "rationale": {\n "description": "Value for rationale.",\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "disposition",\n "rationale",\n "evidence_ids"\n ],\n "type": "object"\n }\n ]\n },\n {\n "type": "null"\n }\n ],\n "description": "Value for resolution."\n },\n "revision": {\n "description": "Value for revision.",\n "maximum": 9007199254740991,\n "minimum": 1,\n "type": "integer"\n },\n "revision_digest": {\n "description": "Value for revision digest.",\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n },\n "scope_digest": {\n "anyOf": [\n {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n },\n {\n "type": "null"\n }\n ],\n "description": "Value for scope digest."\n },\n "severity": {\n "description": "Value for severity.",\n "enum": [\n "low",\n "medium",\n "high",\n "critical"\n ],\n "type": "string"\n },\n "status": {\n "description": "Current lifecycle or verification status.",\n "enum": [\n "open",\n "investigating",\n "blocked",\n "contradicted",\n "resolved"\n ],\n "type": "string"\n },\n "supporting_evidence_ids": {\n "description": "Ordered Evidence identifiers for the supporting observations.",\n "items": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "type": "array"\n },\n "unknown_id": {\n "description": "Exact residual-unknown identifier.",\n "pattern": "^unk_[a-f0-9]{64}$",\n "type": "string"\n }\n },\n "required": [\n "unknown_id",\n "revision",\n "previous_revision_digest",\n "revision_digest",\n "scope_digest",\n "question",\n "status",\n "severity",\n "domain",\n "supporting_evidence_ids",\n "contradicting_evidence_ids",\n "required_authority",\n "required_confidence",\n "required_environment",\n "recommended_probes",\n "relationships",\n "resolution",\n "mutation_evidence_ids"\n ],\n "type": "object"\n },\n "type": "array"\n }\n },\n "required": [\n "artifacts",\n "providers",\n "environments",\n "scenarios",\n "captures",\n "unknowns",\n "records"\n ],\n "type": "object"\n },\n "owners": {\n "description": "Value for owners.",\n "items": {\n "additionalProperties": false,\n "properties": {\n "ownership": {\n "description": "Value for ownership.",\n "oneOf": [\n {\n "additionalProperties": false,\n "properties": {\n "authority_route": {\n "description": "Value for authority route.",\n "enum": [\n "none",\n "detected",\n "unknown"\n ],\n "type": "string"\n },\n "disposition": {\n "const": "implemented",\n "description": "Value for disposition.",\n "type": "string"\n },\n "owner_export": {\n "anyOf": [\n {\n "minLength": 1,\n "type": "string"\n },\n {\n "type": "null"\n }\n ],\n "description": "Value for owner export."\n },\n "owner_path": {\n "description": "Local filesystem path for owner.",\n "minLength": 1,\n "type": "string"\n },\n "owner_sha256": {\n "description": "Exact SHA-256 digest of owner.",\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n },\n "package_state": {\n "description": "Value for package state.",\n "enum": [\n "distributed",\n "missing",\n "unknown"\n ],\n "type": "string"\n },\n "path_state": {\n "description": "Value for path state.",\n "enum": [\n "present",\n "missing",\n "unknown"\n ],\n "type": "string"\n }\n },\n "required": [\n "disposition",\n "owner_path",\n "owner_export",\n "owner_sha256",\n "path_state",\n "package_state",\n "authority_route"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "disposition": {\n "description": "Value for disposition.",\n "enum": [\n "external",\n "non-goal"\n ],\n "type": "string"\n },\n "rationale": {\n "description": "Value for rationale.",\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "disposition",\n "rationale"\n ],\n "type": "object"\n }\n ]\n },\n "surface_id": {\n "description": "Value for surface id.",\n "pattern": "^[A-Za-z][A-Za-z0-9._:/-]{0,199}$",\n "type": "string"\n }\n },\n "required": [\n "surface_id",\n "ownership"\n ],\n "type": "object"\n },\n "type": "array"\n },\n "package_proofs": {\n "description": "Value for package proofs.",\n "items": {\n "additionalProperties": false,\n "properties": {\n "artifact_sha256s": {\n "description": "Value for artifact sha256s.",\n "items": {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n },\n "minItems": 1,\n "type": "array"\n },\n "evidence_ids": {\n "description": "Value for evidence ids.",\n "items": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "minItems": 1,\n "type": "array"\n },\n "kind": {\n "description": "Value for kind.",\n "enum": [\n "build",\n "clean-install",\n "package-contents",\n "runtime-routing",\n "authority-independence"\n ],\n "type": "string"\n },\n "proof_id": {\n "description": "Value for proof id.",\n "pattern": "^[A-Za-z][A-Za-z0-9._:/-]{0,199}$",\n "type": "string"\n },\n "status": {\n "description": "Current lifecycle or verification status.",\n "enum": [\n "pass",\n "fail",\n "unknown",\n "unsupported",\n "skipped"\n ],\n "type": "string"\n }\n },\n "required": [\n "proof_id",\n "kind",\n "status",\n "artifact_sha256s",\n "evidence_ids"\n ],\n "type": "object"\n },\n "type": "array"\n },\n "residual_unknown_ids": {\n "description": "Value for residual unknown ids.",\n "items": {\n "pattern": "^[A-Za-z][A-Za-z0-9._:/-]{0,199}$",\n "type": "string"\n },\n "type": "array"\n },\n "surfaces": {\n "description": "Value for surfaces.",\n "items": {\n "additionalProperties": false,\n "properties": {\n "artifact_id": {\n "description": "Value for artifact id.",\n "pattern": "^[A-Za-z][A-Za-z0-9._:/-]{0,199}$",\n "type": "string"\n },\n "authority": {\n "description": "Value for authority.",\n "enum": [\n "observed",\n "derived",\n "inferred",\n "historical",\n "external"\n ],\n "type": "string"\n },\n "dependency_surface_ids": {\n "description": "Value for dependency surface ids.",\n "items": {\n "pattern": "^[A-Za-z][A-Za-z0-9._:/-]{0,199}$",\n "type": "string"\n },\n "type": "array"\n },\n "evidence_ids": {\n "description": "Value for evidence ids.",\n "items": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "minItems": 1,\n "type": "array"\n },\n "family": {\n "description": "Value for family.",\n "minLength": 1,\n "type": "string"\n },\n "location": {\n "description": "Value for location.",\n "minLength": 1,\n "type": "string"\n },\n "occurrence_id": {\n "anyOf": [\n {\n "minLength": 1,\n "type": "string"\n },\n {\n "type": "null"\n }\n ],\n "description": "Value for occurrence id."\n },\n "surface_id": {\n "description": "Value for surface id.",\n "pattern": "^[A-Za-z][A-Za-z0-9._:/-]{0,199}$",\n "type": "string"\n }\n },\n "required": [\n "surface_id",\n "family",\n "artifact_id",\n "occurrence_id",\n "location",\n "authority",\n "dependency_surface_ids",\n "evidence_ids"\n ],\n "type": "object"\n },\n "type": "array"\n },\n "verifier_contracts": {\n "description": "Value for verifier contracts.",\n "items": {\n "additionalProperties": false,\n "properties": {\n "authority": {\n "description": "Value for authority.",\n "enum": [\n "shipped-artifact",\n "controlled-replay",\n "live-observation",\n "external"\n ],\n "type": "string"\n },\n "claim_ids": {\n "description": "Value for claim ids.",\n "items": {\n "pattern": "^[A-Za-z][A-Za-z0-9._:/-]{0,199}$",\n "type": "string"\n },\n "minItems": 1,\n "type": "array"\n },\n "contract_sha256": {\n "description": "Exact SHA-256 digest of contract.",\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n },\n "dimensions": {\n "description": "Value for dimensions.",\n "items": {\n "pattern": "^[A-Za-z][A-Za-z0-9._:/-]{0,199}$",\n "type": "string"\n },\n "minItems": 1,\n "type": "array"\n },\n "max_age_ms": {\n "description": "Maximum permitted age ms for this operation.",\n "maximum": 9007199254740991,\n "minimum": 1,\n "type": "integer"\n },\n "minimum_repeats": {\n "description": "Value for minimum repeats.",\n "maximum": 9007199254740991,\n "minimum": 1,\n "type": "integer"\n },\n "normalization_removes_dimensions": {\n "const": false,\n "description": "Value for normalization removes dimensions.",\n "type": "boolean"\n },\n "normalization_sha256": {\n "description": "Exact SHA-256 digest of normalization.",\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n },\n "verifier_id": {\n "description": "Value for verifier id.",\n "pattern": "^[A-Za-z][A-Za-z0-9._:/-]{0,199}$",\n "type": "string"\n }\n },\n "required": [\n "verifier_id",\n "claim_ids",\n "dimensions",\n "authority",\n "max_age_ms",\n "minimum_repeats",\n "normalization_sha256",\n "normalization_removes_dimensions",\n "contract_sha256"\n ],\n "type": "object"\n },\n "type": "array"\n },\n "verifier_results": {\n "description": "Value for verifier results.",\n "items": {\n "additionalProperties": false,\n "properties": {\n "artifact_sha256s": {\n "description": "Value for artifact sha256s.",\n "items": {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n },\n "minItems": 1,\n "type": "array"\n },\n "contract_sha256": {\n "description": "Exact SHA-256 digest of contract.",\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n },\n "covered_claim_ids": {\n "description": "Value for covered claim ids.",\n "items": {\n "pattern": "^[A-Za-z][A-Za-z0-9._:/-]{0,199}$",\n "type": "string"\n },\n "minItems": 1,\n "type": "array"\n },\n "covered_dimensions": {\n "description": "Value for covered dimensions.",\n "items": {\n "pattern": "^[A-Za-z][A-Za-z0-9._:/-]{0,199}$",\n "type": "string"\n },\n "minItems": 1,\n "type": "array"\n },\n "evidence_ids": {\n "description": "Value for evidence ids.",\n "items": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "minItems": 1,\n "type": "array"\n },\n "normalization_sha256": {\n "description": "Exact SHA-256 digest of normalization.",\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n },\n "observed_at": {\n "description": "Value for observed at.",\n "format": "date-time",\n "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)))$",\n "type": "string"\n },\n "owner_sha256s": {\n "description": "Value for owner sha256s.",\n "items": {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n },\n "type": "array"\n },\n "repeats": {\n "description": "Value for repeats.",\n "maximum": 9007199254740991,\n "minimum": 1,\n "type": "integer"\n },\n "status": {\n "description": "Current lifecycle or verification status.",\n "enum": [\n "pass",\n "fail",\n "unknown",\n "unsupported",\n "truncated",\n "skipped"\n ],\n "type": "string"\n },\n "verifier_id": {\n "description": "Value for verifier id.",\n "pattern": "^[A-Za-z][A-Za-z0-9._:/-]{0,199}$",\n "type": "string"\n }\n },\n "required": [\n "verifier_id",\n "contract_sha256",\n "observed_at",\n "status",\n "covered_claim_ids",\n "covered_dimensions",\n "artifact_sha256s",\n "owner_sha256s",\n "normalization_sha256",\n "repeats",\n "evidence_ids"\n ],\n "type": "object"\n },\n "type": "array"\n }\n },\n "required": [\n "evidence_bundle",\n "artifacts",\n "surfaces",\n "owners",\n "claims",\n "verifier_contracts",\n "verifier_results",\n "residual_unknown_ids",\n "contradictions",\n "package_proofs",\n "boundaries"\n ],\n "type": "object"\n }\n },\n "required": [\n "coverage",\n "boundary_id"\n ],\n "type": "object"\n },\n "kind": "application",\n "name": "evaluate_reconstruction_coverage",\n "outputSchema": {\n "$schema": "https://json-schema.org/draft/2020-12/schema",\n "additionalProperties": false,\n "properties": {\n "boundary_id": {\n "pattern": "^[A-Za-z][A-Za-z0-9._:/-]{0,199}$",\n "type": "string"\n },\n "evidence_ids": {\n "items": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "type": "array"\n },\n "reasons": {\n "items": {\n "additionalProperties": false,\n "properties": {\n "code": {\n "enum": [\n "surface-missing",\n "owner-missing",\n "owner-duplicate",\n "owner-path-missing",\n "owner-path-unknown",\n "owner-undistributed",\n "owner-distribution-unknown",\n "authority-routing-detected",\n "authority-routing-unknown",\n "disposition-not-allowed",\n "dependency-surface-missing",\n "claim-missing",\n "verifier-missing",\n "verifier-duplicate",\n "verifier-result-missing",\n "verifier-result-stale",\n "verifier-result-incompatible",\n "verifier-failed",\n "verifier-unknown",\n "active-unknown",\n "active-contradiction",\n "package-proof-missing",\n "package-proof-failed",\n "package-proof-unknown"\n ],\n "type": "string"\n },\n "detail": {\n "minLength": 1,\n "type": "string"\n },\n "subject_id": {\n "pattern": "^[A-Za-z][A-Za-z0-9._:/-]{0,199}$",\n "type": "string"\n }\n },\n "required": [\n "code",\n "subject_id",\n "detail"\n ],\n "type": "object"\n },\n "type": "array"\n },\n "recommended_probes": {\n "items": {\n "additionalProperties": false,\n "properties": {\n "operation": {\n "pattern": "^[A-Za-z][A-Za-z0-9._:/-]{0,199}$",\n "type": "string"\n },\n "rationale": {\n "minLength": 1,\n "type": "string"\n },\n "subject_id": {\n "pattern": "^[A-Za-z][A-Za-z0-9._:/-]{0,199}$",\n "type": "string"\n }\n },\n "required": [\n "operation",\n "subject_id",\n "rationale"\n ],\n "type": "object"\n },\n "type": "array"\n },\n "status": {\n "enum": [\n "partial",\n "failed",\n "unknown",\n "ready"\n ],\n "type": "string"\n },\n "summary": {\n "additionalProperties": false,\n "properties": {\n "reasons": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "required_claims": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "required_surfaces": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "required_surfaces",\n "required_claims",\n "reasons"\n ],\n "type": "object"\n }\n },\n "required": [\n "boundary_id",\n "status",\n "summary",\n "reasons",\n "recommended_probes",\n "evidence_ids"\n ],\n "type": "object"\n },\n "requiresSession": false,\n "title": "Evaluate Reconstruction Coverage"\n },\n {\n "analysisOperation": null,\n "annotations": {\n "destructiveHint": false,\n "idempotentHint": true,\n "openWorldHint": false,\n "readOnlyHint": false\n },\n "description": "Project authenticated APK inventory_artifact Evidence into an execution-free Android application inventory. Reports exact component paths and hashes, runtime-family hints, and path-based bridge hypotheses without decoding DEX, executing the APK, or claiming observed runtime calls.",\n "effects": {\n "accessesNetwork": false,\n "changesUiState": false,\n "idempotent": true,\n "launchesProcess": false,\n "mayDiscardData": false,\n "mutatesSession": true,\n "mutatesTarget": false,\n "writesFilesystem": false\n },\n "inputSchema": {\n "$defs": {\n "__schema0": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "number"\n },\n {\n "type": "boolean"\n },\n {\n "type": "null"\n },\n {\n "items": {\n "$ref": "#/$defs/__schema0"\n },\n "type": "array"\n },\n {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n }\n ]\n }\n },\n "$schema": "https://json-schema.org/draft/2020-12/schema",\n "additionalProperties": false,\n "examples": [\n {\n "inventory_evidence": [\n {\n "authority": "shipped-artifact",\n "confidence": "observed",\n "environment": null,\n "evidence_id": "ev_3cb45ae987278620b8d5a62638296cd49034f8b1dfb88d0196764a1088821e3c",\n "evidence_links": [],\n "limitations": [],\n "locations": [],\n "normalized_result": {\n "edges": [],\n "limitations": [],\n "manifest": {\n "edge_count": 0,\n "graph_sha256": "a4cea3d85dfa8645e5eb026d0dfa82ab19b686bb15964afc5e3f874b14c76de8",\n "manifest_id": "agm_972f60433a8998c511f3b02ee759a41cd1ea2e19ba6c4133b7ac52297944dbb3",\n "node_count": 1,\n "occurrence_count": 1,\n "root_artifact_id": "art_91d55c997599a1b301a52f2ad8559a9f2bfa28927d7cb2c391f3cedf6072ccdd",\n "root_format": "apk",\n "root_sha256": "aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa"\n },\n "nodes": [\n {\n "architecture": null,\n "artifact_id": "art_91d55c997599a1b301a52f2ad8559a9f2bfa28927d7cb2c391f3cedf6072ccdd",\n "content_state": "materialized",\n "executable": false,\n "format": "apk",\n "kind": "resource",\n "limitations": [],\n "media_type": null,\n "sha256": "aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa",\n "size": 1\n }\n ],\n "occurrences": [\n {\n "artifact_id": "art_91d55c997599a1b301a52f2ad8559a9f2bfa28927d7cb2c391f3cedf6072ccdd",\n "compressed_size": null,\n "declared_size": 1,\n "encrypted": false,\n "entry_kind": "file",\n "executable": false,\n "hash_status": "verified",\n "limitations": [],\n "logical_path": ".",\n "occurrence_id": "occ_385f341599a469f680d89371fd8d26bf235e4bd95e29f941f69830343ea72c5a",\n "parent_occurrence_id": null,\n "source_location": null\n }\n ],\n "provenance": []\n },\n "operation": "inventory_artifact",\n "parameters": {},\n "predicate_type": "rea.analysis",\n "provider": {\n "id": "rea-artifact-graph",\n "name": "REA safe artifact graph provider",\n "version": "1"\n },\n "raw_result": null,\n "subject": {\n "architecture": null,\n "digest": {\n "sha256": "aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa"\n },\n "format": "apk",\n "local_path": "Fixture.apk",\n "name": "Fixture.apk"\n }\n }\n ]\n }\n ],\n "properties": {\n "inventory_evidence": {\n "description": "Value for inventory evidence.",\n "items": {\n "additionalProperties": false,\n "properties": {\n "analysis_profile": {\n "description": "Value for analysis profile.",\n "properties": {\n "digest": {\n "description": "Value for digest.",\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n },\n "parameters": {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "description": "Value for parameters.",\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n },\n "provider": {\n "description": "Value for provider.",\n "properties": {\n "id": {\n "description": "Value for id.",\n "minLength": 1,\n "type": "string"\n },\n "name": {\n "description": "Exact name used by this operation.",\n "minLength": 1,\n "type": "string"\n },\n "version": {\n "description": "Value for version.",\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "id",\n "name",\n "version"\n ],\n "type": "object"\n }\n },\n "required": [\n "provider",\n "parameters",\n "digest"\n ],\n "type": "object"\n },\n "authority": {\n "description": "Value for authority.",\n "enum": [\n "shipped-artifact",\n "controlled-replay",\n "historical-reference",\n "external-service",\n "analyst-inference"\n ],\n "type": "string"\n },\n "confidence": {\n "description": "Value for confidence.",\n "enum": [\n "observed",\n "derived",\n "inferred"\n ],\n "type": "string"\n },\n "environment": {\n "anyOf": [\n {\n "properties": {\n "architecture": {\n "description": "Value for architecture.",\n "minLength": 1,\n "type": "string"\n },\n "id": {\n "description": "Value for id.",\n "minLength": 1,\n "type": "string"\n },\n "isolation": {\n "description": "Value for isolation.",\n "enum": [\n "none",\n "process",\n "container",\n "virtual-machine"\n ],\n "type": "string"\n },\n "platform": {\n "description": "Value for platform.",\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "id",\n "platform",\n "architecture",\n "isolation"\n ],\n "type": "object"\n },\n {\n "type": "null"\n }\n ],\n "description": "Value for environment."\n },\n "evidence_id": {\n "description": "Stable identifier of the recorded Evidence observation.",\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "evidence_links": {\n "description": "Value for evidence links.",\n "items": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "type": "array"\n },\n "limitations": {\n "description": "Value for limitations.",\n "items": {\n "type": "string"\n },\n "type": "array"\n },\n "locations": {\n "description": "Value for locations.",\n "items": {\n "oneOf": [\n {\n "properties": {\n "address": {\n "description": "Value for address.",\n "minLength": 1,\n "type": "string"\n },\n "kind": {\n "const": "address",\n "description": "Value for kind.",\n "type": "string"\n }\n },\n "required": [\n "kind",\n "address"\n ],\n "type": "object"\n },\n {\n "properties": {\n "end": {\n "description": "Value for end.",\n "minLength": 1,\n "type": "string"\n },\n "kind": {\n "const": "address-range",\n "description": "Value for kind.",\n "type": "string"\n },\n "start": {\n "description": "Value for start.",\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "kind",\n "start",\n "end"\n ],\n "type": "object"\n },\n {\n "properties": {\n "kind": {\n "const": "artifact-path",\n "description": "Value for kind.",\n "type": "string"\n },\n "path": {\n "description": "Local filesystem path used by this operation.",\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "kind",\n "path"\n ],\n "type": "object"\n },\n {\n "properties": {\n "kind": {\n "const": "file-offset",\n "description": "Value for kind.",\n "type": "string"\n },\n "offset": {\n "description": "Value for offset.",\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "kind",\n "offset"\n ],\n "type": "object"\n },\n {\n "properties": {\n "end": {\n "description": "Value for end.",\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "kind": {\n "const": "file-offset-range",\n "description": "Value for kind.",\n "type": "string"\n },\n "start": {\n "description": "Value for start.",\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "kind",\n "start",\n "end"\n ],\n "type": "object"\n }\n ]\n },\n "type": "array"\n },\n "normalized_result": {\n "$ref": "#/$defs/__schema0",\n "description": "Value for normalized result."\n },\n "operation": {\n "description": "Value for operation.",\n "minLength": 1,\n "type": "string"\n },\n "parameters": {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "description": "Value for parameters.",\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n },\n "predicate_type": {\n "description": "Value for predicate type.",\n "minLength": 1,\n "type": "string"\n },\n "provider": {\n "description": "Value for provider.",\n "properties": {\n "id": {\n "description": "Value for id.",\n "minLength": 1,\n "type": "string"\n },\n "name": {\n "description": "Exact name used by this operation.",\n "minLength": 1,\n "type": "string"\n },\n "version": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ],\n "description": "Value for version."\n }\n },\n "required": [\n "id",\n "name",\n "version"\n ],\n "type": "object"\n },\n "raw_result": {\n "anyOf": [\n {\n "$ref": "#/$defs/__schema0"\n },\n {\n "type": "null"\n }\n ],\n "description": "Value for raw result."\n },\n "subject": {\n "anyOf": [\n {\n "properties": {\n "architecture": {\n "anyOf": [\n {\n "enum": [\n "x86",\n "x86_64",\n "arm",\n "arm64"\n ],\n "type": "string"\n },\n {\n "type": "null"\n }\n ],\n "description": "Value for architecture."\n },\n "digest": {\n "description": "Value for digest.",\n "properties": {\n "sha256": {\n "description": "Value for sha256.",\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n }\n },\n "required": [\n "sha256"\n ],\n "type": "object"\n },\n "format": {\n "description": "Declared input artifact format.",\n "enum": [\n "hopper",\n "analysis-database",\n "mach-o",\n "elf",\n "pe",\n "dos-mz",\n "dos-com",\n "zip",\n "ipa",\n "apk",\n "msix",\n "appx",\n "asar",\n "dmg",\n "pkg",\n "plist",\n "javascript",\n "source-map",\n "directory",\n "file",\n "unknown",\n "mach-o-universal",\n "javascript-bundle",\n "entitlements"\n ],\n "type": "string"\n },\n "local_path": {\n "description": "Local filesystem path for local.",\n "type": "string"\n },\n "name": {\n "description": "Exact name used by this operation.",\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "name",\n "digest",\n "format",\n "architecture",\n "local_path"\n ],\n "type": "object"\n },\n {\n "type": "null"\n }\n ],\n "description": "Value for subject."\n }\n },\n "required": [\n "evidence_id",\n "subject",\n "provider",\n "predicate_type",\n "operation",\n "parameters",\n "raw_result",\n "normalized_result",\n "confidence",\n "authority",\n "environment",\n "limitations",\n "locations",\n "evidence_links"\n ],\n "type": "object"\n },\n "minItems": 1,\n "type": "array"\n }\n },\n "required": [\n "inventory_evidence"\n ],\n "type": "object"\n },\n "kind": "application",\n "name": "project_android_application_graph",\n "outputSchema": {\n "$defs": {\n "__schema0": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "number"\n },\n {\n "type": "boolean"\n },\n {\n "type": "null"\n },\n {\n "items": {\n "$ref": "#/$defs/__schema0"\n },\n "type": "array"\n },\n {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n }\n ]\n }\n },\n "$schema": "https://json-schema.org/draft/2020-12/schema",\n "additionalProperties": false,\n "properties": {\n "evidence": {\n "additionalProperties": false,\n "properties": {\n "analysis_profile": {\n "additionalProperties": false,\n "properties": {\n "digest": {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n },\n "parameters": {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n },\n "provider": {\n "additionalProperties": false,\n "properties": {\n "id": {\n "minLength": 1,\n "type": "string"\n },\n "name": {\n "minLength": 1,\n "type": "string"\n },\n "version": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "id",\n "name",\n "version"\n ],\n "type": "object"\n }\n },\n "required": [\n "provider",\n "parameters",\n "digest"\n ],\n "type": "object"\n },\n "authority": {\n "enum": [\n "shipped-artifact",\n "controlled-replay",\n "historical-reference",\n "external-service",\n "analyst-inference"\n ],\n "type": "string"\n },\n "confidence": {\n "enum": [\n "observed",\n "derived",\n "inferred"\n ],\n "type": "string"\n },\n "environment": {\n "anyOf": [\n {\n "additionalProperties": false,\n "properties": {\n "architecture": {\n "minLength": 1,\n "type": "string"\n },\n "id": {\n "minLength": 1,\n "type": "string"\n },\n "isolation": {\n "enum": [\n "none",\n "process",\n "container",\n "virtual-machine"\n ],\n "type": "string"\n },\n "platform": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "id",\n "platform",\n "architecture",\n "isolation"\n ],\n "type": "object"\n },\n {\n "type": "null"\n }\n ]\n },\n "evidence_id": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "evidence_links": {\n "items": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "type": "array"\n },\n "limitations": {\n "items": {\n "type": "string"\n },\n "type": "array"\n },\n "locations": {\n "items": {\n "oneOf": [\n {\n "additionalProperties": false,\n "properties": {\n "address": {\n "minLength": 1,\n "type": "string"\n },\n "kind": {\n "const": "address",\n "type": "string"\n }\n },\n "required": [\n "kind",\n "address"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "end": {\n "minLength": 1,\n "type": "string"\n },\n "kind": {\n "const": "address-range",\n "type": "string"\n },\n "start": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "kind",\n "start",\n "end"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "kind": {\n "const": "artifact-path",\n "type": "string"\n },\n "path": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "kind",\n "path"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "kind": {\n "const": "file-offset",\n "type": "string"\n },\n "offset": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "kind",\n "offset"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "end": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "kind": {\n "const": "file-offset-range",\n "type": "string"\n },\n "start": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "kind",\n "start",\n "end"\n ],\n "type": "object"\n }\n ]\n },\n "type": "array"\n },\n "normalized_result": {\n "$ref": "#/$defs/__schema0"\n },\n "operation": {\n "minLength": 1,\n "type": "string"\n },\n "parameters": {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n },\n "predicate_type": {\n "minLength": 1,\n "type": "string"\n },\n "provider": {\n "additionalProperties": false,\n "properties": {\n "id": {\n "minLength": 1,\n "type": "string"\n },\n "name": {\n "minLength": 1,\n "type": "string"\n },\n "version": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "id",\n "name",\n "version"\n ],\n "type": "object"\n },\n "raw_result": {\n "anyOf": [\n {\n "$ref": "#/$defs/__schema0"\n },\n {\n "type": "null"\n }\n ]\n },\n "subject": {\n "anyOf": [\n {\n "additionalProperties": false,\n "properties": {\n "architecture": {\n "anyOf": [\n {\n "enum": [\n "x86",\n "x86_64",\n "arm",\n "arm64"\n ],\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "digest": {\n "additionalProperties": false,\n "properties": {\n "sha256": {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n }\n },\n "required": [\n "sha256"\n ],\n "type": "object"\n },\n "format": {\n "enum": [\n "hopper",\n "analysis-database",\n "mach-o",\n "elf",\n "pe",\n "dos-mz",\n "dos-com",\n "zip",\n "ipa",\n "apk",\n "msix",\n "appx",\n "asar",\n "dmg",\n "pkg",\n "plist",\n "javascript",\n "source-map",\n "directory",\n "file",\n "unknown",\n "mach-o-universal",\n "javascript-bundle",\n "entitlements"\n ],\n "type": "string"\n },\n "local_path": {\n "type": "string"\n },\n "name": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "name",\n "digest",\n "format",\n "architecture",\n "local_path"\n ],\n "type": "object"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "evidence_id",\n "subject",\n "provider",\n "predicate_type",\n "operation",\n "parameters",\n "raw_result",\n "normalized_result",\n "confidence",\n "authority",\n "environment",\n "limitations",\n "locations",\n "evidence_links"\n ],\n "type": "object"\n },\n "evidence_id": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "result": {\n "additionalProperties": false,\n "properties": {\n "bridge_candidates": {\n "items": {\n "additionalProperties": false,\n "properties": {\n "basis": {\n "enum": [\n "managed-and-native-content",\n "jni-library-convention",\n "react-native-convention",\n "flutter-convention",\n "unity-convention"\n ],\n "type": "string"\n },\n "managed_path": {\n "minLength": 1,\n "type": "string"\n },\n "native_path": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "managed_path",\n "native_path",\n "basis"\n ],\n "type": "object"\n },\n "type": "array"\n },\n "components": {\n "additionalProperties": false,\n "properties": {\n "dex": {\n "items": {\n "additionalProperties": false,\n "properties": {\n "artifact_id": {\n "pattern": "^art_[a-f0-9]{64}$",\n "type": "string"\n },\n "format": {\n "minLength": 1,\n "type": "string"\n },\n "path": {\n "minLength": 1,\n "type": "string"\n },\n "sha256": {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n }\n },\n "required": [\n "path",\n "artifact_id",\n "sha256",\n "format"\n ],\n "type": "object"\n },\n "type": "array"\n },\n "javascript": {\n "items": {\n "additionalProperties": false,\n "properties": {\n "artifact_id": {\n "pattern": "^art_[a-f0-9]{64}$",\n "type": "string"\n },\n "format": {\n "minLength": 1,\n "type": "string"\n },\n "path": {\n "minLength": 1,\n "type": "string"\n },\n "sha256": {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n }\n },\n "required": [\n "path",\n "artifact_id",\n "sha256",\n "format"\n ],\n "type": "object"\n },\n "type": "array"\n },\n "jvm_classes": {\n "items": {\n "additionalProperties": false,\n "properties": {\n "artifact_id": {\n "pattern": "^art_[a-f0-9]{64}$",\n "type": "string"\n },\n "format": {\n "minLength": 1,\n "type": "string"\n },\n "path": {\n "minLength": 1,\n "type": "string"\n },\n "sha256": {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n }\n },\n "required": [\n "path",\n "artifact_id",\n "sha256",\n "format"\n ],\n "type": "object"\n },\n "type": "array"\n },\n "manifests": {\n "items": {\n "additionalProperties": false,\n "properties": {\n "artifact_id": {\n "pattern": "^art_[a-f0-9]{64}$",\n "type": "string"\n },\n "format": {\n "minLength": 1,\n "type": "string"\n },\n "path": {\n "minLength": 1,\n "type": "string"\n },\n "sha256": {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n }\n },\n "required": [\n "path",\n "artifact_id",\n "sha256",\n "format"\n ],\n "type": "object"\n },\n "type": "array"\n },\n "native_libraries": {\n "items": {\n "additionalProperties": false,\n "properties": {\n "artifact_id": {\n "pattern": "^art_[a-f0-9]{64}$",\n "type": "string"\n },\n "format": {\n "minLength": 1,\n "type": "string"\n },\n "path": {\n "minLength": 1,\n "type": "string"\n },\n "sha256": {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n }\n },\n "required": [\n "path",\n "artifact_id",\n "sha256",\n "format"\n ],\n "type": "object"\n },\n "type": "array"\n },\n "resources": {\n "items": {\n "additionalProperties": false,\n "properties": {\n "artifact_id": {\n "pattern": "^art_[a-f0-9]{64}$",\n "type": "string"\n },\n "format": {\n "minLength": 1,\n "type": "string"\n },\n "path": {\n "minLength": 1,\n "type": "string"\n },\n "sha256": {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n }\n },\n "required": [\n "path",\n "artifact_id",\n "sha256",\n "format"\n ],\n "type": "object"\n },\n "type": "array"\n },\n "signing": {\n "items": {\n "additionalProperties": false,\n "properties": {\n "artifact_id": {\n "pattern": "^art_[a-f0-9]{64}$",\n "type": "string"\n },\n "format": {\n "minLength": 1,\n "type": "string"\n },\n "path": {\n "minLength": 1,\n "type": "string"\n },\n "sha256": {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n }\n },\n "required": [\n "path",\n "artifact_id",\n "sha256",\n "format"\n ],\n "type": "object"\n },\n "type": "array"\n }\n },\n "required": [\n "manifests",\n "resources",\n "dex",\n "jvm_classes",\n "native_libraries",\n "javascript",\n "signing"\n ],\n "type": "object"\n },\n "coverage": {\n "additionalProperties": false,\n "properties": {\n "inventory_complete": {\n "type": "boolean"\n },\n "status": {\n "enum": [\n "complete-within-inventory",\n "partial"\n ],\n "type": "string"\n }\n },\n "required": [\n "status",\n "inventory_complete"\n ],\n "type": "object"\n },\n "limitations": {\n "items": {\n "minLength": 1,\n "type": "string"\n },\n "type": "array"\n },\n "projection_id": {\n "pattern": "^adp_[a-f0-9]{64}$",\n "type": "string"\n },\n "root_format": {\n "const": "apk",\n "type": "string"\n },\n "root_sha256": {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n },\n "runtime_families": {\n "items": {\n "enum": [\n "dalvik-art",\n "java-kotlin",\n "native",\n "javascript",\n "react-native",\n "flutter",\n "unity"\n ],\n "type": "string"\n },\n "type": "array"\n },\n "source_evidence_ids": {\n "items": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "minItems": 1,\n "type": "array"\n }\n },\n "required": [\n "projection_id",\n "root_sha256",\n "root_format",\n "source_evidence_ids",\n "components",\n "runtime_families",\n "bridge_candidates",\n "coverage",\n "limitations"\n ],\n "type": "object"\n }\n },\n "required": [\n "result",\n "evidence_id",\n "evidence"\n ],\n "type": "object"\n },\n "requiresSession": false,\n "title": "Project Android Application Graph"\n },\n {\n "analysisOperation": null,\n "annotations": {\n "destructiveHint": false,\n "idempotentHint": true,\n "openWorldHint": false,\n "readOnlyHint": false\n },\n "description": "Project authenticated IPA inventory_artifact Evidence into an execution-free Apple application inventory. Reports exact component paths and hashes, runtime-family hints, and path-based bridge hypotheses without parsing plist/CMS semantics or claiming observed runtime calls.",\n "effects": {\n "accessesNetwork": false,\n "changesUiState": false,\n "idempotent": true,\n "launchesProcess": false,\n "mayDiscardData": false,\n "mutatesSession": true,\n "mutatesTarget": false,\n "writesFilesystem": false\n },\n "inputSchema": {\n "$defs": {\n "__schema0": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "number"\n },\n {\n "type": "boolean"\n },\n {\n "type": "null"\n },\n {\n "items": {\n "$ref": "#/$defs/__schema0"\n },\n "type": "array"\n },\n {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n }\n ]\n }\n },\n "$schema": "https://json-schema.org/draft/2020-12/schema",\n "additionalProperties": false,\n "examples": [\n {\n "inventory_evidence": [\n {\n "authority": "shipped-artifact",\n "confidence": "observed",\n "environment": null,\n "evidence_id": "ev_26149f40576cc43ae2d1d8bb465090d2c3b227e3d2394d08cfdf0b61beba64ad",\n "evidence_links": [],\n "limitations": [],\n "locations": [],\n "normalized_result": {\n "edges": [],\n "limitations": [],\n "manifest": {\n "edge_count": 0,\n "graph_sha256": "5e6590160ac53eb4c5dc8a9722eec87dfc6fbee85b8b01c3391b9b5e872c862a",\n "manifest_id": "agm_72d1336aafbec396c67971ffc28c79661b2d1e2bdf8c00823db99ff007f601be",\n "node_count": 1,\n "occurrence_count": 1,\n "root_artifact_id": "art_b42a19aa08c8eda5b54ff7dedca16546a342bfe20da65c1377403feb7a74a960",\n "root_format": "ipa",\n "root_sha256": "bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb"\n },\n "nodes": [\n {\n "architecture": null,\n "artifact_id": "art_b42a19aa08c8eda5b54ff7dedca16546a342bfe20da65c1377403feb7a74a960",\n "content_state": "materialized",\n "executable": false,\n "format": "ipa",\n "kind": "resource",\n "limitations": [],\n "media_type": null,\n "sha256": "bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb",\n "size": 1\n }\n ],\n "occurrences": [\n {\n "artifact_id": "art_b42a19aa08c8eda5b54ff7dedca16546a342bfe20da65c1377403feb7a74a960",\n "compressed_size": null,\n "declared_size": 1,\n "encrypted": false,\n "entry_kind": "file",\n "executable": false,\n "hash_status": "verified",\n "limitations": [],\n "logical_path": ".",\n "occurrence_id": "occ_fc32a68378230630d05886e51a1e327af55b3a1d89f5365e07587e7e9ed1cce6",\n "parent_occurrence_id": null,\n "source_location": null\n }\n ],\n "provenance": []\n },\n "operation": "inventory_artifact",\n "parameters": {},\n "predicate_type": "rea.analysis",\n "provider": {\n "id": "rea-artifact-graph",\n "name": "REA safe artifact graph provider",\n "version": "1"\n },\n "raw_result": null,\n "subject": {\n "architecture": null,\n "digest": {\n "sha256": "bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb"\n },\n "format": "ipa",\n "local_path": "Fixture.ipa",\n "name": "Fixture.ipa"\n }\n }\n ]\n }\n ],\n "properties": {\n "inventory_evidence": {\n "description": "Value for inventory evidence.",\n "items": {\n "additionalProperties": false,\n "properties": {\n "analysis_profile": {\n "description": "Value for analysis profile.",\n "properties": {\n "digest": {\n "description": "Value for digest.",\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n },\n "parameters": {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "description": "Value for parameters.",\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n },\n "provider": {\n "description": "Value for provider.",\n "properties": {\n "id": {\n "description": "Value for id.",\n "minLength": 1,\n "type": "string"\n },\n "name": {\n "description": "Exact name used by this operation.",\n "minLength": 1,\n "type": "string"\n },\n "version": {\n "description": "Value for version.",\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "id",\n "name",\n "version"\n ],\n "type": "object"\n }\n },\n "required": [\n "provider",\n "parameters",\n "digest"\n ],\n "type": "object"\n },\n "authority": {\n "description": "Value for authority.",\n "enum": [\n "shipped-artifact",\n "controlled-replay",\n "historical-reference",\n "external-service",\n "analyst-inference"\n ],\n "type": "string"\n },\n "confidence": {\n "description": "Value for confidence.",\n "enum": [\n "observed",\n "derived",\n "inferred"\n ],\n "type": "string"\n },\n "environment": {\n "anyOf": [\n {\n "properties": {\n "architecture": {\n "description": "Value for architecture.",\n "minLength": 1,\n "type": "string"\n },\n "id": {\n "description": "Value for id.",\n "minLength": 1,\n "type": "string"\n },\n "isolation": {\n "description": "Value for isolation.",\n "enum": [\n "none",\n "process",\n "container",\n "virtual-machine"\n ],\n "type": "string"\n },\n "platform": {\n "description": "Value for platform.",\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "id",\n "platform",\n "architecture",\n "isolation"\n ],\n "type": "object"\n },\n {\n "type": "null"\n }\n ],\n "description": "Value for environment."\n },\n "evidence_id": {\n "description": "Stable identifier of the recorded Evidence observation.",\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "evidence_links": {\n "description": "Value for evidence links.",\n "items": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "type": "array"\n },\n "limitations": {\n "description": "Value for limitations.",\n "items": {\n "type": "string"\n },\n "type": "array"\n },\n "locations": {\n "description": "Value for locations.",\n "items": {\n "oneOf": [\n {\n "properties": {\n "address": {\n "description": "Value for address.",\n "minLength": 1,\n "type": "string"\n },\n "kind": {\n "const": "address",\n "description": "Value for kind.",\n "type": "string"\n }\n },\n "required": [\n "kind",\n "address"\n ],\n "type": "object"\n },\n {\n "properties": {\n "end": {\n "description": "Value for end.",\n "minLength": 1,\n "type": "string"\n },\n "kind": {\n "const": "address-range",\n "description": "Value for kind.",\n "type": "string"\n },\n "start": {\n "description": "Value for start.",\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "kind",\n "start",\n "end"\n ],\n "type": "object"\n },\n {\n "properties": {\n "kind": {\n "const": "artifact-path",\n "description": "Value for kind.",\n "type": "string"\n },\n "path": {\n "description": "Local filesystem path used by this operation.",\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "kind",\n "path"\n ],\n "type": "object"\n },\n {\n "properties": {\n "kind": {\n "const": "file-offset",\n "description": "Value for kind.",\n "type": "string"\n },\n "offset": {\n "description": "Value for offset.",\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "kind",\n "offset"\n ],\n "type": "object"\n },\n {\n "properties": {\n "end": {\n "description": "Value for end.",\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "kind": {\n "const": "file-offset-range",\n "description": "Value for kind.",\n "type": "string"\n },\n "start": {\n "description": "Value for start.",\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "kind",\n "start",\n "end"\n ],\n "type": "object"\n }\n ]\n },\n "type": "array"\n },\n "normalized_result": {\n "$ref": "#/$defs/__schema0",\n "description": "Value for normalized result."\n },\n "operation": {\n "description": "Value for operation.",\n "minLength": 1,\n "type": "string"\n },\n "parameters": {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "description": "Value for parameters.",\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n },\n "predicate_type": {\n "description": "Value for predicate type.",\n "minLength": 1,\n "type": "string"\n },\n "provider": {\n "description": "Value for provider.",\n "properties": {\n "id": {\n "description": "Value for id.",\n "minLength": 1,\n "type": "string"\n },\n "name": {\n "description": "Exact name used by this operation.",\n "minLength": 1,\n "type": "string"\n },\n "version": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ],\n "description": "Value for version."\n }\n },\n "required": [\n "id",\n "name",\n "version"\n ],\n "type": "object"\n },\n "raw_result": {\n "anyOf": [\n {\n "$ref": "#/$defs/__schema0"\n },\n {\n "type": "null"\n }\n ],\n "description": "Value for raw result."\n },\n "subject": {\n "anyOf": [\n {\n "properties": {\n "architecture": {\n "anyOf": [\n {\n "enum": [\n "x86",\n "x86_64",\n "arm",\n "arm64"\n ],\n "type": "string"\n },\n {\n "type": "null"\n }\n ],\n "description": "Value for architecture."\n },\n "digest": {\n "description": "Value for digest.",\n "properties": {\n "sha256": {\n "description": "Value for sha256.",\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n }\n },\n "required": [\n "sha256"\n ],\n "type": "object"\n },\n "format": {\n "description": "Declared input artifact format.",\n "enum": [\n "hopper",\n "analysis-database",\n "mach-o",\n "elf",\n "pe",\n "dos-mz",\n "dos-com",\n "zip",\n "ipa",\n "apk",\n "msix",\n "appx",\n "asar",\n "dmg",\n "pkg",\n "plist",\n "javascript",\n "source-map",\n "directory",\n "file",\n "unknown",\n "mach-o-universal",\n "javascript-bundle",\n "entitlements"\n ],\n "type": "string"\n },\n "local_path": {\n "description": "Local filesystem path for local.",\n "type": "string"\n },\n "name": {\n "description": "Exact name used by this operation.",\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "name",\n "digest",\n "format",\n "architecture",\n "local_path"\n ],\n "type": "object"\n },\n {\n "type": "null"\n }\n ],\n "description": "Value for subject."\n }\n },\n "required": [\n "evidence_id",\n "subject",\n "provider",\n "predicate_type",\n "operation",\n "parameters",\n "raw_result",\n "normalized_result",\n "confidence",\n "authority",\n "environment",\n "limitations",\n "locations",\n "evidence_links"\n ],\n "type": "object"\n },\n "minItems": 1,\n "type": "array"\n }\n },\n "required": [\n "inventory_evidence"\n ],\n "type": "object"\n },\n "kind": "application",\n "name": "project_apple_application_graph",\n "outputSchema": {\n "$defs": {\n "__schema0": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "number"\n },\n {\n "type": "boolean"\n },\n {\n "type": "null"\n },\n {\n "items": {\n "$ref": "#/$defs/__schema0"\n },\n "type": "array"\n },\n {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n }\n ]\n }\n },\n "$schema": "https://json-schema.org/draft/2020-12/schema",\n "additionalProperties": false,\n "properties": {\n "evidence": {\n "additionalProperties": false,\n "properties": {\n "analysis_profile": {\n "additionalProperties": false,\n "properties": {\n "digest": {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n },\n "parameters": {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n },\n "provider": {\n "additionalProperties": false,\n "properties": {\n "id": {\n "minLength": 1,\n "type": "string"\n },\n "name": {\n "minLength": 1,\n "type": "string"\n },\n "version": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "id",\n "name",\n "version"\n ],\n "type": "object"\n }\n },\n "required": [\n "provider",\n "parameters",\n "digest"\n ],\n "type": "object"\n },\n "authority": {\n "enum": [\n "shipped-artifact",\n "controlled-replay",\n "historical-reference",\n "external-service",\n "analyst-inference"\n ],\n "type": "string"\n },\n "confidence": {\n "enum": [\n "observed",\n "derived",\n "inferred"\n ],\n "type": "string"\n },\n "environment": {\n "anyOf": [\n {\n "additionalProperties": false,\n "properties": {\n "architecture": {\n "minLength": 1,\n "type": "string"\n },\n "id": {\n "minLength": 1,\n "type": "string"\n },\n "isolation": {\n "enum": [\n "none",\n "process",\n "container",\n "virtual-machine"\n ],\n "type": "string"\n },\n "platform": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "id",\n "platform",\n "architecture",\n "isolation"\n ],\n "type": "object"\n },\n {\n "type": "null"\n }\n ]\n },\n "evidence_id": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "evidence_links": {\n "items": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "type": "array"\n },\n "limitations": {\n "items": {\n "type": "string"\n },\n "type": "array"\n },\n "locations": {\n "items": {\n "oneOf": [\n {\n "additionalProperties": false,\n "properties": {\n "address": {\n "minLength": 1,\n "type": "string"\n },\n "kind": {\n "const": "address",\n "type": "string"\n }\n },\n "required": [\n "kind",\n "address"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "end": {\n "minLength": 1,\n "type": "string"\n },\n "kind": {\n "const": "address-range",\n "type": "string"\n },\n "start": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "kind",\n "start",\n "end"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "kind": {\n "const": "artifact-path",\n "type": "string"\n },\n "path": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "kind",\n "path"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "kind": {\n "const": "file-offset",\n "type": "string"\n },\n "offset": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "kind",\n "offset"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "end": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "kind": {\n "const": "file-offset-range",\n "type": "string"\n },\n "start": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "kind",\n "start",\n "end"\n ],\n "type": "object"\n }\n ]\n },\n "type": "array"\n },\n "normalized_result": {\n "$ref": "#/$defs/__schema0"\n },\n "operation": {\n "minLength": 1,\n "type": "string"\n },\n "parameters": {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n },\n "predicate_type": {\n "minLength": 1,\n "type": "string"\n },\n "provider": {\n "additionalProperties": false,\n "properties": {\n "id": {\n "minLength": 1,\n "type": "string"\n },\n "name": {\n "minLength": 1,\n "type": "string"\n },\n "version": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "id",\n "name",\n "version"\n ],\n "type": "object"\n },\n "raw_result": {\n "anyOf": [\n {\n "$ref": "#/$defs/__schema0"\n },\n {\n "type": "null"\n }\n ]\n },\n "subject": {\n "anyOf": [\n {\n "additionalProperties": false,\n "properties": {\n "architecture": {\n "anyOf": [\n {\n "enum": [\n "x86",\n "x86_64",\n "arm",\n "arm64"\n ],\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "digest": {\n "additionalProperties": false,\n "properties": {\n "sha256": {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n }\n },\n "required": [\n "sha256"\n ],\n "type": "object"\n },\n "format": {\n "enum": [\n "hopper",\n "analysis-database",\n "mach-o",\n "elf",\n "pe",\n "dos-mz",\n "dos-com",\n "zip",\n "ipa",\n "apk",\n "msix",\n "appx",\n "asar",\n "dmg",\n "pkg",\n "plist",\n "javascript",\n "source-map",\n "directory",\n "file",\n "unknown",\n "mach-o-universal",\n "javascript-bundle",\n "entitlements"\n ],\n "type": "string"\n },\n "local_path": {\n "type": "string"\n },\n "name": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "name",\n "digest",\n "format",\n "architecture",\n "local_path"\n ],\n "type": "object"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "evidence_id",\n "subject",\n "provider",\n "predicate_type",\n "operation",\n "parameters",\n "raw_result",\n "normalized_result",\n "confidence",\n "authority",\n "environment",\n "limitations",\n "locations",\n "evidence_links"\n ],\n "type": "object"\n },\n "evidence_id": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "result": {\n "additionalProperties": false,\n "properties": {\n "application_roots": {\n "items": {\n "minLength": 1,\n "type": "string"\n },\n "type": "array"\n },\n "bridge_candidates": {\n "items": {\n "additionalProperties": false,\n "properties": {\n "basis": {\n "enum": [\n "javascript-and-native-content",\n "react-native-convention",\n "flutter-convention",\n "unity-convention"\n ],\n "type": "string"\n },\n "native_path": {\n "minLength": 1,\n "type": "string"\n },\n "source_path": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "source_path",\n "native_path",\n "basis"\n ],\n "type": "object"\n },\n "type": "array"\n },\n "components": {\n "additionalProperties": false,\n "properties": {\n "bundle_metadata": {\n "items": {\n "additionalProperties": false,\n "properties": {\n "artifact_id": {\n "pattern": "^art_[a-f0-9]{64}$",\n "type": "string"\n },\n "format": {\n "minLength": 1,\n "type": "string"\n },\n "path": {\n "minLength": 1,\n "type": "string"\n },\n "sha256": {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n }\n },\n "required": [\n "path",\n "artifact_id",\n "sha256",\n "format"\n ],\n "type": "object"\n },\n "type": "array"\n },\n "executables": {\n "items": {\n "additionalProperties": false,\n "properties": {\n "artifact_id": {\n "pattern": "^art_[a-f0-9]{64}$",\n "type": "string"\n },\n "format": {\n "minLength": 1,\n "type": "string"\n },\n "path": {\n "minLength": 1,\n "type": "string"\n },\n "sha256": {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n }\n },\n "required": [\n "path",\n "artifact_id",\n "sha256",\n "format"\n ],\n "type": "object"\n },\n "type": "array"\n },\n "frameworks": {\n "items": {\n "additionalProperties": false,\n "properties": {\n "artifact_id": {\n "pattern": "^art_[a-f0-9]{64}$",\n "type": "string"\n },\n "format": {\n "minLength": 1,\n "type": "string"\n },\n "path": {\n "minLength": 1,\n "type": "string"\n },\n "sha256": {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n }\n },\n "required": [\n "path",\n "artifact_id",\n "sha256",\n "format"\n ],\n "type": "object"\n },\n "type": "array"\n },\n "javascript": {\n "items": {\n "additionalProperties": false,\n "properties": {\n "artifact_id": {\n "pattern": "^art_[a-f0-9]{64}$",\n "type": "string"\n },\n "format": {\n "minLength": 1,\n "type": "string"\n },\n "path": {\n "minLength": 1,\n "type": "string"\n },\n "sha256": {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n }\n },\n "required": [\n "path",\n "artifact_id",\n "sha256",\n "format"\n ],\n "type": "object"\n },\n "type": "array"\n },\n "native_libraries": {\n "items": {\n "additionalProperties": false,\n "properties": {\n "artifact_id": {\n "pattern": "^art_[a-f0-9]{64}$",\n "type": "string"\n },\n "format": {\n "minLength": 1,\n "type": "string"\n },\n "path": {\n "minLength": 1,\n "type": "string"\n },\n "sha256": {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n }\n },\n "required": [\n "path",\n "artifact_id",\n "sha256",\n "format"\n ],\n "type": "object"\n },\n "type": "array"\n },\n "signing": {\n "items": {\n "additionalProperties": false,\n "properties": {\n "artifact_id": {\n "pattern": "^art_[a-f0-9]{64}$",\n "type": "string"\n },\n "format": {\n "minLength": 1,\n "type": "string"\n },\n "path": {\n "minLength": 1,\n "type": "string"\n },\n "sha256": {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n }\n },\n "required": [\n "path",\n "artifact_id",\n "sha256",\n "format"\n ],\n "type": "object"\n },\n "type": "array"\n }\n },\n "required": [\n "bundle_metadata",\n "executables",\n "frameworks",\n "native_libraries",\n "javascript",\n "signing"\n ],\n "type": "object"\n },\n "coverage": {\n "additionalProperties": false,\n "properties": {\n "inventory_complete": {\n "type": "boolean"\n },\n "status": {\n "enum": [\n "complete-within-inventory",\n "partial"\n ],\n "type": "string"\n }\n },\n "required": [\n "status",\n "inventory_complete"\n ],\n "type": "object"\n },\n "limitations": {\n "items": {\n "minLength": 1,\n "type": "string"\n },\n "type": "array"\n },\n "projection_id": {\n "pattern": "^aap_[a-f0-9]{64}$",\n "type": "string"\n },\n "root_format": {\n "const": "ipa",\n "type": "string"\n },\n "root_sha256": {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n },\n "runtime_families": {\n "items": {\n "enum": [\n "native",\n "swift-objective-c",\n "javascript",\n "react-native",\n "flutter",\n "unity"\n ],\n "type": "string"\n },\n "type": "array"\n },\n "source_evidence_ids": {\n "items": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "minItems": 1,\n "type": "array"\n }\n },\n "required": [\n "projection_id",\n "root_sha256",\n "root_format",\n "source_evidence_ids",\n "application_roots",\n "components",\n "runtime_families",\n "bridge_candidates",\n "coverage",\n "limitations"\n ],\n "type": "object"\n }\n },\n "required": [\n "result",\n "evidence_id",\n "evidence"\n ],\n "type": "object"\n },\n "requiresSession": false,\n "title": "Project Apple Application Graph"\n },\n {\n "analysisOperation": null,\n "annotations": {\n "destructiveHint": false,\n "idempotentHint": true,\n "openWorldHint": true,\n "readOnlyHint": false\n },\n "description": "Trace one generated position in an exported website script through an explicitly paired local source map. Verifies manifest, selected script and map SHA-256/byte identities; returns every equal-position mapping, reported source/root, resolved source URL, embedded sourcesContent and original position inline. One-based lines and zero-based UTF-16 columns; greatest generated position <= requested across lines. Duplicate sources and generated-only mappings remain distinct. Caller-selected pairing does not establish deployment authenticity or execution. Regular maps and inline indexed sections only; external section URLs are unsupported. No network access or application execution; uses the pinned upstream codec in an owned Node process with private temporary files, independent 192 MiB old-generation heap and 20-second deadline. 4 MiB map, 32 MiB reply; complete evidence or actionable resource failure. Cleanup may extend the deadline.",\n "effects": {\n "accessesNetwork": false,\n "changesUiState": false,\n "idempotent": true,\n "launchesProcess": true,\n "mayDiscardData": false,\n "mutatesSession": true,\n "mutatesTarget": false,\n "writesFilesystem": true\n },\n "inputSchema": {\n "$schema": "https://json-schema.org/draft/2020-12/schema",\n "additionalProperties": false,\n "examples": [\n {\n "generated_position": {\n "column": 25,\n "line": 1\n },\n "manifest_path": "/analysis/scripts/manifest.json",\n "script_index": 0,\n "source_map": {\n "path": "/analysis/app.js.map",\n "url": "https://example.test/app.js.map"\n }\n }\n ],\n "properties": {\n "generated_position": {\n "additionalProperties": false,\n "description": "Value for generated position.",\n "properties": {\n "column": {\n "description": "Value for column.",\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "line": {\n "description": "Value for line.",\n "maximum": 9007199254740991,\n "minimum": 1,\n "type": "integer"\n }\n },\n "required": [\n "line",\n "column"\n ],\n "type": "object"\n },\n "manifest_path": {\n "description": "Absolute export_web_scripts manifest path",\n "minLength": 1,\n "type": "string"\n },\n "script_index": {\n "description": "Zero-based index in manifest.scripts",\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "source_map": {\n "additionalProperties": false,\n "description": "Value for source map.",\n "properties": {\n "path": {\n "description": "Absolute local source-map path; no fetch",\n "minLength": 1,\n "type": "string"\n },\n "url": {\n "description": "Explicit source-map URL context used to resolve original source names",\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "path",\n "url"\n ],\n "type": "object"\n }\n },\n "required": [\n "manifest_path",\n "script_index",\n "source_map",\n "generated_position"\n ],\n "type": "object"\n },\n "kind": "application",\n "name": "trace_web_source_location",\n "outputSchema": {\n "$defs": {\n "__schema0": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "number"\n },\n {\n "type": "boolean"\n },\n {\n "type": "null"\n },\n {\n "items": {\n "$ref": "#/$defs/__schema0"\n },\n "type": "array"\n },\n {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n }\n ]\n }\n },\n "$schema": "https://json-schema.org/draft/2020-12/schema",\n "additionalProperties": false,\n "properties": {\n "evidence": {\n "additionalProperties": false,\n "properties": {\n "analysis_profile": {\n "additionalProperties": false,\n "properties": {\n "digest": {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n },\n "parameters": {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n },\n "provider": {\n "additionalProperties": false,\n "properties": {\n "id": {\n "minLength": 1,\n "type": "string"\n },\n "name": {\n "minLength": 1,\n "type": "string"\n },\n "version": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "id",\n "name",\n "version"\n ],\n "type": "object"\n }\n },\n "required": [\n "provider",\n "parameters",\n "digest"\n ],\n "type": "object"\n },\n "authority": {\n "enum": [\n "shipped-artifact",\n "controlled-replay",\n "historical-reference",\n "external-service",\n "analyst-inference"\n ],\n "type": "string"\n },\n "confidence": {\n "enum": [\n "observed",\n "derived",\n "inferred"\n ],\n "type": "string"\n },\n "environment": {\n "anyOf": [\n {\n "additionalProperties": false,\n "properties": {\n "architecture": {\n "minLength": 1,\n "type": "string"\n },\n "id": {\n "minLength": 1,\n "type": "string"\n },\n "isolation": {\n "enum": [\n "none",\n "process",\n "container",\n "virtual-machine"\n ],\n "type": "string"\n },\n "platform": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "id",\n "platform",\n "architecture",\n "isolation"\n ],\n "type": "object"\n },\n {\n "type": "null"\n }\n ]\n },\n "evidence_id": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "evidence_links": {\n "items": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "type": "array"\n },\n "limitations": {\n "items": {\n "type": "string"\n },\n "type": "array"\n },\n "locations": {\n "items": {\n "oneOf": [\n {\n "additionalProperties": false,\n "properties": {\n "address": {\n "minLength": 1,\n "type": "string"\n },\n "kind": {\n "const": "address",\n "type": "string"\n }\n },\n "required": [\n "kind",\n "address"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "end": {\n "minLength": 1,\n "type": "string"\n },\n "kind": {\n "const": "address-range",\n "type": "string"\n },\n "start": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "kind",\n "start",\n "end"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "kind": {\n "const": "artifact-path",\n "type": "string"\n },\n "path": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "kind",\n "path"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "kind": {\n "const": "file-offset",\n "type": "string"\n },\n "offset": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "kind",\n "offset"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "end": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "kind": {\n "const": "file-offset-range",\n "type": "string"\n },\n "start": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "kind",\n "start",\n "end"\n ],\n "type": "object"\n }\n ]\n },\n "type": "array"\n },\n "normalized_result": {\n "$ref": "#/$defs/__schema0"\n },\n "operation": {\n "minLength": 1,\n "type": "string"\n },\n "parameters": {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n },\n "predicate_type": {\n "minLength": 1,\n "type": "string"\n },\n "provider": {\n "additionalProperties": false,\n "properties": {\n "id": {\n "minLength": 1,\n "type": "string"\n },\n "name": {\n "minLength": 1,\n "type": "string"\n },\n "version": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "id",\n "name",\n "version"\n ],\n "type": "object"\n },\n "raw_result": {\n "anyOf": [\n {\n "$ref": "#/$defs/__schema0"\n },\n {\n "type": "null"\n }\n ]\n },\n "subject": {\n "anyOf": [\n {\n "additionalProperties": false,\n "properties": {\n "architecture": {\n "anyOf": [\n {\n "enum": [\n "x86",\n "x86_64",\n "arm",\n "arm64"\n ],\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "digest": {\n "additionalProperties": false,\n "properties": {\n "sha256": {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n }\n },\n "required": [\n "sha256"\n ],\n "type": "object"\n },\n "format": {\n "enum": [\n "hopper",\n "analysis-database",\n "mach-o",\n "elf",\n "pe",\n "dos-mz",\n "dos-com",\n "zip",\n "ipa",\n "apk",\n "msix",\n "appx",\n "asar",\n "dmg",\n "pkg",\n "plist",\n "javascript",\n "source-map",\n "directory",\n "file",\n "unknown",\n "mach-o-universal",\n "javascript-bundle",\n "entitlements"\n ],\n "type": "string"\n },\n "local_path": {\n "type": "string"\n },\n "name": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "name",\n "digest",\n "format",\n "architecture",\n "local_path"\n ],\n "type": "object"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "evidence_id",\n "subject",\n "provider",\n "predicate_type",\n "operation",\n "parameters",\n "raw_result",\n "normalized_result",\n "confidence",\n "authority",\n "environment",\n "limitations",\n "locations",\n "evidence_links"\n ],\n "type": "object"\n },\n "evidence_id": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "result": {\n "additionalProperties": false,\n "properties": {\n "diagnostics": {\n "items": {\n "type": "string"\n },\n "type": "array"\n },\n "engine": {\n "additionalProperties": false,\n "properties": {\n "id": {\n "minLength": 1,\n "type": "string"\n },\n "version": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "id",\n "version"\n ],\n "type": "object"\n },\n "execution": {\n "const": "unknown",\n "type": "string"\n },\n "format": {\n "enum": [\n "regular",\n "indexed"\n ],\n "type": "string"\n },\n "generated_offset": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "limitations": {\n "items": {\n "type": "string"\n },\n "type": "array"\n },\n "lookup": {\n "additionalProperties": false,\n "properties": {\n "location_units": {\n "const": "one-based lines; zero-based UTF-16 columns",\n "type": "string"\n },\n "matched_generated_position": {\n "anyOf": [\n {\n "additionalProperties": false,\n "properties": {\n "column": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "line": {\n "maximum": 9007199254740991,\n "minimum": 1,\n "type": "integer"\n }\n },\n "required": [\n "line",\n "column"\n ],\n "type": "object"\n },\n {\n "type": "null"\n }\n ]\n },\n "requested": {\n "additionalProperties": false,\n "properties": {\n "column": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "line": {\n "maximum": 9007199254740991,\n "minimum": 1,\n "type": "integer"\n }\n },\n "required": [\n "line",\n "column"\n ],\n "type": "object"\n },\n "semantics": {\n "const": "greatest generated position <= requested, across lines; all equal-position segments",\n "type": "string"\n }\n },\n "required": [\n "requested",\n "matched_generated_position",\n "semantics",\n "location_units"\n ],\n "type": "object"\n },\n "manifest": {\n "additionalProperties": false,\n "properties": {\n "bytes": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "capture_completeness": {\n "anyOf": [\n {\n "additionalProperties": false,\n "properties": {\n "attach_limited_sections": {\n "items": {\n "enum": [\n "frames",\n "dom",\n "accessibility",\n "scripts",\n "script_sources",\n "resources",\n "network_requests",\n "network_initiators",\n "console_events",\n "console_text",\n "websocket_connections",\n "websocket_frames",\n "websocket_shapes",\n "json_body_shapes",\n "workers",\n "storage",\n "storage_keys",\n "metadata",\n "webmcp_tools",\n "screenshot",\n "source_maps",\n "timeline"\n ],\n "type": "string"\n },\n "type": "array"\n },\n "conditions": {\n "items": {\n "enum": [\n "complete_within_window",\n "policy_filtered",\n "attach_limited",\n "truncated"\n ],\n "type": "string"\n },\n "maxItems": 3,\n "minItems": 1,\n "type": "array"\n },\n "dropped_events": {\n "additionalProperties": false,\n "properties": {\n "console_events": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "network_requests": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "scripts": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "timeline_events": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "total": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "webmcp_tools": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "websocket_connections": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "websocket_frames": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "scripts",\n "network_requests",\n "console_events",\n "websocket_connections",\n "websocket_frames",\n "webmcp_tools",\n "timeline_events",\n "total"\n ],\n "type": "object"\n },\n "excluded": {\n "items": {\n "additionalProperties": false,\n "properties": {\n "count": {\n "anyOf": [\n {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n {\n "type": "null"\n }\n ]\n },\n "reason": {\n "enum": [\n "disallowed_origin",\n "unsupported_url",\n "unattributed_origin",\n "not_approved",\n "out_of_target_scope",\n "provider_unavailable",\n "invalid_protocol_value"\n ],\n "type": "string"\n },\n "section": {\n "enum": [\n "frames",\n "dom",\n "accessibility",\n "scripts",\n "script_sources",\n "resources",\n "network_requests",\n "network_initiators",\n "console_events",\n "console_text",\n "websocket_connections",\n "websocket_frames",\n "websocket_shapes",\n "json_body_shapes",\n "workers",\n "storage",\n "storage_keys",\n "metadata",\n "webmcp_tools",\n "screenshot",\n "source_maps",\n "timeline"\n ],\n "type": "string"\n }\n },\n "required": [\n "section",\n "reason",\n "count"\n ],\n "type": "object"\n },\n "type": "array"\n },\n "policy_filtered_sections": {\n "items": {\n "enum": [\n "frames",\n "dom",\n "accessibility",\n "scripts",\n "script_sources",\n "resources",\n "network_requests",\n "network_initiators",\n "console_events",\n "console_text",\n "websocket_connections",\n "websocket_frames",\n "websocket_shapes",\n "json_body_shapes",\n "workers",\n "storage",\n "storage_keys",\n "metadata",\n "webmcp_tools",\n "screenshot",\n "source_maps",\n "timeline"\n ],\n "type": "string"\n },\n "type": "array"\n },\n "status": {\n "enum": [\n "complete_within_window",\n "policy_filtered",\n "attach_limited",\n "truncated"\n ],\n "type": "string"\n },\n "truncated_sections": {\n "items": {\n "enum": [\n "frames",\n "dom",\n "accessibility",\n "scripts",\n "script_sources",\n "resources",\n "network_requests",\n "network_initiators",\n "console_events",\n "console_text",\n "websocket_connections",\n "websocket_frames",\n "websocket_shapes",\n "json_body_shapes",\n "workers",\n "storage",\n "storage_keys",\n "metadata",\n "webmcp_tools",\n "screenshot",\n "source_maps",\n "timeline"\n ],\n "type": "string"\n },\n "type": "array"\n },\n "unavailable_sections": {\n "items": {\n "enum": [\n "frames",\n "dom",\n "accessibility",\n "scripts",\n "script_sources",\n "resources",\n "network_requests",\n "network_initiators",\n "console_events",\n "console_text",\n "websocket_connections",\n "websocket_frames",\n "websocket_shapes",\n "json_body_shapes",\n "workers",\n "storage",\n "storage_keys",\n "metadata",\n "webmcp_tools",\n "screenshot",\n "source_maps",\n "timeline"\n ],\n "type": "string"\n },\n "type": "array"\n }\n },\n "required": [\n "status",\n "conditions",\n "policy_filtered_sections",\n "attach_limited_sections",\n "truncated_sections",\n "unavailable_sections",\n "excluded",\n "dropped_events"\n ],\n "type": "object"\n },\n {\n "oneOf": [\n {\n "additionalProperties": false,\n "properties": {\n "equality_eligible": {\n "const": true,\n "type": "boolean"\n },\n "missing_sections": {\n "items": {\n "not": {}\n },\n "maxItems": 0,\n "minItems": 0,\n "type": "array"\n },\n "status": {\n "const": "complete",\n "type": "string"\n },\n "truncated_sections": {\n "items": {\n "not": {}\n },\n "maxItems": 0,\n "minItems": 0,\n "type": "array"\n }\n },\n "required": [\n "status",\n "equality_eligible",\n "missing_sections",\n "truncated_sections"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "equality_eligible": {\n "const": false,\n "type": "boolean"\n },\n "missing_sections": {\n "items": {\n "enum": [\n "action",\n "screenshot",\n "dom",\n "accessibility",\n "url",\n "history",\n "storage",\n "events",\n "frames",\n "workers",\n "popups",\n "websockets"\n ],\n "type": "string"\n },\n "minItems": 1,\n "type": "array"\n },\n "status": {\n "const": "incomplete",\n "type": "string"\n },\n "truncated_sections": {\n "items": {\n "not": {}\n },\n "maxItems": 0,\n "minItems": 0,\n "type": "array"\n }\n },\n "required": [\n "status",\n "equality_eligible",\n "missing_sections",\n "truncated_sections"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "equality_eligible": {\n "const": false,\n "type": "boolean"\n },\n "missing_sections": {\n "items": {\n "enum": [\n "action",\n "screenshot",\n "dom",\n "accessibility",\n "url",\n "history",\n "storage",\n "events",\n "frames",\n "workers",\n "popups",\n "websockets"\n ],\n "type": "string"\n },\n "type": "array"\n },\n "status": {\n "const": "truncated",\n "type": "string"\n },\n "truncated_sections": {\n "items": {\n "enum": [\n "action",\n "screenshot",\n "dom",\n "accessibility",\n "url",\n "history",\n "storage",\n "events",\n "frames",\n "workers",\n "popups",\n "websockets"\n ],\n "type": "string"\n },\n "minItems": 1,\n "type": "array"\n }\n },\n "required": [\n "status",\n "equality_eligible",\n "missing_sections",\n "truncated_sections"\n ],\n "type": "object"\n }\n ]\n }\n ]\n },\n "capture_kind": {\n "enum": [\n "page-inspection",\n "browser-scenario"\n ],\n "type": "string"\n },\n "capture_path": {\n "minLength": 1,\n "type": "string"\n },\n "capture_sha256": {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n },\n "path": {\n "minLength": 1,\n "type": "string"\n },\n "reported_output_directory": {\n "type": "string"\n },\n "sha256": {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n },\n "source_evidence_id": {\n "anyOf": [\n {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "path",\n "sha256",\n "bytes",\n "reported_output_directory",\n "capture_path",\n "capture_sha256",\n "capture_kind",\n "capture_completeness",\n "source_evidence_id"\n ],\n "type": "object"\n },\n "matches": {\n "items": {\n "oneOf": [\n {\n "additionalProperties": false,\n "properties": {\n "state": {\n "const": "generated-only",\n "type": "string"\n }\n },\n "required": [\n "state"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "content": {\n "oneOf": [\n {\n "additionalProperties": false,\n "properties": {\n "representation": {\n "const": "UTF-8 encoding of decoded sourcesContent text",\n "type": "string"\n },\n "state": {\n "const": "embedded",\n "type": "string"\n },\n "text": {\n "type": "string"\n },\n "utf8_bytes": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "utf8_sha256": {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n }\n },\n "required": [\n "state",\n "text",\n "utf8_sha256",\n "utf8_bytes",\n "representation"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "reason": {\n "const": "sourcesContent-not-retained",\n "type": "string"\n },\n "state": {\n "const": "unavailable",\n "type": "string"\n }\n },\n "required": [\n "state",\n "reason"\n ],\n "type": "object"\n }\n ]\n },\n "flattened_source_index": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "ignored": {\n "type": "boolean"\n },\n "name": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "original_position": {\n "additionalProperties": false,\n "properties": {\n "column": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "content_position": {\n "enum": [\n "verified-in-embedded-text",\n "outside-embedded-text",\n "content-unavailable"\n ],\n "type": "string"\n },\n "line": {\n "maximum": 9007199254740991,\n "minimum": 1,\n "type": "integer"\n },\n "offset": {\n "anyOf": [\n {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "line",\n "column",\n "offset",\n "content_position"\n ],\n "type": "object"\n },\n "reported_source": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "reported_source_root": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "resolved_url": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "section_path": {\n "items": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "type": "array"\n },\n "source_index": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "state": {\n "const": "mapped",\n "type": "string"\n }\n },\n "required": [\n "state",\n "flattened_source_index",\n "section_path",\n "source_index",\n "reported_source",\n "reported_source_root",\n "resolved_url",\n "ignored",\n "content",\n "original_position",\n "name"\n ],\n "type": "object"\n }\n ]\n },\n "type": "array"\n },\n "reported_file": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "runtime": {\n "additionalProperties": false,\n "properties": {\n "id": {\n "minLength": 1,\n "type": "string"\n },\n "v8_heap_limit_bytes": {\n "maximum": 9007199254740991,\n "minimum": 1,\n "type": "integer"\n },\n "version": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "id",\n "version",\n "v8_heap_limit_bytes"\n ],\n "type": "object"\n },\n "source": {\n "additionalProperties": false,\n "properties": {\n "bytes": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "path": {\n "minLength": 1,\n "type": "string"\n },\n "script": {\n "additionalProperties": false,\n "properties": {\n "content": {\n "oneOf": [\n {\n "additionalProperties": false,\n "properties": {\n "bytes": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "layout": {\n "enum": [\n "url-path",\n "isolated"\n ],\n "type": "string"\n },\n "layout_reason": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "media_type": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "redacted": {\n "anyOf": [\n {\n "type": "boolean"\n },\n {\n "type": "null"\n }\n ]\n },\n "relative_path": {\n "minLength": 1,\n "type": "string"\n },\n "representation": {\n "enum": [\n "debugger-source-utf8",\n "browser-decoded-response-bytes"\n ],\n "type": "string"\n },\n "sha256": {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n },\n "state": {\n "const": "exported",\n "type": "string"\n }\n },\n "required": [\n "state",\n "relative_path",\n "layout",\n "layout_reason",\n "sha256",\n "bytes",\n "media_type",\n "redacted",\n "representation"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "message": {\n "minLength": 1,\n "type": "string"\n },\n "reason": {\n "minLength": 1,\n "type": "string"\n },\n "state": {\n "const": "unavailable",\n "type": "string"\n }\n },\n "required": [\n "state",\n "reason",\n "message"\n ],\n "type": "object"\n }\n ]\n },\n "source": {\n "oneOf": [\n {\n "additionalProperties": false,\n "properties": {\n "frame_id": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "is_module": {\n "type": "boolean"\n },\n "kind": {\n "const": "page-script",\n "type": "string"\n },\n "language": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "script_key": {\n "minLength": 1,\n "type": "string"\n },\n "source_map_url": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "kind",\n "script_key",\n "frame_id",\n "is_module",\n "language",\n "source_map_url"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "kind": {\n "const": "scenario-response",\n "type": "string"\n },\n "request_sequence": {\n "maximum": 9007199254740991,\n "minimum": 1,\n "type": "integer"\n },\n "response_sequence": {\n "anyOf": [\n {\n "maximum": 9007199254740991,\n "minimum": 1,\n "type": "integer"\n },\n {\n "type": "null"\n }\n ]\n },\n "status": {\n "anyOf": [\n {\n "type": "number"\n },\n {\n "type": "null"\n }\n ]\n },\n "transaction_id": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "kind",\n "transaction_id",\n "request_sequence",\n "response_sequence",\n "status"\n ],\n "type": "object"\n }\n ]\n },\n "url": {\n "type": "string"\n }\n },\n "required": [\n "source",\n "url",\n "content"\n ],\n "type": "object"\n },\n "script_index": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "sha256": {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n }\n },\n "required": [\n "path",\n "sha256",\n "bytes",\n "script_index",\n "script"\n ],\n "type": "object"\n },\n "source_authenticity": {\n "const": "unknown",\n "type": "string"\n },\n "source_map": {\n "additionalProperties": false,\n "properties": {\n "association": {\n "const": "caller-selected",\n "type": "string"\n },\n "bytes": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "path": {\n "minLength": 1,\n "type": "string"\n },\n "sha256": {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n },\n "url": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "path",\n "sha256",\n "bytes",\n "url",\n "association"\n ],\n "type": "object"\n },\n "source_map_sha256": {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n },\n "url_context": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "source_map_sha256",\n "url_context",\n "engine",\n "runtime",\n "format",\n "reported_file",\n "lookup",\n "matches",\n "diagnostics",\n "manifest",\n "source",\n "source_map",\n "generated_offset",\n "source_authenticity",\n "execution",\n "limitations"\n ],\n "type": "object"\n }\n },\n "required": [\n "result",\n "evidence_id",\n "evidence"\n ],\n "type": "object"\n },\n "requiresSession": false,\n "title": "Trace Web Source Location"\n },\n {\n "analysisOperation": null,\n "annotations": {\n "destructiveHint": false,\n "idempotentHint": true,\n "openWorldHint": true,\n "readOnlyHint": false\n },\n "description": "Trace one exported website script\'s outgoing native ES imports/re-exports, using exact URL and optional selected import-map context. Reads a local export_web_scripts manifest and verifies the selected source\'s SHA-256/size; returns source positions, native resolved URLs or exact errors, every matching captured candidate and explicit unknown execution. Query/fragment identities are preserved. Computed imports and bundler IDs remain unknown. Select importer_url for unknown inline/document-base context. Caller-supplied Chromium executes only a trusted REA resolver stub in an owned context with page requests locally fulfilled/blocked; no captured application execution or asset refetch. Requires absolute REA_BROWSER_EXECUTABLE for literal imports. 32 MiB manifest, 16 MiB source, 4 MiB map and 20-second native deadline; cleanup may extend the deadline.",\n "effects": {\n "accessesNetwork": true,\n "changesUiState": false,\n "idempotent": true,\n "launchesProcess": true,\n "mayDiscardData": false,\n "mutatesSession": true,\n "mutatesTarget": false,\n "writesFilesystem": true\n },\n "inputSchema": {\n "$schema": "https://json-schema.org/draft/2020-12/schema",\n "additionalProperties": false,\n "examples": [\n {\n "import_map": {\n "base_url": "https://example.test/app/",\n "path": "/analysis/import-map.json"\n },\n "manifest_path": "/analysis/exported-scripts/manifest.json",\n "script_index": 0\n }\n ],\n "properties": {\n "import_map": {\n "additionalProperties": false,\n "description": "Value for import map.",\n "properties": {\n "base_url": {\n "description": "Explicit HTTP(S) base for the selected map",\n "minLength": 1,\n "type": "string"\n },\n "path": {\n "description": "Absolute local import-map JSON path; no fetch",\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "path",\n "base_url"\n ],\n "type": "object"\n },\n "importer_url": {\n "description": "Explicit HTTP(S) module URL; useful when captured inline/base context is unknown",\n "minLength": 1,\n "type": "string"\n },\n "manifest_path": {\n "description": "Absolute path to an export_web_scripts manifest",\n "minLength": 1,\n "type": "string"\n },\n "script_index": {\n "description": "Zero-based index in manifest.scripts",\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "manifest_path",\n "script_index"\n ],\n "type": "object"\n },\n "kind": "application",\n "name": "trace_web_module_imports",\n "outputSchema": {\n "$defs": {\n "__schema0": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "number"\n },\n {\n "type": "boolean"\n },\n {\n "type": "null"\n },\n {\n "items": {\n "$ref": "#/$defs/__schema0"\n },\n "type": "array"\n },\n {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n }\n ]\n }\n },\n "$schema": "https://json-schema.org/draft/2020-12/schema",\n "additionalProperties": false,\n "properties": {\n "evidence": {\n "additionalProperties": false,\n "properties": {\n "analysis_profile": {\n "additionalProperties": false,\n "properties": {\n "digest": {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n },\n "parameters": {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n },\n "provider": {\n "additionalProperties": false,\n "properties": {\n "id": {\n "minLength": 1,\n "type": "string"\n },\n "name": {\n "minLength": 1,\n "type": "string"\n },\n "version": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "id",\n "name",\n "version"\n ],\n "type": "object"\n }\n },\n "required": [\n "provider",\n "parameters",\n "digest"\n ],\n "type": "object"\n },\n "authority": {\n "enum": [\n "shipped-artifact",\n "controlled-replay",\n "historical-reference",\n "external-service",\n "analyst-inference"\n ],\n "type": "string"\n },\n "confidence": {\n "enum": [\n "observed",\n "derived",\n "inferred"\n ],\n "type": "string"\n },\n "environment": {\n "anyOf": [\n {\n "additionalProperties": false,\n "properties": {\n "architecture": {\n "minLength": 1,\n "type": "string"\n },\n "id": {\n "minLength": 1,\n "type": "string"\n },\n "isolation": {\n "enum": [\n "none",\n "process",\n "container",\n "virtual-machine"\n ],\n "type": "string"\n },\n "platform": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "id",\n "platform",\n "architecture",\n "isolation"\n ],\n "type": "object"\n },\n {\n "type": "null"\n }\n ]\n },\n "evidence_id": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "evidence_links": {\n "items": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "type": "array"\n },\n "limitations": {\n "items": {\n "type": "string"\n },\n "type": "array"\n },\n "locations": {\n "items": {\n "oneOf": [\n {\n "additionalProperties": false,\n "properties": {\n "address": {\n "minLength": 1,\n "type": "string"\n },\n "kind": {\n "const": "address",\n "type": "string"\n }\n },\n "required": [\n "kind",\n "address"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "end": {\n "minLength": 1,\n "type": "string"\n },\n "kind": {\n "const": "address-range",\n "type": "string"\n },\n "start": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "kind",\n "start",\n "end"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "kind": {\n "const": "artifact-path",\n "type": "string"\n },\n "path": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "kind",\n "path"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "kind": {\n "const": "file-offset",\n "type": "string"\n },\n "offset": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "kind",\n "offset"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "end": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "kind": {\n "const": "file-offset-range",\n "type": "string"\n },\n "start": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "kind",\n "start",\n "end"\n ],\n "type": "object"\n }\n ]\n },\n "type": "array"\n },\n "normalized_result": {\n "$ref": "#/$defs/__schema0"\n },\n "operation": {\n "minLength": 1,\n "type": "string"\n },\n "parameters": {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n },\n "predicate_type": {\n "minLength": 1,\n "type": "string"\n },\n "provider": {\n "additionalProperties": false,\n "properties": {\n "id": {\n "minLength": 1,\n "type": "string"\n },\n "name": {\n "minLength": 1,\n "type": "string"\n },\n "version": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "id",\n "name",\n "version"\n ],\n "type": "object"\n },\n "raw_result": {\n "anyOf": [\n {\n "$ref": "#/$defs/__schema0"\n },\n {\n "type": "null"\n }\n ]\n },\n "subject": {\n "anyOf": [\n {\n "additionalProperties": false,\n "properties": {\n "architecture": {\n "anyOf": [\n {\n "enum": [\n "x86",\n "x86_64",\n "arm",\n "arm64"\n ],\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "digest": {\n "additionalProperties": false,\n "properties": {\n "sha256": {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n }\n },\n "required": [\n "sha256"\n ],\n "type": "object"\n },\n "format": {\n "enum": [\n "hopper",\n "analysis-database",\n "mach-o",\n "elf",\n "pe",\n "dos-mz",\n "dos-com",\n "zip",\n "ipa",\n "apk",\n "msix",\n "appx",\n "asar",\n "dmg",\n "pkg",\n "plist",\n "javascript",\n "source-map",\n "directory",\n "file",\n "unknown",\n "mach-o-universal",\n "javascript-bundle",\n "entitlements"\n ],\n "type": "string"\n },\n "local_path": {\n "type": "string"\n },\n "name": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "name",\n "digest",\n "format",\n "architecture",\n "local_path"\n ],\n "type": "object"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "evidence_id",\n "subject",\n "provider",\n "predicate_type",\n "operation",\n "parameters",\n "raw_result",\n "normalized_result",\n "confidence",\n "authority",\n "environment",\n "limitations",\n "locations",\n "evidence_links"\n ],\n "type": "object"\n },\n "evidence_id": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "result": {\n "additionalProperties": false,\n "properties": {\n "diagnostics": {\n "items": {\n "type": "string"\n },\n "type": "array"\n },\n "engine": {\n "anyOf": [\n {\n "additionalProperties": false,\n "properties": {\n "id": {\n "minLength": 1,\n "type": "string"\n },\n "version": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "id",\n "version"\n ],\n "type": "object"\n },\n {\n "type": "null"\n }\n ]\n },\n "import_map": {\n "anyOf": [\n {\n "additionalProperties": false,\n "properties": {\n "base_url": {\n "minLength": 1,\n "type": "string"\n },\n "bytes": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "path": {\n "minLength": 1,\n "type": "string"\n },\n "sha256": {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n }\n },\n "required": [\n "path",\n "sha256",\n "bytes",\n "base_url"\n ],\n "type": "object"\n },\n {\n "type": "null"\n }\n ]\n },\n "importer": {\n "additionalProperties": false,\n "properties": {\n "basis": {\n "enum": [\n "caller-selected",\n "reported-source-url"\n ],\n "type": "string"\n },\n "url": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "url",\n "basis"\n ],\n "type": "object"\n },\n "imports": {\n "items": {\n "additionalProperties": false,\n "properties": {\n "captured_candidates": {\n "items": {\n "additionalProperties": false,\n "properties": {\n "match": {\n "enum": [\n "exact-reported-url",\n "response-url-without-fragment"\n ],\n "type": "string"\n },\n "script": {\n "additionalProperties": false,\n "properties": {\n "content": {\n "oneOf": [\n {\n "additionalProperties": false,\n "properties": {\n "bytes": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "layout": {\n "enum": [\n "url-path",\n "isolated"\n ],\n "type": "string"\n },\n "layout_reason": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "media_type": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "redacted": {\n "anyOf": [\n {\n "type": "boolean"\n },\n {\n "type": "null"\n }\n ]\n },\n "relative_path": {\n "minLength": 1,\n "type": "string"\n },\n "representation": {\n "enum": [\n "debugger-source-utf8",\n "browser-decoded-response-bytes"\n ],\n "type": "string"\n },\n "sha256": {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n },\n "state": {\n "const": "exported",\n "type": "string"\n }\n },\n "required": [\n "state",\n "relative_path",\n "layout",\n "layout_reason",\n "sha256",\n "bytes",\n "media_type",\n "redacted",\n "representation"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "message": {\n "minLength": 1,\n "type": "string"\n },\n "reason": {\n "minLength": 1,\n "type": "string"\n },\n "state": {\n "const": "unavailable",\n "type": "string"\n }\n },\n "required": [\n "state",\n "reason",\n "message"\n ],\n "type": "object"\n }\n ]\n },\n "source": {\n "oneOf": [\n {\n "additionalProperties": false,\n "properties": {\n "frame_id": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "is_module": {\n "type": "boolean"\n },\n "kind": {\n "const": "page-script",\n "type": "string"\n },\n "language": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "script_key": {\n "minLength": 1,\n "type": "string"\n },\n "source_map_url": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "kind",\n "script_key",\n "frame_id",\n "is_module",\n "language",\n "source_map_url"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "kind": {\n "const": "scenario-response",\n "type": "string"\n },\n "request_sequence": {\n "maximum": 9007199254740991,\n "minimum": 1,\n "type": "integer"\n },\n "response_sequence": {\n "anyOf": [\n {\n "maximum": 9007199254740991,\n "minimum": 1,\n "type": "integer"\n },\n {\n "type": "null"\n }\n ]\n },\n "status": {\n "anyOf": [\n {\n "type": "number"\n },\n {\n "type": "null"\n }\n ]\n },\n "transaction_id": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "kind",\n "transaction_id",\n "request_sequence",\n "response_sequence",\n "status"\n ],\n "type": "object"\n }\n ]\n },\n "url": {\n "type": "string"\n }\n },\n "required": [\n "source",\n "url",\n "content"\n ],\n "type": "object"\n },\n "script_index": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "script_index",\n "match",\n "script"\n ],\n "type": "object"\n },\n "type": "array"\n },\n "end": {\n "additionalProperties": false,\n "properties": {\n "column": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "line": {\n "maximum": 9007199254740991,\n "minimum": 1,\n "type": "integer"\n },\n "offset": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "offset",\n "line",\n "column"\n ],\n "type": "object"\n },\n "execution": {\n "const": "unknown",\n "type": "string"\n },\n "expression": {\n "type": "string"\n },\n "kind": {\n "enum": [\n "static-import",\n "re-export",\n "dynamic-import"\n ],\n "type": "string"\n },\n "resolution": {\n "anyOf": [\n {\n "oneOf": [\n {\n "additionalProperties": false,\n "properties": {\n "state": {\n "const": "resolved",\n "type": "string"\n },\n "url": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "state",\n "url"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "message": {\n "type": "string"\n },\n "state": {\n "const": "rejected",\n "type": "string"\n }\n },\n "required": [\n "state",\n "message"\n ],\n "type": "object"\n }\n ]\n },\n {\n "additionalProperties": false,\n "properties": {\n "reason": {\n "const": "computed-specifier",\n "type": "string"\n },\n "state": {\n "const": "unknown",\n "type": "string"\n }\n },\n "required": [\n "state",\n "reason"\n ],\n "type": "object"\n }\n ]\n },\n "specifier": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "start": {\n "additionalProperties": false,\n "properties": {\n "column": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "line": {\n "maximum": 9007199254740991,\n "minimum": 1,\n "type": "integer"\n },\n "offset": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "offset",\n "line",\n "column"\n ],\n "type": "object"\n }\n },\n "required": [\n "kind",\n "specifier",\n "expression",\n "start",\n "end",\n "resolution",\n "captured_candidates",\n "execution"\n ],\n "type": "object"\n },\n "type": "array"\n },\n "limitations": {\n "items": {\n "type": "string"\n },\n "type": "array"\n },\n "manifest": {\n "additionalProperties": false,\n "properties": {\n "bytes": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "capture_completeness": {\n "anyOf": [\n {\n "additionalProperties": false,\n "properties": {\n "attach_limited_sections": {\n "items": {\n "enum": [\n "frames",\n "dom",\n "accessibility",\n "scripts",\n "script_sources",\n "resources",\n "network_requests",\n "network_initiators",\n "console_events",\n "console_text",\n "websocket_connections",\n "websocket_frames",\n "websocket_shapes",\n "json_body_shapes",\n "workers",\n "storage",\n "storage_keys",\n "metadata",\n "webmcp_tools",\n "screenshot",\n "source_maps",\n "timeline"\n ],\n "type": "string"\n },\n "type": "array"\n },\n "conditions": {\n "items": {\n "enum": [\n "complete_within_window",\n "policy_filtered",\n "attach_limited",\n "truncated"\n ],\n "type": "string"\n },\n "maxItems": 3,\n "minItems": 1,\n "type": "array"\n },\n "dropped_events": {\n "additionalProperties": false,\n "properties": {\n "console_events": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "network_requests": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "scripts": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "timeline_events": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "total": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "webmcp_tools": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "websocket_connections": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "websocket_frames": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "scripts",\n "network_requests",\n "console_events",\n "websocket_connections",\n "websocket_frames",\n "webmcp_tools",\n "timeline_events",\n "total"\n ],\n "type": "object"\n },\n "excluded": {\n "items": {\n "additionalProperties": false,\n "properties": {\n "count": {\n "anyOf": [\n {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n {\n "type": "null"\n }\n ]\n },\n "reason": {\n "enum": [\n "disallowed_origin",\n "unsupported_url",\n "unattributed_origin",\n "not_approved",\n "out_of_target_scope",\n "provider_unavailable",\n "invalid_protocol_value"\n ],\n "type": "string"\n },\n "section": {\n "enum": [\n "frames",\n "dom",\n "accessibility",\n "scripts",\n "script_sources",\n "resources",\n "network_requests",\n "network_initiators",\n "console_events",\n "console_text",\n "websocket_connections",\n "websocket_frames",\n "websocket_shapes",\n "json_body_shapes",\n "workers",\n "storage",\n "storage_keys",\n "metadata",\n "webmcp_tools",\n "screenshot",\n "source_maps",\n "timeline"\n ],\n "type": "string"\n }\n },\n "required": [\n "section",\n "reason",\n "count"\n ],\n "type": "object"\n },\n "type": "array"\n },\n "policy_filtered_sections": {\n "items": {\n "enum": [\n "frames",\n "dom",\n "accessibility",\n "scripts",\n "script_sources",\n "resources",\n "network_requests",\n "network_initiators",\n "console_events",\n "console_text",\n "websocket_connections",\n "websocket_frames",\n "websocket_shapes",\n "json_body_shapes",\n "workers",\n "storage",\n "storage_keys",\n "metadata",\n "webmcp_tools",\n "screenshot",\n "source_maps",\n "timeline"\n ],\n "type": "string"\n },\n "type": "array"\n },\n "status": {\n "enum": [\n "complete_within_window",\n "policy_filtered",\n "attach_limited",\n "truncated"\n ],\n "type": "string"\n },\n "truncated_sections": {\n "items": {\n "enum": [\n "frames",\n "dom",\n "accessibility",\n "scripts",\n "script_sources",\n "resources",\n "network_requests",\n "network_initiators",\n "console_events",\n "console_text",\n "websocket_connections",\n "websocket_frames",\n "websocket_shapes",\n "json_body_shapes",\n "workers",\n "storage",\n "storage_keys",\n "metadata",\n "webmcp_tools",\n "screenshot",\n "source_maps",\n "timeline"\n ],\n "type": "string"\n },\n "type": "array"\n },\n "unavailable_sections": {\n "items": {\n "enum": [\n "frames",\n "dom",\n "accessibility",\n "scripts",\n "script_sources",\n "resources",\n "network_requests",\n "network_initiators",\n "console_events",\n "console_text",\n "websocket_connections",\n "websocket_frames",\n "websocket_shapes",\n "json_body_shapes",\n "workers",\n "storage",\n "storage_keys",\n "metadata",\n "webmcp_tools",\n "screenshot",\n "source_maps",\n "timeline"\n ],\n "type": "string"\n },\n "type": "array"\n }\n },\n "required": [\n "status",\n "conditions",\n "policy_filtered_sections",\n "attach_limited_sections",\n "truncated_sections",\n "unavailable_sections",\n "excluded",\n "dropped_events"\n ],\n "type": "object"\n },\n {\n "oneOf": [\n {\n "additionalProperties": false,\n "properties": {\n "equality_eligible": {\n "const": true,\n "type": "boolean"\n },\n "missing_sections": {\n "items": {\n "not": {}\n },\n "maxItems": 0,\n "minItems": 0,\n "type": "array"\n },\n "status": {\n "const": "complete",\n "type": "string"\n },\n "truncated_sections": {\n "items": {\n "not": {}\n },\n "maxItems": 0,\n "minItems": 0,\n "type": "array"\n }\n },\n "required": [\n "status",\n "equality_eligible",\n "missing_sections",\n "truncated_sections"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "equality_eligible": {\n "const": false,\n "type": "boolean"\n },\n "missing_sections": {\n "items": {\n "enum": [\n "action",\n "screenshot",\n "dom",\n "accessibility",\n "url",\n "history",\n "storage",\n "events",\n "frames",\n "workers",\n "popups",\n "websockets"\n ],\n "type": "string"\n },\n "minItems": 1,\n "type": "array"\n },\n "status": {\n "const": "incomplete",\n "type": "string"\n },\n "truncated_sections": {\n "items": {\n "not": {}\n },\n "maxItems": 0,\n "minItems": 0,\n "type": "array"\n }\n },\n "required": [\n "status",\n "equality_eligible",\n "missing_sections",\n "truncated_sections"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "equality_eligible": {\n "const": false,\n "type": "boolean"\n },\n "missing_sections": {\n "items": {\n "enum": [\n "action",\n "screenshot",\n "dom",\n "accessibility",\n "url",\n "history",\n "storage",\n "events",\n "frames",\n "workers",\n "popups",\n "websockets"\n ],\n "type": "string"\n },\n "type": "array"\n },\n "status": {\n "const": "truncated",\n "type": "string"\n },\n "truncated_sections": {\n "items": {\n "enum": [\n "action",\n "screenshot",\n "dom",\n "accessibility",\n "url",\n "history",\n "storage",\n "events",\n "frames",\n "workers",\n "popups",\n "websockets"\n ],\n "type": "string"\n },\n "minItems": 1,\n "type": "array"\n }\n },\n "required": [\n "status",\n "equality_eligible",\n "missing_sections",\n "truncated_sections"\n ],\n "type": "object"\n }\n ]\n }\n ]\n },\n "capture_kind": {\n "enum": [\n "page-inspection",\n "browser-scenario"\n ],\n "type": "string"\n },\n "capture_path": {\n "minLength": 1,\n "type": "string"\n },\n "capture_sha256": {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n },\n "path": {\n "minLength": 1,\n "type": "string"\n },\n "reported_output_directory": {\n "type": "string"\n },\n "sha256": {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n },\n "source_evidence_id": {\n "anyOf": [\n {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "path",\n "sha256",\n "bytes",\n "reported_output_directory",\n "capture_path",\n "capture_sha256",\n "capture_kind",\n "capture_completeness",\n "source_evidence_id"\n ],\n "type": "object"\n },\n "parser": {\n "additionalProperties": false,\n "properties": {\n "diagnostics": {\n "items": {\n "type": "string"\n },\n "type": "array"\n },\n "location_units": {\n "const": "UTF-16 offsets and columns; one-based lines",\n "type": "string"\n },\n "state": {\n "enum": [\n "parsed",\n "unparseable"\n ],\n "type": "string"\n }\n },\n "required": [\n "state",\n "diagnostics",\n "location_units"\n ],\n "type": "object"\n },\n "source": {\n "additionalProperties": false,\n "properties": {\n "bytes": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "path": {\n "minLength": 1,\n "type": "string"\n },\n "script": {\n "additionalProperties": false,\n "properties": {\n "content": {\n "oneOf": [\n {\n "additionalProperties": false,\n "properties": {\n "bytes": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "layout": {\n "enum": [\n "url-path",\n "isolated"\n ],\n "type": "string"\n },\n "layout_reason": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "media_type": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "redacted": {\n "anyOf": [\n {\n "type": "boolean"\n },\n {\n "type": "null"\n }\n ]\n },\n "relative_path": {\n "minLength": 1,\n "type": "string"\n },\n "representation": {\n "enum": [\n "debugger-source-utf8",\n "browser-decoded-response-bytes"\n ],\n "type": "string"\n },\n "sha256": {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n },\n "state": {\n "const": "exported",\n "type": "string"\n }\n },\n "required": [\n "state",\n "relative_path",\n "layout",\n "layout_reason",\n "sha256",\n "bytes",\n "media_type",\n "redacted",\n "representation"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "message": {\n "minLength": 1,\n "type": "string"\n },\n "reason": {\n "minLength": 1,\n "type": "string"\n },\n "state": {\n "const": "unavailable",\n "type": "string"\n }\n },\n "required": [\n "state",\n "reason",\n "message"\n ],\n "type": "object"\n }\n ]\n },\n "source": {\n "oneOf": [\n {\n "additionalProperties": false,\n "properties": {\n "frame_id": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "is_module": {\n "type": "boolean"\n },\n "kind": {\n "const": "page-script",\n "type": "string"\n },\n "language": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "script_key": {\n "minLength": 1,\n "type": "string"\n },\n "source_map_url": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "kind",\n "script_key",\n "frame_id",\n "is_module",\n "language",\n "source_map_url"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "kind": {\n "const": "scenario-response",\n "type": "string"\n },\n "request_sequence": {\n "maximum": 9007199254740991,\n "minimum": 1,\n "type": "integer"\n },\n "response_sequence": {\n "anyOf": [\n {\n "maximum": 9007199254740991,\n "minimum": 1,\n "type": "integer"\n },\n {\n "type": "null"\n }\n ]\n },\n "status": {\n "anyOf": [\n {\n "type": "number"\n },\n {\n "type": "null"\n }\n ]\n },\n "transaction_id": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "kind",\n "transaction_id",\n "request_sequence",\n "response_sequence",\n "status"\n ],\n "type": "object"\n }\n ]\n },\n "url": {\n "type": "string"\n }\n },\n "required": [\n "source",\n "url",\n "content"\n ],\n "type": "object"\n },\n "script_index": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "sha256": {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n }\n },\n "required": [\n "path",\n "sha256",\n "bytes",\n "script_index",\n "script"\n ],\n "type": "object"\n }\n },\n "required": [\n "manifest",\n "source",\n "importer",\n "import_map",\n "parser",\n "engine",\n "imports",\n "diagnostics",\n "limitations"\n ],\n "type": "object"\n }\n },\n "required": [\n "result",\n "evidence_id",\n "evidence"\n ],\n "type": "object"\n },\n "requiresSession": false,\n "title": "Trace Web Module Imports"\n },\n {\n "analysisOperation": null,\n "annotations": {\n "destructiveHint": false,\n "idempotentHint": false,\n "openWorldHint": false,\n "readOnlyHint": false\n },\n "description": "Export JavaScript bytes already retained in one local inspect_web_page or capture_browser_scenario JSON capture (normalized result or complete Evidence). Writes scripts and a digest-verified manifest into an absent absolute output_directory. Returns all source URLs, script or transaction/event references, unavailable states, and an analysis_input for analyze_javascript_application when any bytes were exported. Include script sources in inspect_web_page or select capture.network.response_body in scenarios. No refetch or execution. Safe unambiguous URL layouts preserve relative module paths; versions, query variants, inline scripts, and path collisions are isolated with explicit resolution limitations.",\n "effects": {\n "accessesNetwork": false,\n "changesUiState": false,\n "idempotent": false,\n "launchesProcess": false,\n "mayDiscardData": false,\n "mutatesSession": true,\n "mutatesTarget": false,\n "writesFilesystem": true\n },\n "inputSchema": {\n "$schema": "https://json-schema.org/draft/2020-12/schema",\n "additionalProperties": false,\n "examples": [\n {\n "capture_path": "/analysis/capture.json",\n "output_directory": "/analysis/exported-scripts"\n }\n ],\n "properties": {\n "capture_path": {\n "description": "Absolute filesystem path to saved inspect_web_page or capture_browser_scenario JSON, normalized result or complete Evidence",\n "minLength": 1,\n "type": "string"\n },\n "output_directory": {\n "description": "Absolute absent filesystem directory for verified scripts and manifest; parent directory must exist",\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "capture_path",\n "output_directory"\n ],\n "type": "object"\n },\n "kind": "application",\n "name": "export_web_scripts",\n "outputSchema": {\n "$defs": {\n "__schema0": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "number"\n },\n {\n "type": "boolean"\n },\n {\n "type": "null"\n },\n {\n "items": {\n "$ref": "#/$defs/__schema0"\n },\n "type": "array"\n },\n {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n }\n ]\n }\n },\n "$schema": "https://json-schema.org/draft/2020-12/schema",\n "additionalProperties": false,\n "properties": {\n "evidence": {\n "additionalProperties": false,\n "properties": {\n "analysis_profile": {\n "additionalProperties": false,\n "properties": {\n "digest": {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n },\n "parameters": {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n },\n "provider": {\n "additionalProperties": false,\n "properties": {\n "id": {\n "minLength": 1,\n "type": "string"\n },\n "name": {\n "minLength": 1,\n "type": "string"\n },\n "version": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "id",\n "name",\n "version"\n ],\n "type": "object"\n }\n },\n "required": [\n "provider",\n "parameters",\n "digest"\n ],\n "type": "object"\n },\n "authority": {\n "enum": [\n "shipped-artifact",\n "controlled-replay",\n "historical-reference",\n "external-service",\n "analyst-inference"\n ],\n "type": "string"\n },\n "confidence": {\n "enum": [\n "observed",\n "derived",\n "inferred"\n ],\n "type": "string"\n },\n "environment": {\n "anyOf": [\n {\n "additionalProperties": false,\n "properties": {\n "architecture": {\n "minLength": 1,\n "type": "string"\n },\n "id": {\n "minLength": 1,\n "type": "string"\n },\n "isolation": {\n "enum": [\n "none",\n "process",\n "container",\n "virtual-machine"\n ],\n "type": "string"\n },\n "platform": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "id",\n "platform",\n "architecture",\n "isolation"\n ],\n "type": "object"\n },\n {\n "type": "null"\n }\n ]\n },\n "evidence_id": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "evidence_links": {\n "items": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "type": "array"\n },\n "limitations": {\n "items": {\n "type": "string"\n },\n "type": "array"\n },\n "locations": {\n "items": {\n "oneOf": [\n {\n "additionalProperties": false,\n "properties": {\n "address": {\n "minLength": 1,\n "type": "string"\n },\n "kind": {\n "const": "address",\n "type": "string"\n }\n },\n "required": [\n "kind",\n "address"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "end": {\n "minLength": 1,\n "type": "string"\n },\n "kind": {\n "const": "address-range",\n "type": "string"\n },\n "start": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "kind",\n "start",\n "end"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "kind": {\n "const": "artifact-path",\n "type": "string"\n },\n "path": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "kind",\n "path"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "kind": {\n "const": "file-offset",\n "type": "string"\n },\n "offset": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "kind",\n "offset"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "end": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "kind": {\n "const": "file-offset-range",\n "type": "string"\n },\n "start": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "kind",\n "start",\n "end"\n ],\n "type": "object"\n }\n ]\n },\n "type": "array"\n },\n "normalized_result": {\n "$ref": "#/$defs/__schema0"\n },\n "operation": {\n "minLength": 1,\n "type": "string"\n },\n "parameters": {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n },\n "predicate_type": {\n "minLength": 1,\n "type": "string"\n },\n "provider": {\n "additionalProperties": false,\n "properties": {\n "id": {\n "minLength": 1,\n "type": "string"\n },\n "name": {\n "minLength": 1,\n "type": "string"\n },\n "version": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "id",\n "name",\n "version"\n ],\n "type": "object"\n },\n "raw_result": {\n "anyOf": [\n {\n "$ref": "#/$defs/__schema0"\n },\n {\n "type": "null"\n }\n ]\n },\n "subject": {\n "anyOf": [\n {\n "additionalProperties": false,\n "properties": {\n "architecture": {\n "anyOf": [\n {\n "enum": [\n "x86",\n "x86_64",\n "arm",\n "arm64"\n ],\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "digest": {\n "additionalProperties": false,\n "properties": {\n "sha256": {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n }\n },\n "required": [\n "sha256"\n ],\n "type": "object"\n },\n "format": {\n "enum": [\n "hopper",\n "analysis-database",\n "mach-o",\n "elf",\n "pe",\n "dos-mz",\n "dos-com",\n "zip",\n "ipa",\n "apk",\n "msix",\n "appx",\n "asar",\n "dmg",\n "pkg",\n "plist",\n "javascript",\n "source-map",\n "directory",\n "file",\n "unknown",\n "mach-o-universal",\n "javascript-bundle",\n "entitlements"\n ],\n "type": "string"\n },\n "local_path": {\n "type": "string"\n },\n "name": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "name",\n "digest",\n "format",\n "architecture",\n "local_path"\n ],\n "type": "object"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "evidence_id",\n "subject",\n "provider",\n "predicate_type",\n "operation",\n "parameters",\n "raw_result",\n "normalized_result",\n "confidence",\n "authority",\n "environment",\n "limitations",\n "locations",\n "evidence_links"\n ],\n "type": "object"\n },\n "evidence_id": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "result": {\n "additionalProperties": false,\n "properties": {\n "analysis_input": {\n "anyOf": [\n {\n "additionalProperties": false,\n "properties": {\n "format": {\n "const": "directory",\n "type": "string"\n },\n "input_path": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "input_path",\n "format"\n ],\n "type": "object"\n },\n {\n "type": "null"\n }\n ]\n },\n "capture_completeness": {\n "anyOf": [\n {\n "additionalProperties": false,\n "properties": {\n "attach_limited_sections": {\n "items": {\n "enum": [\n "frames",\n "dom",\n "accessibility",\n "scripts",\n "script_sources",\n "resources",\n "network_requests",\n "network_initiators",\n "console_events",\n "console_text",\n "websocket_connections",\n "websocket_frames",\n "websocket_shapes",\n "json_body_shapes",\n "workers",\n "storage",\n "storage_keys",\n "metadata",\n "webmcp_tools",\n "screenshot",\n "source_maps",\n "timeline"\n ],\n "type": "string"\n },\n "type": "array"\n },\n "conditions": {\n "items": {\n "enum": [\n "complete_within_window",\n "policy_filtered",\n "attach_limited",\n "truncated"\n ],\n "type": "string"\n },\n "maxItems": 3,\n "minItems": 1,\n "type": "array"\n },\n "dropped_events": {\n "additionalProperties": false,\n "properties": {\n "console_events": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "network_requests": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "scripts": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "timeline_events": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "total": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "webmcp_tools": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "websocket_connections": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "websocket_frames": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "scripts",\n "network_requests",\n "console_events",\n "websocket_connections",\n "websocket_frames",\n "webmcp_tools",\n "timeline_events",\n "total"\n ],\n "type": "object"\n },\n "excluded": {\n "items": {\n "additionalProperties": false,\n "properties": {\n "count": {\n "anyOf": [\n {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n {\n "type": "null"\n }\n ]\n },\n "reason": {\n "enum": [\n "disallowed_origin",\n "unsupported_url",\n "unattributed_origin",\n "not_approved",\n "out_of_target_scope",\n "provider_unavailable",\n "invalid_protocol_value"\n ],\n "type": "string"\n },\n "section": {\n "enum": [\n "frames",\n "dom",\n "accessibility",\n "scripts",\n "script_sources",\n "resources",\n "network_requests",\n "network_initiators",\n "console_events",\n "console_text",\n "websocket_connections",\n "websocket_frames",\n "websocket_shapes",\n "json_body_shapes",\n "workers",\n "storage",\n "storage_keys",\n "metadata",\n "webmcp_tools",\n "screenshot",\n "source_maps",\n "timeline"\n ],\n "type": "string"\n }\n },\n "required": [\n "section",\n "reason",\n "count"\n ],\n "type": "object"\n },\n "type": "array"\n },\n "policy_filtered_sections": {\n "items": {\n "enum": [\n "frames",\n "dom",\n "accessibility",\n "scripts",\n "script_sources",\n "resources",\n "network_requests",\n "network_initiators",\n "console_events",\n "console_text",\n "websocket_connections",\n "websocket_frames",\n "websocket_shapes",\n "json_body_shapes",\n "workers",\n "storage",\n "storage_keys",\n "metadata",\n "webmcp_tools",\n "screenshot",\n "source_maps",\n "timeline"\n ],\n "type": "string"\n },\n "type": "array"\n },\n "status": {\n "enum": [\n "complete_within_window",\n "policy_filtered",\n "attach_limited",\n "truncated"\n ],\n "type": "string"\n },\n "truncated_sections": {\n "items": {\n "enum": [\n "frames",\n "dom",\n "accessibility",\n "scripts",\n "script_sources",\n "resources",\n "network_requests",\n "network_initiators",\n "console_events",\n "console_text",\n "websocket_connections",\n "websocket_frames",\n "websocket_shapes",\n "json_body_shapes",\n "workers",\n "storage",\n "storage_keys",\n "metadata",\n "webmcp_tools",\n "screenshot",\n "source_maps",\n "timeline"\n ],\n "type": "string"\n },\n "type": "array"\n },\n "unavailable_sections": {\n "items": {\n "enum": [\n "frames",\n "dom",\n "accessibility",\n "scripts",\n "script_sources",\n "resources",\n "network_requests",\n "network_initiators",\n "console_events",\n "console_text",\n "websocket_connections",\n "websocket_frames",\n "websocket_shapes",\n "json_body_shapes",\n "workers",\n "storage",\n "storage_keys",\n "metadata",\n "webmcp_tools",\n "screenshot",\n "source_maps",\n "timeline"\n ],\n "type": "string"\n },\n "type": "array"\n }\n },\n "required": [\n "status",\n "conditions",\n "policy_filtered_sections",\n "attach_limited_sections",\n "truncated_sections",\n "unavailable_sections",\n "excluded",\n "dropped_events"\n ],\n "type": "object"\n },\n {\n "oneOf": [\n {\n "additionalProperties": false,\n "properties": {\n "equality_eligible": {\n "const": true,\n "type": "boolean"\n },\n "missing_sections": {\n "items": {\n "not": {}\n },\n "maxItems": 0,\n "minItems": 0,\n "type": "array"\n },\n "status": {\n "const": "complete",\n "type": "string"\n },\n "truncated_sections": {\n "items": {\n "not": {}\n },\n "maxItems": 0,\n "minItems": 0,\n "type": "array"\n }\n },\n "required": [\n "status",\n "equality_eligible",\n "missing_sections",\n "truncated_sections"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "equality_eligible": {\n "const": false,\n "type": "boolean"\n },\n "missing_sections": {\n "items": {\n "enum": [\n "action",\n "screenshot",\n "dom",\n "accessibility",\n "url",\n "history",\n "storage",\n "events",\n "frames",\n "workers",\n "popups",\n "websockets"\n ],\n "type": "string"\n },\n "minItems": 1,\n "type": "array"\n },\n "status": {\n "const": "incomplete",\n "type": "string"\n },\n "truncated_sections": {\n "items": {\n "not": {}\n },\n "maxItems": 0,\n "minItems": 0,\n "type": "array"\n }\n },\n "required": [\n "status",\n "equality_eligible",\n "missing_sections",\n "truncated_sections"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "equality_eligible": {\n "const": false,\n "type": "boolean"\n },\n "missing_sections": {\n "items": {\n "enum": [\n "action",\n "screenshot",\n "dom",\n "accessibility",\n "url",\n "history",\n "storage",\n "events",\n "frames",\n "workers",\n "popups",\n "websockets"\n ],\n "type": "string"\n },\n "type": "array"\n },\n "status": {\n "const": "truncated",\n "type": "string"\n },\n "truncated_sections": {\n "items": {\n "enum": [\n "action",\n "screenshot",\n "dom",\n "accessibility",\n "url",\n "history",\n "storage",\n "events",\n "frames",\n "workers",\n "popups",\n "websockets"\n ],\n "type": "string"\n },\n "minItems": 1,\n "type": "array"\n }\n },\n "required": [\n "status",\n "equality_eligible",\n "missing_sections",\n "truncated_sections"\n ],\n "type": "object"\n }\n ]\n }\n ]\n },\n "capture_kind": {\n "enum": [\n "page-inspection",\n "browser-scenario"\n ],\n "type": "string"\n },\n "capture_path": {\n "minLength": 1,\n "type": "string"\n },\n "capture_sha256": {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n },\n "limitations": {\n "items": {\n "type": "string"\n },\n "type": "array"\n },\n "manifest": {\n "additionalProperties": false,\n "properties": {\n "bytes": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "path": {\n "minLength": 1,\n "type": "string"\n },\n "sha256": {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n }\n },\n "required": [\n "path",\n "sha256",\n "bytes"\n ],\n "type": "object"\n },\n "output_directory": {\n "minLength": 1,\n "type": "string"\n },\n "scripts": {\n "items": {\n "additionalProperties": false,\n "properties": {\n "content": {\n "oneOf": [\n {\n "additionalProperties": false,\n "properties": {\n "bytes": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "layout": {\n "enum": [\n "url-path",\n "isolated"\n ],\n "type": "string"\n },\n "layout_reason": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "media_type": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "redacted": {\n "anyOf": [\n {\n "type": "boolean"\n },\n {\n "type": "null"\n }\n ]\n },\n "relative_path": {\n "minLength": 1,\n "type": "string"\n },\n "representation": {\n "enum": [\n "debugger-source-utf8",\n "browser-decoded-response-bytes"\n ],\n "type": "string"\n },\n "sha256": {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n },\n "state": {\n "const": "exported",\n "type": "string"\n }\n },\n "required": [\n "state",\n "relative_path",\n "layout",\n "layout_reason",\n "sha256",\n "bytes",\n "media_type",\n "redacted",\n "representation"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "message": {\n "minLength": 1,\n "type": "string"\n },\n "reason": {\n "minLength": 1,\n "type": "string"\n },\n "state": {\n "const": "unavailable",\n "type": "string"\n }\n },\n "required": [\n "state",\n "reason",\n "message"\n ],\n "type": "object"\n }\n ]\n },\n "source": {\n "oneOf": [\n {\n "additionalProperties": false,\n "properties": {\n "frame_id": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "is_module": {\n "type": "boolean"\n },\n "kind": {\n "const": "page-script",\n "type": "string"\n },\n "language": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "script_key": {\n "minLength": 1,\n "type": "string"\n },\n "source_map_url": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "kind",\n "script_key",\n "frame_id",\n "is_module",\n "language",\n "source_map_url"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "kind": {\n "const": "scenario-response",\n "type": "string"\n },\n "request_sequence": {\n "maximum": 9007199254740991,\n "minimum": 1,\n "type": "integer"\n },\n "response_sequence": {\n "anyOf": [\n {\n "maximum": 9007199254740991,\n "minimum": 1,\n "type": "integer"\n },\n {\n "type": "null"\n }\n ]\n },\n "status": {\n "anyOf": [\n {\n "type": "number"\n },\n {\n "type": "null"\n }\n ]\n },\n "transaction_id": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "kind",\n "transaction_id",\n "request_sequence",\n "response_sequence",\n "status"\n ],\n "type": "object"\n }\n ]\n },\n "url": {\n "type": "string"\n }\n },\n "required": [\n "source",\n "url",\n "content"\n ],\n "type": "object"\n },\n "type": "array"\n },\n "source_evidence_id": {\n "anyOf": [\n {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "capture_path",\n "capture_sha256",\n "capture_kind",\n "source_evidence_id",\n "capture_completeness",\n "output_directory",\n "analysis_input",\n "scripts",\n "limitations",\n "manifest"\n ],\n "type": "object"\n }\n },\n "required": [\n "result",\n "evidence_id",\n "evidence"\n ],\n "type": "object"\n },\n "requiresSession": false,\n "title": "Export Web Scripts"\n },\n {\n "analysisOperation": null,\n "annotations": {\n "destructiveHint": false,\n "idempotentHint": false,\n "openWorldHint": true,\n "readOnlyHint": false\n },\n "description": "Recover readable modules from one local UTF-8 JavaScript script/bundle into an absent directory, using caller-supplied Wakaru 1.13.0 on Linux x64. Returns original/derived digests, extraction byte ranges, emitted source maps, warnings and analysis_input inline. Structural splitting may fall back to one module; original names and runtime equivalence remain unknown. No application code execution. Requires util-linux prlimit; one worker, 1 GiB address-space ceiling, 120-second deadline, 64 MiB input, 128 MiB output, 10000 entries and 8 MiB per diagnostic/report stream.",\n "effects": {\n "accessesNetwork": false,\n "changesUiState": false,\n "idempotent": false,\n "launchesProcess": true,\n "mayDiscardData": false,\n "mutatesSession": true,\n "mutatesTarget": false,\n "writesFilesystem": true\n },\n "inputSchema": {\n "$schema": "https://json-schema.org/draft/2020-12/schema",\n "additionalProperties": false,\n "examples": [\n {\n "output_directory": "/tmp/recovered-app",\n "path": "/tmp/web-scripts/app.js"\n }\n ],\n "properties": {\n "extraction_mode": {\n "default": "structural",\n "description": "Structural module boundaries, heuristic fallback, or finer inspection-only regions",\n "enum": [\n "structural",\n "heuristic",\n "inspection"\n ],\n "type": "string"\n },\n "output_directory": {\n "description": "Absolute absent output directory; parent must exist",\n "minLength": 1,\n "type": "string"\n },\n "path": {\n "description": "Absolute path to a UTF-8 JavaScript file; never executed",\n "minLength": 1,\n "type": "string"\n },\n "rewrite_level": {\n "default": "standard",\n "description": "Upstream syntax recovery level; runtime equivalence remains unverified",\n "enum": [\n "minimal",\n "standard",\n "aggressive"\n ],\n "type": "string"\n }\n },\n "required": [\n "path",\n "output_directory"\n ],\n "type": "object"\n },\n "kind": "application",\n "name": "recover_javascript_sources",\n "outputSchema": {\n "$defs": {\n "__schema0": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "number"\n },\n {\n "type": "boolean"\n },\n {\n "type": "null"\n },\n {\n "items": {\n "$ref": "#/$defs/__schema0"\n },\n "type": "array"\n },\n {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n }\n ]\n }\n },\n "$schema": "https://json-schema.org/draft/2020-12/schema",\n "additionalProperties": false,\n "properties": {\n "evidence": {\n "additionalProperties": false,\n "properties": {\n "analysis_profile": {\n "additionalProperties": false,\n "properties": {\n "digest": {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n },\n "parameters": {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n },\n "provider": {\n "additionalProperties": false,\n "properties": {\n "id": {\n "minLength": 1,\n "type": "string"\n },\n "name": {\n "minLength": 1,\n "type": "string"\n },\n "version": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "id",\n "name",\n "version"\n ],\n "type": "object"\n }\n },\n "required": [\n "provider",\n "parameters",\n "digest"\n ],\n "type": "object"\n },\n "authority": {\n "enum": [\n "shipped-artifact",\n "controlled-replay",\n "historical-reference",\n "external-service",\n "analyst-inference"\n ],\n "type": "string"\n },\n "confidence": {\n "enum": [\n "observed",\n "derived",\n "inferred"\n ],\n "type": "string"\n },\n "environment": {\n "anyOf": [\n {\n "additionalProperties": false,\n "properties": {\n "architecture": {\n "minLength": 1,\n "type": "string"\n },\n "id": {\n "minLength": 1,\n "type": "string"\n },\n "isolation": {\n "enum": [\n "none",\n "process",\n "container",\n "virtual-machine"\n ],\n "type": "string"\n },\n "platform": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "id",\n "platform",\n "architecture",\n "isolation"\n ],\n "type": "object"\n },\n {\n "type": "null"\n }\n ]\n },\n "evidence_id": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "evidence_links": {\n "items": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "type": "array"\n },\n "limitations": {\n "items": {\n "type": "string"\n },\n "type": "array"\n },\n "locations": {\n "items": {\n "oneOf": [\n {\n "additionalProperties": false,\n "properties": {\n "address": {\n "minLength": 1,\n "type": "string"\n },\n "kind": {\n "const": "address",\n "type": "string"\n }\n },\n "required": [\n "kind",\n "address"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "end": {\n "minLength": 1,\n "type": "string"\n },\n "kind": {\n "const": "address-range",\n "type": "string"\n },\n "start": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "kind",\n "start",\n "end"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "kind": {\n "const": "artifact-path",\n "type": "string"\n },\n "path": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "kind",\n "path"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "kind": {\n "const": "file-offset",\n "type": "string"\n },\n "offset": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "kind",\n "offset"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "end": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "kind": {\n "const": "file-offset-range",\n "type": "string"\n },\n "start": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "kind",\n "start",\n "end"\n ],\n "type": "object"\n }\n ]\n },\n "type": "array"\n },\n "normalized_result": {\n "$ref": "#/$defs/__schema0"\n },\n "operation": {\n "minLength": 1,\n "type": "string"\n },\n "parameters": {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n },\n "predicate_type": {\n "minLength": 1,\n "type": "string"\n },\n "provider": {\n "additionalProperties": false,\n "properties": {\n "id": {\n "minLength": 1,\n "type": "string"\n },\n "name": {\n "minLength": 1,\n "type": "string"\n },\n "version": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "id",\n "name",\n "version"\n ],\n "type": "object"\n },\n "raw_result": {\n "anyOf": [\n {\n "$ref": "#/$defs/__schema0"\n },\n {\n "type": "null"\n }\n ]\n },\n "subject": {\n "anyOf": [\n {\n "additionalProperties": false,\n "properties": {\n "architecture": {\n "anyOf": [\n {\n "enum": [\n "x86",\n "x86_64",\n "arm",\n "arm64"\n ],\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "digest": {\n "additionalProperties": false,\n "properties": {\n "sha256": {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n }\n },\n "required": [\n "sha256"\n ],\n "type": "object"\n },\n "format": {\n "enum": [\n "hopper",\n "analysis-database",\n "mach-o",\n "elf",\n "pe",\n "dos-mz",\n "dos-com",\n "zip",\n "ipa",\n "apk",\n "msix",\n "appx",\n "asar",\n "dmg",\n "pkg",\n "plist",\n "javascript",\n "source-map",\n "directory",\n "file",\n "unknown",\n "mach-o-universal",\n "javascript-bundle",\n "entitlements"\n ],\n "type": "string"\n },\n "local_path": {\n "type": "string"\n },\n "name": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "name",\n "digest",\n "format",\n "architecture",\n "local_path"\n ],\n "type": "object"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "evidence_id",\n "subject",\n "provider",\n "predicate_type",\n "operation",\n "parameters",\n "raw_result",\n "normalized_result",\n "confidence",\n "authority",\n "environment",\n "limitations",\n "locations",\n "evidence_links"\n ],\n "type": "object"\n },\n "evidence_id": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "result": {\n "additionalProperties": false,\n "properties": {\n "analysis_input": {\n "anyOf": [\n {\n "additionalProperties": false,\n "properties": {\n "format": {\n "const": "directory",\n "type": "string"\n },\n "input_path": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "input_path",\n "format"\n ],\n "type": "object"\n },\n {\n "type": "null"\n }\n ]\n },\n "detected_formats": {\n "items": {\n "type": "string"\n },\n "type": "array"\n },\n "engine": {\n "additionalProperties": false,\n "properties": {\n "audited_source_revision": {\n "minLength": 1,\n "type": "string"\n },\n "executable": {\n "additionalProperties": false,\n "properties": {\n "bytes": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "path": {\n "minLength": 1,\n "type": "string"\n },\n "sha256": {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n }\n },\n "required": [\n "path",\n "sha256",\n "bytes"\n ],\n "type": "object"\n },\n "executed_source_revision": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "id": {\n "minLength": 1,\n "type": "string"\n },\n "version": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "id",\n "version",\n "executable",\n "audited_source_revision",\n "executed_source_revision"\n ],\n "type": "object"\n },\n "failed": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "limitations": {\n "items": {\n "type": "string"\n },\n "type": "array"\n },\n "manifest": {\n "additionalProperties": false,\n "properties": {\n "bytes": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "path": {\n "minLength": 1,\n "type": "string"\n },\n "sha256": {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n }\n },\n "required": [\n "path",\n "sha256",\n "bytes"\n ],\n "type": "object"\n },\n "modules": {\n "items": {\n "additionalProperties": false,\n "properties": {\n "artifact": {\n "additionalProperties": false,\n "properties": {\n "bytes": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "path": {\n "minLength": 1,\n "type": "string"\n },\n "sha256": {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n }\n },\n "required": [\n "path",\n "sha256",\n "bytes"\n ],\n "type": "object"\n },\n "provenance": {\n "additionalProperties": false,\n "properties": {\n "byte_ranges": {\n "items": {\n "additionalProperties": false,\n "properties": {\n "end": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "start": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "start",\n "end"\n ],\n "type": "object"\n },\n "type": "array"\n },\n "context_byte_ranges": {\n "items": {\n "additionalProperties": false,\n "properties": {\n "end": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "start": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "start",\n "end"\n ],\n "type": "object"\n },\n "type": "array"\n },\n "extraction": {\n "type": "string"\n },\n "original_path": {\n "type": "string"\n },\n "original_sha256": {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n },\n "range_semantics": {\n "const": "half-open-utf8-bytes",\n "type": "string"\n },\n "reported_input": {\n "type": "string"\n }\n },\n "required": [\n "reported_input",\n "original_path",\n "original_sha256",\n "extraction",\n "byte_ranges",\n "context_byte_ranges",\n "range_semantics"\n ],\n "type": "object"\n },\n "reported_filename": {\n "minLength": 1,\n "type": "string"\n },\n "reported_status": {\n "minLength": 1,\n "type": "string"\n },\n "source_map": {\n "anyOf": [\n {\n "additionalProperties": false,\n "properties": {\n "bytes": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "path": {\n "minLength": 1,\n "type": "string"\n },\n "sha256": {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n }\n },\n "required": [\n "path",\n "sha256",\n "bytes"\n ],\n "type": "object"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "reported_filename",\n "reported_status",\n "artifact",\n "source_map",\n "provenance"\n ],\n "type": "object"\n },\n "type": "array"\n },\n "options": {\n "additionalProperties": false,\n "properties": {\n "extraction_mode": {\n "enum": [\n "structural",\n "heuristic",\n "inspection"\n ],\n "type": "string"\n },\n "rewrite_level": {\n "enum": [\n "minimal",\n "standard",\n "aggressive"\n ],\n "type": "string"\n }\n },\n "required": [\n "extraction_mode",\n "rewrite_level"\n ],\n "type": "object"\n },\n "provenance": {\n "additionalProperties": false,\n "properties": {\n "bytes": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "path": {\n "minLength": 1,\n "type": "string"\n },\n "sha256": {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n }\n },\n "required": [\n "path",\n "sha256",\n "bytes"\n ],\n "type": "object"\n },\n "report": {\n "additionalProperties": false,\n "properties": {\n "bytes": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "path": {\n "minLength": 1,\n "type": "string"\n },\n "sha256": {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n }\n },\n "required": [\n "path",\n "sha256",\n "bytes"\n ],\n "type": "object"\n },\n "reported_format": {\n "type": "string"\n },\n "reported_safety": {\n "type": "string"\n },\n "reported_strategy": {\n "type": "string"\n },\n "runtime_equivalence": {\n "const": "unknown",\n "type": "string"\n },\n "source": {\n "additionalProperties": false,\n "properties": {\n "bytes": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "path": {\n "minLength": 1,\n "type": "string"\n },\n "published_copy": {\n "additionalProperties": false,\n "properties": {\n "bytes": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "path": {\n "minLength": 1,\n "type": "string"\n },\n "sha256": {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n }\n },\n "required": [\n "path",\n "sha256",\n "bytes"\n ],\n "type": "object"\n },\n "sha256": {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n },\n "snapshot_path": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "path",\n "sha256",\n "bytes",\n "snapshot_path",\n "published_copy"\n ],\n "type": "object"\n },\n "status": {\n "enum": [\n "complete",\n "partial"\n ],\n "type": "string"\n },\n "total": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "warnings": {\n "items": {\n "additionalProperties": false,\n "properties": {\n "filename": {\n "type": "string"\n },\n "is_error": {\n "type": "boolean"\n },\n "kind": {\n "type": "string"\n },\n "message": {\n "type": "string"\n }\n },\n "required": [\n "filename",\n "kind",\n "is_error",\n "message"\n ],\n "type": "object"\n },\n "type": "array"\n }\n },\n "required": [\n "source",\n "engine",\n "options",\n "status",\n "detected_formats",\n "reported_safety",\n "reported_strategy",\n "reported_format",\n "total",\n "failed",\n "modules",\n "warnings",\n "report",\n "provenance",\n "manifest",\n "analysis_input",\n "runtime_equivalence",\n "limitations"\n ],\n "type": "object"\n }\n },\n "required": [\n "result",\n "evidence_id",\n "evidence"\n ],\n "type": "object"\n },\n "requiresSession": false,\n "title": "Recover Javascript Sources"\n },\n {\n "analysisOperation": null,\n "annotations": {\n "destructiveHint": false,\n "idempotentHint": true,\n "openWorldHint": true,\n "readOnlyHint": false\n },\n "description": "Open a local executable, application bundle, archive, JavaScript, source map, plist, or analysis database after validation. format=dos-com explicitly interprets 1..65280 headerless bytes as a DOS COM analysis image; omission preserves header-based detection. 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 analysis snapshot is imported atomically and must match the binary identity, concrete provider, and canonical analysis profile exactly.",\n "effects": {\n "accessesNetwork": false,\n "changesUiState": false,\n "idempotent": true,\n "launchesProcess": true,\n "mayDiscardData": false,\n "mutatesSession": true,\n "mutatesTarget": false,\n "writesFilesystem": false\n },\n "inputSchema": {\n "$schema": "https://json-schema.org/draft/2020-12/schema",\n "examples": [\n {\n "path": "/tmp/fixture"\n }\n ],\n "properties": {\n "format": {\n "const": "dos-com",\n "description": "Explicit headerless DOS COM interpretation; omission preserves header-based detection",\n "type": "string"\n },\n "path": {\n "description": "Local filesystem path used by this operation.",\n "minLength": 1,\n "type": "string"\n },\n "provider_id": {\n "anyOf": [\n {\n "const": "auto",\n "type": "string"\n },\n {\n "minLength": 1,\n "pattern": "^[a-z][a-z0-9-]*$",\n "type": "string"\n }\n ],\n "description": "Exact deep-analysis provider ID, or automatic selection when omitted."\n },\n "snapshot_path": {\n "description": "Local filesystem path for snapshot.",\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "path"\n ],\n "type": "object"\n },\n "kind": "session",\n "name": "open_binary",\n "outputSchema": {\n "$schema": "https://json-schema.org/draft/2020-12/schema",\n "additionalProperties": false,\n "properties": {\n "result": {\n "additionalProperties": false,\n "properties": {\n "architecture": {\n "anyOf": [\n {\n "enum": [\n "x86",\n "x86_64",\n "arm",\n "arm64"\n ],\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "format": {\n "enum": [\n "hopper",\n "analysis-database",\n "mach-o",\n "elf",\n "pe",\n "dos-mz",\n "dos-com",\n "zip",\n "ipa",\n "apk",\n "msix",\n "appx",\n "asar",\n "dmg",\n "pkg",\n "plist",\n "javascript",\n "source-map"\n ],\n "type": "string"\n },\n "kind": {\n "enum": [\n "executable",\n "database",\n "archive",\n "artifact"\n ],\n "type": "string"\n },\n "loaderArgs": {\n "items": {\n "type": "string"\n },\n "type": "array"\n },\n "path": {\n "type": "string"\n },\n "sha256": {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n }\n },\n "required": [\n "path",\n "format",\n "kind",\n "loaderArgs",\n "sha256",\n "architecture"\n ],\n "type": "object"\n }\n },\n "required": [\n "result"\n ],\n "type": "object"\n },\n "requiresSession": true,\n "title": "Open Binary"\n },\n {\n "analysisOperation": null,\n "annotations": {\n "destructiveHint": true,\n "idempotentHint": false,\n "openWorldHint": false,\n "readOnlyHint": false\n },\n "description": "Optionally write a provider-neutral analysis snapshot atomically to the caller-supplied path, then close the active target and every provider resource started for it. Existing files require explicit overwrite; a failed save leaves the session open so cached analysis is not lost.",\n "effects": {\n "accessesNetwork": false,\n "changesUiState": false,\n "idempotent": false,\n "launchesProcess": false,\n "mayDiscardData": true,\n "mutatesSession": true,\n "mutatesTarget": false,\n "writesFilesystem": true\n },\n "inputSchema": {\n "$schema": "https://json-schema.org/draft/2020-12/schema",\n "examples": [\n {\n "overwrite": false\n }\n ],\n "properties": {\n "overwrite": {\n "default": false,\n "description": "Whether an existing destination may be replaced.",\n "type": "boolean"\n },\n "snapshot_path": {\n "description": "Local filesystem path for snapshot.",\n "minLength": 1,\n "type": "string"\n }\n },\n "type": "object"\n },\n "kind": "session",\n "name": "close_binary",\n "outputSchema": {\n "$schema": "https://json-schema.org/draft/2020-12/schema",\n "additionalProperties": false,\n "properties": {\n "result": {\n "anyOf": [\n {\n "type": "null"\n },\n {\n "additionalProperties": false,\n "properties": {\n "bytes": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "entries": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "path": {\n "type": "string"\n }\n },\n "required": [\n "path",\n "bytes",\n "entries"\n ],\n "type": "object"\n }\n ]\n }\n },\n "required": [\n "result"\n ],\n "type": "object"\n },\n "requiresSession": true,\n "title": "Close Binary"\n },\n {\n "analysisOperation": null,\n "annotations": {\n "destructiveHint": false,\n "idempotentHint": true,\n "openWorldHint": false,\n "readOnlyHint": true\n },\n "description": "Report the complete current target, provider, capability availability, client-feature, analysis, and server-identity status without starting analysis.",\n "effects": {\n "accessesNetwork": false,\n "changesUiState": false,\n "idempotent": true,\n "launchesProcess": false,\n "mayDiscardData": false,\n "mutatesSession": false,\n "mutatesTarget": false,\n "writesFilesystem": false\n },\n "inputSchema": {\n "$schema": "https://json-schema.org/draft/2020-12/schema",\n "examples": [\n {}\n ],\n "properties": {\n "expected_catalog_digest": {\n "description": "Expected catalog digest used to reject stale or mismatched input.",\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n },\n "expected_package_version": {\n "description": "Expected package version used to reject stale or mismatched input.",\n "minLength": 1,\n "type": "string"\n },\n "expected_server_path": {\n "description": "Expected server path used to reject stale or mismatched input.",\n "minLength": 1,\n "type": "string"\n }\n },\n "type": "object"\n },\n "kind": "session",\n "name": "binary_session",\n "outputSchema": {\n "$defs": {\n "__schema0": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "number"\n },\n {\n "type": "boolean"\n },\n {\n "type": "null"\n },\n {\n "items": {\n "$ref": "#/$defs/__schema0"\n },\n "type": "array"\n },\n {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n }\n ]\n },\n "__schema1": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "number"\n },\n {\n "type": "boolean"\n },\n {\n "type": "null"\n },\n {\n "items": {\n "$ref": "#/$defs/__schema1"\n },\n "type": "array"\n },\n {\n "additionalProperties": {\n "$ref": "#/$defs/__schema1"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n }\n ]\n }\n },\n "$schema": "https://json-schema.org/draft/2020-12/schema",\n "additionalProperties": false,\n "properties": {\n "result": {\n "anyOf": [\n {\n "anyOf": [\n {\n "additionalProperties": {},\n "properties": {\n "analysis_activity": {\n "additionalProperties": false,\n "properties": {\n "providers": {\n "items": {\n "additionalProperties": false,\n "properties": {\n "active": {\n "anyOf": [\n {\n "additionalProperties": false,\n "properties": {\n "caller_state": {\n "enum": [\n "waiting",\n "cancelled"\n ],\n "type": "string"\n },\n "elapsed_ms": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "operation": {\n "minLength": 1,\n "type": "string"\n },\n "request_id": {\n "maximum": 9007199254740991,\n "minimum": 1,\n "type": "integer"\n }\n },\n "required": [\n "request_id",\n "operation",\n "elapsed_ms",\n "caller_state"\n ],\n "type": "object"\n },\n {\n "type": "null"\n }\n ]\n },\n "provider": {\n "additionalProperties": false,\n "properties": {\n "id": {\n "type": "string"\n },\n "name": {\n "type": "string"\n },\n "version": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "id",\n "name",\n "version"\n ],\n "type": "object"\n },\n "queued_requests": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "provider",\n "active",\n "queued_requests"\n ],\n "type": "object"\n },\n "type": "array"\n },\n "status": {\n "enum": [\n "not_observed",\n "idle",\n "busy"\n ],\n "type": "string"\n }\n },\n "required": [\n "status",\n "providers"\n ],\n "type": "object"\n },\n "analysis_provider_binding": {\n "anyOf": [\n {\n "additionalProperties": false,\n "properties": {\n "analysis_profile": {\n "additionalProperties": false,\n "properties": {\n "digest": {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n },\n "parameters": {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n },\n "provider": {\n "additionalProperties": false,\n "properties": {\n "id": {\n "minLength": 1,\n "type": "string"\n },\n "name": {\n "minLength": 1,\n "type": "string"\n },\n "version": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "id",\n "name",\n "version"\n ],\n "type": "object"\n }\n },\n "required": [\n "provider",\n "parameters",\n "digest"\n ],\n "type": "object"\n },\n "provider": {\n "additionalProperties": false,\n "properties": {\n "id": {\n "type": "string"\n },\n "name": {\n "type": "string"\n },\n "version": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "id",\n "name",\n "version"\n ],\n "type": "object"\n },\n "selection_source": {\n "enum": [\n "request",\n "environment",\n "auto-single-candidate"\n ],\n "type": "string"\n }\n },\n "required": [\n "provider",\n "selection_source",\n "analysis_profile"\n ],\n "type": "object"\n },\n {\n "type": "null"\n }\n ]\n },\n "analysis_provider_candidates": {\n "items": {\n "additionalProperties": false,\n "properties": {\n "availability": {\n "oneOf": [\n {\n "additionalProperties": false,\n "properties": {\n "code": {\n "type": "null"\n },\n "diagnostics": {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n },\n "reason": {\n "type": "null"\n },\n "status": {\n "const": "available",\n "type": "string"\n }\n },\n "required": [\n "status",\n "code",\n "reason",\n "diagnostics"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "code": {\n "enum": [\n "not_configured",\n "executable_missing",\n "runtime_missing",\n "unsupported_host",\n "unsupported_version",\n "target_kind_unsupported",\n "target_format_unsupported",\n "architecture_unsupported",\n "target_role_unsupported",\n "managed_target_unsupported",\n "open_options_invalid",\n "version_unresolved"\n ],\n "type": "string"\n },\n "diagnostics": {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n },\n "reason": {\n "minLength": 1,\n "type": "string"\n },\n "status": {\n "const": "unavailable",\n "type": "string"\n }\n },\n "required": [\n "status",\n "code",\n "reason",\n "diagnostics"\n ],\n "type": "object"\n }\n ]\n },\n "capabilities": {\n "items": {\n "oneOf": [\n {\n "additionalProperties": false,\n "properties": {\n "availability_code": {\n "type": "null"\n },\n "available": {\n "const": true,\n "type": "boolean"\n },\n "effects": {\n "additionalProperties": false,\n "properties": {\n "changes_permissions": {\n "type": "boolean"\n },\n "launches_process": {\n "type": "boolean"\n },\n "may_access_network": {\n "type": "boolean"\n },\n "may_show_ui": {\n "type": "boolean"\n },\n "may_write_filesystem": {\n "type": "boolean"\n },\n "mutates_artifact": {\n "type": "boolean"\n },\n "requires_root": {\n "type": "boolean"\n }\n },\n "required": [\n "mutates_artifact",\n "launches_process",\n "may_show_ui",\n "may_access_network",\n "may_write_filesystem",\n "changes_permissions",\n "requires_root"\n ],\n "type": "object"\n },\n "limitations": {\n "items": {\n "type": "string"\n },\n "type": "array"\n },\n "operation": {\n "type": "string"\n },\n "reason": {\n "type": "null"\n }\n },\n "required": [\n "operation",\n "effects",\n "limitations",\n "available",\n "reason",\n "availability_code"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "availability_code": {\n "anyOf": [\n {\n "enum": [\n "not_configured",\n "executable_missing",\n "runtime_missing",\n "unsupported_host",\n "unsupported_version",\n "target_kind_unsupported",\n "target_format_unsupported",\n "architecture_unsupported",\n "target_role_unsupported",\n "managed_target_unsupported",\n "open_options_invalid",\n "version_unresolved"\n ],\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "available": {\n "const": false,\n "type": "boolean"\n },\n "effects": {\n "additionalProperties": false,\n "properties": {\n "changes_permissions": {\n "type": "boolean"\n },\n "launches_process": {\n "type": "boolean"\n },\n "may_access_network": {\n "type": "boolean"\n },\n "may_show_ui": {\n "type": "boolean"\n },\n "may_write_filesystem": {\n "type": "boolean"\n },\n "mutates_artifact": {\n "type": "boolean"\n },\n "requires_root": {\n "type": "boolean"\n }\n },\n "required": [\n "mutates_artifact",\n "launches_process",\n "may_show_ui",\n "may_access_network",\n "may_write_filesystem",\n "changes_permissions",\n "requires_root"\n ],\n "type": "object"\n },\n "limitations": {\n "items": {\n "type": "string"\n },\n "type": "array"\n },\n "operation": {\n "type": "string"\n },\n "reason": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "operation",\n "effects",\n "limitations",\n "available",\n "reason",\n "availability_code"\n ],\n "type": "object"\n }\n ]\n },\n "type": "array"\n },\n "provider": {\n "additionalProperties": false,\n "properties": {\n "id": {\n "type": "string"\n },\n "name": {\n "type": "string"\n },\n "version": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "id",\n "name",\n "version"\n ],\n "type": "object"\n },\n "selected": {\n "type": "boolean"\n },\n "target_support": {\n "oneOf": [\n {\n "additionalProperties": false,\n "properties": {\n "code": {\n "type": "null"\n },\n "diagnostics": {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n },\n "reason": {\n "minLength": 1,\n "type": "string"\n },\n "status": {\n "const": "unknown",\n "type": "string"\n }\n },\n "required": [\n "status",\n "code",\n "reason",\n "diagnostics"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "code": {\n "type": "null"\n },\n "diagnostics": {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n },\n "reason": {\n "type": "null"\n },\n "status": {\n "const": "supported",\n "type": "string"\n }\n },\n "required": [\n "status",\n "code",\n "reason",\n "diagnostics"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "code": {\n "enum": [\n "target_kind_unsupported",\n "target_format_unsupported",\n "architecture_unsupported",\n "target_role_unsupported",\n "managed_target_unsupported"\n ],\n "type": "string"\n },\n "diagnostics": {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n },\n "reason": {\n "minLength": 1,\n "type": "string"\n },\n "status": {\n "const": "unsupported",\n "type": "string"\n }\n },\n "required": [\n "status",\n "code",\n "reason",\n "diagnostics"\n ],\n "type": "object"\n }\n ]\n }\n },\n "required": [\n "provider",\n "availability",\n "target_support",\n "selected",\n "capabilities"\n ],\n "type": "object"\n },\n "type": "array"\n },\n "analysis_run": {\n "anyOf": [\n {\n "additionalProperties": false,\n "properties": {\n "process_lineage": {\n "oneOf": [\n {\n "additionalProperties": false,\n "properties": {\n "status": {\n "const": "not_observed",\n "type": "string"\n }\n },\n "required": [\n "status"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "snapshots": {\n "items": {\n "additionalProperties": false,\n "properties": {\n "observation": {\n "oneOf": [\n {\n "additionalProperties": false,\n "properties": {\n "launcher_pid": {\n "maximum": 9007199254740991,\n "minimum": 1,\n "type": "integer"\n },\n "observed_at": {\n "format": "date-time",\n "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))$",\n "type": "string"\n },\n "process_group_id": {\n "maximum": 9007199254740991,\n "minimum": 1,\n "type": "integer"\n },\n "reason": {\n "minLength": 1,\n "type": "string"\n },\n "status": {\n "const": "unavailable",\n "type": "string"\n }\n },\n "required": [\n "status",\n "observed_at",\n "launcher_pid",\n "process_group_id",\n "reason"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "descendants": {\n "items": {\n "additionalProperties": false,\n "properties": {\n "parent_pid": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "pid": {\n "maximum": 9007199254740991,\n "minimum": 1,\n "type": "integer"\n },\n "process_group_id": {\n "maximum": 9007199254740991,\n "minimum": 1,\n "type": "integer"\n }\n },\n "required": [\n "pid",\n "parent_pid",\n "process_group_id"\n ],\n "type": "object"\n },\n "type": "array"\n },\n "launcher_parent_pid": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "launcher_pid": {\n "maximum": 9007199254740991,\n "minimum": 1,\n "type": "integer"\n },\n "observed_at": {\n "format": "date-time",\n "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))$",\n "type": "string"\n },\n "process_group_id": {\n "maximum": 9007199254740991,\n "minimum": 1,\n "type": "integer"\n },\n "status": {\n "const": "verified",\n "type": "string"\n }\n },\n "required": [\n "status",\n "observed_at",\n "launcher_pid",\n "process_group_id",\n "launcher_parent_pid",\n "descendants"\n ],\n "type": "object"\n }\n ]\n },\n "provider": {\n "additionalProperties": false,\n "properties": {\n "id": {\n "type": "string"\n },\n "name": {\n "type": "string"\n },\n "version": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "id",\n "name",\n "version"\n ],\n "type": "object"\n }\n },\n "required": [\n "provider",\n "observation"\n ],\n "type": "object"\n },\n "type": "array"\n },\n "status": {\n "const": "snapshots",\n "type": "string"\n }\n },\n "required": [\n "status",\n "snapshots"\n ],\n "type": "object"\n }\n ]\n },\n "run_id": {\n "format": "uuid",\n "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)$",\n "type": "string"\n }\n },\n "required": [\n "run_id",\n "process_lineage"\n ],\n "type": "object"\n },\n {\n "type": "null"\n }\n ]\n },\n "capabilities": {\n "items": {\n "oneOf": [\n {\n "additionalProperties": false,\n "properties": {\n "availability_code": {\n "type": "null"\n },\n "available": {\n "const": true,\n "type": "boolean"\n },\n "effects": {\n "additionalProperties": false,\n "properties": {\n "changes_permissions": {\n "type": "boolean"\n },\n "launches_process": {\n "type": "boolean"\n },\n "may_access_network": {\n "type": "boolean"\n },\n "may_show_ui": {\n "type": "boolean"\n },\n "may_write_filesystem": {\n "type": "boolean"\n },\n "mutates_artifact": {\n "type": "boolean"\n },\n "requires_root": {\n "type": "boolean"\n }\n },\n "required": [\n "mutates_artifact",\n "launches_process",\n "may_show_ui",\n "may_access_network",\n "may_write_filesystem",\n "changes_permissions",\n "requires_root"\n ],\n "type": "object"\n },\n "limitations": {\n "items": {\n "type": "string"\n },\n "type": "array"\n },\n "operation": {\n "type": "string"\n },\n "reason": {\n "type": "null"\n }\n },\n "required": [\n "operation",\n "effects",\n "limitations",\n "available",\n "reason",\n "availability_code"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "availability_code": {\n "anyOf": [\n {\n "enum": [\n "not_configured",\n "executable_missing",\n "runtime_missing",\n "unsupported_host",\n "unsupported_version",\n "target_kind_unsupported",\n "target_format_unsupported",\n "architecture_unsupported",\n "target_role_unsupported",\n "managed_target_unsupported",\n "open_options_invalid",\n "version_unresolved"\n ],\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "available": {\n "const": false,\n "type": "boolean"\n },\n "effects": {\n "additionalProperties": false,\n "properties": {\n "changes_permissions": {\n "type": "boolean"\n },\n "launches_process": {\n "type": "boolean"\n },\n "may_access_network": {\n "type": "boolean"\n },\n "may_show_ui": {\n "type": "boolean"\n },\n "may_write_filesystem": {\n "type": "boolean"\n },\n "mutates_artifact": {\n "type": "boolean"\n },\n "requires_root": {\n "type": "boolean"\n }\n },\n "required": [\n "mutates_artifact",\n "launches_process",\n "may_show_ui",\n "may_access_network",\n "may_write_filesystem",\n "changes_permissions",\n "requires_root"\n ],\n "type": "object"\n },\n "limitations": {\n "items": {\n "type": "string"\n },\n "type": "array"\n },\n "operation": {\n "type": "string"\n },\n "reason": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "operation",\n "effects",\n "limitations",\n "available",\n "reason",\n "availability_code"\n ],\n "type": "object"\n }\n ]\n },\n "type": "array"\n },\n "client_features": {\n "additionalProperties": false,\n "properties": {\n "elicitation_form": {\n "type": "boolean"\n },\n "elicitation_url": {\n "type": "boolean"\n },\n "roots": {\n "type": "boolean"\n },\n "sampling": {\n "type": "boolean"\n }\n },\n "required": [\n "elicitation_form",\n "elicitation_url",\n "roots",\n "sampling"\n ],\n "type": "object"\n },\n "open": {\n "const": false,\n "type": "boolean"\n },\n "provider": {\n "additionalProperties": false,\n "properties": {\n "id": {\n "type": "string"\n },\n "name": {\n "type": "string"\n },\n "version": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "id",\n "name",\n "version"\n ],\n "type": "object"\n },\n "providers": {\n "items": {\n "additionalProperties": false,\n "properties": {\n "id": {\n "type": "string"\n },\n "name": {\n "type": "string"\n },\n "version": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "id",\n "name",\n "version"\n ],\n "type": "object"\n },\n "type": "array"\n },\n "server_identity": {\n "additionalProperties": false,\n "properties": {\n "alignment": {\n "additionalProperties": false,\n "properties": {\n "reasons": {\n "items": {\n "type": "string"\n },\n "type": "array"\n },\n "remediation": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "state": {\n "enum": [\n "aligned",\n "mcp_server_restart_required",\n "unknown"\n ],\n "type": "string"\n }\n },\n "required": [\n "state",\n "reasons",\n "remediation"\n ],\n "type": "object"\n },\n "catalog": {\n "additionalProperties": {\n "$ref": "#/$defs/__schema1"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n },\n "client": {\n "anyOf": [\n {\n "additionalProperties": false,\n "properties": {\n "name": {\n "type": "string"\n },\n "version": {\n "type": "string"\n }\n },\n "required": [\n "name",\n "version"\n ],\n "type": "object"\n },\n {\n "type": "null"\n }\n ]\n },\n "negotiated_protocol_version": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "package": {\n "additionalProperties": false,\n "properties": {\n "build_commit": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "name": {\n "type": "string"\n },\n "root_path": {\n "type": "string"\n },\n "version": {\n "type": "string"\n }\n },\n "required": [\n "name",\n "version",\n "root_path",\n "build_commit"\n ],\n "type": "object"\n },\n "protocol_features": {\n "additionalProperties": false,\n "properties": {\n "cancellation": {\n "type": "boolean"\n },\n "elicitation": {\n "type": "boolean"\n },\n "progress": {\n "type": "boolean"\n }\n },\n "required": [\n "progress",\n "cancellation",\n "elicitation"\n ],\n "type": "object"\n },\n "sdk": {\n "additionalProperties": false,\n "properties": {\n "client_test": {\n "type": "string"\n },\n "core": {\n "type": "string"\n },\n "server": {\n "type": "string"\n }\n },\n "required": [\n "server",\n "client_test",\n "core"\n ],\n "type": "object"\n },\n "server": {\n "additionalProperties": false,\n "properties": {\n "command_path": {\n "type": "string"\n },\n "name": {\n "type": "string"\n },\n "started_at": {\n "type": "string"\n },\n "version": {\n "type": "string"\n }\n },\n "required": [\n "name",\n "version",\n "started_at",\n "command_path"\n ],\n "type": "object"\n },\n "skill": {\n "additionalProperties": false,\n "properties": {\n "expected_version": {\n "type": "string"\n },\n "name": {\n "type": "string"\n }\n },\n "required": [\n "name",\n "expected_version"\n ],\n "type": "object"\n }\n },\n "required": [\n "package",\n "server",\n "sdk",\n "negotiated_protocol_version",\n "client",\n "skill",\n "catalog",\n "protocol_features",\n "alignment"\n ],\n "type": "object"\n },\n "tool_availability": {\n "items": {\n "oneOf": [\n {\n "additionalProperties": false,\n "properties": {\n "annotations": {\n "additionalProperties": false,\n "properties": {\n "destructive": {\n "type": "boolean"\n },\n "idempotent": {\n "type": "boolean"\n },\n "open_world": {\n "type": "boolean"\n },\n "read_only": {\n "type": "boolean"\n }\n },\n "required": [\n "read_only",\n "destructive",\n "idempotent",\n "open_world"\n ],\n "type": "object"\n },\n "available": {\n "const": true,\n "type": "boolean"\n },\n "client_requirements": {\n "additionalProperties": false,\n "properties": {\n "missing_optional": {\n "items": {\n "enum": [\n "elicitation_form",\n "elicitation_url",\n "roots",\n "sampling"\n ],\n "type": "string"\n },\n "type": "array"\n },\n "missing_required": {\n "items": {\n "enum": [\n "elicitation_form",\n "elicitation_url",\n "roots",\n "sampling"\n ],\n "type": "string"\n },\n "type": "array"\n },\n "optional": {\n "items": {\n "enum": [\n "elicitation_form",\n "elicitation_url",\n "roots",\n "sampling"\n ],\n "type": "string"\n },\n "type": "array"\n },\n "required": {\n "items": {\n "enum": [\n "elicitation_form",\n "elicitation_url",\n "roots",\n "sampling"\n ],\n "type": "string"\n },\n "type": "array"\n }\n },\n "required": [\n "required",\n "optional",\n "missing_required",\n "missing_optional"\n ],\n "type": "object"\n },\n "default_mode_available": {\n "type": "boolean"\n },\n "effects": {\n "additionalProperties": false,\n "properties": {\n "accessesNetwork": {\n "type": "boolean"\n },\n "changesUiState": {\n "type": "boolean"\n },\n "idempotent": {\n "type": "boolean"\n },\n "launchesProcess": {\n "type": "boolean"\n },\n "mayDiscardData": {\n "type": "boolean"\n },\n "mutatesSession": {\n "type": "boolean"\n },\n "mutatesTarget": {\n "type": "boolean"\n },\n "writesFilesystem": {\n "type": "boolean"\n }\n },\n "required": [\n "mutatesTarget",\n "mutatesSession",\n "writesFilesystem",\n "launchesProcess",\n "accessesNetwork",\n "changesUiState",\n "mayDiscardData",\n "idempotent"\n ],\n "type": "object"\n },\n "modes": {\n "items": {\n "oneOf": [\n {\n "additionalProperties": false,\n "properties": {\n "available": {\n "const": true,\n "type": "boolean"\n },\n "missing_operations": {\n "items": {\n "type": "string"\n },\n "maxItems": 0,\n "minItems": 0,\n "type": "array"\n },\n "name": {\n "type": "string"\n },\n "remediation": {\n "type": "null"\n }\n },\n "required": [\n "name",\n "available",\n "missing_operations",\n "remediation"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "available": {\n "const": false,\n "type": "boolean"\n },\n "missing_operations": {\n "items": {\n "type": "string"\n },\n "minItems": 1,\n "type": "array"\n },\n "name": {\n "type": "string"\n },\n "remediation": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "name",\n "available",\n "missing_operations",\n "remediation"\n ],\n "type": "object"\n }\n ]\n },\n "type": "array"\n },\n "name": {\n "type": "string"\n },\n "reason": {\n "const": "available",\n "type": "string"\n },\n "remediation": {\n "type": "null"\n },\n "surface": {\n "type": "string"\n }\n },\n "required": [\n "name",\n "surface",\n "client_requirements",\n "effects",\n "annotations",\n "available",\n "reason",\n "remediation"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "annotations": {\n "additionalProperties": false,\n "properties": {\n "destructive": {\n "type": "boolean"\n },\n "idempotent": {\n "type": "boolean"\n },\n "open_world": {\n "type": "boolean"\n },\n "read_only": {\n "type": "boolean"\n }\n },\n "required": [\n "read_only",\n "destructive",\n "idempotent",\n "open_world"\n ],\n "type": "object"\n },\n "available": {\n "const": false,\n "type": "boolean"\n },\n "client_requirements": {\n "additionalProperties": false,\n "properties": {\n "missing_optional": {\n "items": {\n "enum": [\n "elicitation_form",\n "elicitation_url",\n "roots",\n "sampling"\n ],\n "type": "string"\n },\n "type": "array"\n },\n "missing_required": {\n "items": {\n "enum": [\n "elicitation_form",\n "elicitation_url",\n "roots",\n "sampling"\n ],\n "type": "string"\n },\n "type": "array"\n },\n "optional": {\n "items": {\n "enum": [\n "elicitation_form",\n "elicitation_url",\n "roots",\n "sampling"\n ],\n "type": "string"\n },\n "type": "array"\n },\n "required": {\n "items": {\n "enum": [\n "elicitation_form",\n "elicitation_url",\n "roots",\n "sampling"\n ],\n "type": "string"\n },\n "type": "array"\n }\n },\n "required": [\n "required",\n "optional",\n "missing_required",\n "missing_optional"\n ],\n "type": "object"\n },\n "default_mode_available": {\n "type": "boolean"\n },\n "effects": {\n "additionalProperties": false,\n "properties": {\n "accessesNetwork": {\n "type": "boolean"\n },\n "changesUiState": {\n "type": "boolean"\n },\n "idempotent": {\n "type": "boolean"\n },\n "launchesProcess": {\n "type": "boolean"\n },\n "mayDiscardData": {\n "type": "boolean"\n },\n "mutatesSession": {\n "type": "boolean"\n },\n "mutatesTarget": {\n "type": "boolean"\n },\n "writesFilesystem": {\n "type": "boolean"\n }\n },\n "required": [\n "mutatesTarget",\n "mutatesSession",\n "writesFilesystem",\n "launchesProcess",\n "accessesNetwork",\n "changesUiState",\n "mayDiscardData",\n "idempotent"\n ],\n "type": "object"\n },\n "modes": {\n "items": {\n "oneOf": [\n {\n "additionalProperties": false,\n "properties": {\n "available": {\n "const": true,\n "type": "boolean"\n },\n "missing_operations": {\n "items": {\n "type": "string"\n },\n "maxItems": 0,\n "minItems": 0,\n "type": "array"\n },\n "name": {\n "type": "string"\n },\n "remediation": {\n "type": "null"\n }\n },\n "required": [\n "name",\n "available",\n "missing_operations",\n "remediation"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "available": {\n "const": false,\n "type": "boolean"\n },\n "missing_operations": {\n "items": {\n "type": "string"\n },\n "minItems": 1,\n "type": "array"\n },\n "name": {\n "type": "string"\n },\n "remediation": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "name",\n "available",\n "missing_operations",\n "remediation"\n ],\n "type": "object"\n }\n ]\n },\n "type": "array"\n },\n "name": {\n "type": "string"\n },\n "reason": {\n "enum": [\n "client_capability_missing",\n "target_required",\n "provider_missing",\n "provider_unavailable",\n "target_unsupported",\n "unsupported_host"\n ],\n "type": "string"\n },\n "remediation": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "surface": {\n "type": "string"\n }\n },\n "required": [\n "name",\n "surface",\n "client_requirements",\n "effects",\n "annotations",\n "available",\n "reason",\n "remediation"\n ],\n "type": "object"\n }\n ]\n },\n "type": "array"\n }\n },\n "required": [\n "provider",\n "providers",\n "capabilities",\n "analysis_run",\n "analysis_activity",\n "analysis_provider_binding",\n "analysis_provider_candidates",\n "tool_availability",\n "client_features",\n "server_identity",\n "open"\n ],\n "type": "object"\n },\n {\n "additionalProperties": {},\n "properties": {\n "analysis_activity": {\n "additionalProperties": false,\n "properties": {\n "providers": {\n "items": {\n "additionalProperties": false,\n "properties": {\n "active": {\n "anyOf": [\n {\n "additionalProperties": false,\n "properties": {\n "caller_state": {\n "enum": [\n "waiting",\n "cancelled"\n ],\n "type": "string"\n },\n "elapsed_ms": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "operation": {\n "minLength": 1,\n "type": "string"\n },\n "request_id": {\n "maximum": 9007199254740991,\n "minimum": 1,\n "type": "integer"\n }\n },\n "required": [\n "request_id",\n "operation",\n "elapsed_ms",\n "caller_state"\n ],\n "type": "object"\n },\n {\n "type": "null"\n }\n ]\n },\n "provider": {\n "additionalProperties": false,\n "properties": {\n "id": {\n "type": "string"\n },\n "name": {\n "type": "string"\n },\n "version": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "id",\n "name",\n "version"\n ],\n "type": "object"\n },\n "queued_requests": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "provider",\n "active",\n "queued_requests"\n ],\n "type": "object"\n },\n "type": "array"\n },\n "status": {\n "enum": [\n "not_observed",\n "idle",\n "busy"\n ],\n "type": "string"\n }\n },\n "required": [\n "status",\n "providers"\n ],\n "type": "object"\n },\n "analysis_provider_binding": {\n "anyOf": [\n {\n "additionalProperties": false,\n "properties": {\n "analysis_profile": {\n "additionalProperties": false,\n "properties": {\n "digest": {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n },\n "parameters": {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n },\n "provider": {\n "additionalProperties": false,\n "properties": {\n "id": {\n "minLength": 1,\n "type": "string"\n },\n "name": {\n "minLength": 1,\n "type": "string"\n },\n "version": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "id",\n "name",\n "version"\n ],\n "type": "object"\n }\n },\n "required": [\n "provider",\n "parameters",\n "digest"\n ],\n "type": "object"\n },\n "provider": {\n "additionalProperties": false,\n "properties": {\n "id": {\n "type": "string"\n },\n "name": {\n "type": "string"\n },\n "version": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "id",\n "name",\n "version"\n ],\n "type": "object"\n },\n "selection_source": {\n "enum": [\n "request",\n "environment",\n "auto-single-candidate"\n ],\n "type": "string"\n }\n },\n "required": [\n "provider",\n "selection_source",\n "analysis_profile"\n ],\n "type": "object"\n },\n {\n "type": "null"\n }\n ]\n },\n "analysis_provider_candidates": {\n "items": {\n "additionalProperties": false,\n "properties": {\n "availability": {\n "oneOf": [\n {\n "additionalProperties": false,\n "properties": {\n "code": {\n "type": "null"\n },\n "diagnostics": {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n },\n "reason": {\n "type": "null"\n },\n "status": {\n "const": "available",\n "type": "string"\n }\n },\n "required": [\n "status",\n "code",\n "reason",\n "diagnostics"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "code": {\n "enum": [\n "not_configured",\n "executable_missing",\n "runtime_missing",\n "unsupported_host",\n "unsupported_version",\n "target_kind_unsupported",\n "target_format_unsupported",\n "architecture_unsupported",\n "target_role_unsupported",\n "managed_target_unsupported",\n "open_options_invalid",\n "version_unresolved"\n ],\n "type": "string"\n },\n "diagnostics": {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n },\n "reason": {\n "minLength": 1,\n "type": "string"\n },\n "status": {\n "const": "unavailable",\n "type": "string"\n }\n },\n "required": [\n "status",\n "code",\n "reason",\n "diagnostics"\n ],\n "type": "object"\n }\n ]\n },\n "capabilities": {\n "items": {\n "oneOf": [\n {\n "additionalProperties": false,\n "properties": {\n "availability_code": {\n "type": "null"\n },\n "available": {\n "const": true,\n "type": "boolean"\n },\n "effects": {\n "additionalProperties": false,\n "properties": {\n "changes_permissions": {\n "type": "boolean"\n },\n "launches_process": {\n "type": "boolean"\n },\n "may_access_network": {\n "type": "boolean"\n },\n "may_show_ui": {\n "type": "boolean"\n },\n "may_write_filesystem": {\n "type": "boolean"\n },\n "mutates_artifact": {\n "type": "boolean"\n },\n "requires_root": {\n "type": "boolean"\n }\n },\n "required": [\n "mutates_artifact",\n "launches_process",\n "may_show_ui",\n "may_access_network",\n "may_write_filesystem",\n "changes_permissions",\n "requires_root"\n ],\n "type": "object"\n },\n "limitations": {\n "items": {\n "type": "string"\n },\n "type": "array"\n },\n "operation": {\n "type": "string"\n },\n "reason": {\n "type": "null"\n }\n },\n "required": [\n "operation",\n "effects",\n "limitations",\n "available",\n "reason",\n "availability_code"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "availability_code": {\n "anyOf": [\n {\n "enum": [\n "not_configured",\n "executable_missing",\n "runtime_missing",\n "unsupported_host",\n "unsupported_version",\n "target_kind_unsupported",\n "target_format_unsupported",\n "architecture_unsupported",\n "target_role_unsupported",\n "managed_target_unsupported",\n "open_options_invalid",\n "version_unresolved"\n ],\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "available": {\n "const": false,\n "type": "boolean"\n },\n "effects": {\n "additionalProperties": false,\n "properties": {\n "changes_permissions": {\n "type": "boolean"\n },\n "launches_process": {\n "type": "boolean"\n },\n "may_access_network": {\n "type": "boolean"\n },\n "may_show_ui": {\n "type": "boolean"\n },\n "may_write_filesystem": {\n "type": "boolean"\n },\n "mutates_artifact": {\n "type": "boolean"\n },\n "requires_root": {\n "type": "boolean"\n }\n },\n "required": [\n "mutates_artifact",\n "launches_process",\n "may_show_ui",\n "may_access_network",\n "may_write_filesystem",\n "changes_permissions",\n "requires_root"\n ],\n "type": "object"\n },\n "limitations": {\n "items": {\n "type": "string"\n },\n "type": "array"\n },\n "operation": {\n "type": "string"\n },\n "reason": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "operation",\n "effects",\n "limitations",\n "available",\n "reason",\n "availability_code"\n ],\n "type": "object"\n }\n ]\n },\n "type": "array"\n },\n "provider": {\n "additionalProperties": false,\n "properties": {\n "id": {\n "type": "string"\n },\n "name": {\n "type": "string"\n },\n "version": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "id",\n "name",\n "version"\n ],\n "type": "object"\n },\n "selected": {\n "type": "boolean"\n },\n "target_support": {\n "oneOf": [\n {\n "additionalProperties": false,\n "properties": {\n "code": {\n "type": "null"\n },\n "diagnostics": {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n },\n "reason": {\n "minLength": 1,\n "type": "string"\n },\n "status": {\n "const": "unknown",\n "type": "string"\n }\n },\n "required": [\n "status",\n "code",\n "reason",\n "diagnostics"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "code": {\n "type": "null"\n },\n "diagnostics": {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n },\n "reason": {\n "type": "null"\n },\n "status": {\n "const": "supported",\n "type": "string"\n }\n },\n "required": [\n "status",\n "code",\n "reason",\n "diagnostics"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "code": {\n "enum": [\n "target_kind_unsupported",\n "target_format_unsupported",\n "architecture_unsupported",\n "target_role_unsupported",\n "managed_target_unsupported"\n ],\n "type": "string"\n },\n "diagnostics": {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n },\n "reason": {\n "minLength": 1,\n "type": "string"\n },\n "status": {\n "const": "unsupported",\n "type": "string"\n }\n },\n "required": [\n "status",\n "code",\n "reason",\n "diagnostics"\n ],\n "type": "object"\n }\n ]\n }\n },\n "required": [\n "provider",\n "availability",\n "target_support",\n "selected",\n "capabilities"\n ],\n "type": "object"\n },\n "type": "array"\n },\n "analysis_run": {\n "anyOf": [\n {\n "additionalProperties": false,\n "properties": {\n "process_lineage": {\n "oneOf": [\n {\n "additionalProperties": false,\n "properties": {\n "status": {\n "const": "not_observed",\n "type": "string"\n }\n },\n "required": [\n "status"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "snapshots": {\n "items": {\n "additionalProperties": false,\n "properties": {\n "observation": {\n "oneOf": [\n {\n "additionalProperties": false,\n "properties": {\n "launcher_pid": {\n "maximum": 9007199254740991,\n "minimum": 1,\n "type": "integer"\n },\n "observed_at": {\n "format": "date-time",\n "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))$",\n "type": "string"\n },\n "process_group_id": {\n "maximum": 9007199254740991,\n "minimum": 1,\n "type": "integer"\n },\n "reason": {\n "minLength": 1,\n "type": "string"\n },\n "status": {\n "const": "unavailable",\n "type": "string"\n }\n },\n "required": [\n "status",\n "observed_at",\n "launcher_pid",\n "process_group_id",\n "reason"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "descendants": {\n "items": {\n "additionalProperties": false,\n "properties": {\n "parent_pid": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "pid": {\n "maximum": 9007199254740991,\n "minimum": 1,\n "type": "integer"\n },\n "process_group_id": {\n "maximum": 9007199254740991,\n "minimum": 1,\n "type": "integer"\n }\n },\n "required": [\n "pid",\n "parent_pid",\n "process_group_id"\n ],\n "type": "object"\n },\n "type": "array"\n },\n "launcher_parent_pid": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "launcher_pid": {\n "maximum": 9007199254740991,\n "minimum": 1,\n "type": "integer"\n },\n "observed_at": {\n "format": "date-time",\n "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))$",\n "type": "string"\n },\n "process_group_id": {\n "maximum": 9007199254740991,\n "minimum": 1,\n "type": "integer"\n },\n "status": {\n "const": "verified",\n "type": "string"\n }\n },\n "required": [\n "status",\n "observed_at",\n "launcher_pid",\n "process_group_id",\n "launcher_parent_pid",\n "descendants"\n ],\n "type": "object"\n }\n ]\n },\n "provider": {\n "additionalProperties": false,\n "properties": {\n "id": {\n "type": "string"\n },\n "name": {\n "type": "string"\n },\n "version": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "id",\n "name",\n "version"\n ],\n "type": "object"\n }\n },\n "required": [\n "provider",\n "observation"\n ],\n "type": "object"\n },\n "type": "array"\n },\n "status": {\n "const": "snapshots",\n "type": "string"\n }\n },\n "required": [\n "status",\n "snapshots"\n ],\n "type": "object"\n }\n ]\n },\n "run_id": {\n "format": "uuid",\n "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)$",\n "type": "string"\n }\n },\n "required": [\n "run_id",\n "process_lineage"\n ],\n "type": "object"\n },\n {\n "type": "null"\n }\n ]\n },\n "architecture": {\n "anyOf": [\n {\n "enum": [\n "x86",\n "x86_64",\n "arm",\n "arm64"\n ],\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "capabilities": {\n "items": {\n "oneOf": [\n {\n "additionalProperties": false,\n "properties": {\n "availability_code": {\n "type": "null"\n },\n "available": {\n "const": true,\n "type": "boolean"\n },\n "effects": {\n "additionalProperties": false,\n "properties": {\n "changes_permissions": {\n "type": "boolean"\n },\n "launches_process": {\n "type": "boolean"\n },\n "may_access_network": {\n "type": "boolean"\n },\n "may_show_ui": {\n "type": "boolean"\n },\n "may_write_filesystem": {\n "type": "boolean"\n },\n "mutates_artifact": {\n "type": "boolean"\n },\n "requires_root": {\n "type": "boolean"\n }\n },\n "required": [\n "mutates_artifact",\n "launches_process",\n "may_show_ui",\n "may_access_network",\n "may_write_filesystem",\n "changes_permissions",\n "requires_root"\n ],\n "type": "object"\n },\n "limitations": {\n "items": {\n "type": "string"\n },\n "type": "array"\n },\n "operation": {\n "type": "string"\n },\n "reason": {\n "type": "null"\n }\n },\n "required": [\n "operation",\n "effects",\n "limitations",\n "available",\n "reason",\n "availability_code"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "availability_code": {\n "anyOf": [\n {\n "enum": [\n "not_configured",\n "executable_missing",\n "runtime_missing",\n "unsupported_host",\n "unsupported_version",\n "target_kind_unsupported",\n "target_format_unsupported",\n "architecture_unsupported",\n "target_role_unsupported",\n "managed_target_unsupported",\n "open_options_invalid",\n "version_unresolved"\n ],\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "available": {\n "const": false,\n "type": "boolean"\n },\n "effects": {\n "additionalProperties": false,\n "properties": {\n "changes_permissions": {\n "type": "boolean"\n },\n "launches_process": {\n "type": "boolean"\n },\n "may_access_network": {\n "type": "boolean"\n },\n "may_show_ui": {\n "type": "boolean"\n },\n "may_write_filesystem": {\n "type": "boolean"\n },\n "mutates_artifact": {\n "type": "boolean"\n },\n "requires_root": {\n "type": "boolean"\n }\n },\n "required": [\n "mutates_artifact",\n "launches_process",\n "may_show_ui",\n "may_access_network",\n "may_write_filesystem",\n "changes_permissions",\n "requires_root"\n ],\n "type": "object"\n },\n "limitations": {\n "items": {\n "type": "string"\n },\n "type": "array"\n },\n "operation": {\n "type": "string"\n },\n "reason": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "operation",\n "effects",\n "limitations",\n "available",\n "reason",\n "availability_code"\n ],\n "type": "object"\n }\n ]\n },\n "type": "array"\n },\n "client_features": {\n "additionalProperties": false,\n "properties": {\n "elicitation_form": {\n "type": "boolean"\n },\n "elicitation_url": {\n "type": "boolean"\n },\n "roots": {\n "type": "boolean"\n },\n "sampling": {\n "type": "boolean"\n }\n },\n "required": [\n "elicitation_form",\n "elicitation_url",\n "roots",\n "sampling"\n ],\n "type": "object"\n },\n "format": {\n "enum": [\n "hopper",\n "analysis-database",\n "mach-o",\n "elf",\n "pe",\n "dos-mz",\n "dos-com",\n "zip",\n "ipa",\n "apk",\n "msix",\n "appx",\n "asar",\n "dmg",\n "pkg",\n "plist",\n "javascript",\n "source-map"\n ],\n "type": "string"\n },\n "kind": {\n "enum": [\n "executable",\n "database",\n "archive",\n "artifact"\n ],\n "type": "string"\n },\n "open": {\n "const": true,\n "type": "boolean"\n },\n "path": {\n "type": "string"\n },\n "provider": {\n "additionalProperties": false,\n "properties": {\n "id": {\n "type": "string"\n },\n "name": {\n "type": "string"\n },\n "version": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "id",\n "name",\n "version"\n ],\n "type": "object"\n },\n "providers": {\n "items": {\n "additionalProperties": false,\n "properties": {\n "id": {\n "type": "string"\n },\n "name": {\n "type": "string"\n },\n "version": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "id",\n "name",\n "version"\n ],\n "type": "object"\n },\n "type": "array"\n },\n "server_identity": {\n "additionalProperties": false,\n "properties": {\n "alignment": {\n "additionalProperties": false,\n "properties": {\n "reasons": {\n "items": {\n "type": "string"\n },\n "type": "array"\n },\n "remediation": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "state": {\n "enum": [\n "aligned",\n "mcp_server_restart_required",\n "unknown"\n ],\n "type": "string"\n }\n },\n "required": [\n "state",\n "reasons",\n "remediation"\n ],\n "type": "object"\n },\n "catalog": {\n "additionalProperties": {\n "$ref": "#/$defs/__schema1"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n },\n "client": {\n "anyOf": [\n {\n "additionalProperties": false,\n "properties": {\n "name": {\n "type": "string"\n },\n "version": {\n "type": "string"\n }\n },\n "required": [\n "name",\n "version"\n ],\n "type": "object"\n },\n {\n "type": "null"\n }\n ]\n },\n "negotiated_protocol_version": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "package": {\n "additionalProperties": false,\n "properties": {\n "build_commit": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "name": {\n "type": "string"\n },\n "root_path": {\n "type": "string"\n },\n "version": {\n "type": "string"\n }\n },\n "required": [\n "name",\n "version",\n "root_path",\n "build_commit"\n ],\n "type": "object"\n },\n "protocol_features": {\n "additionalProperties": false,\n "properties": {\n "cancellation": {\n "type": "boolean"\n },\n "elicitation": {\n "type": "boolean"\n },\n "progress": {\n "type": "boolean"\n }\n },\n "required": [\n "progress",\n "cancellation",\n "elicitation"\n ],\n "type": "object"\n },\n "sdk": {\n "additionalProperties": false,\n "properties": {\n "client_test": {\n "type": "string"\n },\n "core": {\n "type": "string"\n },\n "server": {\n "type": "string"\n }\n },\n "required": [\n "server",\n "client_test",\n "core"\n ],\n "type": "object"\n },\n "server": {\n "additionalProperties": false,\n "properties": {\n "command_path": {\n "type": "string"\n },\n "name": {\n "type": "string"\n },\n "started_at": {\n "type": "string"\n },\n "version": {\n "type": "string"\n }\n },\n "required": [\n "name",\n "version",\n "started_at",\n "command_path"\n ],\n "type": "object"\n },\n "skill": {\n "additionalProperties": false,\n "properties": {\n "expected_version": {\n "type": "string"\n },\n "name": {\n "type": "string"\n }\n },\n "required": [\n "name",\n "expected_version"\n ],\n "type": "object"\n }\n },\n "required": [\n "package",\n "server",\n "sdk",\n "negotiated_protocol_version",\n "client",\n "skill",\n "catalog",\n "protocol_features",\n "alignment"\n ],\n "type": "object"\n },\n "sha256": {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n },\n "tool_availability": {\n "items": {\n "oneOf": [\n {\n "additionalProperties": false,\n "properties": {\n "annotations": {\n "additionalProperties": false,\n "properties": {\n "destructive": {\n "type": "boolean"\n },\n "idempotent": {\n "type": "boolean"\n },\n "open_world": {\n "type": "boolean"\n },\n "read_only": {\n "type": "boolean"\n }\n },\n "required": [\n "read_only",\n "destructive",\n "idempotent",\n "open_world"\n ],\n "type": "object"\n },\n "available": {\n "const": true,\n "type": "boolean"\n },\n "client_requirements": {\n "additionalProperties": false,\n "properties": {\n "missing_optional": {\n "items": {\n "enum": [\n "elicitation_form",\n "elicitation_url",\n "roots",\n "sampling"\n ],\n "type": "string"\n },\n "type": "array"\n },\n "missing_required": {\n "items": {\n "enum": [\n "elicitation_form",\n "elicitation_url",\n "roots",\n "sampling"\n ],\n "type": "string"\n },\n "type": "array"\n },\n "optional": {\n "items": {\n "enum": [\n "elicitation_form",\n "elicitation_url",\n "roots",\n "sampling"\n ],\n "type": "string"\n },\n "type": "array"\n },\n "required": {\n "items": {\n "enum": [\n "elicitation_form",\n "elicitation_url",\n "roots",\n "sampling"\n ],\n "type": "string"\n },\n "type": "array"\n }\n },\n "required": [\n "required",\n "optional",\n "missing_required",\n "missing_optional"\n ],\n "type": "object"\n },\n "default_mode_available": {\n "type": "boolean"\n },\n "effects": {\n "additionalProperties": false,\n "properties": {\n "accessesNetwork": {\n "type": "boolean"\n },\n "changesUiState": {\n "type": "boolean"\n },\n "idempotent": {\n "type": "boolean"\n },\n "launchesProcess": {\n "type": "boolean"\n },\n "mayDiscardData": {\n "type": "boolean"\n },\n "mutatesSession": {\n "type": "boolean"\n },\n "mutatesTarget": {\n "type": "boolean"\n },\n "writesFilesystem": {\n "type": "boolean"\n }\n },\n "required": [\n "mutatesTarget",\n "mutatesSession",\n "writesFilesystem",\n "launchesProcess",\n "accessesNetwork",\n "changesUiState",\n "mayDiscardData",\n "idempotent"\n ],\n "type": "object"\n },\n "modes": {\n "items": {\n "oneOf": [\n {\n "additionalProperties": false,\n "properties": {\n "available": {\n "const": true,\n "type": "boolean"\n },\n "missing_operations": {\n "items": {\n "type": "string"\n },\n "maxItems": 0,\n "minItems": 0,\n "type": "array"\n },\n "name": {\n "type": "string"\n },\n "remediation": {\n "type": "null"\n }\n },\n "required": [\n "name",\n "available",\n "missing_operations",\n "remediation"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "available": {\n "const": false,\n "type": "boolean"\n },\n "missing_operations": {\n "items": {\n "type": "string"\n },\n "minItems": 1,\n "type": "array"\n },\n "name": {\n "type": "string"\n },\n "remediation": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "name",\n "available",\n "missing_operations",\n "remediation"\n ],\n "type": "object"\n }\n ]\n },\n "type": "array"\n },\n "name": {\n "type": "string"\n },\n "reason": {\n "const": "available",\n "type": "string"\n },\n "remediation": {\n "type": "null"\n },\n "surface": {\n "type": "string"\n }\n },\n "required": [\n "name",\n "surface",\n "client_requirements",\n "effects",\n "annotations",\n "available",\n "reason",\n "remediation"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "annotations": {\n "additionalProperties": false,\n "properties": {\n "destructive": {\n "type": "boolean"\n },\n "idempotent": {\n "type": "boolean"\n },\n "open_world": {\n "type": "boolean"\n },\n "read_only": {\n "type": "boolean"\n }\n },\n "required": [\n "read_only",\n "destructive",\n "idempotent",\n "open_world"\n ],\n "type": "object"\n },\n "available": {\n "const": false,\n "type": "boolean"\n },\n "client_requirements": {\n "additionalProperties": false,\n "properties": {\n "missing_optional": {\n "items": {\n "enum": [\n "elicitation_form",\n "elicitation_url",\n "roots",\n "sampling"\n ],\n "type": "string"\n },\n "type": "array"\n },\n "missing_required": {\n "items": {\n "enum": [\n "elicitation_form",\n "elicitation_url",\n "roots",\n "sampling"\n ],\n "type": "string"\n },\n "type": "array"\n },\n "optional": {\n "items": {\n "enum": [\n "elicitation_form",\n "elicitation_url",\n "roots",\n "sampling"\n ],\n "type": "string"\n },\n "type": "array"\n },\n "required": {\n "items": {\n "enum": [\n "elicitation_form",\n "elicitation_url",\n "roots",\n "sampling"\n ],\n "type": "string"\n },\n "type": "array"\n }\n },\n "required": [\n "required",\n "optional",\n "missing_required",\n "missing_optional"\n ],\n "type": "object"\n },\n "default_mode_available": {\n "type": "boolean"\n },\n "effects": {\n "additionalProperties": false,\n "properties": {\n "accessesNetwork": {\n "type": "boolean"\n },\n "changesUiState": {\n "type": "boolean"\n },\n "idempotent": {\n "type": "boolean"\n },\n "launchesProcess": {\n "type": "boolean"\n },\n "mayDiscardData": {\n "type": "boolean"\n },\n "mutatesSession": {\n "type": "boolean"\n },\n "mutatesTarget": {\n "type": "boolean"\n },\n "writesFilesystem": {\n "type": "boolean"\n }\n },\n "required": [\n "mutatesTarget",\n "mutatesSession",\n "writesFilesystem",\n "launchesProcess",\n "accessesNetwork",\n "changesUiState",\n "mayDiscardData",\n "idempotent"\n ],\n "type": "object"\n },\n "modes": {\n "items": {\n "oneOf": [\n {\n "additionalProperties": false,\n "properties": {\n "available": {\n "const": true,\n "type": "boolean"\n },\n "missing_operations": {\n "items": {\n "type": "string"\n },\n "maxItems": 0,\n "minItems": 0,\n "type": "array"\n },\n "name": {\n "type": "string"\n },\n "remediation": {\n "type": "null"\n }\n },\n "required": [\n "name",\n "available",\n "missing_operations",\n "remediation"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "available": {\n "const": false,\n "type": "boolean"\n },\n "missing_operations": {\n "items": {\n "type": "string"\n },\n "minItems": 1,\n "type": "array"\n },\n "name": {\n "type": "string"\n },\n "remediation": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "name",\n "available",\n "missing_operations",\n "remediation"\n ],\n "type": "object"\n }\n ]\n },\n "type": "array"\n },\n "name": {\n "type": "string"\n },\n "reason": {\n "enum": [\n "client_capability_missing",\n "target_required",\n "provider_missing",\n "provider_unavailable",\n "target_unsupported",\n "unsupported_host"\n ],\n "type": "string"\n },\n "remediation": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "surface": {\n "type": "string"\n }\n },\n "required": [\n "name",\n "surface",\n "client_requirements",\n "effects",\n "annotations",\n "available",\n "reason",\n "remediation"\n ],\n "type": "object"\n }\n ]\n },\n "type": "array"\n }\n },\n "required": [\n "provider",\n "providers",\n "capabilities",\n "analysis_run",\n "analysis_activity",\n "analysis_provider_binding",\n "analysis_provider_candidates",\n "tool_availability",\n "client_features",\n "server_identity",\n "open",\n "path",\n "format",\n "kind",\n "sha256",\n "architecture"\n ],\n "type": "object"\n }\n ]\n }\n ]\n }\n },\n "required": [\n "result"\n ],\n "type": "object"\n },\n "requiresSession": true,\n "title": "Binary Session"\n },\n {\n "analysisOperation": null,\n "annotations": {\n "destructiveHint": true,\n "idempotentHint": true,\n "openWorldHint": false,\n "readOnlyHint": false\n },\n "description": "Atomically write the session\'s deterministic Evidence bundle to the requested local path. Existing files require overwrite: true; records and manifests use canonical byte-stable ordering.",\n "effects": {\n "accessesNetwork": false,\n "changesUiState": false,\n "idempotent": true,\n "launchesProcess": false,\n "mayDiscardData": true,\n "mutatesSession": false,\n "mutatesTarget": false,\n "writesFilesystem": true\n },\n "inputSchema": {\n "$schema": "https://json-schema.org/draft/2020-12/schema",\n "additionalProperties": false,\n "examples": [\n {\n "overwrite": false,\n "path": "/tmp/evidence.json"\n }\n ],\n "properties": {\n "overwrite": {\n "default": false,\n "description": "Whether an existing destination may be replaced.",\n "type": "boolean"\n },\n "path": {\n "description": "Local filesystem path used by this operation.",\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "path"\n ],\n "type": "object"\n },\n "kind": "session",\n "name": "export_evidence_bundle",\n "outputSchema": {\n "$schema": "https://json-schema.org/draft/2020-12/schema",\n "additionalProperties": false,\n "properties": {\n "result": {\n "additionalProperties": false,\n "properties": {\n "bytes": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "path": {\n "type": "string"\n },\n "records": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "unknowns": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "path",\n "bytes",\n "records",\n "unknowns"\n ],\n "type": "object"\n }\n },\n "required": [\n "result"\n ],\n "type": "object"\n },\n "requiresSession": true,\n "title": "Export Evidence Bundle"\n },\n {\n "analysisOperation": null,\n "annotations": {\n "destructiveHint": false,\n "idempotentHint": true,\n "openWorldHint": false,\n "readOnlyHint": false\n },\n "description": "Read the JSON bundle at the supplied local path, validate every Evidence ID and canonical manifest, then atomically merge it. Imported content is data only and is never executed.",\n "effects": {\n "accessesNetwork": false,\n "changesUiState": false,\n "idempotent": true,\n "launchesProcess": false,\n "mayDiscardData": false,\n "mutatesSession": true,\n "mutatesTarget": false,\n "writesFilesystem": false\n },\n "inputSchema": {\n "$schema": "https://json-schema.org/draft/2020-12/schema",\n "additionalProperties": false,\n "examples": [\n {\n "path": "evidence.json"\n }\n ],\n "properties": {\n "path": {\n "description": "Local filesystem path used by this operation.",\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "path"\n ],\n "type": "object"\n },\n "kind": "session",\n "name": "import_evidence_bundle",\n "outputSchema": {\n "$schema": "https://json-schema.org/draft/2020-12/schema",\n "additionalProperties": false,\n "properties": {\n "result": {\n "additionalProperties": false,\n "properties": {\n "imported": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "total": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "unknowns_added": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "imported",\n "unknowns_added",\n "total"\n ],\n "type": "object"\n }\n },\n "required": [\n "result"\n ],\n "type": "object"\n },\n "requiresSession": true,\n "title": "Import Evidence Bundle"\n },\n {\n "analysisOperation": null,\n "annotations": {\n "destructiveHint": false,\n "idempotentHint": false,\n "openWorldHint": true,\n "readOnlyHint": false\n },\n "description": "Run one caller-selected command under a PTY and return process capture Evidence with residual unknowns. A command name resolves through the inherited PATH; the working directory defaults to the caller\'s current directory; host environment variables are inherited with scenario overrides. Filesystem snapshots are opt-in through filesystem_observation_paths. The target runs with the current user\'s permissions; this is not a security sandbox.",\n "effects": {\n "accessesNetwork": true,\n "changesUiState": false,\n "idempotent": false,\n "launchesProcess": true,\n "mayDiscardData": false,\n "mutatesSession": true,\n "mutatesTarget": false,\n "writesFilesystem": true\n },\n "inputSchema": {\n "$schema": "https://json-schema.org/draft/2020-12/schema",\n "additionalProperties": false,\n "examples": [\n {\n "arguments": [],\n "environment": {},\n "events": [],\n "executable": "/usr/bin/true",\n "filesystem_observation_paths": [],\n "idle_timeout_ms": 30000,\n "limits": {\n "file_bytes": 10000000,\n "files": 10000,\n "filesystem_depth": 16,\n "output_bytes": 1000000,\n "processes": 1000\n },\n "normalization": {\n "paths": false,\n "patterns": [],\n "pids": true,\n "ports": true,\n "time_bucket_ms": 10\n },\n "settle_ms": 100,\n "terminal": {\n "columns": 80,\n "rows": 24,\n "scrollback": 1000\n },\n "timeout_ms": 30000,\n "working_directory": "/tmp"\n }\n ],\n "properties": {\n "arguments": {\n "default": [],\n "description": "Value for arguments.",\n "items": {\n "type": "string"\n },\n "type": "array"\n },\n "environment": {\n "additionalProperties": {\n "type": "string"\n },\n "default": {},\n "description": "Value for environment.",\n "propertyNames": {\n "pattern": "^[^=\\\\0]+$",\n "type": "string"\n },\n "type": "object"\n },\n "events": {\n "default": [],\n "description": "Value for events.",\n "items": {\n "oneOf": [\n {\n "properties": {\n "at_ms": {\n "description": "Value for at ms.",\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "data": {\n "description": "Value for data.",\n "type": "string"\n },\n "sensitive": {\n "default": false,\n "description": "Value for sensitive.",\n "type": "boolean"\n },\n "type": {\n "const": "input",\n "description": "Value for type.",\n "type": "string"\n }\n },\n "required": [\n "at_ms",\n "type",\n "data"\n ],\n "type": "object"\n },\n {\n "properties": {\n "at_ms": {\n "description": "Value for at ms.",\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "columns": {\n "description": "Value for columns.",\n "maximum": 65535,\n "minimum": 1,\n "type": "integer"\n },\n "rows": {\n "description": "Value for rows.",\n "maximum": 65535,\n "minimum": 1,\n "type": "integer"\n },\n "type": {\n "const": "resize",\n "description": "Value for type.",\n "type": "string"\n }\n },\n "required": [\n "at_ms",\n "type",\n "columns",\n "rows"\n ],\n "type": "object"\n },\n {\n "properties": {\n "at_ms": {\n "description": "Value for at ms.",\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "signal": {\n "description": "Value for signal.",\n "enum": [\n "SIGINT",\n "SIGTERM",\n "SIGKILL"\n ],\n "type": "string"\n },\n "type": {\n "const": "signal",\n "description": "Value for type.",\n "type": "string"\n }\n },\n "required": [\n "at_ms",\n "type",\n "signal"\n ],\n "type": "object"\n }\n ]\n },\n "type": "array"\n },\n "executable": {\n "description": "Command name or executable path to run.",\n "minLength": 1,\n "type": "string"\n },\n "filesystem_observation_paths": {\n "default": [],\n "description": "Value for filesystem observation paths.",\n "items": {\n "minLength": 1,\n "type": "string"\n },\n "type": "array"\n },\n "idle_timeout_ms": {\n "default": 30000,\n "description": "Value for idle timeout ms.",\n "exclusiveMinimum": 0,\n "maximum": 9007199254740991,\n "type": "integer"\n },\n "limits": {\n "additionalProperties": false,\n "default": {\n "file_bytes": 10000000,\n "files": 10000,\n "filesystem_depth": 16,\n "output_bytes": 1000000,\n "processes": 1000\n },\n "description": "Resource budgets that bound execution and retained output for this operation.",\n "properties": {\n "file_bytes": {\n "default": 10000000,\n "description": "Byte count for file.",\n "exclusiveMinimum": 0,\n "maximum": 9007199254740991,\n "type": "integer"\n },\n "files": {\n "default": 10000,\n "description": "Value for files.",\n "exclusiveMinimum": 0,\n "maximum": 9007199254740991,\n "type": "integer"\n },\n "filesystem_depth": {\n "default": 16,\n "description": "Value for filesystem depth.",\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "output_bytes": {\n "default": 1000000,\n "description": "Byte count for output.",\n "exclusiveMinimum": 0,\n "maximum": 9007199254740991,\n "type": "integer"\n },\n "processes": {\n "default": 1000,\n "description": "Value for processes.",\n "exclusiveMinimum": 0,\n "maximum": 9007199254740991,\n "type": "integer"\n }\n },\n "type": "object"\n },\n "normalization": {\n "default": {\n "paths": false,\n "patterns": [],\n "pids": true,\n "ports": true,\n "time_bucket_ms": 10\n },\n "description": "Value for normalization.",\n "properties": {\n "paths": {\n "default": false,\n "description": "Value for paths.",\n "type": "boolean"\n },\n "patterns": {\n "default": [],\n "description": "Value for patterns.",\n "items": {\n "properties": {\n "pattern": {\n "description": "Literal text or regular expression used to filter matching results.",\n "type": "string"\n },\n "replacement": {\n "description": "Value for replacement.",\n "type": "string"\n }\n },\n "required": [\n "pattern",\n "replacement"\n ],\n "type": "object"\n },\n "type": "array"\n },\n "pids": {\n "default": true,\n "description": "Value for pids.",\n "type": "boolean"\n },\n "ports": {\n "default": true,\n "description": "Value for ports.",\n "type": "boolean"\n },\n "time_bucket_ms": {\n "default": 10,\n "description": "Value for time bucket ms.",\n "exclusiveMinimum": 0,\n "maximum": 9007199254740991,\n "type": "integer"\n }\n },\n "type": "object"\n },\n "settle_ms": {\n "default": 100,\n "description": "Value for settle ms.",\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "terminal": {\n "default": {\n "columns": 80,\n "rows": 24,\n "scrollback": 1000\n },\n "description": "Value for terminal.",\n "properties": {\n "columns": {\n "default": 80,\n "description": "Value for columns.",\n "maximum": 65535,\n "minimum": 1,\n "type": "integer"\n },\n "rows": {\n "default": 24,\n "description": "Value for rows.",\n "maximum": 65535,\n "minimum": 1,\n "type": "integer"\n },\n "scrollback": {\n "default": 1000,\n "description": "Value for scrollback.",\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "type": "object"\n },\n "timeout_ms": {\n "default": 30000,\n "description": "Value for timeout ms.",\n "exclusiveMinimum": 0,\n "maximum": 9007199254740991,\n "type": "integer"\n },\n "working_directory": {\n "default": ".",\n "description": "Value for working directory.",\n "type": "string"\n }\n },\n "required": [\n "executable"\n ],\n "type": "object"\n },\n "kind": "session",\n "name": "capture_process_scenario",\n "outputSchema": {\n "$defs": {\n "__schema0": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "number"\n },\n {\n "type": "boolean"\n },\n {\n "type": "null"\n },\n {\n "items": {\n "$ref": "#/$defs/__schema0"\n },\n "type": "array"\n },\n {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n }\n ]\n }\n },\n "$schema": "https://json-schema.org/draft/2020-12/schema",\n "additionalProperties": false,\n "properties": {\n "evidence": {\n "additionalProperties": false,\n "properties": {\n "analysis_profile": {\n "additionalProperties": false,\n "properties": {\n "digest": {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n },\n "parameters": {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n },\n "provider": {\n "additionalProperties": false,\n "properties": {\n "id": {\n "minLength": 1,\n "type": "string"\n },\n "name": {\n "minLength": 1,\n "type": "string"\n },\n "version": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "id",\n "name",\n "version"\n ],\n "type": "object"\n }\n },\n "required": [\n "provider",\n "parameters",\n "digest"\n ],\n "type": "object"\n },\n "authority": {\n "enum": [\n "shipped-artifact",\n "controlled-replay",\n "historical-reference",\n "external-service",\n "analyst-inference"\n ],\n "type": "string"\n },\n "confidence": {\n "enum": [\n "observed",\n "derived",\n "inferred"\n ],\n "type": "string"\n },\n "environment": {\n "anyOf": [\n {\n "additionalProperties": false,\n "properties": {\n "architecture": {\n "minLength": 1,\n "type": "string"\n },\n "id": {\n "minLength": 1,\n "type": "string"\n },\n "isolation": {\n "enum": [\n "none",\n "process",\n "container",\n "virtual-machine"\n ],\n "type": "string"\n },\n "platform": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "id",\n "platform",\n "architecture",\n "isolation"\n ],\n "type": "object"\n },\n {\n "type": "null"\n }\n ]\n },\n "evidence_id": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "evidence_links": {\n "items": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "type": "array"\n },\n "limitations": {\n "items": {\n "type": "string"\n },\n "type": "array"\n },\n "locations": {\n "items": {\n "oneOf": [\n {\n "additionalProperties": false,\n "properties": {\n "address": {\n "minLength": 1,\n "type": "string"\n },\n "kind": {\n "const": "address",\n "type": "string"\n }\n },\n "required": [\n "kind",\n "address"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "end": {\n "minLength": 1,\n "type": "string"\n },\n "kind": {\n "const": "address-range",\n "type": "string"\n },\n "start": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "kind",\n "start",\n "end"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "kind": {\n "const": "artifact-path",\n "type": "string"\n },\n "path": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "kind",\n "path"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "kind": {\n "const": "file-offset",\n "type": "string"\n },\n "offset": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "kind",\n "offset"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "end": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "kind": {\n "const": "file-offset-range",\n "type": "string"\n },\n "start": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "kind",\n "start",\n "end"\n ],\n "type": "object"\n }\n ]\n },\n "type": "array"\n },\n "normalized_result": {\n "$ref": "#/$defs/__schema0"\n },\n "operation": {\n "minLength": 1,\n "type": "string"\n },\n "parameters": {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n },\n "predicate_type": {\n "minLength": 1,\n "type": "string"\n },\n "provider": {\n "additionalProperties": false,\n "properties": {\n "id": {\n "minLength": 1,\n "type": "string"\n },\n "name": {\n "minLength": 1,\n "type": "string"\n },\n "version": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "id",\n "name",\n "version"\n ],\n "type": "object"\n },\n "raw_result": {\n "anyOf": [\n {\n "$ref": "#/$defs/__schema0"\n },\n {\n "type": "null"\n }\n ]\n },\n "subject": {\n "anyOf": [\n {\n "additionalProperties": false,\n "properties": {\n "architecture": {\n "anyOf": [\n {\n "enum": [\n "x86",\n "x86_64",\n "arm",\n "arm64"\n ],\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "digest": {\n "additionalProperties": false,\n "properties": {\n "sha256": {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n }\n },\n "required": [\n "sha256"\n ],\n "type": "object"\n },\n "format": {\n "enum": [\n "hopper",\n "analysis-database",\n "mach-o",\n "elf",\n "pe",\n "dos-mz",\n "dos-com",\n "zip",\n "ipa",\n "apk",\n "msix",\n "appx",\n "asar",\n "dmg",\n "pkg",\n "plist",\n "javascript",\n "source-map",\n "directory",\n "file",\n "unknown",\n "mach-o-universal",\n "javascript-bundle",\n "entitlements"\n ],\n "type": "string"\n },\n "local_path": {\n "type": "string"\n },\n "name": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "name",\n "digest",\n "format",\n "architecture",\n "local_path"\n ],\n "type": "object"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "evidence_id",\n "subject",\n "provider",\n "predicate_type",\n "operation",\n "parameters",\n "raw_result",\n "normalized_result",\n "confidence",\n "authority",\n "environment",\n "limitations",\n "locations",\n "evidence_links"\n ],\n "type": "object"\n },\n "evidence_id": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "result": {\n "additionalProperties": false,\n "properties": {\n "cleanup": {\n "additionalProperties": false,\n "properties": {\n "owned_process_group": {\n "const": "verified",\n "type": "string"\n },\n "temporary_root": {\n "const": "removed",\n "type": "string"\n }\n },\n "required": [\n "owned_process_group",\n "temporary_root"\n ],\n "type": "object"\n },\n "event_journal": {\n "default": [],\n "items": {\n "additionalProperties": false,\n "properties": {\n "capture_order": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "collection": {\n "enum": [\n "frames",\n "rendered_frames",\n "interaction_events",\n "lifecycle",\n "process_samples",\n "filesystem_checkpoints"\n ],\n "type": "string"\n },\n "index": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "capture_order",\n "collection",\n "index"\n ],\n "type": "object"\n },\n "type": "array"\n },\n "exit": {\n "additionalProperties": false,\n "properties": {\n "code": {\n "anyOf": [\n {\n "maximum": 9007199254740991,\n "minimum": -9007199254740991,\n "type": "integer"\n },\n {\n "type": "null"\n }\n ]\n },\n "reason": {\n "enum": [\n "exited",\n "timeout",\n "idle_timeout"\n ],\n "type": "string"\n },\n "signal": {\n "anyOf": [\n {\n "maximum": 9007199254740991,\n "minimum": -9007199254740991,\n "type": "integer"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "code",\n "signal",\n "reason"\n ],\n "type": "object"\n },\n "files_after": {\n "items": {\n "oneOf": [\n {\n "additionalProperties": false,\n "properties": {\n "mode": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "path": {\n "type": "string"\n },\n "sha256": {\n "anyOf": [\n {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "size": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "symlink_target": {\n "type": "null"\n },\n "type": {\n "const": "file",\n "type": "string"\n }\n },\n "required": [\n "path",\n "mode",\n "size",\n "type",\n "sha256",\n "symlink_target"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "mode": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "path": {\n "type": "string"\n },\n "sha256": {\n "type": "null"\n },\n "size": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "symlink_target": {\n "type": "string"\n },\n "type": {\n "const": "symlink",\n "type": "string"\n }\n },\n "required": [\n "path",\n "mode",\n "size",\n "type",\n "sha256",\n "symlink_target"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "mode": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "path": {\n "type": "string"\n },\n "sha256": {\n "type": "null"\n },\n "size": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "symlink_target": {\n "type": "null"\n },\n "type": {\n "enum": [\n "directory",\n "other"\n ],\n "type": "string"\n }\n },\n "required": [\n "path",\n "mode",\n "size",\n "type",\n "sha256",\n "symlink_target"\n ],\n "type": "object"\n }\n ]\n },\n "type": "array"\n },\n "files_before": {\n "items": {\n "oneOf": [\n {\n "additionalProperties": false,\n "properties": {\n "mode": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "path": {\n "type": "string"\n },\n "sha256": {\n "anyOf": [\n {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "size": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "symlink_target": {\n "type": "null"\n },\n "type": {\n "const": "file",\n "type": "string"\n }\n },\n "required": [\n "path",\n "mode",\n "size",\n "type",\n "sha256",\n "symlink_target"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "mode": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "path": {\n "type": "string"\n },\n "sha256": {\n "type": "null"\n },\n "size": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "symlink_target": {\n "type": "string"\n },\n "type": {\n "const": "symlink",\n "type": "string"\n }\n },\n "required": [\n "path",\n "mode",\n "size",\n "type",\n "sha256",\n "symlink_target"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "mode": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "path": {\n "type": "string"\n },\n "sha256": {\n "type": "null"\n },\n "size": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "symlink_target": {\n "type": "null"\n },\n "type": {\n "enum": [\n "directory",\n "other"\n ],\n "type": "string"\n }\n },\n "required": [\n "path",\n "mode",\n "size",\n "type",\n "sha256",\n "symlink_target"\n ],\n "type": "object"\n }\n ]\n },\n "type": "array"\n },\n "filesystem_checkpoints": {\n "items": {\n "additionalProperties": false,\n "properties": {\n "at_ms": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "effects": {\n "items": {\n "oneOf": [\n {\n "additionalProperties": false,\n "properties": {\n "after": {\n "oneOf": [\n {\n "additionalProperties": false,\n "properties": {\n "mode": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "path": {\n "type": "string"\n },\n "sha256": {\n "anyOf": [\n {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "size": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "symlink_target": {\n "type": "null"\n },\n "type": {\n "const": "file",\n "type": "string"\n }\n },\n "required": [\n "path",\n "mode",\n "size",\n "type",\n "sha256",\n "symlink_target"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "mode": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "path": {\n "type": "string"\n },\n "sha256": {\n "type": "null"\n },\n "size": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "symlink_target": {\n "type": "string"\n },\n "type": {\n "const": "symlink",\n "type": "string"\n }\n },\n "required": [\n "path",\n "mode",\n "size",\n "type",\n "sha256",\n "symlink_target"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "mode": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "path": {\n "type": "string"\n },\n "sha256": {\n "type": "null"\n },\n "size": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "symlink_target": {\n "type": "null"\n },\n "type": {\n "enum": [\n "directory",\n "other"\n ],\n "type": "string"\n }\n },\n "required": [\n "path",\n "mode",\n "size",\n "type",\n "sha256",\n "symlink_target"\n ],\n "type": "object"\n }\n ]\n },\n "before": {\n "type": "null"\n },\n "path": {\n "type": "string"\n },\n "status": {\n "const": "created",\n "type": "string"\n }\n },\n "required": [\n "path",\n "status",\n "before",\n "after"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "after": {\n "type": "null"\n },\n "before": {\n "oneOf": [\n {\n "additionalProperties": false,\n "properties": {\n "mode": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "path": {\n "type": "string"\n },\n "sha256": {\n "anyOf": [\n {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "size": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "symlink_target": {\n "type": "null"\n },\n "type": {\n "const": "file",\n "type": "string"\n }\n },\n "required": [\n "path",\n "mode",\n "size",\n "type",\n "sha256",\n "symlink_target"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "mode": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "path": {\n "type": "string"\n },\n "sha256": {\n "type": "null"\n },\n "size": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "symlink_target": {\n "type": "string"\n },\n "type": {\n "const": "symlink",\n "type": "string"\n }\n },\n "required": [\n "path",\n "mode",\n "size",\n "type",\n "sha256",\n "symlink_target"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "mode": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "path": {\n "type": "string"\n },\n "sha256": {\n "type": "null"\n },\n "size": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "symlink_target": {\n "type": "null"\n },\n "type": {\n "enum": [\n "directory",\n "other"\n ],\n "type": "string"\n }\n },\n "required": [\n "path",\n "mode",\n "size",\n "type",\n "sha256",\n "symlink_target"\n ],\n "type": "object"\n }\n ]\n },\n "path": {\n "type": "string"\n },\n "status": {\n "const": "deleted",\n "type": "string"\n }\n },\n "required": [\n "path",\n "status",\n "before",\n "after"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "after": {\n "oneOf": [\n {\n "additionalProperties": false,\n "properties": {\n "mode": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "path": {\n "type": "string"\n },\n "sha256": {\n "anyOf": [\n {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "size": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "symlink_target": {\n "type": "null"\n },\n "type": {\n "const": "file",\n "type": "string"\n }\n },\n "required": [\n "path",\n "mode",\n "size",\n "type",\n "sha256",\n "symlink_target"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "mode": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "path": {\n "type": "string"\n },\n "sha256": {\n "type": "null"\n },\n "size": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "symlink_target": {\n "type": "string"\n },\n "type": {\n "const": "symlink",\n "type": "string"\n }\n },\n "required": [\n "path",\n "mode",\n "size",\n "type",\n "sha256",\n "symlink_target"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "mode": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "path": {\n "type": "string"\n },\n "sha256": {\n "type": "null"\n },\n "size": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "symlink_target": {\n "type": "null"\n },\n "type": {\n "enum": [\n "directory",\n "other"\n ],\n "type": "string"\n }\n },\n "required": [\n "path",\n "mode",\n "size",\n "type",\n "sha256",\n "symlink_target"\n ],\n "type": "object"\n }\n ]\n },\n "before": {\n "oneOf": [\n {\n "additionalProperties": false,\n "properties": {\n "mode": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "path": {\n "type": "string"\n },\n "sha256": {\n "anyOf": [\n {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "size": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "symlink_target": {\n "type": "null"\n },\n "type": {\n "const": "file",\n "type": "string"\n }\n },\n "required": [\n "path",\n "mode",\n "size",\n "type",\n "sha256",\n "symlink_target"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "mode": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "path": {\n "type": "string"\n },\n "sha256": {\n "type": "null"\n },\n "size": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "symlink_target": {\n "type": "string"\n },\n "type": {\n "const": "symlink",\n "type": "string"\n }\n },\n "required": [\n "path",\n "mode",\n "size",\n "type",\n "sha256",\n "symlink_target"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "mode": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "path": {\n "type": "string"\n },\n "sha256": {\n "type": "null"\n },\n "size": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "symlink_target": {\n "type": "null"\n },\n "type": {\n "enum": [\n "directory",\n "other"\n ],\n "type": "string"\n }\n },\n "required": [\n "path",\n "mode",\n "size",\n "type",\n "sha256",\n "symlink_target"\n ],\n "type": "object"\n }\n ]\n },\n "path": {\n "type": "string"\n },\n "status": {\n "enum": [\n "modified",\n "unchanged"\n ],\n "type": "string"\n }\n },\n "required": [\n "path",\n "status",\n "before",\n "after"\n ],\n "type": "object"\n }\n ]\n },\n "type": "array"\n },\n "files": {\n "items": {\n "oneOf": [\n {\n "additionalProperties": false,\n "properties": {\n "mode": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "path": {\n "type": "string"\n },\n "sha256": {\n "anyOf": [\n {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "size": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "symlink_target": {\n "type": "null"\n },\n "type": {\n "const": "file",\n "type": "string"\n }\n },\n "required": [\n "path",\n "mode",\n "size",\n "type",\n "sha256",\n "symlink_target"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "mode": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "path": {\n "type": "string"\n },\n "sha256": {\n "type": "null"\n },\n "size": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "symlink_target": {\n "type": "string"\n },\n "type": {\n "const": "symlink",\n "type": "string"\n }\n },\n "required": [\n "path",\n "mode",\n "size",\n "type",\n "sha256",\n "symlink_target"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "mode": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "path": {\n "type": "string"\n },\n "sha256": {\n "type": "null"\n },\n "size": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "symlink_target": {\n "type": "null"\n },\n "type": {\n "enum": [\n "directory",\n "other"\n ],\n "type": "string"\n }\n },\n "required": [\n "path",\n "mode",\n "size",\n "type",\n "sha256",\n "symlink_target"\n ],\n "type": "object"\n }\n ]\n },\n "type": "array"\n },\n "name": {\n "enum": [\n "before",\n "after_settlement"\n ],\n "type": "string"\n },\n "truncated": {\n "type": "boolean"\n }\n },\n "required": [\n "name",\n "at_ms",\n "files",\n "effects",\n "truncated"\n ],\n "type": "object"\n },\n "type": "array"\n },\n "filesystem_effects": {\n "items": {\n "oneOf": [\n {\n "additionalProperties": false,\n "properties": {\n "after": {\n "oneOf": [\n {\n "additionalProperties": false,\n "properties": {\n "mode": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "path": {\n "type": "string"\n },\n "sha256": {\n "anyOf": [\n {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "size": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "symlink_target": {\n "type": "null"\n },\n "type": {\n "const": "file",\n "type": "string"\n }\n },\n "required": [\n "path",\n "mode",\n "size",\n "type",\n "sha256",\n "symlink_target"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "mode": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "path": {\n "type": "string"\n },\n "sha256": {\n "type": "null"\n },\n "size": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "symlink_target": {\n "type": "string"\n },\n "type": {\n "const": "symlink",\n "type": "string"\n }\n },\n "required": [\n "path",\n "mode",\n "size",\n "type",\n "sha256",\n "symlink_target"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "mode": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "path": {\n "type": "string"\n },\n "sha256": {\n "type": "null"\n },\n "size": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "symlink_target": {\n "type": "null"\n },\n "type": {\n "enum": [\n "directory",\n "other"\n ],\n "type": "string"\n }\n },\n "required": [\n "path",\n "mode",\n "size",\n "type",\n "sha256",\n "symlink_target"\n ],\n "type": "object"\n }\n ]\n },\n "before": {\n "type": "null"\n },\n "path": {\n "type": "string"\n },\n "status": {\n "const": "created",\n "type": "string"\n }\n },\n "required": [\n "path",\n "status",\n "before",\n "after"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "after": {\n "type": "null"\n },\n "before": {\n "oneOf": [\n {\n "additionalProperties": false,\n "properties": {\n "mode": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "path": {\n "type": "string"\n },\n "sha256": {\n "anyOf": [\n {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "size": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "symlink_target": {\n "type": "null"\n },\n "type": {\n "const": "file",\n "type": "string"\n }\n },\n "required": [\n "path",\n "mode",\n "size",\n "type",\n "sha256",\n "symlink_target"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "mode": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "path": {\n "type": "string"\n },\n "sha256": {\n "type": "null"\n },\n "size": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "symlink_target": {\n "type": "string"\n },\n "type": {\n "const": "symlink",\n "type": "string"\n }\n },\n "required": [\n "path",\n "mode",\n "size",\n "type",\n "sha256",\n "symlink_target"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "mode": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "path": {\n "type": "string"\n },\n "sha256": {\n "type": "null"\n },\n "size": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "symlink_target": {\n "type": "null"\n },\n "type": {\n "enum": [\n "directory",\n "other"\n ],\n "type": "string"\n }\n },\n "required": [\n "path",\n "mode",\n "size",\n "type",\n "sha256",\n "symlink_target"\n ],\n "type": "object"\n }\n ]\n },\n "path": {\n "type": "string"\n },\n "status": {\n "const": "deleted",\n "type": "string"\n }\n },\n "required": [\n "path",\n "status",\n "before",\n "after"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "after": {\n "oneOf": [\n {\n "additionalProperties": false,\n "properties": {\n "mode": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "path": {\n "type": "string"\n },\n "sha256": {\n "anyOf": [\n {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "size": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "symlink_target": {\n "type": "null"\n },\n "type": {\n "const": "file",\n "type": "string"\n }\n },\n "required": [\n "path",\n "mode",\n "size",\n "type",\n "sha256",\n "symlink_target"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "mode": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "path": {\n "type": "string"\n },\n "sha256": {\n "type": "null"\n },\n "size": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "symlink_target": {\n "type": "string"\n },\n "type": {\n "const": "symlink",\n "type": "string"\n }\n },\n "required": [\n "path",\n "mode",\n "size",\n "type",\n "sha256",\n "symlink_target"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "mode": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "path": {\n "type": "string"\n },\n "sha256": {\n "type": "null"\n },\n "size": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "symlink_target": {\n "type": "null"\n },\n "type": {\n "enum": [\n "directory",\n "other"\n ],\n "type": "string"\n }\n },\n "required": [\n "path",\n "mode",\n "size",\n "type",\n "sha256",\n "symlink_target"\n ],\n "type": "object"\n }\n ]\n },\n "before": {\n "oneOf": [\n {\n "additionalProperties": false,\n "properties": {\n "mode": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "path": {\n "type": "string"\n },\n "sha256": {\n "anyOf": [\n {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "size": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "symlink_target": {\n "type": "null"\n },\n "type": {\n "const": "file",\n "type": "string"\n }\n },\n "required": [\n "path",\n "mode",\n "size",\n "type",\n "sha256",\n "symlink_target"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "mode": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "path": {\n "type": "string"\n },\n "sha256": {\n "type": "null"\n },\n "size": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "symlink_target": {\n "type": "string"\n },\n "type": {\n "const": "symlink",\n "type": "string"\n }\n },\n "required": [\n "path",\n "mode",\n "size",\n "type",\n "sha256",\n "symlink_target"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "mode": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "path": {\n "type": "string"\n },\n "sha256": {\n "type": "null"\n },\n "size": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "symlink_target": {\n "type": "null"\n },\n "type": {\n "enum": [\n "directory",\n "other"\n ],\n "type": "string"\n }\n },\n "required": [\n "path",\n "mode",\n "size",\n "type",\n "sha256",\n "symlink_target"\n ],\n "type": "object"\n }\n ]\n },\n "path": {\n "type": "string"\n },\n "status": {\n "enum": [\n "modified",\n "unchanged"\n ],\n "type": "string"\n }\n },\n "required": [\n "path",\n "status",\n "before",\n "after"\n ],\n "type": "object"\n }\n ]\n },\n "type": "array"\n },\n "frames": {\n "items": {\n "additionalProperties": false,\n "properties": {\n "at_ms": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "data": {\n "type": "string"\n },\n "sequence": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "sequence",\n "at_ms",\n "data"\n ],\n "type": "object"\n },\n "type": "array"\n },\n "interaction_events": {\n "items": {\n "additionalProperties": false,\n "properties": {\n "data": {\n "type": "string"\n },\n "dispatched_at_ms": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "outcome": {\n "enum": [\n "dispatched",\n "target_exited",\n "failed"\n ],\n "type": "string"\n },\n "scheduled_at_ms": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "sequence": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "type": {\n "enum": [\n "input",\n "resize",\n "signal"\n ],\n "type": "string"\n }\n },\n "required": [\n "sequence",\n "scheduled_at_ms",\n "dispatched_at_ms",\n "type",\n "data",\n "outcome"\n ],\n "type": "object"\n },\n "type": "array"\n },\n "limitations": {\n "items": {\n "type": "string"\n },\n "type": "array"\n },\n "manifest": {\n "additionalProperties": false,\n "properties": {\n "architecture": {\n "minLength": 1,\n "type": "string"\n },\n "comparison_contract": {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n },\n "comparison_contract_sha256": {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n },\n "completed_at": {\n "format": "date-time",\n "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))$",\n "type": "string"\n },\n "executable_sha256": {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n },\n "full_scenario_sha256": {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n },\n "normalization_sha256": {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n },\n "platform": {\n "minLength": 1,\n "type": "string"\n },\n "provider_version": {\n "minLength": 1,\n "type": "string"\n },\n "pty_backend": {\n "const": "node-pty",\n "type": "string"\n },\n "rea_version": {\n "minLength": 1,\n "type": "string"\n },\n "scenario": {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n },\n "started_at": {\n "format": "date-time",\n "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))$",\n "type": "string"\n }\n },\n "required": [\n "rea_version",\n "provider_version",\n "platform",\n "architecture",\n "pty_backend",\n "started_at",\n "completed_at",\n "scenario",\n "comparison_contract",\n "full_scenario_sha256",\n "comparison_contract_sha256",\n "executable_sha256",\n "normalization_sha256"\n ],\n "type": "object"\n },\n "normalization": {\n "additionalProperties": false,\n "properties": {\n "paths": {\n "type": "boolean"\n },\n "patterns": {\n "items": {\n "additionalProperties": false,\n "properties": {\n "pattern": {\n "type": "string"\n },\n "replacement": {\n "type": "string"\n }\n },\n "required": [\n "pattern",\n "replacement"\n ],\n "type": "object"\n },\n "type": "array"\n },\n "pids": {\n "type": "boolean"\n },\n "ports": {\n "type": "boolean"\n },\n "time_bucket_ms": {\n "exclusiveMinimum": 0,\n "maximum": 9007199254740991,\n "type": "integer"\n }\n },\n "required": [\n "paths",\n "pids",\n "ports",\n "time_bucket_ms",\n "patterns"\n ],\n "type": "object"\n },\n "process_samples": {\n "items": {\n "additionalProperties": false,\n "properties": {\n "at_ms": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "command": {\n "type": "string"\n },\n "parent_pid": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "pid": {\n "exclusiveMinimum": 0,\n "maximum": 9007199254740991,\n "type": "integer"\n },\n "process_group_id": {\n "anyOf": [\n {\n "exclusiveMinimum": 0,\n "maximum": 9007199254740991,\n "type": "integer"\n },\n {\n "type": "null"\n }\n ]\n },\n "session_id": {\n "anyOf": [\n {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "at_ms",\n "pid",\n "parent_pid",\n "command",\n "process_group_id",\n "session_id"\n ],\n "type": "object"\n },\n "type": "array"\n },\n "rendered_frames": {\n "items": {\n "additionalProperties": false,\n "properties": {\n "active_buffer": {\n "enum": [\n "normal",\n "alternate"\n ],\n "type": "string"\n },\n "at_ms": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "columns": {\n "exclusiveMinimum": 0,\n "maximum": 9007199254740991,\n "type": "integer"\n },\n "cursor_x": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "cursor_y": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "lines": {\n "items": {\n "type": "string"\n },\n "type": "array"\n },\n "rows": {\n "exclusiveMinimum": 0,\n "maximum": 9007199254740991,\n "type": "integer"\n },\n "sequence": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "serialized_state": {\n "type": "string"\n }\n },\n "required": [\n "sequence",\n "at_ms",\n "columns",\n "rows",\n "cursor_x",\n "cursor_y",\n "active_buffer",\n "lines",\n "serialized_state"\n ],\n "type": "object"\n },\n "type": "array"\n },\n "residual_unknowns": {\n "items": {\n "additionalProperties": false,\n "properties": {\n "reason": {\n "type": "string"\n },\n "scope": {\n "enum": [\n "terminal",\n "interaction",\n "exit",\n "process",\n "filesystem",\n "cleanup",\n "network",\n "environment"\n ],\n "type": "string"\n }\n },\n "required": [\n "scope",\n "reason"\n ],\n "type": "object"\n },\n "type": "array"\n },\n "settlement": {\n "oneOf": [\n {\n "additionalProperties": false,\n "properties": {\n "cleanup_outcome": {\n "const": "not_required",\n "type": "string"\n },\n "elapsed_ms": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "state": {\n "const": "quiesced",\n "type": "string"\n }\n },\n "required": [\n "state",\n "elapsed_ms",\n "cleanup_outcome"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "cleanup_outcome": {\n "enum": [\n "cleaned",\n "failed"\n ],\n "type": "string"\n },\n "elapsed_ms": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "state": {\n "enum": [\n "alive_at_deadline",\n "unverifiable"\n ],\n "type": "string"\n }\n },\n "required": [\n "state",\n "elapsed_ms",\n "cleanup_outcome"\n ],\n "type": "object"\n }\n ]\n },\n "truncated": {\n "type": "boolean"\n }\n },\n "required": [\n "manifest",\n "normalization",\n "frames",\n "rendered_frames",\n "interaction_events",\n "exit",\n "settlement",\n "process_samples",\n "filesystem_checkpoints",\n "event_journal",\n "files_before",\n "files_after",\n "filesystem_effects",\n "truncated",\n "limitations",\n "residual_unknowns",\n "cleanup"\n ],\n "type": "object"\n }\n },\n "required": [\n "result",\n "evidence_id",\n "evidence"\n ],\n "type": "object"\n },\n "requiresSession": true,\n "title": "Capture Process Scenario"\n },\n {\n "analysisOperation": null,\n "annotations": {\n "destructiveHint": false,\n "idempotentHint": true,\n "openWorldHint": false,\n "readOnlyHint": false\n },\n "description": "Compare two compatible process capture 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.",\n "effects": {\n "accessesNetwork": false,\n "changesUiState": false,\n "idempotent": true,\n "launchesProcess": false,\n "mayDiscardData": false,\n "mutatesSession": true,\n "mutatesTarget": false,\n "writesFilesystem": false\n },\n "inputSchema": {\n "$defs": {\n "__schema0": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "number"\n },\n {\n "type": "boolean"\n },\n {\n "type": "null"\n },\n {\n "items": {\n "$ref": "#/$defs/__schema0"\n },\n "type": "array"\n },\n {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n }\n ]\n }\n },\n "$schema": "https://json-schema.org/draft/2020-12/schema",\n "additionalProperties": false,\n "examples": [\n {\n "left": {\n "authority": "controlled-replay",\n "confidence": "observed",\n "environment": {\n "architecture": "x86_64",\n "id": "fixture-linux",\n "isolation": "container",\n "platform": "linux"\n },\n "evidence_id": "ev_39dc6ca57fd8d981c0bce63a1de75dd752e0ae47ff911440949cba8f6a8f1b7c",\n "evidence_links": [],\n "limitations": [\n "Artifact identity is unavailable for this observation."\n ],\n "locations": [],\n "normalized_result": {\n "cleanup": {\n "owned_process_group": "verified",\n "temporary_root": "removed"\n },\n "event_journal": [],\n "exit": {\n "code": 0,\n "reason": "exited",\n "signal": null\n },\n "files_after": [],\n "files_before": [],\n "filesystem_checkpoints": [\n {\n "at_ms": 0,\n "effects": [],\n "files": [],\n "name": "before",\n "truncated": false\n },\n {\n "at_ms": 50,\n "effects": [],\n "files": [],\n "name": "after_settlement",\n "truncated": false\n }\n ],\n "filesystem_effects": [],\n "frames": [],\n "interaction_events": [],\n "limitations": [],\n "manifest": {\n "architecture": "fixture",\n "comparison_contract": {},\n "comparison_contract_sha256": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",\n "completed_at": "2026-01-01T00:00:00.001Z",\n "executable_sha256": "0000000000000000000000000000000000000000000000000000000000000000",\n "full_scenario_sha256": "e9fb6dbb12060cb724e2c6360da0d406b8dcb13ed91769105f92efe312491fc7",\n "normalization_sha256": "60a27b2d1ee5aa73bf2e5cb2deaed2e9cc548f961ad2e3772c981828b643cc43",\n "platform": "fixture",\n "provider_version": "3",\n "pty_backend": "node-pty",\n "rea_version": "1.1.0",\n "scenario": {\n "executable_sha256": "0000000000000000000000000000000000000000000000000000000000000000"\n },\n "started_at": "2026-01-01T00:00:00.000Z"\n },\n "normalization": {\n "paths": true,\n "patterns": [],\n "pids": true,\n "ports": true,\n "time_bucket_ms": 10\n },\n "process_samples": [],\n "rendered_frames": [],\n "residual_unknowns": [],\n "settlement": {\n "cleanup_outcome": "not_required",\n "elapsed_ms": 50,\n "state": "quiesced"\n },\n "truncated": false\n },\n "operation": "capture_process_scenario",\n "parameters": {\n "scenario": "reference"\n },\n "predicate_type": "rea.process-capture",\n "provider": {\n "id": "rea-process",\n "name": "REA deterministic process harness",\n "version": "3"\n },\n "raw_result": null,\n "subject": null\n },\n "right": {\n "authority": "controlled-replay",\n "confidence": "observed",\n "environment": {\n "architecture": "x86_64",\n "id": "fixture-linux",\n "isolation": "container",\n "platform": "linux"\n },\n "evidence_id": "ev_434bd49ec7096a6a955adb869d0f38ae3cb62f1256376ca87ca7ca983e5ef538",\n "evidence_links": [],\n "limitations": [\n "Artifact identity is unavailable for this observation."\n ],\n "locations": [],\n "normalized_result": {\n "cleanup": {\n "owned_process_group": "verified",\n "temporary_root": "removed"\n },\n "event_journal": [],\n "exit": {\n "code": 0,\n "reason": "exited",\n "signal": null\n },\n "files_after": [],\n "files_before": [],\n "filesystem_checkpoints": [\n {\n "at_ms": 0,\n "effects": [],\n "files": [],\n "name": "before",\n "truncated": false\n },\n {\n "at_ms": 50,\n "effects": [],\n "files": [],\n "name": "after_settlement",\n "truncated": false\n }\n ],\n "filesystem_effects": [],\n "frames": [],\n "interaction_events": [],\n "limitations": [],\n "manifest": {\n "architecture": "fixture",\n "comparison_contract": {},\n "comparison_contract_sha256": "44136fa355b3678a1146ad16f7e8649e94fb4fc21fe77e8310c060f61caaff8a",\n "completed_at": "2026-01-01T00:00:00.001Z",\n "executable_sha256": "0000000000000000000000000000000000000000000000000000000000000000",\n "full_scenario_sha256": "e9fb6dbb12060cb724e2c6360da0d406b8dcb13ed91769105f92efe312491fc7",\n "normalization_sha256": "60a27b2d1ee5aa73bf2e5cb2deaed2e9cc548f961ad2e3772c981828b643cc43",\n "platform": "fixture",\n "provider_version": "3",\n "pty_backend": "node-pty",\n "rea_version": "1.1.0",\n "scenario": {\n "executable_sha256": "0000000000000000000000000000000000000000000000000000000000000000"\n },\n "started_at": "2026-01-01T00:00:00.000Z"\n },\n "normalization": {\n "paths": true,\n "patterns": [],\n "pids": true,\n "ports": true,\n "time_bucket_ms": 10\n },\n "process_samples": [],\n "rendered_frames": [],\n "residual_unknowns": [],\n "settlement": {\n "cleanup_outcome": "not_required",\n "elapsed_ms": 50,\n "state": "quiesced"\n },\n "truncated": false\n },\n "operation": "capture_process_scenario",\n "parameters": {\n "scenario": "reconstruction"\n },\n "predicate_type": "rea.process-capture",\n "provider": {\n "id": "rea-process",\n "name": "REA deterministic process harness",\n "version": "3"\n },\n "raw_result": null,\n "subject": null\n }\n }\n ],\n "properties": {\n "left": {\n "additionalProperties": false,\n "description": "Left-hand input used for comparison or differential execution.",\n "properties": {\n "analysis_profile": {\n "description": "Value for analysis profile.",\n "properties": {\n "digest": {\n "description": "Value for digest.",\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n },\n "parameters": {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "description": "Value for parameters.",\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n },\n "provider": {\n "description": "Value for provider.",\n "properties": {\n "id": {\n "description": "Value for id.",\n "minLength": 1,\n "type": "string"\n },\n "name": {\n "description": "Exact name used by this operation.",\n "minLength": 1,\n "type": "string"\n },\n "version": {\n "description": "Value for version.",\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "id",\n "name",\n "version"\n ],\n "type": "object"\n }\n },\n "required": [\n "provider",\n "parameters",\n "digest"\n ],\n "type": "object"\n },\n "authority": {\n "description": "Value for authority.",\n "enum": [\n "shipped-artifact",\n "controlled-replay",\n "historical-reference",\n "external-service",\n "analyst-inference"\n ],\n "type": "string"\n },\n "confidence": {\n "description": "Value for confidence.",\n "enum": [\n "observed",\n "derived",\n "inferred"\n ],\n "type": "string"\n },\n "environment": {\n "anyOf": [\n {\n "properties": {\n "architecture": {\n "description": "Value for architecture.",\n "minLength": 1,\n "type": "string"\n },\n "id": {\n "description": "Value for id.",\n "minLength": 1,\n "type": "string"\n },\n "isolation": {\n "description": "Value for isolation.",\n "enum": [\n "none",\n "process",\n "container",\n "virtual-machine"\n ],\n "type": "string"\n },\n "platform": {\n "description": "Value for platform.",\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "id",\n "platform",\n "architecture",\n "isolation"\n ],\n "type": "object"\n },\n {\n "type": "null"\n }\n ],\n "description": "Value for environment."\n },\n "evidence_id": {\n "description": "Stable identifier of the recorded Evidence observation.",\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "evidence_links": {\n "description": "Value for evidence links.",\n "items": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "type": "array"\n },\n "limitations": {\n "description": "Value for limitations.",\n "items": {\n "type": "string"\n },\n "type": "array"\n },\n "locations": {\n "description": "Value for locations.",\n "items": {\n "oneOf": [\n {\n "properties": {\n "address": {\n "description": "Value for address.",\n "minLength": 1,\n "type": "string"\n },\n "kind": {\n "const": "address",\n "description": "Value for kind.",\n "type": "string"\n }\n },\n "required": [\n "kind",\n "address"\n ],\n "type": "object"\n },\n {\n "properties": {\n "end": {\n "description": "Value for end.",\n "minLength": 1,\n "type": "string"\n },\n "kind": {\n "const": "address-range",\n "description": "Value for kind.",\n "type": "string"\n },\n "start": {\n "description": "Value for start.",\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "kind",\n "start",\n "end"\n ],\n "type": "object"\n },\n {\n "properties": {\n "kind": {\n "const": "artifact-path",\n "description": "Value for kind.",\n "type": "string"\n },\n "path": {\n "description": "Local filesystem path used by this operation.",\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "kind",\n "path"\n ],\n "type": "object"\n },\n {\n "properties": {\n "kind": {\n "const": "file-offset",\n "description": "Value for kind.",\n "type": "string"\n },\n "offset": {\n "description": "Value for offset.",\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "kind",\n "offset"\n ],\n "type": "object"\n },\n {\n "properties": {\n "end": {\n "description": "Value for end.",\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "kind": {\n "const": "file-offset-range",\n "description": "Value for kind.",\n "type": "string"\n },\n "start": {\n "description": "Value for start.",\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "kind",\n "start",\n "end"\n ],\n "type": "object"\n }\n ]\n },\n "type": "array"\n },\n "normalized_result": {\n "$ref": "#/$defs/__schema0",\n "description": "Value for normalized result."\n },\n "operation": {\n "description": "Value for operation.",\n "minLength": 1,\n "type": "string"\n },\n "parameters": {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "description": "Value for parameters.",\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n },\n "predicate_type": {\n "description": "Value for predicate type.",\n "minLength": 1,\n "type": "string"\n },\n "provider": {\n "description": "Value for provider.",\n "properties": {\n "id": {\n "description": "Value for id.",\n "minLength": 1,\n "type": "string"\n },\n "name": {\n "description": "Exact name used by this operation.",\n "minLength": 1,\n "type": "string"\n },\n "version": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ],\n "description": "Value for version."\n }\n },\n "required": [\n "id",\n "name",\n "version"\n ],\n "type": "object"\n },\n "raw_result": {\n "anyOf": [\n {\n "$ref": "#/$defs/__schema0"\n },\n {\n "type": "null"\n }\n ],\n "description": "Value for raw result."\n },\n "subject": {\n "anyOf": [\n {\n "properties": {\n "architecture": {\n "anyOf": [\n {\n "enum": [\n "x86",\n "x86_64",\n "arm",\n "arm64"\n ],\n "type": "string"\n },\n {\n "type": "null"\n }\n ],\n "description": "Value for architecture."\n },\n "digest": {\n "description": "Value for digest.",\n "properties": {\n "sha256": {\n "description": "Value for sha256.",\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n }\n },\n "required": [\n "sha256"\n ],\n "type": "object"\n },\n "format": {\n "description": "Declared input artifact format.",\n "enum": [\n "hopper",\n "analysis-database",\n "mach-o",\n "elf",\n "pe",\n "dos-mz",\n "dos-com",\n "zip",\n "ipa",\n "apk",\n "msix",\n "appx",\n "asar",\n "dmg",\n "pkg",\n "plist",\n "javascript",\n "source-map",\n "directory",\n "file",\n "unknown",\n "mach-o-universal",\n "javascript-bundle",\n "entitlements"\n ],\n "type": "string"\n },\n "local_path": {\n "description": "Local filesystem path for local.",\n "type": "string"\n },\n "name": {\n "description": "Exact name used by this operation.",\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "name",\n "digest",\n "format",\n "architecture",\n "local_path"\n ],\n "type": "object"\n },\n {\n "type": "null"\n }\n ],\n "description": "Value for subject."\n }\n },\n "required": [\n "evidence_id",\n "subject",\n "provider",\n "predicate_type",\n "operation",\n "parameters",\n "raw_result",\n "normalized_result",\n "confidence",\n "authority",\n "environment",\n "limitations",\n "locations",\n "evidence_links"\n ],\n "type": "object"\n },\n "max_capture_age_ms": {\n "description": "Maximum permitted capture age ms for this operation.",\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "right": {\n "additionalProperties": false,\n "description": "Right-hand input used for comparison or differential execution.",\n "properties": {\n "analysis_profile": {\n "description": "Value for analysis profile.",\n "properties": {\n "digest": {\n "description": "Value for digest.",\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n },\n "parameters": {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "description": "Value for parameters.",\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n },\n "provider": {\n "description": "Value for provider.",\n "properties": {\n "id": {\n "description": "Value for id.",\n "minLength": 1,\n "type": "string"\n },\n "name": {\n "description": "Exact name used by this operation.",\n "minLength": 1,\n "type": "string"\n },\n "version": {\n "description": "Value for version.",\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "id",\n "name",\n "version"\n ],\n "type": "object"\n }\n },\n "required": [\n "provider",\n "parameters",\n "digest"\n ],\n "type": "object"\n },\n "authority": {\n "description": "Value for authority.",\n "enum": [\n "shipped-artifact",\n "controlled-replay",\n "historical-reference",\n "external-service",\n "analyst-inference"\n ],\n "type": "string"\n },\n "confidence": {\n "description": "Value for confidence.",\n "enum": [\n "observed",\n "derived",\n "inferred"\n ],\n "type": "string"\n },\n "environment": {\n "anyOf": [\n {\n "properties": {\n "architecture": {\n "description": "Value for architecture.",\n "minLength": 1,\n "type": "string"\n },\n "id": {\n "description": "Value for id.",\n "minLength": 1,\n "type": "string"\n },\n "isolation": {\n "description": "Value for isolation.",\n "enum": [\n "none",\n "process",\n "container",\n "virtual-machine"\n ],\n "type": "string"\n },\n "platform": {\n "description": "Value for platform.",\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "id",\n "platform",\n "architecture",\n "isolation"\n ],\n "type": "object"\n },\n {\n "type": "null"\n }\n ],\n "description": "Value for environment."\n },\n "evidence_id": {\n "description": "Stable identifier of the recorded Evidence observation.",\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "evidence_links": {\n "description": "Value for evidence links.",\n "items": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "type": "array"\n },\n "limitations": {\n "description": "Value for limitations.",\n "items": {\n "type": "string"\n },\n "type": "array"\n },\n "locations": {\n "description": "Value for locations.",\n "items": {\n "oneOf": [\n {\n "properties": {\n "address": {\n "description": "Value for address.",\n "minLength": 1,\n "type": "string"\n },\n "kind": {\n "const": "address",\n "description": "Value for kind.",\n "type": "string"\n }\n },\n "required": [\n "kind",\n "address"\n ],\n "type": "object"\n },\n {\n "properties": {\n "end": {\n "description": "Value for end.",\n "minLength": 1,\n "type": "string"\n },\n "kind": {\n "const": "address-range",\n "description": "Value for kind.",\n "type": "string"\n },\n "start": {\n "description": "Value for start.",\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "kind",\n "start",\n "end"\n ],\n "type": "object"\n },\n {\n "properties": {\n "kind": {\n "const": "artifact-path",\n "description": "Value for kind.",\n "type": "string"\n },\n "path": {\n "description": "Local filesystem path used by this operation.",\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "kind",\n "path"\n ],\n "type": "object"\n },\n {\n "properties": {\n "kind": {\n "const": "file-offset",\n "description": "Value for kind.",\n "type": "string"\n },\n "offset": {\n "description": "Value for offset.",\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "kind",\n "offset"\n ],\n "type": "object"\n },\n {\n "properties": {\n "end": {\n "description": "Value for end.",\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "kind": {\n "const": "file-offset-range",\n "description": "Value for kind.",\n "type": "string"\n },\n "start": {\n "description": "Value for start.",\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "kind",\n "start",\n "end"\n ],\n "type": "object"\n }\n ]\n },\n "type": "array"\n },\n "normalized_result": {\n "$ref": "#/$defs/__schema0",\n "description": "Value for normalized result."\n },\n "operation": {\n "description": "Value for operation.",\n "minLength": 1,\n "type": "string"\n },\n "parameters": {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "description": "Value for parameters.",\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n },\n "predicate_type": {\n "description": "Value for predicate type.",\n "minLength": 1,\n "type": "string"\n },\n "provider": {\n "description": "Value for provider.",\n "properties": {\n "id": {\n "description": "Value for id.",\n "minLength": 1,\n "type": "string"\n },\n "name": {\n "description": "Exact name used by this operation.",\n "minLength": 1,\n "type": "string"\n },\n "version": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ],\n "description": "Value for version."\n }\n },\n "required": [\n "id",\n "name",\n "version"\n ],\n "type": "object"\n },\n "raw_result": {\n "anyOf": [\n {\n "$ref": "#/$defs/__schema0"\n },\n {\n "type": "null"\n }\n ],\n "description": "Value for raw result."\n },\n "subject": {\n "anyOf": [\n {\n "properties": {\n "architecture": {\n "anyOf": [\n {\n "enum": [\n "x86",\n "x86_64",\n "arm",\n "arm64"\n ],\n "type": "string"\n },\n {\n "type": "null"\n }\n ],\n "description": "Value for architecture."\n },\n "digest": {\n "description": "Value for digest.",\n "properties": {\n "sha256": {\n "description": "Value for sha256.",\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n }\n },\n "required": [\n "sha256"\n ],\n "type": "object"\n },\n "format": {\n "description": "Declared input artifact format.",\n "enum": [\n "hopper",\n "analysis-database",\n "mach-o",\n "elf",\n "pe",\n "dos-mz",\n "dos-com",\n "zip",\n "ipa",\n "apk",\n "msix",\n "appx",\n "asar",\n "dmg",\n "pkg",\n "plist",\n "javascript",\n "source-map",\n "directory",\n "file",\n "unknown",\n "mach-o-universal",\n "javascript-bundle",\n "entitlements"\n ],\n "type": "string"\n },\n "local_path": {\n "description": "Local filesystem path for local.",\n "type": "string"\n },\n "name": {\n "description": "Exact name used by this operation.",\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "name",\n "digest",\n "format",\n "architecture",\n "local_path"\n ],\n "type": "object"\n },\n {\n "type": "null"\n }\n ],\n "description": "Value for subject."\n }\n },\n "required": [\n "evidence_id",\n "subject",\n "provider",\n "predicate_type",\n "operation",\n "parameters",\n "raw_result",\n "normalized_result",\n "confidence",\n "authority",\n "environment",\n "limitations",\n "locations",\n "evidence_links"\n ],\n "type": "object"\n },\n "trace_spec": {\n "additionalProperties": false,\n "description": "Value for trace spec.",\n "properties": {\n "events": {\n "description": "Value for events.",\n "items": {\n "additionalProperties": false,\n "properties": {\n "cardinality": {\n "default": {\n "kind": "required"\n },\n "description": "Value for cardinality.",\n "oneOf": [\n {\n "additionalProperties": false,\n "properties": {\n "kind": {\n "const": "required",\n "description": "Value for kind.",\n "type": "string"\n }\n },\n "required": [\n "kind"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "kind": {\n "const": "optional",\n "description": "Value for kind.",\n "type": "string"\n }\n },\n "required": [\n "kind"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "count": {\n "description": "Value for count.",\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "kind": {\n "const": "exact",\n "description": "Value for kind.",\n "type": "string"\n }\n },\n "required": [\n "kind",\n "count"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "kind": {\n "const": "range",\n "description": "Value for kind.",\n "type": "string"\n },\n "max": {\n "description": "Value for max.",\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "min": {\n "description": "Value for min.",\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "kind",\n "min",\n "max"\n ],\n "type": "object"\n }\n ]\n },\n "exact": {\n "$ref": "#/$defs/__schema0",\n "description": "Value for exact."\n },\n "id": {\n "description": "Value for id.",\n "pattern": "^[A-Za-z][A-Za-z0-9._-]*$",\n "type": "string"\n },\n "ignore_fields": {\n "description": "Value for ignore fields.",\n "items": {\n "enum": [\n "sequence",\n "at_ms",\n "scheduled_at_ms",\n "dispatched_at_ms",\n "elapsed_ms"\n ],\n "type": "string"\n },\n "type": "array"\n },\n "source": {\n "description": "Value for source.",\n "enum": [\n "terminal_raw",\n "terminal_rendered",\n "interaction",\n "lifecycle",\n "process",\n "filesystem"\n ],\n "type": "string"\n }\n },\n "required": [\n "id",\n "source",\n "exact"\n ],\n "type": "object"\n },\n "minItems": 1,\n "type": "array"\n },\n "language": {\n "description": "Value for language.",\n "oneOf": [\n {\n "additionalProperties": false,\n "properties": {\n "happens_before": {\n "default": [],\n "description": "Value for happens before.",\n "items": {\n "additionalProperties": false,\n "properties": {\n "after": {\n "description": "The later or right-hand observation to compare.",\n "pattern": "^[A-Za-z][A-Za-z0-9._-]*$",\n "type": "string"\n },\n "before": {\n "description": "The earlier or left-hand observation to compare.",\n "pattern": "^[A-Za-z][A-Za-z0-9._-]*$",\n "type": "string"\n }\n },\n "required": [\n "before",\n "after"\n ],\n "type": "object"\n },\n "type": "array"\n },\n "kind": {\n "const": "partial_order",\n "description": "Value for kind.",\n "type": "string"\n },\n "not_before": {\n "default": [],\n "description": "Value for not before.",\n "items": {\n "additionalProperties": false,\n "properties": {\n "anchor": {\n "description": "Value for anchor.",\n "pattern": "^[A-Za-z][A-Za-z0-9._-]*$",\n "type": "string"\n },\n "event": {\n "description": "Value for event.",\n "pattern": "^[A-Za-z][A-Za-z0-9._-]*$",\n "type": "string"\n }\n },\n "required": [\n "event",\n "anchor"\n ],\n "type": "object"\n },\n "type": "array"\n },\n "prefix": {\n "default": [],\n "description": "Value for prefix.",\n "items": {\n "pattern": "^[A-Za-z][A-Za-z0-9._-]*$",\n "type": "string"\n },\n "type": "array"\n },\n "suffix": {\n "default": [],\n "description": "Value for suffix.",\n "items": {\n "pattern": "^[A-Za-z][A-Za-z0-9._-]*$",\n "type": "string"\n },\n "type": "array"\n },\n "unordered_groups": {\n "default": [],\n "description": "Value for unordered groups.",\n "items": {\n "additionalProperties": false,\n "properties": {\n "events": {\n "description": "Value for events.",\n "items": {\n "pattern": "^[A-Za-z][A-Za-z0-9._-]*$",\n "type": "string"\n },\n "minItems": 2,\n "type": "array"\n }\n },\n "required": [\n "events"\n ],\n "type": "object"\n },\n "type": "array"\n }\n },\n "required": [\n "kind"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "kind": {\n "const": "finite_traces",\n "description": "Value for kind.",\n "type": "string"\n },\n "variants": {\n "description": "Value for variants.",\n "items": {\n "additionalProperties": false,\n "properties": {\n "id": {\n "description": "Value for id.",\n "pattern": "^[A-Za-z][A-Za-z0-9._-]*$",\n "type": "string"\n },\n "trace": {\n "description": "Value for trace.",\n "items": {\n "anyOf": [\n {\n "pattern": "^[A-Za-z][A-Za-z0-9._-]*$",\n "type": "string"\n },\n {\n "additionalProperties": false,\n "properties": {\n "unordered": {\n "description": "Value for unordered.",\n "items": {\n "pattern": "^[A-Za-z][A-Za-z0-9._-]*$",\n "type": "string"\n },\n "minItems": 2,\n "type": "array"\n }\n },\n "required": [\n "unordered"\n ],\n "type": "object"\n }\n ]\n },\n "type": "array"\n }\n },\n "required": [\n "id",\n "trace"\n ],\n "type": "object"\n },\n "minItems": 1,\n "type": "array"\n }\n },\n "required": [\n "kind",\n "variants"\n ],\n "type": "object"\n }\n ]\n }\n },\n "required": [\n "events",\n "language"\n ],\n "type": "object"\n }\n },\n "required": [\n "left",\n "right"\n ],\n "type": "object"\n },\n "kind": "session",\n "name": "compare_process_captures",\n "outputSchema": {\n "$defs": {\n "__schema0": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "number"\n },\n {\n "type": "boolean"\n },\n {\n "type": "null"\n },\n {\n "items": {\n "$ref": "#/$defs/__schema0"\n },\n "type": "array"\n },\n {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n }\n ]\n }\n },\n "$schema": "https://json-schema.org/draft/2020-12/schema",\n "additionalProperties": false,\n "properties": {\n "evidence": {\n "additionalProperties": false,\n "properties": {\n "analysis_profile": {\n "additionalProperties": false,\n "properties": {\n "digest": {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n },\n "parameters": {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n },\n "provider": {\n "additionalProperties": false,\n "properties": {\n "id": {\n "minLength": 1,\n "type": "string"\n },\n "name": {\n "minLength": 1,\n "type": "string"\n },\n "version": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "id",\n "name",\n "version"\n ],\n "type": "object"\n }\n },\n "required": [\n "provider",\n "parameters",\n "digest"\n ],\n "type": "object"\n },\n "authority": {\n "enum": [\n "shipped-artifact",\n "controlled-replay",\n "historical-reference",\n "external-service",\n "analyst-inference"\n ],\n "type": "string"\n },\n "confidence": {\n "enum": [\n "observed",\n "derived",\n "inferred"\n ],\n "type": "string"\n },\n "environment": {\n "anyOf": [\n {\n "additionalProperties": false,\n "properties": {\n "architecture": {\n "minLength": 1,\n "type": "string"\n },\n "id": {\n "minLength": 1,\n "type": "string"\n },\n "isolation": {\n "enum": [\n "none",\n "process",\n "container",\n "virtual-machine"\n ],\n "type": "string"\n },\n "platform": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "id",\n "platform",\n "architecture",\n "isolation"\n ],\n "type": "object"\n },\n {\n "type": "null"\n }\n ]\n },\n "evidence_id": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "evidence_links": {\n "items": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "type": "array"\n },\n "limitations": {\n "items": {\n "type": "string"\n },\n "type": "array"\n },\n "locations": {\n "items": {\n "oneOf": [\n {\n "additionalProperties": false,\n "properties": {\n "address": {\n "minLength": 1,\n "type": "string"\n },\n "kind": {\n "const": "address",\n "type": "string"\n }\n },\n "required": [\n "kind",\n "address"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "end": {\n "minLength": 1,\n "type": "string"\n },\n "kind": {\n "const": "address-range",\n "type": "string"\n },\n "start": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "kind",\n "start",\n "end"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "kind": {\n "const": "artifact-path",\n "type": "string"\n },\n "path": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "kind",\n "path"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "kind": {\n "const": "file-offset",\n "type": "string"\n },\n "offset": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "kind",\n "offset"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "end": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "kind": {\n "const": "file-offset-range",\n "type": "string"\n },\n "start": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "kind",\n "start",\n "end"\n ],\n "type": "object"\n }\n ]\n },\n "type": "array"\n },\n "normalized_result": {\n "$ref": "#/$defs/__schema0"\n },\n "operation": {\n "minLength": 1,\n "type": "string"\n },\n "parameters": {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n },\n "predicate_type": {\n "minLength": 1,\n "type": "string"\n },\n "provider": {\n "additionalProperties": false,\n "properties": {\n "id": {\n "minLength": 1,\n "type": "string"\n },\n "name": {\n "minLength": 1,\n "type": "string"\n },\n "version": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "id",\n "name",\n "version"\n ],\n "type": "object"\n },\n "raw_result": {\n "anyOf": [\n {\n "$ref": "#/$defs/__schema0"\n },\n {\n "type": "null"\n }\n ]\n },\n "subject": {\n "anyOf": [\n {\n "additionalProperties": false,\n "properties": {\n "architecture": {\n "anyOf": [\n {\n "enum": [\n "x86",\n "x86_64",\n "arm",\n "arm64"\n ],\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "digest": {\n "additionalProperties": false,\n "properties": {\n "sha256": {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n }\n },\n "required": [\n "sha256"\n ],\n "type": "object"\n },\n "format": {\n "enum": [\n "hopper",\n "analysis-database",\n "mach-o",\n "elf",\n "pe",\n "dos-mz",\n "dos-com",\n "zip",\n "ipa",\n "apk",\n "msix",\n "appx",\n "asar",\n "dmg",\n "pkg",\n "plist",\n "javascript",\n "source-map",\n "directory",\n "file",\n "unknown",\n "mach-o-universal",\n "javascript-bundle",\n "entitlements"\n ],\n "type": "string"\n },\n "local_path": {\n "type": "string"\n },\n "name": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "name",\n "digest",\n "format",\n "architecture",\n "local_path"\n ],\n "type": "object"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "evidence_id",\n "subject",\n "provider",\n "predicate_type",\n "operation",\n "parameters",\n "raw_result",\n "normalized_result",\n "confidence",\n "authority",\n "environment",\n "limitations",\n "locations",\n "evidence_links"\n ],\n "type": "object"\n },\n "evidence_id": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "result": {\n "additionalProperties": false,\n "properties": {\n "exit": {\n "enum": [\n "unchanged",\n "added",\n "removed",\n "changed",\n "truncated",\n "unknown",\n "contradiction"\n ],\n "type": "string"\n },\n "filesystem": {\n "enum": [\n "unchanged",\n "added",\n "removed",\n "changed",\n "truncated",\n "unknown",\n "contradiction"\n ],\n "type": "string"\n },\n "first_divergence": {\n "oneOf": [\n {\n "additionalProperties": false,\n "properties": {\n "status": {\n "const": "none",\n "type": "string"\n }\n },\n "required": [\n "status"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "reason": {\n "type": "string"\n },\n "status": {\n "const": "unknown",\n "type": "string"\n }\n },\n "required": [\n "status",\n "reason"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "dimension": {\n "enum": [\n "terminal",\n "interaction",\n "exit",\n "filesystem",\n "process"\n ],\n "type": "string"\n },\n "index": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "left": {\n "anyOf": [\n {\n "$ref": "#/$defs/__schema0"\n },\n {\n "type": "null"\n }\n ]\n },\n "left_at_ms": {\n "anyOf": [\n {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n {\n "type": "null"\n }\n ]\n },\n "right": {\n "anyOf": [\n {\n "$ref": "#/$defs/__schema0"\n },\n {\n "type": "null"\n }\n ]\n },\n "right_at_ms": {\n "anyOf": [\n {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n {\n "type": "null"\n }\n ]\n },\n "status": {\n "const": "found",\n "type": "string"\n }\n },\n "required": [\n "status",\n "dimension",\n "index",\n "left_at_ms",\n "right_at_ms",\n "left",\n "right"\n ],\n "type": "object"\n }\n ]\n },\n "interaction": {\n "enum": [\n "unchanged",\n "added",\n "removed",\n "changed",\n "truncated",\n "unknown",\n "contradiction"\n ],\n "type": "string"\n },\n "limitations": {\n "items": {\n "type": "string"\n },\n "type": "array"\n },\n "process": {\n "enum": [\n "unchanged",\n "added",\n "removed",\n "changed",\n "truncated",\n "unknown",\n "contradiction"\n ],\n "type": "string"\n },\n "status": {\n "enum": [\n "unchanged",\n "added",\n "removed",\n "changed",\n "truncated",\n "unknown",\n "contradiction"\n ],\n "type": "string"\n },\n "terminal": {\n "enum": [\n "unchanged",\n "added",\n "removed",\n "changed",\n "truncated",\n "unknown",\n "contradiction"\n ],\n "type": "string"\n },\n "trace": {\n "additionalProperties": false,\n "properties": {\n "diagnostic": {\n "anyOf": [\n {\n "additionalProperties": false,\n "properties": {\n "event_ids": {\n "items": {\n "pattern": "^[A-Za-z][A-Za-z0-9._-]{0,63}$",\n "type": "string"\n },\n "type": "array"\n },\n "kind": {\n "enum": [\n "journal",\n "predicate",\n "cardinality",\n "edge",\n "prefix",\n "suffix",\n "trace"\n ],\n "type": "string"\n },\n "locations": {\n "items": {\n "additionalProperties": false,\n "properties": {\n "capture_order": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "collection": {\n "enum": [\n "frames",\n "rendered_frames",\n "interaction_events",\n "lifecycle",\n "process_samples",\n "filesystem_checkpoints"\n ],\n "type": "string"\n },\n "index": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "collection",\n "index",\n "capture_order"\n ],\n "type": "object"\n },\n "type": "array"\n },\n "message": {\n "type": "string"\n },\n "side": {\n "enum": [\n "left",\n "right"\n ],\n "type": "string"\n }\n },\n "required": [\n "kind",\n "side",\n "message",\n "event_ids",\n "locations"\n ],\n "type": "object"\n },\n {\n "type": "null"\n }\n ]\n },\n "left": {\n "anyOf": [\n {\n "additionalProperties": false,\n "properties": {\n "matched_variant": {\n "anyOf": [\n {\n "pattern": "^[A-Za-z][A-Za-z0-9._-]{0,63}$",\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "raw_trace": {\n "items": {\n "additionalProperties": false,\n "properties": {\n "event_id": {\n "pattern": "^[A-Za-z][A-Za-z0-9._-]{0,63}$",\n "type": "string"\n },\n "location": {\n "additionalProperties": false,\n "properties": {\n "capture_order": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "collection": {\n "enum": [\n "frames",\n "rendered_frames",\n "interaction_events",\n "lifecycle",\n "process_samples",\n "filesystem_checkpoints"\n ],\n "type": "string"\n },\n "index": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "collection",\n "index",\n "capture_order"\n ],\n "type": "object"\n }\n },\n "required": [\n "event_id",\n "location"\n ],\n "type": "object"\n },\n "type": "array"\n },\n "satisfied_constraints": {\n "items": {\n "type": "string"\n },\n "type": "array"\n },\n "status": {\n "const": "pass",\n "type": "string"\n }\n },\n "required": [\n "satisfied_constraints",\n "raw_trace",\n "status",\n "matched_variant"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "matched_variant": {\n "type": "null"\n },\n "raw_trace": {\n "items": {\n "additionalProperties": false,\n "properties": {\n "event_id": {\n "pattern": "^[A-Za-z][A-Za-z0-9._-]{0,63}$",\n "type": "string"\n },\n "location": {\n "additionalProperties": false,\n "properties": {\n "capture_order": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "collection": {\n "enum": [\n "frames",\n "rendered_frames",\n "interaction_events",\n "lifecycle",\n "process_samples",\n "filesystem_checkpoints"\n ],\n "type": "string"\n },\n "index": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "collection",\n "index",\n "capture_order"\n ],\n "type": "object"\n }\n },\n "required": [\n "event_id",\n "location"\n ],\n "type": "object"\n },\n "type": "array"\n },\n "satisfied_constraints": {\n "items": {\n "type": "string"\n },\n "type": "array"\n },\n "status": {\n "enum": [\n "fail",\n "unknown"\n ],\n "type": "string"\n }\n },\n "required": [\n "satisfied_constraints",\n "raw_trace",\n "status",\n "matched_variant"\n ],\n "type": "object"\n }\n ]\n },\n "right": {\n "anyOf": [\n {\n "additionalProperties": false,\n "properties": {\n "matched_variant": {\n "anyOf": [\n {\n "pattern": "^[A-Za-z][A-Za-z0-9._-]{0,63}$",\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "raw_trace": {\n "items": {\n "additionalProperties": false,\n "properties": {\n "event_id": {\n "pattern": "^[A-Za-z][A-Za-z0-9._-]{0,63}$",\n "type": "string"\n },\n "location": {\n "additionalProperties": false,\n "properties": {\n "capture_order": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "collection": {\n "enum": [\n "frames",\n "rendered_frames",\n "interaction_events",\n "lifecycle",\n "process_samples",\n "filesystem_checkpoints"\n ],\n "type": "string"\n },\n "index": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "collection",\n "index",\n "capture_order"\n ],\n "type": "object"\n }\n },\n "required": [\n "event_id",\n "location"\n ],\n "type": "object"\n },\n "type": "array"\n },\n "satisfied_constraints": {\n "items": {\n "type": "string"\n },\n "type": "array"\n },\n "status": {\n "const": "pass",\n "type": "string"\n }\n },\n "required": [\n "satisfied_constraints",\n "raw_trace",\n "status",\n "matched_variant"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "matched_variant": {\n "type": "null"\n },\n "raw_trace": {\n "items": {\n "additionalProperties": false,\n "properties": {\n "event_id": {\n "pattern": "^[A-Za-z][A-Za-z0-9._-]{0,63}$",\n "type": "string"\n },\n "location": {\n "additionalProperties": false,\n "properties": {\n "capture_order": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "collection": {\n "enum": [\n "frames",\n "rendered_frames",\n "interaction_events",\n "lifecycle",\n "process_samples",\n "filesystem_checkpoints"\n ],\n "type": "string"\n },\n "index": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "collection",\n "index",\n "capture_order"\n ],\n "type": "object"\n }\n },\n "required": [\n "event_id",\n "location"\n ],\n "type": "object"\n },\n "type": "array"\n },\n "satisfied_constraints": {\n "items": {\n "type": "string"\n },\n "type": "array"\n },\n "status": {\n "enum": [\n "fail",\n "unknown"\n ],\n "type": "string"\n }\n },\n "required": [\n "satisfied_constraints",\n "raw_trace",\n "status",\n "matched_variant"\n ],\n "type": "object"\n }\n ]\n },\n "verdict": {\n "enum": [\n "equivalent",\n "different",\n "nonconforming",\n "unknown"\n ],\n "type": "string"\n }\n },\n "required": [\n "verdict",\n "left",\n "right",\n "diagnostic"\n ],\n "type": "object"\n }\n },\n "required": [\n "status",\n "terminal",\n "interaction",\n "exit",\n "filesystem",\n "process",\n "first_divergence",\n "limitations"\n ],\n "type": "object"\n }\n },\n "required": [\n "result",\n "evidence_id",\n "evidence"\n ],\n "type": "object"\n },\n "requiresSession": true,\n "title": "Compare Process Captures"\n },\n {\n "analysisOperation": null,\n "annotations": {\n "destructiveHint": false,\n "idempotentHint": true,\n "openWorldHint": false,\n "readOnlyHint": false\n },\n "description": "Compare complete artifact inventories by logical occurrence path, content identity, metadata, and graph relations. Pass the inventory Evidence nested in each inspect_artifact result as left and right. Every delta cites both inputs, and gaps yield truncated or unknown, never equivalence. Returns every change inline.",\n "effects": {\n "accessesNetwork": false,\n "changesUiState": false,\n "idempotent": true,\n "launchesProcess": false,\n "mayDiscardData": false,\n "mutatesSession": true,\n "mutatesTarget": false,\n "writesFilesystem": false\n },\n "inputSchema": {\n "$defs": {\n "__schema0": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "number"\n },\n {\n "type": "boolean"\n },\n {\n "type": "null"\n },\n {\n "items": {\n "$ref": "#/$defs/__schema0"\n },\n "type": "array"\n },\n {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n }\n ]\n }\n },\n "$schema": "https://json-schema.org/draft/2020-12/schema",\n "additionalProperties": false,\n "examples": [\n {\n "left": {\n "authority": "shipped-artifact",\n "confidence": "observed",\n "environment": null,\n "evidence_id": "ev_196e5dd37264f7b088ab8c0be326d22cac37e798bc89c72bcabc2ef9d74eed55",\n "evidence_links": [],\n "limitations": [],\n "locations": [],\n "normalized_result": {\n "edges": [],\n "limitations": [],\n "manifest": {\n "edge_count": 0,\n "graph_sha256": "8fa9468fe1a1a23c968cc1215eac19cce2510530cb8cbdd99b0b93bcd251c586",\n "manifest_id": "agm_aada25a1123169497307a2f381969ca213532b63d2259e999bffe2aa50fe5227",\n "node_count": 1,\n "occurrence_count": 1,\n "root_artifact_id": "art_2827b82d5d864b615b237ca45cf8a10fc5c14a1b73ba5bb8b358dddefc8e9f8c",\n "root_format": "file",\n "root_sha256": "0000000000000000000000000000000000000000000000000000000000000000"\n },\n "nodes": [\n {\n "architecture": null,\n "artifact_id": "art_2827b82d5d864b615b237ca45cf8a10fc5c14a1b73ba5bb8b358dddefc8e9f8c",\n "content_state": "materialized",\n "executable": false,\n "format": "file",\n "kind": "resource",\n "limitations": [],\n "media_type": null,\n "sha256": "0000000000000000000000000000000000000000000000000000000000000000",\n "size": 1\n }\n ],\n "occurrences": [\n {\n "artifact_id": "art_2827b82d5d864b615b237ca45cf8a10fc5c14a1b73ba5bb8b358dddefc8e9f8c",\n "compressed_size": null,\n "declared_size": 1,\n "encrypted": false,\n "entry_kind": "file",\n "executable": false,\n "hash_status": "verified",\n "limitations": [],\n "logical_path": ".",\n "occurrence_id": "occ_273bef4da5057c50b27edf034ffce68d5d9c0c5795778fc3ff41e4e6b3ef5586",\n "parent_occurrence_id": null,\n "source_location": null\n }\n ],\n "provenance": []\n },\n "operation": "inventory_artifact",\n "parameters": {},\n "predicate_type": "rea.analysis",\n "provider": {\n "id": "rea-artifact",\n "name": "REA artifact graph",\n "version": "1"\n },\n "raw_result": null,\n "subject": {\n "architecture": null,\n "digest": {\n "sha256": "0000000000000000000000000000000000000000000000000000000000000000"\n },\n "format": "file",\n "local_path": "fixture-left",\n "name": "fixture-left"\n }\n },\n "right": {\n "authority": "shipped-artifact",\n "confidence": "observed",\n "environment": null,\n "evidence_id": "ev_8c9ecce090f574469d379fb8bb173e65eff08071fa599b37547ed32dcd102a09",\n "evidence_links": [],\n "limitations": [],\n "locations": [],\n "normalized_result": {\n "edges": [],\n "limitations": [],\n "manifest": {\n "edge_count": 0,\n "graph_sha256": "6e02ceaea80d013e00e4c0c30621df60312f00e03dc338ec47f548671f6a7ec4",\n "manifest_id": "agm_6fa9493e8b0d8164b3ca317323aeffc6be1f81e1e7a3cf4e668310093ba8ef73",\n "node_count": 1,\n "occurrence_count": 1,\n "root_artifact_id": "art_96f554e44817506903722ba66b6b001897989fe181ef986478bc023e1fedf4b1",\n "root_format": "file",\n "root_sha256": "1111111111111111111111111111111111111111111111111111111111111111"\n },\n "nodes": [\n {\n "architecture": null,\n "artifact_id": "art_96f554e44817506903722ba66b6b001897989fe181ef986478bc023e1fedf4b1",\n "content_state": "materialized",\n "executable": false,\n "format": "file",\n "kind": "resource",\n "limitations": [],\n "media_type": null,\n "sha256": "1111111111111111111111111111111111111111111111111111111111111111",\n "size": 1\n }\n ],\n "occurrences": [\n {\n "artifact_id": "art_96f554e44817506903722ba66b6b001897989fe181ef986478bc023e1fedf4b1",\n "compressed_size": null,\n "declared_size": 1,\n "encrypted": false,\n "entry_kind": "file",\n "executable": false,\n "hash_status": "verified",\n "limitations": [],\n "logical_path": ".",\n "occurrence_id": "occ_4257a159555da426a3dd9e420ba59795ef3d87d0b1fd93e5cc7d969539519364",\n "parent_occurrence_id": null,\n "source_location": null\n }\n ],\n "provenance": []\n },\n "operation": "inventory_artifact",\n "parameters": {},\n "predicate_type": "rea.analysis",\n "provider": {\n "id": "rea-artifact",\n "name": "REA artifact graph",\n "version": "1"\n },\n "raw_result": null,\n "subject": {\n "architecture": null,\n "digest": {\n "sha256": "1111111111111111111111111111111111111111111111111111111111111111"\n },\n "format": "file",\n "local_path": "fixture-right",\n "name": "fixture-right"\n }\n }\n }\n ],\n "properties": {\n "left": {\n "additionalProperties": false,\n "description": "Left-hand input used for comparison or differential execution.",\n "properties": {\n "analysis_profile": {\n "description": "Value for analysis profile.",\n "properties": {\n "digest": {\n "description": "Value for digest.",\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n },\n "parameters": {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "description": "Value for parameters.",\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n },\n "provider": {\n "description": "Value for provider.",\n "properties": {\n "id": {\n "description": "Value for id.",\n "minLength": 1,\n "type": "string"\n },\n "name": {\n "description": "Exact name used by this operation.",\n "minLength": 1,\n "type": "string"\n },\n "version": {\n "description": "Value for version.",\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "id",\n "name",\n "version"\n ],\n "type": "object"\n }\n },\n "required": [\n "provider",\n "parameters",\n "digest"\n ],\n "type": "object"\n },\n "authority": {\n "description": "Value for authority.",\n "enum": [\n "shipped-artifact",\n "controlled-replay",\n "historical-reference",\n "external-service",\n "analyst-inference"\n ],\n "type": "string"\n },\n "confidence": {\n "description": "Value for confidence.",\n "enum": [\n "observed",\n "derived",\n "inferred"\n ],\n "type": "string"\n },\n "environment": {\n "anyOf": [\n {\n "properties": {\n "architecture": {\n "description": "Value for architecture.",\n "minLength": 1,\n "type": "string"\n },\n "id": {\n "description": "Value for id.",\n "minLength": 1,\n "type": "string"\n },\n "isolation": {\n "description": "Value for isolation.",\n "enum": [\n "none",\n "process",\n "container",\n "virtual-machine"\n ],\n "type": "string"\n },\n "platform": {\n "description": "Value for platform.",\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "id",\n "platform",\n "architecture",\n "isolation"\n ],\n "type": "object"\n },\n {\n "type": "null"\n }\n ],\n "description": "Value for environment."\n },\n "evidence_id": {\n "description": "Stable identifier of the recorded Evidence observation.",\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "evidence_links": {\n "description": "Value for evidence links.",\n "items": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "type": "array"\n },\n "limitations": {\n "description": "Value for limitations.",\n "items": {\n "type": "string"\n },\n "type": "array"\n },\n "locations": {\n "description": "Value for locations.",\n "items": {\n "oneOf": [\n {\n "properties": {\n "address": {\n "description": "Value for address.",\n "minLength": 1,\n "type": "string"\n },\n "kind": {\n "const": "address",\n "description": "Value for kind.",\n "type": "string"\n }\n },\n "required": [\n "kind",\n "address"\n ],\n "type": "object"\n },\n {\n "properties": {\n "end": {\n "description": "Value for end.",\n "minLength": 1,\n "type": "string"\n },\n "kind": {\n "const": "address-range",\n "description": "Value for kind.",\n "type": "string"\n },\n "start": {\n "description": "Value for start.",\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "kind",\n "start",\n "end"\n ],\n "type": "object"\n },\n {\n "properties": {\n "kind": {\n "const": "artifact-path",\n "description": "Value for kind.",\n "type": "string"\n },\n "path": {\n "description": "Local filesystem path used by this operation.",\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "kind",\n "path"\n ],\n "type": "object"\n },\n {\n "properties": {\n "kind": {\n "const": "file-offset",\n "description": "Value for kind.",\n "type": "string"\n },\n "offset": {\n "description": "Value for offset.",\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "kind",\n "offset"\n ],\n "type": "object"\n },\n {\n "properties": {\n "end": {\n "description": "Value for end.",\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "kind": {\n "const": "file-offset-range",\n "description": "Value for kind.",\n "type": "string"\n },\n "start": {\n "description": "Value for start.",\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "kind",\n "start",\n "end"\n ],\n "type": "object"\n }\n ]\n },\n "type": "array"\n },\n "normalized_result": {\n "$ref": "#/$defs/__schema0",\n "description": "Value for normalized result."\n },\n "operation": {\n "description": "Value for operation.",\n "minLength": 1,\n "type": "string"\n },\n "parameters": {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "description": "Value for parameters.",\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n },\n "predicate_type": {\n "description": "Value for predicate type.",\n "minLength": 1,\n "type": "string"\n },\n "provider": {\n "description": "Value for provider.",\n "properties": {\n "id": {\n "description": "Value for id.",\n "minLength": 1,\n "type": "string"\n },\n "name": {\n "description": "Exact name used by this operation.",\n "minLength": 1,\n "type": "string"\n },\n "version": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ],\n "description": "Value for version."\n }\n },\n "required": [\n "id",\n "name",\n "version"\n ],\n "type": "object"\n },\n "raw_result": {\n "anyOf": [\n {\n "$ref": "#/$defs/__schema0"\n },\n {\n "type": "null"\n }\n ],\n "description": "Value for raw result."\n },\n "subject": {\n "anyOf": [\n {\n "properties": {\n "architecture": {\n "anyOf": [\n {\n "enum": [\n "x86",\n "x86_64",\n "arm",\n "arm64"\n ],\n "type": "string"\n },\n {\n "type": "null"\n }\n ],\n "description": "Value for architecture."\n },\n "digest": {\n "description": "Value for digest.",\n "properties": {\n "sha256": {\n "description": "Value for sha256.",\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n }\n },\n "required": [\n "sha256"\n ],\n "type": "object"\n },\n "format": {\n "description": "Declared input artifact format.",\n "enum": [\n "hopper",\n "analysis-database",\n "mach-o",\n "elf",\n "pe",\n "dos-mz",\n "dos-com",\n "zip",\n "ipa",\n "apk",\n "msix",\n "appx",\n "asar",\n "dmg",\n "pkg",\n "plist",\n "javascript",\n "source-map",\n "directory",\n "file",\n "unknown",\n "mach-o-universal",\n "javascript-bundle",\n "entitlements"\n ],\n "type": "string"\n },\n "local_path": {\n "description": "Local filesystem path for local.",\n "type": "string"\n },\n "name": {\n "description": "Exact name used by this operation.",\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "name",\n "digest",\n "format",\n "architecture",\n "local_path"\n ],\n "type": "object"\n },\n {\n "type": "null"\n }\n ],\n "description": "Value for subject."\n }\n },\n "required": [\n "evidence_id",\n "subject",\n "provider",\n "predicate_type",\n "operation",\n "parameters",\n "raw_result",\n "normalized_result",\n "confidence",\n "authority",\n "environment",\n "limitations",\n "locations",\n "evidence_links"\n ],\n "type": "object"\n },\n "right": {\n "additionalProperties": false,\n "description": "Right-hand input used for comparison or differential execution.",\n "properties": {\n "analysis_profile": {\n "description": "Value for analysis profile.",\n "properties": {\n "digest": {\n "description": "Value for digest.",\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n },\n "parameters": {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "description": "Value for parameters.",\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n },\n "provider": {\n "description": "Value for provider.",\n "properties": {\n "id": {\n "description": "Value for id.",\n "minLength": 1,\n "type": "string"\n },\n "name": {\n "description": "Exact name used by this operation.",\n "minLength": 1,\n "type": "string"\n },\n "version": {\n "description": "Value for version.",\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "id",\n "name",\n "version"\n ],\n "type": "object"\n }\n },\n "required": [\n "provider",\n "parameters",\n "digest"\n ],\n "type": "object"\n },\n "authority": {\n "description": "Value for authority.",\n "enum": [\n "shipped-artifact",\n "controlled-replay",\n "historical-reference",\n "external-service",\n "analyst-inference"\n ],\n "type": "string"\n },\n "confidence": {\n "description": "Value for confidence.",\n "enum": [\n "observed",\n "derived",\n "inferred"\n ],\n "type": "string"\n },\n "environment": {\n "anyOf": [\n {\n "properties": {\n "architecture": {\n "description": "Value for architecture.",\n "minLength": 1,\n "type": "string"\n },\n "id": {\n "description": "Value for id.",\n "minLength": 1,\n "type": "string"\n },\n "isolation": {\n "description": "Value for isolation.",\n "enum": [\n "none",\n "process",\n "container",\n "virtual-machine"\n ],\n "type": "string"\n },\n "platform": {\n "description": "Value for platform.",\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "id",\n "platform",\n "architecture",\n "isolation"\n ],\n "type": "object"\n },\n {\n "type": "null"\n }\n ],\n "description": "Value for environment."\n },\n "evidence_id": {\n "description": "Stable identifier of the recorded Evidence observation.",\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "evidence_links": {\n "description": "Value for evidence links.",\n "items": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "type": "array"\n },\n "limitations": {\n "description": "Value for limitations.",\n "items": {\n "type": "string"\n },\n "type": "array"\n },\n "locations": {\n "description": "Value for locations.",\n "items": {\n "oneOf": [\n {\n "properties": {\n "address": {\n "description": "Value for address.",\n "minLength": 1,\n "type": "string"\n },\n "kind": {\n "const": "address",\n "description": "Value for kind.",\n "type": "string"\n }\n },\n "required": [\n "kind",\n "address"\n ],\n "type": "object"\n },\n {\n "properties": {\n "end": {\n "description": "Value for end.",\n "minLength": 1,\n "type": "string"\n },\n "kind": {\n "const": "address-range",\n "description": "Value for kind.",\n "type": "string"\n },\n "start": {\n "description": "Value for start.",\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "kind",\n "start",\n "end"\n ],\n "type": "object"\n },\n {\n "properties": {\n "kind": {\n "const": "artifact-path",\n "description": "Value for kind.",\n "type": "string"\n },\n "path": {\n "description": "Local filesystem path used by this operation.",\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "kind",\n "path"\n ],\n "type": "object"\n },\n {\n "properties": {\n "kind": {\n "const": "file-offset",\n "description": "Value for kind.",\n "type": "string"\n },\n "offset": {\n "description": "Value for offset.",\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "kind",\n "offset"\n ],\n "type": "object"\n },\n {\n "properties": {\n "end": {\n "description": "Value for end.",\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "kind": {\n "const": "file-offset-range",\n "description": "Value for kind.",\n "type": "string"\n },\n "start": {\n "description": "Value for start.",\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "kind",\n "start",\n "end"\n ],\n "type": "object"\n }\n ]\n },\n "type": "array"\n },\n "normalized_result": {\n "$ref": "#/$defs/__schema0",\n "description": "Value for normalized result."\n },\n "operation": {\n "description": "Value for operation.",\n "minLength": 1,\n "type": "string"\n },\n "parameters": {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "description": "Value for parameters.",\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n },\n "predicate_type": {\n "description": "Value for predicate type.",\n "minLength": 1,\n "type": "string"\n },\n "provider": {\n "description": "Value for provider.",\n "properties": {\n "id": {\n "description": "Value for id.",\n "minLength": 1,\n "type": "string"\n },\n "name": {\n "description": "Exact name used by this operation.",\n "minLength": 1,\n "type": "string"\n },\n "version": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ],\n "description": "Value for version."\n }\n },\n "required": [\n "id",\n "name",\n "version"\n ],\n "type": "object"\n },\n "raw_result": {\n "anyOf": [\n {\n "$ref": "#/$defs/__schema0"\n },\n {\n "type": "null"\n }\n ],\n "description": "Value for raw result."\n },\n "subject": {\n "anyOf": [\n {\n "properties": {\n "architecture": {\n "anyOf": [\n {\n "enum": [\n "x86",\n "x86_64",\n "arm",\n "arm64"\n ],\n "type": "string"\n },\n {\n "type": "null"\n }\n ],\n "description": "Value for architecture."\n },\n "digest": {\n "description": "Value for digest.",\n "properties": {\n "sha256": {\n "description": "Value for sha256.",\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n }\n },\n "required": [\n "sha256"\n ],\n "type": "object"\n },\n "format": {\n "description": "Declared input artifact format.",\n "enum": [\n "hopper",\n "analysis-database",\n "mach-o",\n "elf",\n "pe",\n "dos-mz",\n "dos-com",\n "zip",\n "ipa",\n "apk",\n "msix",\n "appx",\n "asar",\n "dmg",\n "pkg",\n "plist",\n "javascript",\n "source-map",\n "directory",\n "file",\n "unknown",\n "mach-o-universal",\n "javascript-bundle",\n "entitlements"\n ],\n "type": "string"\n },\n "local_path": {\n "description": "Local filesystem path for local.",\n "type": "string"\n },\n "name": {\n "description": "Exact name used by this operation.",\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "name",\n "digest",\n "format",\n "architecture",\n "local_path"\n ],\n "type": "object"\n },\n {\n "type": "null"\n }\n ],\n "description": "Value for subject."\n }\n },\n "required": [\n "evidence_id",\n "subject",\n "provider",\n "predicate_type",\n "operation",\n "parameters",\n "raw_result",\n "normalized_result",\n "confidence",\n "authority",\n "environment",\n "limitations",\n "locations",\n "evidence_links"\n ],\n "type": "object"\n }\n },\n "required": [\n "left",\n "right"\n ],\n "type": "object"\n },\n "kind": "session",\n "name": "compare_artifacts",\n "outputSchema": {\n "$defs": {\n "__schema0": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "number"\n },\n {\n "type": "boolean"\n },\n {\n "type": "null"\n },\n {\n "items": {\n "$ref": "#/$defs/__schema0"\n },\n "type": "array"\n },\n {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n }\n ]\n }\n },\n "$schema": "https://json-schema.org/draft/2020-12/schema",\n "additionalProperties": false,\n "properties": {\n "evidence": {\n "additionalProperties": false,\n "properties": {\n "analysis_profile": {\n "additionalProperties": false,\n "properties": {\n "digest": {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n },\n "parameters": {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n },\n "provider": {\n "additionalProperties": false,\n "properties": {\n "id": {\n "minLength": 1,\n "type": "string"\n },\n "name": {\n "minLength": 1,\n "type": "string"\n },\n "version": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "id",\n "name",\n "version"\n ],\n "type": "object"\n }\n },\n "required": [\n "provider",\n "parameters",\n "digest"\n ],\n "type": "object"\n },\n "authority": {\n "enum": [\n "shipped-artifact",\n "controlled-replay",\n "historical-reference",\n "external-service",\n "analyst-inference"\n ],\n "type": "string"\n },\n "confidence": {\n "enum": [\n "observed",\n "derived",\n "inferred"\n ],\n "type": "string"\n },\n "environment": {\n "anyOf": [\n {\n "additionalProperties": false,\n "properties": {\n "architecture": {\n "minLength": 1,\n "type": "string"\n },\n "id": {\n "minLength": 1,\n "type": "string"\n },\n "isolation": {\n "enum": [\n "none",\n "process",\n "container",\n "virtual-machine"\n ],\n "type": "string"\n },\n "platform": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "id",\n "platform",\n "architecture",\n "isolation"\n ],\n "type": "object"\n },\n {\n "type": "null"\n }\n ]\n },\n "evidence_id": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "evidence_links": {\n "items": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "type": "array"\n },\n "limitations": {\n "items": {\n "type": "string"\n },\n "type": "array"\n },\n "locations": {\n "items": {\n "oneOf": [\n {\n "additionalProperties": false,\n "properties": {\n "address": {\n "minLength": 1,\n "type": "string"\n },\n "kind": {\n "const": "address",\n "type": "string"\n }\n },\n "required": [\n "kind",\n "address"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "end": {\n "minLength": 1,\n "type": "string"\n },\n "kind": {\n "const": "address-range",\n "type": "string"\n },\n "start": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "kind",\n "start",\n "end"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "kind": {\n "const": "artifact-path",\n "type": "string"\n },\n "path": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "kind",\n "path"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "kind": {\n "const": "file-offset",\n "type": "string"\n },\n "offset": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "kind",\n "offset"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "end": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "kind": {\n "const": "file-offset-range",\n "type": "string"\n },\n "start": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "kind",\n "start",\n "end"\n ],\n "type": "object"\n }\n ]\n },\n "type": "array"\n },\n "normalized_result": {\n "$ref": "#/$defs/__schema0"\n },\n "operation": {\n "minLength": 1,\n "type": "string"\n },\n "parameters": {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n },\n "predicate_type": {\n "minLength": 1,\n "type": "string"\n },\n "provider": {\n "additionalProperties": false,\n "properties": {\n "id": {\n "minLength": 1,\n "type": "string"\n },\n "name": {\n "minLength": 1,\n "type": "string"\n },\n "version": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "id",\n "name",\n "version"\n ],\n "type": "object"\n },\n "raw_result": {\n "anyOf": [\n {\n "$ref": "#/$defs/__schema0"\n },\n {\n "type": "null"\n }\n ]\n },\n "subject": {\n "anyOf": [\n {\n "additionalProperties": false,\n "properties": {\n "architecture": {\n "anyOf": [\n {\n "enum": [\n "x86",\n "x86_64",\n "arm",\n "arm64"\n ],\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "digest": {\n "additionalProperties": false,\n "properties": {\n "sha256": {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n }\n },\n "required": [\n "sha256"\n ],\n "type": "object"\n },\n "format": {\n "enum": [\n "hopper",\n "analysis-database",\n "mach-o",\n "elf",\n "pe",\n "dos-mz",\n "dos-com",\n "zip",\n "ipa",\n "apk",\n "msix",\n "appx",\n "asar",\n "dmg",\n "pkg",\n "plist",\n "javascript",\n "source-map",\n "directory",\n "file",\n "unknown",\n "mach-o-universal",\n "javascript-bundle",\n "entitlements"\n ],\n "type": "string"\n },\n "local_path": {\n "type": "string"\n },\n "name": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "name",\n "digest",\n "format",\n "architecture",\n "local_path"\n ],\n "type": "object"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "evidence_id",\n "subject",\n "provider",\n "predicate_type",\n "operation",\n "parameters",\n "raw_result",\n "normalized_result",\n "confidence",\n "authority",\n "environment",\n "limitations",\n "locations",\n "evidence_links"\n ],\n "type": "object"\n },\n "evidence_id": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "result": {\n "additionalProperties": false,\n "properties": {\n "changes": {\n "items": {\n "additionalProperties": false,\n "properties": {\n "classification": {\n "enum": [\n "added",\n "removed",\n "changed",\n "unknown",\n "contradiction"\n ],\n "type": "string"\n },\n "dimensions": {\n "items": {\n "enum": [\n "content",\n "kind",\n "format",\n "size",\n "executable",\n "relations",\n "metadata",\n "availability",\n "integrity"\n ],\n "type": "string"\n },\n "minItems": 1,\n "type": "array"\n },\n "evidence_links": {\n "items": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "minItems": 2,\n "type": "array"\n },\n "left_artifact_id": {\n "anyOf": [\n {\n "pattern": "^art_[a-f0-9]{64}$",\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "left_occurrence_id": {\n "anyOf": [\n {\n "pattern": "^occ_[a-f0-9]{64}$",\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "logical_path": {\n "minLength": 1,\n "type": "string"\n },\n "right_artifact_id": {\n "anyOf": [\n {\n "pattern": "^art_[a-f0-9]{64}$",\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "right_occurrence_id": {\n "anyOf": [\n {\n "pattern": "^occ_[a-f0-9]{64}$",\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "classification",\n "logical_path",\n "dimensions",\n "left_occurrence_id",\n "right_occurrence_id",\n "left_artifact_id",\n "right_artifact_id",\n "evidence_links"\n ],\n "type": "object"\n },\n "type": "array"\n },\n "left_manifest_id": {\n "pattern": "^agm_[a-f0-9]{64}$",\n "type": "string"\n },\n "limitations": {\n "items": {\n "type": "string"\n },\n "type": "array"\n },\n "right_manifest_id": {\n "pattern": "^agm_[a-f0-9]{64}$",\n "type": "string"\n },\n "status": {\n "enum": [\n "unchanged",\n "added",\n "removed",\n "changed",\n "truncated",\n "unknown",\n "contradiction"\n ],\n "type": "string"\n },\n "summary": {\n "additionalProperties": false,\n "properties": {\n "added": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "changed": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "contradiction": {\n "default": 0,\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "removed": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "unchanged": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "unknown": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "unchanged",\n "added",\n "removed",\n "changed",\n "unknown",\n "contradiction"\n ],\n "type": "object"\n }\n },\n "required": [\n "status",\n "left_manifest_id",\n "right_manifest_id",\n "summary",\n "changes",\n "limitations"\n ],\n "type": "object"\n }\n },\n "required": [\n "result",\n "evidence_id",\n "evidence"\n ],\n "type": "object"\n },\n "requiresSession": true,\n "title": "Compare Artifacts"\n },\n {\n "analysisOperation": null,\n "annotations": {\n "destructiveHint": false,\n "idempotentHint": true,\n "openWorldHint": false,\n "readOnlyHint": false\n },\n "description": "Compare two explicit sets of analyze_function Evidence 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.",\n "effects": {\n "accessesNetwork": false,\n "changesUiState": false,\n "idempotent": true,\n "launchesProcess": false,\n "mayDiscardData": false,\n "mutatesSession": true,\n "mutatesTarget": false,\n "writesFilesystem": false\n },\n "inputSchema": {\n "$defs": {\n "__schema0": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "number"\n },\n {\n "type": "boolean"\n },\n {\n "type": "null"\n },\n {\n "items": {\n "$ref": "#/$defs/__schema0"\n },\n "type": "array"\n },\n {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n }\n ]\n }\n },\n "$schema": "https://json-schema.org/draft/2020-12/schema",\n "additionalProperties": false,\n "examples": [\n {\n "left": {\n "authority": "shipped-artifact",\n "confidence": "derived",\n "environment": null,\n "evidence_id": "ev_fd7f0f3851d21e5284b47129d9c7142e2ebeb6ed1c5f91bcff18a781d0b24cb7",\n "evidence_links": [],\n "limitations": [],\n "locations": [],\n "normalized_result": {\n "assembly": [],\n "basic_blocks": [\n {\n "end": "0x1001",\n "start": "0x1000",\n "successors": []\n }\n ],\n "callees": [],\n "callers": [],\n "comments": [],\n "incoming_references": [],\n "outgoing_references": [],\n "procedure": {\n "address": "0x1000",\n "locals": [],\n "name": "main",\n "signature": "int main(void)"\n },\n "pseudocode": "return 0;",\n "referenced_names": [],\n "referenced_strings": []\n },\n "operation": "analyze_function",\n "parameters": {\n "procedure": "main"\n },\n "predicate_type": "rea.analysis",\n "provider": {\n "id": "rea-workflow",\n "name": "REA composed investigation workflow",\n "version": "1"\n },\n "raw_result": null,\n "subject": {\n "architecture": null,\n "digest": {\n "sha256": "0000000000000000000000000000000000000000000000000000000000000000"\n },\n "format": "mach-o",\n "local_path": "/tmp/function-0",\n "name": "function-0"\n }\n },\n "right": {\n "authority": "shipped-artifact",\n "confidence": "derived",\n "environment": null,\n "evidence_id": "ev_79f87eddd8df1d59c6f2e2cd99f21bfae2e5a22fd26c5bf0d0b9ccf9e24b0522",\n "evidence_links": [],\n "limitations": [],\n "locations": [],\n "normalized_result": {\n "assembly": [],\n "basic_blocks": [\n {\n "end": "0x1001",\n "start": "0x1000",\n "successors": []\n }\n ],\n "callees": [],\n "callers": [],\n "comments": [],\n "incoming_references": [],\n "outgoing_references": [],\n "procedure": {\n "address": "0x1000",\n "locals": [],\n "name": "main",\n "signature": "int main(void)"\n },\n "pseudocode": "return 1;",\n "referenced_names": [],\n "referenced_strings": []\n },\n "operation": "analyze_function",\n "parameters": {\n "procedure": "main"\n },\n "predicate_type": "rea.analysis",\n "provider": {\n "id": "rea-workflow",\n "name": "REA composed investigation workflow",\n "version": "1"\n },\n "raw_result": null,\n "subject": {\n "architecture": null,\n "digest": {\n "sha256": "1111111111111111111111111111111111111111111111111111111111111111"\n },\n "format": "mach-o",\n "local_path": "/tmp/function-1",\n "name": "function-1"\n }\n }\n }\n ],\n "properties": {\n "left": {\n "additionalProperties": false,\n "description": "Left-hand input used for comparison or differential execution.",\n "properties": {\n "analysis_profile": {\n "description": "Value for analysis profile.",\n "properties": {\n "digest": {\n "description": "Value for digest.",\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n },\n "parameters": {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "description": "Value for parameters.",\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n },\n "provider": {\n "description": "Value for provider.",\n "properties": {\n "id": {\n "description": "Value for id.",\n "minLength": 1,\n "type": "string"\n },\n "name": {\n "description": "Exact name used by this operation.",\n "minLength": 1,\n "type": "string"\n },\n "version": {\n "description": "Value for version.",\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "id",\n "name",\n "version"\n ],\n "type": "object"\n }\n },\n "required": [\n "provider",\n "parameters",\n "digest"\n ],\n "type": "object"\n },\n "authority": {\n "description": "Value for authority.",\n "enum": [\n "shipped-artifact",\n "controlled-replay",\n "historical-reference",\n "external-service",\n "analyst-inference"\n ],\n "type": "string"\n },\n "confidence": {\n "description": "Value for confidence.",\n "enum": [\n "observed",\n "derived",\n "inferred"\n ],\n "type": "string"\n },\n "environment": {\n "anyOf": [\n {\n "properties": {\n "architecture": {\n "description": "Value for architecture.",\n "minLength": 1,\n "type": "string"\n },\n "id": {\n "description": "Value for id.",\n "minLength": 1,\n "type": "string"\n },\n "isolation": {\n "description": "Value for isolation.",\n "enum": [\n "none",\n "process",\n "container",\n "virtual-machine"\n ],\n "type": "string"\n },\n "platform": {\n "description": "Value for platform.",\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "id",\n "platform",\n "architecture",\n "isolation"\n ],\n "type": "object"\n },\n {\n "type": "null"\n }\n ],\n "description": "Value for environment."\n },\n "evidence_id": {\n "description": "Stable identifier of the recorded Evidence observation.",\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "evidence_links": {\n "description": "Value for evidence links.",\n "items": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "type": "array"\n },\n "limitations": {\n "description": "Value for limitations.",\n "items": {\n "type": "string"\n },\n "type": "array"\n },\n "locations": {\n "description": "Value for locations.",\n "items": {\n "oneOf": [\n {\n "properties": {\n "address": {\n "description": "Value for address.",\n "minLength": 1,\n "type": "string"\n },\n "kind": {\n "const": "address",\n "description": "Value for kind.",\n "type": "string"\n }\n },\n "required": [\n "kind",\n "address"\n ],\n "type": "object"\n },\n {\n "properties": {\n "end": {\n "description": "Value for end.",\n "minLength": 1,\n "type": "string"\n },\n "kind": {\n "const": "address-range",\n "description": "Value for kind.",\n "type": "string"\n },\n "start": {\n "description": "Value for start.",\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "kind",\n "start",\n "end"\n ],\n "type": "object"\n },\n {\n "properties": {\n "kind": {\n "const": "artifact-path",\n "description": "Value for kind.",\n "type": "string"\n },\n "path": {\n "description": "Local filesystem path used by this operation.",\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "kind",\n "path"\n ],\n "type": "object"\n },\n {\n "properties": {\n "kind": {\n "const": "file-offset",\n "description": "Value for kind.",\n "type": "string"\n },\n "offset": {\n "description": "Value for offset.",\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "kind",\n "offset"\n ],\n "type": "object"\n },\n {\n "properties": {\n "end": {\n "description": "Value for end.",\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "kind": {\n "const": "file-offset-range",\n "description": "Value for kind.",\n "type": "string"\n },\n "start": {\n "description": "Value for start.",\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "kind",\n "start",\n "end"\n ],\n "type": "object"\n }\n ]\n },\n "type": "array"\n },\n "normalized_result": {\n "$ref": "#/$defs/__schema0",\n "description": "Value for normalized result."\n },\n "operation": {\n "description": "Value for operation.",\n "minLength": 1,\n "type": "string"\n },\n "parameters": {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "description": "Value for parameters.",\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n },\n "predicate_type": {\n "description": "Value for predicate type.",\n "minLength": 1,\n "type": "string"\n },\n "provider": {\n "description": "Value for provider.",\n "properties": {\n "id": {\n "description": "Value for id.",\n "minLength": 1,\n "type": "string"\n },\n "name": {\n "description": "Exact name used by this operation.",\n "minLength": 1,\n "type": "string"\n },\n "version": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ],\n "description": "Value for version."\n }\n },\n "required": [\n "id",\n "name",\n "version"\n ],\n "type": "object"\n },\n "raw_result": {\n "anyOf": [\n {\n "$ref": "#/$defs/__schema0"\n },\n {\n "type": "null"\n }\n ],\n "description": "Value for raw result."\n },\n "subject": {\n "anyOf": [\n {\n "properties": {\n "architecture": {\n "anyOf": [\n {\n "enum": [\n "x86",\n "x86_64",\n "arm",\n "arm64"\n ],\n "type": "string"\n },\n {\n "type": "null"\n }\n ],\n "description": "Value for architecture."\n },\n "digest": {\n "description": "Value for digest.",\n "properties": {\n "sha256": {\n "description": "Value for sha256.",\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n }\n },\n "required": [\n "sha256"\n ],\n "type": "object"\n },\n "format": {\n "description": "Declared input artifact format.",\n "enum": [\n "hopper",\n "analysis-database",\n "mach-o",\n "elf",\n "pe",\n "dos-mz",\n "dos-com",\n "zip",\n "ipa",\n "apk",\n "msix",\n "appx",\n "asar",\n "dmg",\n "pkg",\n "plist",\n "javascript",\n "source-map",\n "directory",\n "file",\n "unknown",\n "mach-o-universal",\n "javascript-bundle",\n "entitlements"\n ],\n "type": "string"\n },\n "local_path": {\n "description": "Local filesystem path for local.",\n "type": "string"\n },\n "name": {\n "description": "Exact name used by this operation.",\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "name",\n "digest",\n "format",\n "architecture",\n "local_path"\n ],\n "type": "object"\n },\n {\n "type": "null"\n }\n ],\n "description": "Value for subject."\n }\n },\n "required": [\n "evidence_id",\n "subject",\n "provider",\n "predicate_type",\n "operation",\n "parameters",\n "raw_result",\n "normalized_result",\n "confidence",\n "authority",\n "environment",\n "limitations",\n "locations",\n "evidence_links"\n ],\n "type": "object"\n },\n "right": {\n "additionalProperties": false,\n "description": "Right-hand input used for comparison or differential execution.",\n "properties": {\n "analysis_profile": {\n "description": "Value for analysis profile.",\n "properties": {\n "digest": {\n "description": "Value for digest.",\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n },\n "parameters": {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "description": "Value for parameters.",\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n },\n "provider": {\n "description": "Value for provider.",\n "properties": {\n "id": {\n "description": "Value for id.",\n "minLength": 1,\n "type": "string"\n },\n "name": {\n "description": "Exact name used by this operation.",\n "minLength": 1,\n "type": "string"\n },\n "version": {\n "description": "Value for version.",\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "id",\n "name",\n "version"\n ],\n "type": "object"\n }\n },\n "required": [\n "provider",\n "parameters",\n "digest"\n ],\n "type": "object"\n },\n "authority": {\n "description": "Value for authority.",\n "enum": [\n "shipped-artifact",\n "controlled-replay",\n "historical-reference",\n "external-service",\n "analyst-inference"\n ],\n "type": "string"\n },\n "confidence": {\n "description": "Value for confidence.",\n "enum": [\n "observed",\n "derived",\n "inferred"\n ],\n "type": "string"\n },\n "environment": {\n "anyOf": [\n {\n "properties": {\n "architecture": {\n "description": "Value for architecture.",\n "minLength": 1,\n "type": "string"\n },\n "id": {\n "description": "Value for id.",\n "minLength": 1,\n "type": "string"\n },\n "isolation": {\n "description": "Value for isolation.",\n "enum": [\n "none",\n "process",\n "container",\n "virtual-machine"\n ],\n "type": "string"\n },\n "platform": {\n "description": "Value for platform.",\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "id",\n "platform",\n "architecture",\n "isolation"\n ],\n "type": "object"\n },\n {\n "type": "null"\n }\n ],\n "description": "Value for environment."\n },\n "evidence_id": {\n "description": "Stable identifier of the recorded Evidence observation.",\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "evidence_links": {\n "description": "Value for evidence links.",\n "items": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "type": "array"\n },\n "limitations": {\n "description": "Value for limitations.",\n "items": {\n "type": "string"\n },\n "type": "array"\n },\n "locations": {\n "description": "Value for locations.",\n "items": {\n "oneOf": [\n {\n "properties": {\n "address": {\n "description": "Value for address.",\n "minLength": 1,\n "type": "string"\n },\n "kind": {\n "const": "address",\n "description": "Value for kind.",\n "type": "string"\n }\n },\n "required": [\n "kind",\n "address"\n ],\n "type": "object"\n },\n {\n "properties": {\n "end": {\n "description": "Value for end.",\n "minLength": 1,\n "type": "string"\n },\n "kind": {\n "const": "address-range",\n "description": "Value for kind.",\n "type": "string"\n },\n "start": {\n "description": "Value for start.",\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "kind",\n "start",\n "end"\n ],\n "type": "object"\n },\n {\n "properties": {\n "kind": {\n "const": "artifact-path",\n "description": "Value for kind.",\n "type": "string"\n },\n "path": {\n "description": "Local filesystem path used by this operation.",\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "kind",\n "path"\n ],\n "type": "object"\n },\n {\n "properties": {\n "kind": {\n "const": "file-offset",\n "description": "Value for kind.",\n "type": "string"\n },\n "offset": {\n "description": "Value for offset.",\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "kind",\n "offset"\n ],\n "type": "object"\n },\n {\n "properties": {\n "end": {\n "description": "Value for end.",\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "kind": {\n "const": "file-offset-range",\n "description": "Value for kind.",\n "type": "string"\n },\n "start": {\n "description": "Value for start.",\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "kind",\n "start",\n "end"\n ],\n "type": "object"\n }\n ]\n },\n "type": "array"\n },\n "normalized_result": {\n "$ref": "#/$defs/__schema0",\n "description": "Value for normalized result."\n },\n "operation": {\n "description": "Value for operation.",\n "minLength": 1,\n "type": "string"\n },\n "parameters": {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "description": "Value for parameters.",\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n },\n "predicate_type": {\n "description": "Value for predicate type.",\n "minLength": 1,\n "type": "string"\n },\n "provider": {\n "description": "Value for provider.",\n "properties": {\n "id": {\n "description": "Value for id.",\n "minLength": 1,\n "type": "string"\n },\n "name": {\n "description": "Exact name used by this operation.",\n "minLength": 1,\n "type": "string"\n },\n "version": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ],\n "description": "Value for version."\n }\n },\n "required": [\n "id",\n "name",\n "version"\n ],\n "type": "object"\n },\n "raw_result": {\n "anyOf": [\n {\n "$ref": "#/$defs/__schema0"\n },\n {\n "type": "null"\n }\n ],\n "description": "Value for raw result."\n },\n "subject": {\n "anyOf": [\n {\n "properties": {\n "architecture": {\n "anyOf": [\n {\n "enum": [\n "x86",\n "x86_64",\n "arm",\n "arm64"\n ],\n "type": "string"\n },\n {\n "type": "null"\n }\n ],\n "description": "Value for architecture."\n },\n "digest": {\n "description": "Value for digest.",\n "properties": {\n "sha256": {\n "description": "Value for sha256.",\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n }\n },\n "required": [\n "sha256"\n ],\n "type": "object"\n },\n "format": {\n "description": "Declared input artifact format.",\n "enum": [\n "hopper",\n "analysis-database",\n "mach-o",\n "elf",\n "pe",\n "dos-mz",\n "dos-com",\n "zip",\n "ipa",\n "apk",\n "msix",\n "appx",\n "asar",\n "dmg",\n "pkg",\n "plist",\n "javascript",\n "source-map",\n "directory",\n "file",\n "unknown",\n "mach-o-universal",\n "javascript-bundle",\n "entitlements"\n ],\n "type": "string"\n },\n "local_path": {\n "description": "Local filesystem path for local.",\n "type": "string"\n },\n "name": {\n "description": "Exact name used by this operation.",\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "name",\n "digest",\n "format",\n "architecture",\n "local_path"\n ],\n "type": "object"\n },\n {\n "type": "null"\n }\n ],\n "description": "Value for subject."\n }\n },\n "required": [\n "evidence_id",\n "subject",\n "provider",\n "predicate_type",\n "operation",\n "parameters",\n "raw_result",\n "normalized_result",\n "confidence",\n "authority",\n "environment",\n "limitations",\n "locations",\n "evidence_links"\n ],\n "type": "object"\n }\n },\n "required": [\n "left",\n "right"\n ],\n "type": "object"\n },\n "kind": "session",\n "name": "compare_functions",\n "outputSchema": {\n "$defs": {\n "__schema0": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "number"\n },\n {\n "type": "boolean"\n },\n {\n "type": "null"\n },\n {\n "items": {\n "$ref": "#/$defs/__schema0"\n },\n "type": "array"\n },\n {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n }\n ]\n }\n },\n "$schema": "https://json-schema.org/draft/2020-12/schema",\n "additionalProperties": false,\n "properties": {\n "evidence": {\n "additionalProperties": false,\n "properties": {\n "analysis_profile": {\n "additionalProperties": false,\n "properties": {\n "digest": {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n },\n "parameters": {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n },\n "provider": {\n "additionalProperties": false,\n "properties": {\n "id": {\n "minLength": 1,\n "type": "string"\n },\n "name": {\n "minLength": 1,\n "type": "string"\n },\n "version": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "id",\n "name",\n "version"\n ],\n "type": "object"\n }\n },\n "required": [\n "provider",\n "parameters",\n "digest"\n ],\n "type": "object"\n },\n "authority": {\n "enum": [\n "shipped-artifact",\n "controlled-replay",\n "historical-reference",\n "external-service",\n "analyst-inference"\n ],\n "type": "string"\n },\n "confidence": {\n "enum": [\n "observed",\n "derived",\n "inferred"\n ],\n "type": "string"\n },\n "environment": {\n "anyOf": [\n {\n "additionalProperties": false,\n "properties": {\n "architecture": {\n "minLength": 1,\n "type": "string"\n },\n "id": {\n "minLength": 1,\n "type": "string"\n },\n "isolation": {\n "enum": [\n "none",\n "process",\n "container",\n "virtual-machine"\n ],\n "type": "string"\n },\n "platform": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "id",\n "platform",\n "architecture",\n "isolation"\n ],\n "type": "object"\n },\n {\n "type": "null"\n }\n ]\n },\n "evidence_id": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "evidence_links": {\n "items": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "type": "array"\n },\n "limitations": {\n "items": {\n "type": "string"\n },\n "type": "array"\n },\n "locations": {\n "items": {\n "oneOf": [\n {\n "additionalProperties": false,\n "properties": {\n "address": {\n "minLength": 1,\n "type": "string"\n },\n "kind": {\n "const": "address",\n "type": "string"\n }\n },\n "required": [\n "kind",\n "address"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "end": {\n "minLength": 1,\n "type": "string"\n },\n "kind": {\n "const": "address-range",\n "type": "string"\n },\n "start": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "kind",\n "start",\n "end"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "kind": {\n "const": "artifact-path",\n "type": "string"\n },\n "path": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "kind",\n "path"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "kind": {\n "const": "file-offset",\n "type": "string"\n },\n "offset": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "kind",\n "offset"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "end": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "kind": {\n "const": "file-offset-range",\n "type": "string"\n },\n "start": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "kind",\n "start",\n "end"\n ],\n "type": "object"\n }\n ]\n },\n "type": "array"\n },\n "normalized_result": {\n "$ref": "#/$defs/__schema0"\n },\n "operation": {\n "minLength": 1,\n "type": "string"\n },\n "parameters": {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n },\n "predicate_type": {\n "minLength": 1,\n "type": "string"\n },\n "provider": {\n "additionalProperties": false,\n "properties": {\n "id": {\n "minLength": 1,\n "type": "string"\n },\n "name": {\n "minLength": 1,\n "type": "string"\n },\n "version": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "id",\n "name",\n "version"\n ],\n "type": "object"\n },\n "raw_result": {\n "anyOf": [\n {\n "$ref": "#/$defs/__schema0"\n },\n {\n "type": "null"\n }\n ]\n },\n "subject": {\n "anyOf": [\n {\n "additionalProperties": false,\n "properties": {\n "architecture": {\n "anyOf": [\n {\n "enum": [\n "x86",\n "x86_64",\n "arm",\n "arm64"\n ],\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "digest": {\n "additionalProperties": false,\n "properties": {\n "sha256": {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n }\n },\n "required": [\n "sha256"\n ],\n "type": "object"\n },\n "format": {\n "enum": [\n "hopper",\n "analysis-database",\n "mach-o",\n "elf",\n "pe",\n "dos-mz",\n "dos-com",\n "zip",\n "ipa",\n "apk",\n "msix",\n "appx",\n "asar",\n "dmg",\n "pkg",\n "plist",\n "javascript",\n "source-map",\n "directory",\n "file",\n "unknown",\n "mach-o-universal",\n "javascript-bundle",\n "entitlements"\n ],\n "type": "string"\n },\n "local_path": {\n "type": "string"\n },\n "name": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "name",\n "digest",\n "format",\n "architecture",\n "local_path"\n ],\n "type": "object"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "evidence_id",\n "subject",\n "provider",\n "predicate_type",\n "operation",\n "parameters",\n "raw_result",\n "normalized_result",\n "confidence",\n "authority",\n "environment",\n "limitations",\n "locations",\n "evidence_links"\n ],\n "type": "object"\n },\n "evidence_id": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "result": {\n "additionalProperties": false,\n "properties": {\n "changes": {\n "items": {\n "anyOf": [\n {\n "additionalProperties": false,\n "properties": {\n "conclusion_kind": {\n "const": "derived_relationship",\n "type": "string"\n },\n "dimension": {\n "enum": [\n "identity",\n "pseudocode",\n "assembly",\n "comments",\n "calls",\n "references",\n "strings_names",\n "cfg"\n ],\n "type": "string"\n },\n "evidence_links": {\n "items": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "minItems": 2,\n "type": "array"\n },\n "left_count": {\n "anyOf": [\n {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n {\n "type": "null"\n }\n ]\n },\n "left_digest": {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n },\n "limitations": {\n "items": {\n "type": "string"\n },\n "type": "array"\n },\n "right_count": {\n "anyOf": [\n {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n {\n "type": "null"\n }\n ]\n },\n "right_digest": {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n },\n "status": {\n "const": "unchanged",\n "type": "string"\n },\n "text_delta": {\n "anyOf": [\n {\n "additionalProperties": false,\n "properties": {\n "added_lines": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "hunks": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "removed_lines": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "added_lines",\n "removed_lines",\n "hunks"\n ],\n "type": "object"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "dimension",\n "left_count",\n "right_count",\n "evidence_links",\n "limitations",\n "status",\n "left_digest",\n "right_digest",\n "text_delta",\n "conclusion_kind"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "conclusion_kind": {\n "enum": [\n "derived_relationship",\n "contradiction"\n ],\n "type": "string"\n },\n "dimension": {\n "enum": [\n "identity",\n "pseudocode",\n "assembly",\n "comments",\n "calls",\n "references",\n "strings_names",\n "cfg"\n ],\n "type": "string"\n },\n "evidence_links": {\n "items": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "minItems": 2,\n "type": "array"\n },\n "left_count": {\n "anyOf": [\n {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n {\n "type": "null"\n }\n ]\n },\n "left_digest": {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n },\n "limitations": {\n "items": {\n "type": "string"\n },\n "type": "array"\n },\n "right_count": {\n "anyOf": [\n {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n {\n "type": "null"\n }\n ]\n },\n "right_digest": {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n },\n "status": {\n "const": "changed",\n "type": "string"\n },\n "text_delta": {\n "anyOf": [\n {\n "additionalProperties": false,\n "properties": {\n "added_lines": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "hunks": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "removed_lines": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "added_lines",\n "removed_lines",\n "hunks"\n ],\n "type": "object"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "dimension",\n "left_count",\n "right_count",\n "evidence_links",\n "limitations",\n "status",\n "left_digest",\n "right_digest",\n "text_delta",\n "conclusion_kind"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "conclusion_kind": {\n "const": "unresolved_branch",\n "type": "string"\n },\n "dimension": {\n "enum": [\n "identity",\n "pseudocode",\n "assembly",\n "comments",\n "calls",\n "references",\n "strings_names",\n "cfg"\n ],\n "type": "string"\n },\n "evidence_links": {\n "items": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "minItems": 2,\n "type": "array"\n },\n "left_count": {\n "anyOf": [\n {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n {\n "type": "null"\n }\n ]\n },\n "left_digest": {\n "type": "null"\n },\n "limitations": {\n "items": {\n "type": "string"\n },\n "type": "array"\n },\n "right_count": {\n "anyOf": [\n {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n {\n "type": "null"\n }\n ]\n },\n "right_digest": {\n "type": "null"\n },\n "status": {\n "enum": [\n "truncated",\n "unknown"\n ],\n "type": "string"\n },\n "text_delta": {\n "type": "null"\n }\n },\n "required": [\n "dimension",\n "left_count",\n "right_count",\n "evidence_links",\n "limitations",\n "status",\n "left_digest",\n "right_digest",\n "text_delta",\n "conclusion_kind"\n ],\n "type": "object"\n }\n ]\n },\n "type": "array"\n },\n "dimensions": {\n "items": {\n "anyOf": [\n {\n "additionalProperties": false,\n "properties": {\n "conclusion_kind": {\n "const": "derived_relationship",\n "type": "string"\n },\n "dimension": {\n "enum": [\n "identity",\n "pseudocode",\n "assembly",\n "comments",\n "calls",\n "references",\n "strings_names",\n "cfg"\n ],\n "type": "string"\n },\n "evidence_links": {\n "items": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "minItems": 2,\n "type": "array"\n },\n "left_count": {\n "anyOf": [\n {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n {\n "type": "null"\n }\n ]\n },\n "left_digest": {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n },\n "limitations": {\n "items": {\n "type": "string"\n },\n "type": "array"\n },\n "right_count": {\n "anyOf": [\n {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n {\n "type": "null"\n }\n ]\n },\n "right_digest": {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n },\n "status": {\n "const": "unchanged",\n "type": "string"\n },\n "text_delta": {\n "anyOf": [\n {\n "additionalProperties": false,\n "properties": {\n "added_lines": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "hunks": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "removed_lines": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "added_lines",\n "removed_lines",\n "hunks"\n ],\n "type": "object"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "dimension",\n "left_count",\n "right_count",\n "evidence_links",\n "limitations",\n "status",\n "left_digest",\n "right_digest",\n "text_delta",\n "conclusion_kind"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "conclusion_kind": {\n "enum": [\n "derived_relationship",\n "contradiction"\n ],\n "type": "string"\n },\n "dimension": {\n "enum": [\n "identity",\n "pseudocode",\n "assembly",\n "comments",\n "calls",\n "references",\n "strings_names",\n "cfg"\n ],\n "type": "string"\n },\n "evidence_links": {\n "items": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "minItems": 2,\n "type": "array"\n },\n "left_count": {\n "anyOf": [\n {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n {\n "type": "null"\n }\n ]\n },\n "left_digest": {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n },\n "limitations": {\n "items": {\n "type": "string"\n },\n "type": "array"\n },\n "right_count": {\n "anyOf": [\n {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n {\n "type": "null"\n }\n ]\n },\n "right_digest": {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n },\n "status": {\n "const": "changed",\n "type": "string"\n },\n "text_delta": {\n "anyOf": [\n {\n "additionalProperties": false,\n "properties": {\n "added_lines": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "hunks": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "removed_lines": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "added_lines",\n "removed_lines",\n "hunks"\n ],\n "type": "object"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "dimension",\n "left_count",\n "right_count",\n "evidence_links",\n "limitations",\n "status",\n "left_digest",\n "right_digest",\n "text_delta",\n "conclusion_kind"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "conclusion_kind": {\n "const": "unresolved_branch",\n "type": "string"\n },\n "dimension": {\n "enum": [\n "identity",\n "pseudocode",\n "assembly",\n "comments",\n "calls",\n "references",\n "strings_names",\n "cfg"\n ],\n "type": "string"\n },\n "evidence_links": {\n "items": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "minItems": 2,\n "type": "array"\n },\n "left_count": {\n "anyOf": [\n {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n {\n "type": "null"\n }\n ]\n },\n "left_digest": {\n "type": "null"\n },\n "limitations": {\n "items": {\n "type": "string"\n },\n "type": "array"\n },\n "right_count": {\n "anyOf": [\n {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n {\n "type": "null"\n }\n ]\n },\n "right_digest": {\n "type": "null"\n },\n "status": {\n "enum": [\n "truncated",\n "unknown"\n ],\n "type": "string"\n },\n "text_delta": {\n "type": "null"\n }\n },\n "required": [\n "dimension",\n "left_count",\n "right_count",\n "evidence_links",\n "limitations",\n "status",\n "left_digest",\n "right_digest",\n "text_delta",\n "conclusion_kind"\n ],\n "type": "object"\n }\n ]\n },\n "maxItems": 8,\n "minItems": 8,\n "type": "array"\n },\n "function_match": {\n "anyOf": [\n {\n "additionalProperties": false,\n "properties": {\n "left_name": {\n "type": "string"\n },\n "method": {\n "const": "symbol",\n "type": "string"\n },\n "right_name": {\n "type": "string"\n },\n "status": {\n "const": "matched",\n "type": "string"\n }\n },\n "required": [\n "status",\n "method",\n "left_name",\n "right_name"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "left_name": {\n "type": "string"\n },\n "method": {\n "const": "explicit",\n "type": "string"\n },\n "right_name": {\n "type": "string"\n },\n "status": {\n "enum": [\n "mismatched",\n "ambiguous"\n ],\n "type": "string"\n }\n },\n "required": [\n "status",\n "method",\n "left_name",\n "right_name"\n ],\n "type": "object"\n }\n ]\n },\n "left_subject_sha256": {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n },\n "limitations": {\n "items": {\n "type": "string"\n },\n "type": "array"\n },\n "right_subject_sha256": {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n },\n "status": {\n "enum": [\n "unchanged",\n "changed",\n "truncated",\n "unknown"\n ],\n "type": "string"\n },\n "summary": {\n "additionalProperties": false,\n "properties": {\n "changed": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "truncated": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "unchanged": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "unknown": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "unchanged",\n "changed",\n "truncated",\n "unknown"\n ],\n "type": "object"\n }\n },\n "required": [\n "status",\n "function_match",\n "left_subject_sha256",\n "right_subject_sha256",\n "summary",\n "dimensions",\n "changes",\n "limitations"\n ],\n "type": "object"\n }\n },\n "required": [\n "result",\n "evidence_id",\n "evidence"\n ],\n "type": "object"\n },\n "requiresSession": true,\n "title": "Compare Functions"\n },\n {\n "analysisOperation": null,\n "annotations": {\n "destructiveHint": false,\n "idempotentHint": true,\n "openWorldHint": false,\n "readOnlyHint": false\n },\n "description": "Compare two canonical Evidence 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 returns every change inline.",\n "effects": {\n "accessesNetwork": false,\n "changesUiState": false,\n "idempotent": true,\n "launchesProcess": false,\n "mayDiscardData": false,\n "mutatesSession": true,\n "mutatesTarget": false,\n "writesFilesystem": false\n },\n "inputSchema": {\n "$schema": "https://json-schema.org/draft/2020-12/schema",\n "additionalProperties": false,\n "examples": [\n {\n "left_bundle_path": "/tmp/left-evidence.json",\n "record_pairs": [],\n "right_bundle_path": "/tmp/right-evidence.json"\n }\n ],\n "properties": {\n "left_bundle_path": {\n "description": "Local filesystem path for left bundle.",\n "minLength": 1,\n "type": "string"\n },\n "record_pairs": {\n "default": [],\n "description": "Value for record pairs.",\n "items": {\n "properties": {\n "left_evidence_id": {\n "description": "Exact Evidence identifier for the left observation.",\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "right_evidence_id": {\n "description": "Exact Evidence identifier for the right observation.",\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n }\n },\n "required": [\n "left_evidence_id",\n "right_evidence_id"\n ],\n "type": "object"\n },\n "type": "array"\n },\n "right_bundle_path": {\n "description": "Local filesystem path for right bundle.",\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "left_bundle_path",\n "right_bundle_path"\n ],\n "type": "object"\n },\n "kind": "session",\n "name": "compare_bundles",\n "outputSchema": {\n "$defs": {\n "__schema0": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "number"\n },\n {\n "type": "boolean"\n },\n {\n "type": "null"\n },\n {\n "items": {\n "$ref": "#/$defs/__schema0"\n },\n "type": "array"\n },\n {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n }\n ]\n }\n },\n "$schema": "https://json-schema.org/draft/2020-12/schema",\n "additionalProperties": false,\n "properties": {\n "evidence": {\n "additionalProperties": false,\n "properties": {\n "analysis_profile": {\n "additionalProperties": false,\n "properties": {\n "digest": {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n },\n "parameters": {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n },\n "provider": {\n "additionalProperties": false,\n "properties": {\n "id": {\n "minLength": 1,\n "type": "string"\n },\n "name": {\n "minLength": 1,\n "type": "string"\n },\n "version": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "id",\n "name",\n "version"\n ],\n "type": "object"\n }\n },\n "required": [\n "provider",\n "parameters",\n "digest"\n ],\n "type": "object"\n },\n "authority": {\n "enum": [\n "shipped-artifact",\n "controlled-replay",\n "historical-reference",\n "external-service",\n "analyst-inference"\n ],\n "type": "string"\n },\n "confidence": {\n "enum": [\n "observed",\n "derived",\n "inferred"\n ],\n "type": "string"\n },\n "environment": {\n "anyOf": [\n {\n "additionalProperties": false,\n "properties": {\n "architecture": {\n "minLength": 1,\n "type": "string"\n },\n "id": {\n "minLength": 1,\n "type": "string"\n },\n "isolation": {\n "enum": [\n "none",\n "process",\n "container",\n "virtual-machine"\n ],\n "type": "string"\n },\n "platform": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "id",\n "platform",\n "architecture",\n "isolation"\n ],\n "type": "object"\n },\n {\n "type": "null"\n }\n ]\n },\n "evidence_id": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "evidence_links": {\n "items": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "type": "array"\n },\n "limitations": {\n "items": {\n "type": "string"\n },\n "type": "array"\n },\n "locations": {\n "items": {\n "oneOf": [\n {\n "additionalProperties": false,\n "properties": {\n "address": {\n "minLength": 1,\n "type": "string"\n },\n "kind": {\n "const": "address",\n "type": "string"\n }\n },\n "required": [\n "kind",\n "address"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "end": {\n "minLength": 1,\n "type": "string"\n },\n "kind": {\n "const": "address-range",\n "type": "string"\n },\n "start": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "kind",\n "start",\n "end"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "kind": {\n "const": "artifact-path",\n "type": "string"\n },\n "path": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "kind",\n "path"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "kind": {\n "const": "file-offset",\n "type": "string"\n },\n "offset": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "kind",\n "offset"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "end": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "kind": {\n "const": "file-offset-range",\n "type": "string"\n },\n "start": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "kind",\n "start",\n "end"\n ],\n "type": "object"\n }\n ]\n },\n "type": "array"\n },\n "normalized_result": {\n "$ref": "#/$defs/__schema0"\n },\n "operation": {\n "minLength": 1,\n "type": "string"\n },\n "parameters": {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n },\n "predicate_type": {\n "minLength": 1,\n "type": "string"\n },\n "provider": {\n "additionalProperties": false,\n "properties": {\n "id": {\n "minLength": 1,\n "type": "string"\n },\n "name": {\n "minLength": 1,\n "type": "string"\n },\n "version": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "id",\n "name",\n "version"\n ],\n "type": "object"\n },\n "raw_result": {\n "anyOf": [\n {\n "$ref": "#/$defs/__schema0"\n },\n {\n "type": "null"\n }\n ]\n },\n "subject": {\n "anyOf": [\n {\n "additionalProperties": false,\n "properties": {\n "architecture": {\n "anyOf": [\n {\n "enum": [\n "x86",\n "x86_64",\n "arm",\n "arm64"\n ],\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "digest": {\n "additionalProperties": false,\n "properties": {\n "sha256": {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n }\n },\n "required": [\n "sha256"\n ],\n "type": "object"\n },\n "format": {\n "enum": [\n "hopper",\n "analysis-database",\n "mach-o",\n "elf",\n "pe",\n "dos-mz",\n "dos-com",\n "zip",\n "ipa",\n "apk",\n "msix",\n "appx",\n "asar",\n "dmg",\n "pkg",\n "plist",\n "javascript",\n "source-map",\n "directory",\n "file",\n "unknown",\n "mach-o-universal",\n "javascript-bundle",\n "entitlements"\n ],\n "type": "string"\n },\n "local_path": {\n "type": "string"\n },\n "name": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "name",\n "digest",\n "format",\n "architecture",\n "local_path"\n ],\n "type": "object"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "evidence_id",\n "subject",\n "provider",\n "predicate_type",\n "operation",\n "parameters",\n "raw_result",\n "normalized_result",\n "confidence",\n "authority",\n "environment",\n "limitations",\n "locations",\n "evidence_links"\n ],\n "type": "object"\n },\n "evidence_id": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "result": {\n "additionalProperties": false,\n "properties": {\n "changes": {\n "items": {\n "additionalProperties": false,\n "properties": {\n "classification": {\n "enum": [\n "added",\n "removed",\n "changed",\n "unknown",\n "history_advanced",\n "history_diverged"\n ],\n "type": "string"\n },\n "conclusion_kind": {\n "enum": [\n "observed_change",\n "contradiction",\n "unresolved_branch"\n ],\n "type": "string"\n },\n "entity": {\n "enum": [\n "evidence",\n "residual_unknown"\n ],\n "type": "string"\n },\n "key": {\n "minLength": 1,\n "type": "string"\n },\n "left_digest": {\n "anyOf": [\n {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "left_evidence_ids": {\n "items": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "type": "array"\n },\n "limitations": {\n "items": {\n "type": "string"\n },\n "type": "array"\n },\n "right_digest": {\n "anyOf": [\n {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "right_evidence_ids": {\n "items": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "type": "array"\n }\n },\n "required": [\n "entity",\n "key",\n "classification",\n "conclusion_kind",\n "left_evidence_ids",\n "right_evidence_ids",\n "left_digest",\n "right_digest",\n "limitations"\n ],\n "type": "object"\n },\n "type": "array"\n },\n "left_bundle_sha256": {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n },\n "limitations": {\n "items": {\n "type": "string"\n },\n "type": "array"\n },\n "right_bundle_sha256": {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n },\n "status": {\n "enum": [\n "unchanged",\n "changed",\n "unknown"\n ],\n "type": "string"\n },\n "summary": {\n "additionalProperties": false,\n "properties": {\n "records_added": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "records_changed": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "records_removed": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "records_unchanged": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "unknowns_added": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "unknowns_advanced": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "unknowns_diverged": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "unknowns_removed": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "unknowns_unchanged": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "unresolved": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "records_unchanged",\n "records_added",\n "records_removed",\n "records_changed",\n "unknowns_unchanged",\n "unknowns_added",\n "unknowns_removed",\n "unknowns_advanced",\n "unknowns_diverged",\n "unresolved"\n ],\n "type": "object"\n }\n },\n "required": [\n "status",\n "left_bundle_sha256",\n "right_bundle_sha256",\n "summary",\n "changes",\n "limitations"\n ],\n "type": "object"\n }\n },\n "required": [\n "result",\n "evidence_id",\n "evidence"\n ],\n "type": "object"\n },\n "requiresSession": true,\n "title": "Compare Bundles"\n },\n {\n "analysisOperation": null,\n "annotations": {\n "destructiveHint": false,\n "idempotentHint": true,\n "openWorldHint": false,\n "readOnlyHint": false\n },\n "description": "Aggregate validated process and artifact comparison Evidence. Runtime observations remain distinct from static behavior candidates; missing or incomplete comparisons produce unresolved findings, never causal claims. Returns every finding inline.",\n "effects": {\n "accessesNetwork": false,\n "changesUiState": false,\n "idempotent": true,\n "launchesProcess": false,\n "mayDiscardData": false,\n "mutatesSession": true,\n "mutatesTarget": false,\n "writesFilesystem": false\n },\n "inputSchema": {\n "$defs": {\n "__schema0": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "number"\n },\n {\n "type": "boolean"\n },\n {\n "type": "null"\n },\n {\n "items": {\n "$ref": "#/$defs/__schema0"\n },\n "type": "array"\n },\n {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n }\n ]\n }\n },\n "$schema": "https://json-schema.org/draft/2020-12/schema",\n "examples": [\n {\n "comparisons": [\n {\n "authority": "analyst-inference",\n "confidence": "derived",\n "environment": null,\n "evidence_id": "ev_cc8049f629a9318e985bee4a547c0ec6646e9d3c2cbbabf4ac9b3758bc3ede86",\n "evidence_links": [\n "ev_fd7f0f3851d21e5284b47129d9c7142e2ebeb6ed1c5f91bcff18a781d0b24cb7",\n "ev_79f87eddd8df1d59c6f2e2cd99f21bfae2e5a22fd26c5bf0d0b9ccf9e24b0522"\n ],\n "limitations": [\n "Artifact identity is unavailable for this observation."\n ],\n "locations": [],\n "normalized_result": {\n "changes": [\n {\n "conclusion_kind": "derived_relationship",\n "dimension": "pseudocode",\n "evidence_links": [\n "ev_fd7f0f3851d21e5284b47129d9c7142e2ebeb6ed1c5f91bcff18a781d0b24cb7",\n "ev_79f87eddd8df1d59c6f2e2cd99f21bfae2e5a22fd26c5bf0d0b9ccf9e24b0522"\n ],\n "left_count": 9,\n "left_digest": "64abdfe133a114158fa0e185d0edec784e6ccf13a166a0fed8bc18bb0cc72554",\n "limitations": [],\n "right_count": 9,\n "right_digest": "c8e26d77640903b2d4c765ebcb7f7170b64dd320dd3911abbe8346e07cd593d1",\n "status": "changed",\n "text_delta": {\n "added_lines": 1,\n "hunks": 2,\n "removed_lines": 1\n }\n }\n ],\n "dimensions": [\n {\n "conclusion_kind": "derived_relationship",\n "dimension": "identity",\n "evidence_links": [\n "ev_fd7f0f3851d21e5284b47129d9c7142e2ebeb6ed1c5f91bcff18a781d0b24cb7",\n "ev_79f87eddd8df1d59c6f2e2cd99f21bfae2e5a22fd26c5bf0d0b9ccf9e24b0522"\n ],\n "left_count": null,\n "left_digest": "dd190a914de1bdf8f4bba97a2e74b439585874c567f28eb0ff41bc5388c66d65",\n "limitations": [],\n "right_count": null,\n "right_digest": "dd190a914de1bdf8f4bba97a2e74b439585874c567f28eb0ff41bc5388c66d65",\n "status": "unchanged",\n "text_delta": null\n },\n {\n "conclusion_kind": "derived_relationship",\n "dimension": "pseudocode",\n "evidence_links": [\n "ev_fd7f0f3851d21e5284b47129d9c7142e2ebeb6ed1c5f91bcff18a781d0b24cb7",\n "ev_79f87eddd8df1d59c6f2e2cd99f21bfae2e5a22fd26c5bf0d0b9ccf9e24b0522"\n ],\n "left_count": 9,\n "left_digest": "64abdfe133a114158fa0e185d0edec784e6ccf13a166a0fed8bc18bb0cc72554",\n "limitations": [],\n "right_count": 9,\n "right_digest": "c8e26d77640903b2d4c765ebcb7f7170b64dd320dd3911abbe8346e07cd593d1",\n "status": "changed",\n "text_delta": {\n "added_lines": 1,\n "hunks": 2,\n "removed_lines": 1\n }\n },\n {\n "conclusion_kind": "derived_relationship",\n "dimension": "assembly",\n "evidence_links": [\n "ev_fd7f0f3851d21e5284b47129d9c7142e2ebeb6ed1c5f91bcff18a781d0b24cb7",\n "ev_79f87eddd8df1d59c6f2e2cd99f21bfae2e5a22fd26c5bf0d0b9ccf9e24b0522"\n ],\n "left_count": 0,\n "left_digest": "12ae32cb1ec02d01eda3581b127c1fee3b0dc53572ed6baf239721a03d82e126",\n "limitations": [\n "Assembly is opaque provider text; relocation normalization is unavailable."\n ],\n "right_count": 0,\n "right_digest": "12ae32cb1ec02d01eda3581b127c1fee3b0dc53572ed6baf239721a03d82e126",\n "status": "unchanged",\n "text_delta": {\n "added_lines": 0,\n "hunks": 0,\n "removed_lines": 0\n }\n },\n {\n "conclusion_kind": "derived_relationship",\n "dimension": "comments",\n "evidence_links": [\n "ev_fd7f0f3851d21e5284b47129d9c7142e2ebeb6ed1c5f91bcff18a781d0b24cb7",\n "ev_79f87eddd8df1d59c6f2e2cd99f21bfae2e5a22fd26c5bf0d0b9ccf9e24b0522"\n ],\n "left_count": 0,\n "left_digest": "4f53cda18c2baa0c0354bb5f9a3ecbe5ed12ab4d8e11ba873c2f11161202b945",\n "limitations": [],\n "right_count": 0,\n "right_digest": "4f53cda18c2baa0c0354bb5f9a3ecbe5ed12ab4d8e11ba873c2f11161202b945",\n "status": "unchanged",\n "text_delta": null\n },\n {\n "conclusion_kind": "derived_relationship",\n "dimension": "calls",\n "evidence_links": [\n "ev_fd7f0f3851d21e5284b47129d9c7142e2ebeb6ed1c5f91bcff18a781d0b24cb7",\n "ev_79f87eddd8df1d59c6f2e2cd99f21bfae2e5a22fd26c5bf0d0b9ccf9e24b0522"\n ],\n "left_count": 0,\n "left_digest": "4f53cda18c2baa0c0354bb5f9a3ecbe5ed12ab4d8e11ba873c2f11161202b945",\n "limitations": [],\n "right_count": 0,\n "right_digest": "4f53cda18c2baa0c0354bb5f9a3ecbe5ed12ab4d8e11ba873c2f11161202b945",\n "status": "unchanged",\n "text_delta": null\n },\n {\n "conclusion_kind": "derived_relationship",\n "dimension": "references",\n "evidence_links": [\n "ev_fd7f0f3851d21e5284b47129d9c7142e2ebeb6ed1c5f91bcff18a781d0b24cb7",\n "ev_79f87eddd8df1d59c6f2e2cd99f21bfae2e5a22fd26c5bf0d0b9ccf9e24b0522"\n ],\n "left_count": 0,\n "left_digest": "4f53cda18c2baa0c0354bb5f9a3ecbe5ed12ab4d8e11ba873c2f11161202b945",\n "limitations": [],\n "right_count": 0,\n "right_digest": "4f53cda18c2baa0c0354bb5f9a3ecbe5ed12ab4d8e11ba873c2f11161202b945",\n "status": "unchanged",\n "text_delta": null\n },\n {\n "conclusion_kind": "derived_relationship",\n "dimension": "strings_names",\n "evidence_links": [\n "ev_fd7f0f3851d21e5284b47129d9c7142e2ebeb6ed1c5f91bcff18a781d0b24cb7",\n "ev_79f87eddd8df1d59c6f2e2cd99f21bfae2e5a22fd26c5bf0d0b9ccf9e24b0522"\n ],\n "left_count": 0,\n "left_digest": "4f53cda18c2baa0c0354bb5f9a3ecbe5ed12ab4d8e11ba873c2f11161202b945",\n "limitations": [],\n "right_count": 0,\n "right_digest": "4f53cda18c2baa0c0354bb5f9a3ecbe5ed12ab4d8e11ba873c2f11161202b945",\n "status": "unchanged",\n "text_delta": null\n },\n {\n "conclusion_kind": "derived_relationship",\n "dimension": "cfg",\n "evidence_links": [\n "ev_fd7f0f3851d21e5284b47129d9c7142e2ebeb6ed1c5f91bcff18a781d0b24cb7",\n "ev_79f87eddd8df1d59c6f2e2cd99f21bfae2e5a22fd26c5bf0d0b9ccf9e24b0522"\n ],\n "left_count": 1,\n "left_digest": "e947121f0d4cb8d2a2468a75a44872a29aa1239e6401712df80cfa36bf7df7a0",\n "limitations": [],\n "right_count": 1,\n "right_digest": "e947121f0d4cb8d2a2468a75a44872a29aa1239e6401712df80cfa36bf7df7a0",\n "status": "unchanged",\n "text_delta": null\n }\n ],\n "function_match": {\n "left_name": "main",\n "method": "symbol",\n "right_name": "main",\n "status": "matched"\n },\n "left_subject_sha256": "0000000000000000000000000000000000000000000000000000000000000000",\n "limitations": [],\n "right_subject_sha256": "1111111111111111111111111111111111111111111111111111111111111111",\n "status": "changed",\n "summary": {\n "changed": 1,\n "truncated": 0,\n "unchanged": 7,\n "unknown": 0\n }\n },\n "operation": "compare_functions",\n "parameters": {\n "left_evidence_id": "ev_fd7f0f3851d21e5284b47129d9c7142e2ebeb6ed1c5f91bcff18a781d0b24cb7",\n "right_evidence_id": "ev_79f87eddd8df1d59c6f2e2cd99f21bfae2e5a22fd26c5bf0d0b9ccf9e24b0522"\n },\n "predicate_type": "rea.function-comparison",\n "provider": {\n "id": "rea-function-comparison",\n "name": "REA function comparison",\n "version": "1"\n },\n "raw_result": null,\n "subject": null\n }\n ]\n }\n ],\n "properties": {\n "comparisons": {\n "default": [],\n "description": "Validated comparison Evidence records to aggregate.",\n "items": {\n "additionalProperties": false,\n "properties": {\n "analysis_profile": {\n "description": "Value for analysis profile.",\n "properties": {\n "digest": {\n "description": "Value for digest.",\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n },\n "parameters": {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "description": "Value for parameters.",\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n },\n "provider": {\n "description": "Value for provider.",\n "properties": {\n "id": {\n "description": "Value for id.",\n "minLength": 1,\n "type": "string"\n },\n "name": {\n "description": "Exact name used by this operation.",\n "minLength": 1,\n "type": "string"\n },\n "version": {\n "description": "Value for version.",\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "id",\n "name",\n "version"\n ],\n "type": "object"\n }\n },\n "required": [\n "provider",\n "parameters",\n "digest"\n ],\n "type": "object"\n },\n "authority": {\n "description": "Value for authority.",\n "enum": [\n "shipped-artifact",\n "controlled-replay",\n "historical-reference",\n "external-service",\n "analyst-inference"\n ],\n "type": "string"\n },\n "confidence": {\n "description": "Value for confidence.",\n "enum": [\n "observed",\n "derived",\n "inferred"\n ],\n "type": "string"\n },\n "environment": {\n "anyOf": [\n {\n "properties": {\n "architecture": {\n "description": "Value for architecture.",\n "minLength": 1,\n "type": "string"\n },\n "id": {\n "description": "Value for id.",\n "minLength": 1,\n "type": "string"\n },\n "isolation": {\n "description": "Value for isolation.",\n "enum": [\n "none",\n "process",\n "container",\n "virtual-machine"\n ],\n "type": "string"\n },\n "platform": {\n "description": "Value for platform.",\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "id",\n "platform",\n "architecture",\n "isolation"\n ],\n "type": "object"\n },\n {\n "type": "null"\n }\n ],\n "description": "Value for environment."\n },\n "evidence_id": {\n "description": "Stable identifier of the recorded Evidence observation.",\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "evidence_links": {\n "description": "Value for evidence links.",\n "items": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "type": "array"\n },\n "limitations": {\n "description": "Value for limitations.",\n "items": {\n "type": "string"\n },\n "type": "array"\n },\n "locations": {\n "description": "Value for locations.",\n "items": {\n "oneOf": [\n {\n "properties": {\n "address": {\n "description": "Value for address.",\n "minLength": 1,\n "type": "string"\n },\n "kind": {\n "const": "address",\n "description": "Value for kind.",\n "type": "string"\n }\n },\n "required": [\n "kind",\n "address"\n ],\n "type": "object"\n },\n {\n "properties": {\n "end": {\n "description": "Value for end.",\n "minLength": 1,\n "type": "string"\n },\n "kind": {\n "const": "address-range",\n "description": "Value for kind.",\n "type": "string"\n },\n "start": {\n "description": "Value for start.",\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "kind",\n "start",\n "end"\n ],\n "type": "object"\n },\n {\n "properties": {\n "kind": {\n "const": "artifact-path",\n "description": "Value for kind.",\n "type": "string"\n },\n "path": {\n "description": "Local filesystem path used by this operation.",\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "kind",\n "path"\n ],\n "type": "object"\n },\n {\n "properties": {\n "kind": {\n "const": "file-offset",\n "description": "Value for kind.",\n "type": "string"\n },\n "offset": {\n "description": "Value for offset.",\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "kind",\n "offset"\n ],\n "type": "object"\n },\n {\n "properties": {\n "end": {\n "description": "Value for end.",\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "kind": {\n "const": "file-offset-range",\n "description": "Value for kind.",\n "type": "string"\n },\n "start": {\n "description": "Value for start.",\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "kind",\n "start",\n "end"\n ],\n "type": "object"\n }\n ]\n },\n "type": "array"\n },\n "normalized_result": {\n "$ref": "#/$defs/__schema0",\n "description": "Value for normalized result."\n },\n "operation": {\n "description": "Value for operation.",\n "minLength": 1,\n "type": "string"\n },\n "parameters": {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "description": "Value for parameters.",\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n },\n "predicate_type": {\n "description": "Value for predicate type.",\n "minLength": 1,\n "type": "string"\n },\n "provider": {\n "description": "Value for provider.",\n "properties": {\n "id": {\n "description": "Value for id.",\n "minLength": 1,\n "type": "string"\n },\n "name": {\n "description": "Exact name used by this operation.",\n "minLength": 1,\n "type": "string"\n },\n "version": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ],\n "description": "Value for version."\n }\n },\n "required": [\n "id",\n "name",\n "version"\n ],\n "type": "object"\n },\n "raw_result": {\n "anyOf": [\n {\n "$ref": "#/$defs/__schema0"\n },\n {\n "type": "null"\n }\n ],\n "description": "Value for raw result."\n },\n "subject": {\n "anyOf": [\n {\n "properties": {\n "architecture": {\n "anyOf": [\n {\n "enum": [\n "x86",\n "x86_64",\n "arm",\n "arm64"\n ],\n "type": "string"\n },\n {\n "type": "null"\n }\n ],\n "description": "Value for architecture."\n },\n "digest": {\n "description": "Value for digest.",\n "properties": {\n "sha256": {\n "description": "Value for sha256.",\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n }\n },\n "required": [\n "sha256"\n ],\n "type": "object"\n },\n "format": {\n "description": "Declared input artifact format.",\n "enum": [\n "hopper",\n "analysis-database",\n "mach-o",\n "elf",\n "pe",\n "dos-mz",\n "dos-com",\n "zip",\n "ipa",\n "apk",\n "msix",\n "appx",\n "asar",\n "dmg",\n "pkg",\n "plist",\n "javascript",\n "source-map",\n "directory",\n "file",\n "unknown",\n "mach-o-universal",\n "javascript-bundle",\n "entitlements"\n ],\n "type": "string"\n },\n "local_path": {\n "description": "Local filesystem path for local.",\n "type": "string"\n },\n "name": {\n "description": "Exact name used by this operation.",\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "name",\n "digest",\n "format",\n "architecture",\n "local_path"\n ],\n "type": "object"\n },\n {\n "type": "null"\n }\n ],\n "description": "Value for subject."\n }\n },\n "required": [\n "evidence_id",\n "subject",\n "provider",\n "predicate_type",\n "operation",\n "parameters",\n "raw_result",\n "normalized_result",\n "confidence",\n "authority",\n "environment",\n "limitations",\n "locations",\n "evidence_links"\n ],\n "type": "object"\n },\n "type": "array"\n }\n },\n "type": "object"\n },\n "kind": "session",\n "name": "find_changed_behavior",\n "outputSchema": {\n "$defs": {\n "__schema0": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "number"\n },\n {\n "type": "boolean"\n },\n {\n "type": "null"\n },\n {\n "items": {\n "$ref": "#/$defs/__schema0"\n },\n "type": "array"\n },\n {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n }\n ]\n }\n },\n "$schema": "https://json-schema.org/draft/2020-12/schema",\n "additionalProperties": false,\n "properties": {\n "evidence": {\n "additionalProperties": false,\n "properties": {\n "analysis_profile": {\n "additionalProperties": false,\n "properties": {\n "digest": {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n },\n "parameters": {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n },\n "provider": {\n "additionalProperties": false,\n "properties": {\n "id": {\n "minLength": 1,\n "type": "string"\n },\n "name": {\n "minLength": 1,\n "type": "string"\n },\n "version": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "id",\n "name",\n "version"\n ],\n "type": "object"\n }\n },\n "required": [\n "provider",\n "parameters",\n "digest"\n ],\n "type": "object"\n },\n "authority": {\n "enum": [\n "shipped-artifact",\n "controlled-replay",\n "historical-reference",\n "external-service",\n "analyst-inference"\n ],\n "type": "string"\n },\n "confidence": {\n "enum": [\n "observed",\n "derived",\n "inferred"\n ],\n "type": "string"\n },\n "environment": {\n "anyOf": [\n {\n "additionalProperties": false,\n "properties": {\n "architecture": {\n "minLength": 1,\n "type": "string"\n },\n "id": {\n "minLength": 1,\n "type": "string"\n },\n "isolation": {\n "enum": [\n "none",\n "process",\n "container",\n "virtual-machine"\n ],\n "type": "string"\n },\n "platform": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "id",\n "platform",\n "architecture",\n "isolation"\n ],\n "type": "object"\n },\n {\n "type": "null"\n }\n ]\n },\n "evidence_id": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "evidence_links": {\n "items": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "type": "array"\n },\n "limitations": {\n "items": {\n "type": "string"\n },\n "type": "array"\n },\n "locations": {\n "items": {\n "oneOf": [\n {\n "additionalProperties": false,\n "properties": {\n "address": {\n "minLength": 1,\n "type": "string"\n },\n "kind": {\n "const": "address",\n "type": "string"\n }\n },\n "required": [\n "kind",\n "address"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "end": {\n "minLength": 1,\n "type": "string"\n },\n "kind": {\n "const": "address-range",\n "type": "string"\n },\n "start": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "kind",\n "start",\n "end"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "kind": {\n "const": "artifact-path",\n "type": "string"\n },\n "path": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "kind",\n "path"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "kind": {\n "const": "file-offset",\n "type": "string"\n },\n "offset": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "kind",\n "offset"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "end": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "kind": {\n "const": "file-offset-range",\n "type": "string"\n },\n "start": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "kind",\n "start",\n "end"\n ],\n "type": "object"\n }\n ]\n },\n "type": "array"\n },\n "normalized_result": {\n "$ref": "#/$defs/__schema0"\n },\n "operation": {\n "minLength": 1,\n "type": "string"\n },\n "parameters": {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n },\n "predicate_type": {\n "minLength": 1,\n "type": "string"\n },\n "provider": {\n "additionalProperties": false,\n "properties": {\n "id": {\n "minLength": 1,\n "type": "string"\n },\n "name": {\n "minLength": 1,\n "type": "string"\n },\n "version": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "id",\n "name",\n "version"\n ],\n "type": "object"\n },\n "raw_result": {\n "anyOf": [\n {\n "$ref": "#/$defs/__schema0"\n },\n {\n "type": "null"\n }\n ]\n },\n "subject": {\n "anyOf": [\n {\n "additionalProperties": false,\n "properties": {\n "architecture": {\n "anyOf": [\n {\n "enum": [\n "x86",\n "x86_64",\n "arm",\n "arm64"\n ],\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "digest": {\n "additionalProperties": false,\n "properties": {\n "sha256": {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n }\n },\n "required": [\n "sha256"\n ],\n "type": "object"\n },\n "format": {\n "enum": [\n "hopper",\n "analysis-database",\n "mach-o",\n "elf",\n "pe",\n "dos-mz",\n "dos-com",\n "zip",\n "ipa",\n "apk",\n "msix",\n "appx",\n "asar",\n "dmg",\n "pkg",\n "plist",\n "javascript",\n "source-map",\n "directory",\n "file",\n "unknown",\n "mach-o-universal",\n "javascript-bundle",\n "entitlements"\n ],\n "type": "string"\n },\n "local_path": {\n "type": "string"\n },\n "name": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "name",\n "digest",\n "format",\n "architecture",\n "local_path"\n ],\n "type": "object"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "evidence_id",\n "subject",\n "provider",\n "predicate_type",\n "operation",\n "parameters",\n "raw_result",\n "normalized_result",\n "confidence",\n "authority",\n "environment",\n "limitations",\n "locations",\n "evidence_links"\n ],\n "type": "object"\n },\n "evidence_id": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "result": {\n "additionalProperties": false,\n "properties": {\n "behavior_status": {\n "enum": [\n "observed_changed",\n "observed_unchanged",\n "unknown",\n "truncated"\n ],\n "type": "string"\n },\n "evidence_links": {\n "items": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "minItems": 3,\n "type": "array"\n },\n "findings": {\n "additionalProperties": false,\n "properties": {\n "items": {\n "items": {\n "additionalProperties": false,\n "properties": {\n "classification": {\n "enum": [\n "observed_change",\n "derived_relationship",\n "contradiction",\n "unresolved_branch"\n ],\n "type": "string"\n },\n "dimension": {\n "minLength": 1,\n "type": "string"\n },\n "evidence_links": {\n "items": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "minItems": 3,\n "type": "array"\n },\n "limitations": {\n "items": {\n "type": "string"\n },\n "type": "array"\n },\n "scope": {\n "enum": [\n "runtime",\n "protocol",\n "resource",\n "static_candidate"\n ],\n "type": "string"\n },\n "source_comparison_id": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "status": {\n "enum": [\n "unchanged",\n "added",\n "removed",\n "changed",\n "truncated",\n "unknown",\n "contradiction"\n ],\n "type": "string"\n }\n },\n "required": [\n "scope",\n "dimension",\n "classification",\n "status",\n "source_comparison_id",\n "evidence_links",\n "limitations"\n ],\n "type": "object"\n },\n "type": "array"\n }\n },\n "required": [\n "items"\n ],\n "type": "object"\n },\n "limitations": {\n "items": {\n "type": "string"\n },\n "type": "array"\n },\n "summary": {\n "additionalProperties": false,\n "properties": {\n "contradictions": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "observed_changes": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "static_candidates": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "unresolved": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "observed_changes",\n "static_candidates",\n "contradictions",\n "unresolved"\n ],\n "type": "object"\n }\n },\n "required": [\n "behavior_status",\n "summary",\n "findings",\n "evidence_links",\n "limitations"\n ],\n "type": "object"\n }\n },\n "required": [\n "result",\n "evidence_id",\n "evidence"\n ],\n "type": "object"\n },\n "requiresSession": true,\n "title": "Find Changed Behavior"\n },\n {\n "analysisOperation": null,\n "annotations": {\n "destructiveHint": false,\n "idempotentHint": true,\n "openWorldHint": false,\n "readOnlyHint": false\n },\n "description": "Build every shortest direct-callee path inline from complete analyze_function Evidence records using exact canonical addresses. Missing dossiers and provider mixing remain unknown; every node and edge cites source Evidence.",\n "effects": {\n "accessesNetwork": false,\n "changesUiState": false,\n "idempotent": true,\n "launchesProcess": false,\n "mayDiscardData": false,\n "mutatesSession": true,\n "mutatesTarget": false,\n "writesFilesystem": false\n },\n "inputSchema": {\n "$defs": {\n "__schema0": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "number"\n },\n {\n "type": "boolean"\n },\n {\n "type": "null"\n },\n {\n "items": {\n "$ref": "#/$defs/__schema0"\n },\n "type": "array"\n },\n {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n }\n ]\n }\n },\n "$schema": "https://json-schema.org/draft/2020-12/schema",\n "examples": [\n {\n "functions": [\n {\n "authority": "shipped-artifact",\n "confidence": "derived",\n "environment": null,\n "evidence_id": "ev_fd7f0f3851d21e5284b47129d9c7142e2ebeb6ed1c5f91bcff18a781d0b24cb7",\n "evidence_links": [],\n "limitations": [],\n "locations": [],\n "normalized_result": {\n "assembly": [],\n "basic_blocks": [\n {\n "end": "0x1001",\n "start": "0x1000",\n "successors": []\n }\n ],\n "callees": [],\n "callers": [],\n "comments": [],\n "incoming_references": [],\n "outgoing_references": [],\n "procedure": {\n "address": "0x1000",\n "locals": [],\n "name": "main",\n "signature": "int main(void)"\n },\n "pseudocode": "return 0;",\n "referenced_names": [],\n "referenced_strings": []\n },\n "operation": "analyze_function",\n "parameters": {\n "procedure": "main"\n },\n "predicate_type": "rea.analysis",\n "provider": {\n "id": "rea-workflow",\n "name": "REA composed investigation workflow",\n "version": "1"\n },\n "raw_result": null,\n "subject": {\n "architecture": null,\n "digest": {\n "sha256": "0000000000000000000000000000000000000000000000000000000000000000"\n },\n "format": "mach-o",\n "local_path": "/tmp/function-0",\n "name": "function-0"\n }\n }\n ],\n "goal": {\n "address": "0x1000"\n },\n "start": {\n "address": "0x1000"\n }\n }\n ],\n "properties": {\n "functions": {\n "description": "Value for functions.",\n "items": {\n "additionalProperties": false,\n "properties": {\n "analysis_profile": {\n "description": "Value for analysis profile.",\n "properties": {\n "digest": {\n "description": "Value for digest.",\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n },\n "parameters": {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "description": "Value for parameters.",\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n },\n "provider": {\n "description": "Value for provider.",\n "properties": {\n "id": {\n "description": "Value for id.",\n "minLength": 1,\n "type": "string"\n },\n "name": {\n "description": "Exact name used by this operation.",\n "minLength": 1,\n "type": "string"\n },\n "version": {\n "description": "Value for version.",\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "id",\n "name",\n "version"\n ],\n "type": "object"\n }\n },\n "required": [\n "provider",\n "parameters",\n "digest"\n ],\n "type": "object"\n },\n "authority": {\n "description": "Value for authority.",\n "enum": [\n "shipped-artifact",\n "controlled-replay",\n "historical-reference",\n "external-service",\n "analyst-inference"\n ],\n "type": "string"\n },\n "confidence": {\n "description": "Value for confidence.",\n "enum": [\n "observed",\n "derived",\n "inferred"\n ],\n "type": "string"\n },\n "environment": {\n "anyOf": [\n {\n "properties": {\n "architecture": {\n "description": "Value for architecture.",\n "minLength": 1,\n "type": "string"\n },\n "id": {\n "description": "Value for id.",\n "minLength": 1,\n "type": "string"\n },\n "isolation": {\n "description": "Value for isolation.",\n "enum": [\n "none",\n "process",\n "container",\n "virtual-machine"\n ],\n "type": "string"\n },\n "platform": {\n "description": "Value for platform.",\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "id",\n "platform",\n "architecture",\n "isolation"\n ],\n "type": "object"\n },\n {\n "type": "null"\n }\n ],\n "description": "Value for environment."\n },\n "evidence_id": {\n "description": "Stable identifier of the recorded Evidence observation.",\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "evidence_links": {\n "description": "Value for evidence links.",\n "items": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "type": "array"\n },\n "limitations": {\n "description": "Value for limitations.",\n "items": {\n "type": "string"\n },\n "type": "array"\n },\n "locations": {\n "description": "Value for locations.",\n "items": {\n "oneOf": [\n {\n "properties": {\n "address": {\n "description": "Value for address.",\n "minLength": 1,\n "type": "string"\n },\n "kind": {\n "const": "address",\n "description": "Value for kind.",\n "type": "string"\n }\n },\n "required": [\n "kind",\n "address"\n ],\n "type": "object"\n },\n {\n "properties": {\n "end": {\n "description": "Value for end.",\n "minLength": 1,\n "type": "string"\n },\n "kind": {\n "const": "address-range",\n "description": "Value for kind.",\n "type": "string"\n },\n "start": {\n "description": "Value for start.",\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "kind",\n "start",\n "end"\n ],\n "type": "object"\n },\n {\n "properties": {\n "kind": {\n "const": "artifact-path",\n "description": "Value for kind.",\n "type": "string"\n },\n "path": {\n "description": "Local filesystem path used by this operation.",\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "kind",\n "path"\n ],\n "type": "object"\n },\n {\n "properties": {\n "kind": {\n "const": "file-offset",\n "description": "Value for kind.",\n "type": "string"\n },\n "offset": {\n "description": "Value for offset.",\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "kind",\n "offset"\n ],\n "type": "object"\n },\n {\n "properties": {\n "end": {\n "description": "Value for end.",\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "kind": {\n "const": "file-offset-range",\n "description": "Value for kind.",\n "type": "string"\n },\n "start": {\n "description": "Value for start.",\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "kind",\n "start",\n "end"\n ],\n "type": "object"\n }\n ]\n },\n "type": "array"\n },\n "normalized_result": {\n "$ref": "#/$defs/__schema0",\n "description": "Value for normalized result."\n },\n "operation": {\n "description": "Value for operation.",\n "minLength": 1,\n "type": "string"\n },\n "parameters": {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "description": "Value for parameters.",\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n },\n "predicate_type": {\n "description": "Value for predicate type.",\n "minLength": 1,\n "type": "string"\n },\n "provider": {\n "description": "Value for provider.",\n "properties": {\n "id": {\n "description": "Value for id.",\n "minLength": 1,\n "type": "string"\n },\n "name": {\n "description": "Exact name used by this operation.",\n "minLength": 1,\n "type": "string"\n },\n "version": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ],\n "description": "Value for version."\n }\n },\n "required": [\n "id",\n "name",\n "version"\n ],\n "type": "object"\n },\n "raw_result": {\n "anyOf": [\n {\n "$ref": "#/$defs/__schema0"\n },\n {\n "type": "null"\n }\n ],\n "description": "Value for raw result."\n },\n "subject": {\n "anyOf": [\n {\n "properties": {\n "architecture": {\n "anyOf": [\n {\n "enum": [\n "x86",\n "x86_64",\n "arm",\n "arm64"\n ],\n "type": "string"\n },\n {\n "type": "null"\n }\n ],\n "description": "Value for architecture."\n },\n "digest": {\n "description": "Value for digest.",\n "properties": {\n "sha256": {\n "description": "Value for sha256.",\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n }\n },\n "required": [\n "sha256"\n ],\n "type": "object"\n },\n "format": {\n "description": "Declared input artifact format.",\n "enum": [\n "hopper",\n "analysis-database",\n "mach-o",\n "elf",\n "pe",\n "dos-mz",\n "dos-com",\n "zip",\n "ipa",\n "apk",\n "msix",\n "appx",\n "asar",\n "dmg",\n "pkg",\n "plist",\n "javascript",\n "source-map",\n "directory",\n "file",\n "unknown",\n "mach-o-universal",\n "javascript-bundle",\n "entitlements"\n ],\n "type": "string"\n },\n "local_path": {\n "description": "Local filesystem path for local.",\n "type": "string"\n },\n "name": {\n "description": "Exact name used by this operation.",\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "name",\n "digest",\n "format",\n "architecture",\n "local_path"\n ],\n "type": "object"\n },\n {\n "type": "null"\n }\n ],\n "description": "Value for subject."\n }\n },\n "required": [\n "evidence_id",\n "subject",\n "provider",\n "predicate_type",\n "operation",\n "parameters",\n "raw_result",\n "normalized_result",\n "confidence",\n "authority",\n "environment",\n "limitations",\n "locations",\n "evidence_links"\n ],\n "type": "object"\n },\n "minItems": 1,\n "type": "array"\n },\n "goal": {\n "additionalProperties": false,\n "description": "Value for goal.",\n "properties": {\n "address": {\n "description": "Value for address.",\n "pattern": "^(?:(?:[A-Za-z0-9._~-]|%[0-9a-fA-F]{2})+:)?0[xX][0-9a-fA-F]+$",\n "type": "string"\n }\n },\n "required": [\n "address"\n ],\n "type": "object"\n },\n "start": {\n "additionalProperties": false,\n "description": "Value for start.",\n "properties": {\n "address": {\n "description": "Value for address.",\n "pattern": "^(?:(?:[A-Za-z0-9._~-]|%[0-9a-fA-F]{2})+:)?0[xX][0-9a-fA-F]+$",\n "type": "string"\n }\n },\n "required": [\n "address"\n ],\n "type": "object"\n }\n },\n "required": [\n "functions",\n "start",\n "goal"\n ],\n "type": "object"\n },\n "kind": "session",\n "name": "build_call_path",\n "outputSchema": {\n "$defs": {\n "__schema0": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "number"\n },\n {\n "type": "boolean"\n },\n {\n "type": "null"\n },\n {\n "items": {\n "$ref": "#/$defs/__schema0"\n },\n "type": "array"\n },\n {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n }\n ]\n }\n },\n "$schema": "https://json-schema.org/draft/2020-12/schema",\n "additionalProperties": false,\n "properties": {\n "evidence": {\n "additionalProperties": false,\n "properties": {\n "analysis_profile": {\n "additionalProperties": false,\n "properties": {\n "digest": {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n },\n "parameters": {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n },\n "provider": {\n "additionalProperties": false,\n "properties": {\n "id": {\n "minLength": 1,\n "type": "string"\n },\n "name": {\n "minLength": 1,\n "type": "string"\n },\n "version": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "id",\n "name",\n "version"\n ],\n "type": "object"\n }\n },\n "required": [\n "provider",\n "parameters",\n "digest"\n ],\n "type": "object"\n },\n "authority": {\n "enum": [\n "shipped-artifact",\n "controlled-replay",\n "historical-reference",\n "external-service",\n "analyst-inference"\n ],\n "type": "string"\n },\n "confidence": {\n "enum": [\n "observed",\n "derived",\n "inferred"\n ],\n "type": "string"\n },\n "environment": {\n "anyOf": [\n {\n "additionalProperties": false,\n "properties": {\n "architecture": {\n "minLength": 1,\n "type": "string"\n },\n "id": {\n "minLength": 1,\n "type": "string"\n },\n "isolation": {\n "enum": [\n "none",\n "process",\n "container",\n "virtual-machine"\n ],\n "type": "string"\n },\n "platform": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "id",\n "platform",\n "architecture",\n "isolation"\n ],\n "type": "object"\n },\n {\n "type": "null"\n }\n ]\n },\n "evidence_id": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "evidence_links": {\n "items": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "type": "array"\n },\n "limitations": {\n "items": {\n "type": "string"\n },\n "type": "array"\n },\n "locations": {\n "items": {\n "oneOf": [\n {\n "additionalProperties": false,\n "properties": {\n "address": {\n "minLength": 1,\n "type": "string"\n },\n "kind": {\n "const": "address",\n "type": "string"\n }\n },\n "required": [\n "kind",\n "address"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "end": {\n "minLength": 1,\n "type": "string"\n },\n "kind": {\n "const": "address-range",\n "type": "string"\n },\n "start": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "kind",\n "start",\n "end"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "kind": {\n "const": "artifact-path",\n "type": "string"\n },\n "path": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "kind",\n "path"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "kind": {\n "const": "file-offset",\n "type": "string"\n },\n "offset": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "kind",\n "offset"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "end": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "kind": {\n "const": "file-offset-range",\n "type": "string"\n },\n "start": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "kind",\n "start",\n "end"\n ],\n "type": "object"\n }\n ]\n },\n "type": "array"\n },\n "normalized_result": {\n "$ref": "#/$defs/__schema0"\n },\n "operation": {\n "minLength": 1,\n "type": "string"\n },\n "parameters": {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n },\n "predicate_type": {\n "minLength": 1,\n "type": "string"\n },\n "provider": {\n "additionalProperties": false,\n "properties": {\n "id": {\n "minLength": 1,\n "type": "string"\n },\n "name": {\n "minLength": 1,\n "type": "string"\n },\n "version": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "id",\n "name",\n "version"\n ],\n "type": "object"\n },\n "raw_result": {\n "anyOf": [\n {\n "$ref": "#/$defs/__schema0"\n },\n {\n "type": "null"\n }\n ]\n },\n "subject": {\n "anyOf": [\n {\n "additionalProperties": false,\n "properties": {\n "architecture": {\n "anyOf": [\n {\n "enum": [\n "x86",\n "x86_64",\n "arm",\n "arm64"\n ],\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "digest": {\n "additionalProperties": false,\n "properties": {\n "sha256": {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n }\n },\n "required": [\n "sha256"\n ],\n "type": "object"\n },\n "format": {\n "enum": [\n "hopper",\n "analysis-database",\n "mach-o",\n "elf",\n "pe",\n "dos-mz",\n "dos-com",\n "zip",\n "ipa",\n "apk",\n "msix",\n "appx",\n "asar",\n "dmg",\n "pkg",\n "plist",\n "javascript",\n "source-map",\n "directory",\n "file",\n "unknown",\n "mach-o-universal",\n "javascript-bundle",\n "entitlements"\n ],\n "type": "string"\n },\n "local_path": {\n "type": "string"\n },\n "name": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "name",\n "digest",\n "format",\n "architecture",\n "local_path"\n ],\n "type": "object"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "evidence_id",\n "subject",\n "provider",\n "predicate_type",\n "operation",\n "parameters",\n "raw_result",\n "normalized_result",\n "confidence",\n "authority",\n "environment",\n "limitations",\n "locations",\n "evidence_links"\n ],\n "type": "object"\n },\n "evidence_id": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "result": {\n "anyOf": [\n {\n "additionalProperties": false,\n "properties": {\n "evidence_links": {\n "items": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "minItems": 1,\n "type": "array"\n },\n "explored": {\n "additionalProperties": false,\n "properties": {\n "depth_reached": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "edges": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "nodes": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "nodes",\n "edges",\n "depth_reached"\n ],\n "type": "object"\n },\n "goal": {\n "pattern": "^(?:(?:[A-Za-z0-9._~-]|%[0-9A-F]{2})+:)?0x(?:0|[1-9a-f][0-9a-f]*)$",\n "type": "string"\n },\n "limitations": {\n "items": {\n "type": "string"\n },\n "type": "array"\n },\n "paths": {\n "items": {\n "additionalProperties": false,\n "properties": {\n "edges": {\n "items": {\n "additionalProperties": false,\n "properties": {\n "evidence_links": {\n "items": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "minItems": 1,\n "type": "array"\n },\n "source": {\n "pattern": "^(?:(?:[A-Za-z0-9._~-]|%[0-9A-F]{2})+:)?0x(?:0|[1-9a-f][0-9a-f]*)$",\n "type": "string"\n },\n "target": {\n "pattern": "^(?:(?:[A-Za-z0-9._~-]|%[0-9A-F]{2})+:)?0x(?:0|[1-9a-f][0-9a-f]*)$",\n "type": "string"\n }\n },\n "required": [\n "source",\n "target",\n "evidence_links"\n ],\n "type": "object"\n },\n "type": "array"\n },\n "evidence_links": {\n "items": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "minItems": 1,\n "type": "array"\n },\n "hops": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "nodes": {\n "items": {\n "additionalProperties": false,\n "properties": {\n "address": {\n "pattern": "^(?:(?:[A-Za-z0-9._~-]|%[0-9A-F]{2})+:)?0x(?:0|[1-9a-f][0-9a-f]*)$",\n "type": "string"\n },\n "evidence_links": {\n "items": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "minItems": 1,\n "type": "array"\n },\n "name": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "address",\n "name",\n "evidence_links"\n ],\n "type": "object"\n },\n "minItems": 1,\n "type": "array"\n }\n },\n "required": [\n "hops",\n "nodes",\n "edges",\n "evidence_links"\n ],\n "type": "object"\n },\n "minItems": 1,\n "type": "array"\n },\n "search_scope": {\n "additionalProperties": false,\n "properties": {\n "exhaustive": {\n "type": "boolean"\n }\n },\n "required": [\n "exhaustive"\n ],\n "type": "object"\n },\n "shortest_hops": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "start": {\n "pattern": "^(?:(?:[A-Za-z0-9._~-]|%[0-9A-F]{2})+:)?0x(?:0|[1-9a-f][0-9a-f]*)$",\n "type": "string"\n },\n "status": {\n "const": "found",\n "type": "string"\n }\n },\n "required": [\n "start",\n "goal",\n "explored",\n "evidence_links",\n "limitations",\n "status",\n "shortest_hops",\n "search_scope",\n "paths"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "evidence_links": {\n "items": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "minItems": 1,\n "type": "array"\n },\n "explored": {\n "additionalProperties": false,\n "properties": {\n "depth_reached": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "edges": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "nodes": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "nodes",\n "edges",\n "depth_reached"\n ],\n "type": "object"\n },\n "goal": {\n "pattern": "^(?:(?:[A-Za-z0-9._~-]|%[0-9A-F]{2})+:)?0x(?:0|[1-9a-f][0-9a-f]*)$",\n "type": "string"\n },\n "limitations": {\n "items": {\n "type": "string"\n },\n "type": "array"\n },\n "paths": {\n "items": {\n "not": {}\n },\n "maxItems": 0,\n "minItems": 0,\n "type": "array"\n },\n "search_scope": {\n "additionalProperties": false,\n "properties": {\n "exhaustive": {\n "const": true,\n "type": "boolean"\n }\n },\n "required": [\n "exhaustive"\n ],\n "type": "object"\n },\n "shortest_hops": {\n "type": "null"\n },\n "start": {\n "pattern": "^(?:(?:[A-Za-z0-9._~-]|%[0-9A-F]{2})+:)?0x(?:0|[1-9a-f][0-9a-f]*)$",\n "type": "string"\n },\n "status": {\n "const": "not_found",\n "type": "string"\n }\n },\n "required": [\n "start",\n "goal",\n "explored",\n "evidence_links",\n "limitations",\n "status",\n "shortest_hops",\n "search_scope",\n "paths"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "evidence_links": {\n "items": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "minItems": 1,\n "type": "array"\n },\n "explored": {\n "additionalProperties": false,\n "properties": {\n "depth_reached": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "edges": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "nodes": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "nodes",\n "edges",\n "depth_reached"\n ],\n "type": "object"\n },\n "goal": {\n "pattern": "^(?:(?:[A-Za-z0-9._~-]|%[0-9A-F]{2})+:)?0x(?:0|[1-9a-f][0-9a-f]*)$",\n "type": "string"\n },\n "limitations": {\n "items": {\n "type": "string"\n },\n "type": "array"\n },\n "paths": {\n "items": {\n "not": {}\n },\n "maxItems": 0,\n "minItems": 0,\n "type": "array"\n },\n "search_scope": {\n "additionalProperties": false,\n "properties": {\n "exhaustive": {\n "const": false,\n "type": "boolean"\n }\n },\n "required": [\n "exhaustive"\n ],\n "type": "object"\n },\n "shortest_hops": {\n "type": "null"\n },\n "start": {\n "pattern": "^(?:(?:[A-Za-z0-9._~-]|%[0-9A-F]{2})+:)?0x(?:0|[1-9a-f][0-9a-f]*)$",\n "type": "string"\n },\n "status": {\n "const": "unknown",\n "type": "string"\n }\n },\n "required": [\n "start",\n "goal",\n "explored",\n "evidence_links",\n "limitations",\n "status",\n "shortest_hops",\n "search_scope",\n "paths"\n ],\n "type": "object"\n }\n ]\n }\n },\n "required": [\n "result",\n "evidence_id",\n "evidence"\n ],\n "type": "object"\n },\n "requiresSession": true,\n "title": "Build Call Path"\n },\n {\n "analysisOperation": null,\n "annotations": {\n "destructiveHint": false,\n "idempotentHint": true,\n "openWorldHint": false,\n "readOnlyHint": false\n },\n "description": "Evaluate every explicit caller-declared hypothesis 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. Returns all correlations and their complete Evidence closure inline.",\n "effects": {\n "accessesNetwork": false,\n "changesUiState": false,\n "idempotent": true,\n "launchesProcess": false,\n "mayDiscardData": false,\n "mutatesSession": true,\n "mutatesTarget": false,\n "writesFilesystem": false\n },\n "inputSchema": {\n "$defs": {\n "__schema0": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "number"\n },\n {\n "type": "boolean"\n },\n {\n "type": "null"\n },\n {\n "items": {\n "$ref": "#/$defs/__schema0"\n },\n "type": "array"\n },\n {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n }\n ]\n }\n },\n "$schema": "https://json-schema.org/draft/2020-12/schema",\n "additionalProperties": false,\n "examples": [\n {\n "mappings": [\n {\n "hypothesis": {\n "expected_pattern": "static_only",\n "statement": "Static implementation changed without terminal change."\n },\n "runtime": {\n "comparison_evidence_id": "ev_7b90781a4b4c9006d4eee122009b3baed342e442ad2ad62498bf9e7df850355c",\n "dimension": "terminal"\n },\n "side_alignment": "left_to_left",\n "static": {\n "comparison_evidence_id": "ev_cc8049f629a9318e985bee4a547c0ec6646e9d3c2cbbabf4ac9b3758bc3ede86",\n "selector": {\n "dimension": "pseudocode",\n "kind": "function"\n }\n }\n }\n ],\n "runtime_comparisons": [\n {\n "authority": "analyst-inference",\n "confidence": "derived",\n "environment": null,\n "evidence_id": "ev_7b90781a4b4c9006d4eee122009b3baed342e442ad2ad62498bf9e7df850355c",\n "evidence_links": [\n "ev_39dc6ca57fd8d981c0bce63a1de75dd752e0ae47ff911440949cba8f6a8f1b7c",\n "ev_434bd49ec7096a6a955adb869d0f38ae3cb62f1256376ca87ca7ca983e5ef538"\n ],\n "limitations": [\n "Artifact identity is unavailable for this observation."\n ],\n "locations": [],\n "normalized_result": {\n "exit": "unchanged",\n "filesystem": "unchanged",\n "first_divergence": {\n "status": "none"\n },\n "interaction": "unchanged",\n "limitations": [],\n "process": "unchanged",\n "status": "unchanged",\n "terminal": "unchanged"\n },\n "operation": "compare_process_captures",\n "parameters": {\n "left_evidence_id": "ev_39dc6ca57fd8d981c0bce63a1de75dd752e0ae47ff911440949cba8f6a8f1b7c",\n "left_normalization": {\n "paths": true,\n "patterns": [],\n "pids": true,\n "ports": true,\n "time_bucket_ms": 10\n },\n "right_evidence_id": "ev_434bd49ec7096a6a955adb869d0f38ae3cb62f1256376ca87ca7ca983e5ef538",\n "right_normalization": {\n "paths": true,\n "patterns": [],\n "pids": true,\n "ports": true,\n "time_bucket_ms": 10\n }\n },\n "predicate_type": "rea.process-comparison",\n "provider": {\n "id": "rea-process",\n "name": "REA deterministic process harness",\n "version": "3"\n },\n "raw_result": null,\n "subject": null\n }\n ],\n "static_comparisons": [\n {\n "authority": "analyst-inference",\n "confidence": "derived",\n "environment": null,\n "evidence_id": "ev_cc8049f629a9318e985bee4a547c0ec6646e9d3c2cbbabf4ac9b3758bc3ede86",\n "evidence_links": [\n "ev_fd7f0f3851d21e5284b47129d9c7142e2ebeb6ed1c5f91bcff18a781d0b24cb7",\n "ev_79f87eddd8df1d59c6f2e2cd99f21bfae2e5a22fd26c5bf0d0b9ccf9e24b0522"\n ],\n "limitations": [\n "Artifact identity is unavailable for this observation."\n ],\n "locations": [],\n "normalized_result": {\n "changes": [\n {\n "conclusion_kind": "derived_relationship",\n "dimension": "pseudocode",\n "evidence_links": [\n "ev_fd7f0f3851d21e5284b47129d9c7142e2ebeb6ed1c5f91bcff18a781d0b24cb7",\n "ev_79f87eddd8df1d59c6f2e2cd99f21bfae2e5a22fd26c5bf0d0b9ccf9e24b0522"\n ],\n "left_count": 9,\n "left_digest": "64abdfe133a114158fa0e185d0edec784e6ccf13a166a0fed8bc18bb0cc72554",\n "limitations": [],\n "right_count": 9,\n "right_digest": "c8e26d77640903b2d4c765ebcb7f7170b64dd320dd3911abbe8346e07cd593d1",\n "status": "changed",\n "text_delta": {\n "added_lines": 1,\n "hunks": 2,\n "removed_lines": 1\n }\n }\n ],\n "dimensions": [\n {\n "conclusion_kind": "derived_relationship",\n "dimension": "identity",\n "evidence_links": [\n "ev_fd7f0f3851d21e5284b47129d9c7142e2ebeb6ed1c5f91bcff18a781d0b24cb7",\n "ev_79f87eddd8df1d59c6f2e2cd99f21bfae2e5a22fd26c5bf0d0b9ccf9e24b0522"\n ],\n "left_count": null,\n "left_digest": "dd190a914de1bdf8f4bba97a2e74b439585874c567f28eb0ff41bc5388c66d65",\n "limitations": [],\n "right_count": null,\n "right_digest": "dd190a914de1bdf8f4bba97a2e74b439585874c567f28eb0ff41bc5388c66d65",\n "status": "unchanged",\n "text_delta": null\n },\n {\n "conclusion_kind": "derived_relationship",\n "dimension": "pseudocode",\n "evidence_links": [\n "ev_fd7f0f3851d21e5284b47129d9c7142e2ebeb6ed1c5f91bcff18a781d0b24cb7",\n "ev_79f87eddd8df1d59c6f2e2cd99f21bfae2e5a22fd26c5bf0d0b9ccf9e24b0522"\n ],\n "left_count": 9,\n "left_digest": "64abdfe133a114158fa0e185d0edec784e6ccf13a166a0fed8bc18bb0cc72554",\n "limitations": [],\n "right_count": 9,\n "right_digest": "c8e26d77640903b2d4c765ebcb7f7170b64dd320dd3911abbe8346e07cd593d1",\n "status": "changed",\n "text_delta": {\n "added_lines": 1,\n "hunks": 2,\n "removed_lines": 1\n }\n },\n {\n "conclusion_kind": "derived_relationship",\n "dimension": "assembly",\n "evidence_links": [\n "ev_fd7f0f3851d21e5284b47129d9c7142e2ebeb6ed1c5f91bcff18a781d0b24cb7",\n "ev_79f87eddd8df1d59c6f2e2cd99f21bfae2e5a22fd26c5bf0d0b9ccf9e24b0522"\n ],\n "left_count": 0,\n "left_digest": "12ae32cb1ec02d01eda3581b127c1fee3b0dc53572ed6baf239721a03d82e126",\n "limitations": [\n "Assembly is opaque provider text; relocation normalization is unavailable."\n ],\n "right_count": 0,\n "right_digest": "12ae32cb1ec02d01eda3581b127c1fee3b0dc53572ed6baf239721a03d82e126",\n "status": "unchanged",\n "text_delta": {\n "added_lines": 0,\n "hunks": 0,\n "removed_lines": 0\n }\n },\n {\n "conclusion_kind": "derived_relationship",\n "dimension": "comments",\n "evidence_links": [\n "ev_fd7f0f3851d21e5284b47129d9c7142e2ebeb6ed1c5f91bcff18a781d0b24cb7",\n "ev_79f87eddd8df1d59c6f2e2cd99f21bfae2e5a22fd26c5bf0d0b9ccf9e24b0522"\n ],\n "left_count": 0,\n "left_digest": "4f53cda18c2baa0c0354bb5f9a3ecbe5ed12ab4d8e11ba873c2f11161202b945",\n "limitations": [],\n "right_count": 0,\n "right_digest": "4f53cda18c2baa0c0354bb5f9a3ecbe5ed12ab4d8e11ba873c2f11161202b945",\n "status": "unchanged",\n "text_delta": null\n },\n {\n "conclusion_kind": "derived_relationship",\n "dimension": "calls",\n "evidence_links": [\n "ev_fd7f0f3851d21e5284b47129d9c7142e2ebeb6ed1c5f91bcff18a781d0b24cb7",\n "ev_79f87eddd8df1d59c6f2e2cd99f21bfae2e5a22fd26c5bf0d0b9ccf9e24b0522"\n ],\n "left_count": 0,\n "left_digest": "4f53cda18c2baa0c0354bb5f9a3ecbe5ed12ab4d8e11ba873c2f11161202b945",\n "limitations": [],\n "right_count": 0,\n "right_digest": "4f53cda18c2baa0c0354bb5f9a3ecbe5ed12ab4d8e11ba873c2f11161202b945",\n "status": "unchanged",\n "text_delta": null\n },\n {\n "conclusion_kind": "derived_relationship",\n "dimension": "references",\n "evidence_links": [\n "ev_fd7f0f3851d21e5284b47129d9c7142e2ebeb6ed1c5f91bcff18a781d0b24cb7",\n "ev_79f87eddd8df1d59c6f2e2cd99f21bfae2e5a22fd26c5bf0d0b9ccf9e24b0522"\n ],\n "left_count": 0,\n "left_digest": "4f53cda18c2baa0c0354bb5f9a3ecbe5ed12ab4d8e11ba873c2f11161202b945",\n "limitations": [],\n "right_count": 0,\n "right_digest": "4f53cda18c2baa0c0354bb5f9a3ecbe5ed12ab4d8e11ba873c2f11161202b945",\n "status": "unchanged",\n "text_delta": null\n },\n {\n "conclusion_kind": "derived_relationship",\n "dimension": "strings_names",\n "evidence_links": [\n "ev_fd7f0f3851d21e5284b47129d9c7142e2ebeb6ed1c5f91bcff18a781d0b24cb7",\n "ev_79f87eddd8df1d59c6f2e2cd99f21bfae2e5a22fd26c5bf0d0b9ccf9e24b0522"\n ],\n "left_count": 0,\n "left_digest": "4f53cda18c2baa0c0354bb5f9a3ecbe5ed12ab4d8e11ba873c2f11161202b945",\n "limitations": [],\n "right_count": 0,\n "right_digest": "4f53cda18c2baa0c0354bb5f9a3ecbe5ed12ab4d8e11ba873c2f11161202b945",\n "status": "unchanged",\n "text_delta": null\n },\n {\n "conclusion_kind": "derived_relationship",\n "dimension": "cfg",\n "evidence_links": [\n "ev_fd7f0f3851d21e5284b47129d9c7142e2ebeb6ed1c5f91bcff18a781d0b24cb7",\n "ev_79f87eddd8df1d59c6f2e2cd99f21bfae2e5a22fd26c5bf0d0b9ccf9e24b0522"\n ],\n "left_count": 1,\n "left_digest": "e947121f0d4cb8d2a2468a75a44872a29aa1239e6401712df80cfa36bf7df7a0",\n "limitations": [],\n "right_count": 1,\n "right_digest": "e947121f0d4cb8d2a2468a75a44872a29aa1239e6401712df80cfa36bf7df7a0",\n "status": "unchanged",\n "text_delta": null\n }\n ],\n "function_match": {\n "left_name": "main",\n "method": "symbol",\n "right_name": "main",\n "status": "matched"\n },\n "left_subject_sha256": "0000000000000000000000000000000000000000000000000000000000000000",\n "limitations": [],\n "right_subject_sha256": "1111111111111111111111111111111111111111111111111111111111111111",\n "status": "changed",\n "summary": {\n "changed": 1,\n "truncated": 0,\n "unchanged": 7,\n "unknown": 0\n }\n },\n "operation": "compare_functions",\n "parameters": {\n "left_evidence_id": "ev_fd7f0f3851d21e5284b47129d9c7142e2ebeb6ed1c5f91bcff18a781d0b24cb7",\n "right_evidence_id": "ev_79f87eddd8df1d59c6f2e2cd99f21bfae2e5a22fd26c5bf0d0b9ccf9e24b0522"\n },\n "predicate_type": "rea.function-comparison",\n "provider": {\n "id": "rea-function-comparison",\n "name": "REA function comparison",\n "version": "1"\n },\n "raw_result": null,\n "subject": null\n }\n ]\n }\n ],\n "properties": {\n "mappings": {\n "description": "Value for mappings.",\n "items": {\n "additionalProperties": false,\n "properties": {\n "hypothesis": {\n "additionalProperties": false,\n "description": "Value for hypothesis.",\n "properties": {\n "expected_pattern": {\n "description": "Expected pattern used to reject stale or mismatched input.",\n "enum": [\n "cochanged",\n "static_only",\n "runtime_only",\n "both_unchanged"\n ],\n "type": "string"\n },\n "statement": {\n "description": "Value for statement.",\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "statement",\n "expected_pattern"\n ],\n "type": "object"\n },\n "runtime": {\n "additionalProperties": false,\n "description": "Value for runtime.",\n "properties": {\n "comparison_evidence_id": {\n "description": "Exact Evidence identifier for the comparison observation.",\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "dimension": {\n "description": "Value for dimension.",\n "enum": [\n "terminal",\n "interaction",\n "exit",\n "filesystem",\n "process"\n ],\n "type": "string"\n }\n },\n "required": [\n "comparison_evidence_id",\n "dimension"\n ],\n "type": "object"\n },\n "side_alignment": {\n "description": "Value for side alignment.",\n "enum": [\n "left_to_left",\n "left_to_right"\n ],\n "type": "string"\n },\n "static": {\n "additionalProperties": false,\n "description": "Value for static.",\n "properties": {\n "comparison_evidence_id": {\n "description": "Exact Evidence identifier for the comparison observation.",\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "selector": {\n "description": "Value for selector.",\n "oneOf": [\n {\n "additionalProperties": false,\n "properties": {\n "kind": {\n "const": "artifact",\n "description": "Value for kind.",\n "type": "string"\n },\n "logical_path": {\n "description": "Local filesystem path for logical.",\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "kind",\n "logical_path"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "dimension": {\n "description": "Value for dimension.",\n "enum": [\n "identity",\n "pseudocode",\n "assembly",\n "comments",\n "calls",\n "references",\n "strings_names",\n "cfg"\n ],\n "type": "string"\n },\n "kind": {\n "const": "function",\n "description": "Value for kind.",\n "type": "string"\n }\n },\n "required": [\n "kind",\n "dimension"\n ],\n "type": "object"\n }\n ]\n }\n },\n "required": [\n "comparison_evidence_id",\n "selector"\n ],\n "type": "object"\n }\n },\n "required": [\n "static",\n "runtime",\n "side_alignment",\n "hypothesis"\n ],\n "type": "object"\n },\n "minItems": 1,\n "type": "array"\n },\n "runtime_comparisons": {\n "description": "Value for runtime comparisons.",\n "items": {\n "additionalProperties": false,\n "properties": {\n "analysis_profile": {\n "description": "Value for analysis profile.",\n "properties": {\n "digest": {\n "description": "Value for digest.",\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n },\n "parameters": {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "description": "Value for parameters.",\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n },\n "provider": {\n "description": "Value for provider.",\n "properties": {\n "id": {\n "description": "Value for id.",\n "minLength": 1,\n "type": "string"\n },\n "name": {\n "description": "Exact name used by this operation.",\n "minLength": 1,\n "type": "string"\n },\n "version": {\n "description": "Value for version.",\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "id",\n "name",\n "version"\n ],\n "type": "object"\n }\n },\n "required": [\n "provider",\n "parameters",\n "digest"\n ],\n "type": "object"\n },\n "authority": {\n "description": "Value for authority.",\n "enum": [\n "shipped-artifact",\n "controlled-replay",\n "historical-reference",\n "external-service",\n "analyst-inference"\n ],\n "type": "string"\n },\n "confidence": {\n "description": "Value for confidence.",\n "enum": [\n "observed",\n "derived",\n "inferred"\n ],\n "type": "string"\n },\n "environment": {\n "anyOf": [\n {\n "properties": {\n "architecture": {\n "description": "Value for architecture.",\n "minLength": 1,\n "type": "string"\n },\n "id": {\n "description": "Value for id.",\n "minLength": 1,\n "type": "string"\n },\n "isolation": {\n "description": "Value for isolation.",\n "enum": [\n "none",\n "process",\n "container",\n "virtual-machine"\n ],\n "type": "string"\n },\n "platform": {\n "description": "Value for platform.",\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "id",\n "platform",\n "architecture",\n "isolation"\n ],\n "type": "object"\n },\n {\n "type": "null"\n }\n ],\n "description": "Value for environment."\n },\n "evidence_id": {\n "description": "Stable identifier of the recorded Evidence observation.",\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "evidence_links": {\n "description": "Value for evidence links.",\n "items": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "type": "array"\n },\n "limitations": {\n "description": "Value for limitations.",\n "items": {\n "type": "string"\n },\n "type": "array"\n },\n "locations": {\n "description": "Value for locations.",\n "items": {\n "oneOf": [\n {\n "properties": {\n "address": {\n "description": "Value for address.",\n "minLength": 1,\n "type": "string"\n },\n "kind": {\n "const": "address",\n "description": "Value for kind.",\n "type": "string"\n }\n },\n "required": [\n "kind",\n "address"\n ],\n "type": "object"\n },\n {\n "properties": {\n "end": {\n "description": "Value for end.",\n "minLength": 1,\n "type": "string"\n },\n "kind": {\n "const": "address-range",\n "description": "Value for kind.",\n "type": "string"\n },\n "start": {\n "description": "Value for start.",\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "kind",\n "start",\n "end"\n ],\n "type": "object"\n },\n {\n "properties": {\n "kind": {\n "const": "artifact-path",\n "description": "Value for kind.",\n "type": "string"\n },\n "path": {\n "description": "Local filesystem path used by this operation.",\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "kind",\n "path"\n ],\n "type": "object"\n },\n {\n "properties": {\n "kind": {\n "const": "file-offset",\n "description": "Value for kind.",\n "type": "string"\n },\n "offset": {\n "description": "Value for offset.",\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "kind",\n "offset"\n ],\n "type": "object"\n },\n {\n "properties": {\n "end": {\n "description": "Value for end.",\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "kind": {\n "const": "file-offset-range",\n "description": "Value for kind.",\n "type": "string"\n },\n "start": {\n "description": "Value for start.",\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "kind",\n "start",\n "end"\n ],\n "type": "object"\n }\n ]\n },\n "type": "array"\n },\n "normalized_result": {\n "$ref": "#/$defs/__schema0",\n "description": "Value for normalized result."\n },\n "operation": {\n "description": "Value for operation.",\n "minLength": 1,\n "type": "string"\n },\n "parameters": {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "description": "Value for parameters.",\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n },\n "predicate_type": {\n "description": "Value for predicate type.",\n "minLength": 1,\n "type": "string"\n },\n "provider": {\n "description": "Value for provider.",\n "properties": {\n "id": {\n "description": "Value for id.",\n "minLength": 1,\n "type": "string"\n },\n "name": {\n "description": "Exact name used by this operation.",\n "minLength": 1,\n "type": "string"\n },\n "version": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ],\n "description": "Value for version."\n }\n },\n "required": [\n "id",\n "name",\n "version"\n ],\n "type": "object"\n },\n "raw_result": {\n "anyOf": [\n {\n "$ref": "#/$defs/__schema0"\n },\n {\n "type": "null"\n }\n ],\n "description": "Value for raw result."\n },\n "subject": {\n "anyOf": [\n {\n "properties": {\n "architecture": {\n "anyOf": [\n {\n "enum": [\n "x86",\n "x86_64",\n "arm",\n "arm64"\n ],\n "type": "string"\n },\n {\n "type": "null"\n }\n ],\n "description": "Value for architecture."\n },\n "digest": {\n "description": "Value for digest.",\n "properties": {\n "sha256": {\n "description": "Value for sha256.",\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n }\n },\n "required": [\n "sha256"\n ],\n "type": "object"\n },\n "format": {\n "description": "Declared input artifact format.",\n "enum": [\n "hopper",\n "analysis-database",\n "mach-o",\n "elf",\n "pe",\n "dos-mz",\n "dos-com",\n "zip",\n "ipa",\n "apk",\n "msix",\n "appx",\n "asar",\n "dmg",\n "pkg",\n "plist",\n "javascript",\n "source-map",\n "directory",\n "file",\n "unknown",\n "mach-o-universal",\n "javascript-bundle",\n "entitlements"\n ],\n "type": "string"\n },\n "local_path": {\n "description": "Local filesystem path for local.",\n "type": "string"\n },\n "name": {\n "description": "Exact name used by this operation.",\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "name",\n "digest",\n "format",\n "architecture",\n "local_path"\n ],\n "type": "object"\n },\n {\n "type": "null"\n }\n ],\n "description": "Value for subject."\n }\n },\n "required": [\n "evidence_id",\n "subject",\n "provider",\n "predicate_type",\n "operation",\n "parameters",\n "raw_result",\n "normalized_result",\n "confidence",\n "authority",\n "environment",\n "limitations",\n "locations",\n "evidence_links"\n ],\n "type": "object"\n },\n "minItems": 1,\n "type": "array"\n },\n "static_comparisons": {\n "description": "Value for static comparisons.",\n "items": {\n "additionalProperties": false,\n "properties": {\n "analysis_profile": {\n "description": "Value for analysis profile.",\n "properties": {\n "digest": {\n "description": "Value for digest.",\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n },\n "parameters": {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "description": "Value for parameters.",\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n },\n "provider": {\n "description": "Value for provider.",\n "properties": {\n "id": {\n "description": "Value for id.",\n "minLength": 1,\n "type": "string"\n },\n "name": {\n "description": "Exact name used by this operation.",\n "minLength": 1,\n "type": "string"\n },\n "version": {\n "description": "Value for version.",\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "id",\n "name",\n "version"\n ],\n "type": "object"\n }\n },\n "required": [\n "provider",\n "parameters",\n "digest"\n ],\n "type": "object"\n },\n "authority": {\n "description": "Value for authority.",\n "enum": [\n "shipped-artifact",\n "controlled-replay",\n "historical-reference",\n "external-service",\n "analyst-inference"\n ],\n "type": "string"\n },\n "confidence": {\n "description": "Value for confidence.",\n "enum": [\n "observed",\n "derived",\n "inferred"\n ],\n "type": "string"\n },\n "environment": {\n "anyOf": [\n {\n "properties": {\n "architecture": {\n "description": "Value for architecture.",\n "minLength": 1,\n "type": "string"\n },\n "id": {\n "description": "Value for id.",\n "minLength": 1,\n "type": "string"\n },\n "isolation": {\n "description": "Value for isolation.",\n "enum": [\n "none",\n "process",\n "container",\n "virtual-machine"\n ],\n "type": "string"\n },\n "platform": {\n "description": "Value for platform.",\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "id",\n "platform",\n "architecture",\n "isolation"\n ],\n "type": "object"\n },\n {\n "type": "null"\n }\n ],\n "description": "Value for environment."\n },\n "evidence_id": {\n "description": "Stable identifier of the recorded Evidence observation.",\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "evidence_links": {\n "description": "Value for evidence links.",\n "items": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "type": "array"\n },\n "limitations": {\n "description": "Value for limitations.",\n "items": {\n "type": "string"\n },\n "type": "array"\n },\n "locations": {\n "description": "Value for locations.",\n "items": {\n "oneOf": [\n {\n "properties": {\n "address": {\n "description": "Value for address.",\n "minLength": 1,\n "type": "string"\n },\n "kind": {\n "const": "address",\n "description": "Value for kind.",\n "type": "string"\n }\n },\n "required": [\n "kind",\n "address"\n ],\n "type": "object"\n },\n {\n "properties": {\n "end": {\n "description": "Value for end.",\n "minLength": 1,\n "type": "string"\n },\n "kind": {\n "const": "address-range",\n "description": "Value for kind.",\n "type": "string"\n },\n "start": {\n "description": "Value for start.",\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "kind",\n "start",\n "end"\n ],\n "type": "object"\n },\n {\n "properties": {\n "kind": {\n "const": "artifact-path",\n "description": "Value for kind.",\n "type": "string"\n },\n "path": {\n "description": "Local filesystem path used by this operation.",\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "kind",\n "path"\n ],\n "type": "object"\n },\n {\n "properties": {\n "kind": {\n "const": "file-offset",\n "description": "Value for kind.",\n "type": "string"\n },\n "offset": {\n "description": "Value for offset.",\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "kind",\n "offset"\n ],\n "type": "object"\n },\n {\n "properties": {\n "end": {\n "description": "Value for end.",\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "kind": {\n "const": "file-offset-range",\n "description": "Value for kind.",\n "type": "string"\n },\n "start": {\n "description": "Value for start.",\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "kind",\n "start",\n "end"\n ],\n "type": "object"\n }\n ]\n },\n "type": "array"\n },\n "normalized_result": {\n "$ref": "#/$defs/__schema0",\n "description": "Value for normalized result."\n },\n "operation": {\n "description": "Value for operation.",\n "minLength": 1,\n "type": "string"\n },\n "parameters": {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "description": "Value for parameters.",\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n },\n "predicate_type": {\n "description": "Value for predicate type.",\n "minLength": 1,\n "type": "string"\n },\n "provider": {\n "description": "Value for provider.",\n "properties": {\n "id": {\n "description": "Value for id.",\n "minLength": 1,\n "type": "string"\n },\n "name": {\n "description": "Exact name used by this operation.",\n "minLength": 1,\n "type": "string"\n },\n "version": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ],\n "description": "Value for version."\n }\n },\n "required": [\n "id",\n "name",\n "version"\n ],\n "type": "object"\n },\n "raw_result": {\n "anyOf": [\n {\n "$ref": "#/$defs/__schema0"\n },\n {\n "type": "null"\n }\n ],\n "description": "Value for raw result."\n },\n "subject": {\n "anyOf": [\n {\n "properties": {\n "architecture": {\n "anyOf": [\n {\n "enum": [\n "x86",\n "x86_64",\n "arm",\n "arm64"\n ],\n "type": "string"\n },\n {\n "type": "null"\n }\n ],\n "description": "Value for architecture."\n },\n "digest": {\n "description": "Value for digest.",\n "properties": {\n "sha256": {\n "description": "Value for sha256.",\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n }\n },\n "required": [\n "sha256"\n ],\n "type": "object"\n },\n "format": {\n "description": "Declared input artifact format.",\n "enum": [\n "hopper",\n "analysis-database",\n "mach-o",\n "elf",\n "pe",\n "dos-mz",\n "dos-com",\n "zip",\n "ipa",\n "apk",\n "msix",\n "appx",\n "asar",\n "dmg",\n "pkg",\n "plist",\n "javascript",\n "source-map",\n "directory",\n "file",\n "unknown",\n "mach-o-universal",\n "javascript-bundle",\n "entitlements"\n ],\n "type": "string"\n },\n "local_path": {\n "description": "Local filesystem path for local.",\n "type": "string"\n },\n "name": {\n "description": "Exact name used by this operation.",\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "name",\n "digest",\n "format",\n "architecture",\n "local_path"\n ],\n "type": "object"\n },\n {\n "type": "null"\n }\n ],\n "description": "Value for subject."\n }\n },\n "required": [\n "evidence_id",\n "subject",\n "provider",\n "predicate_type",\n "operation",\n "parameters",\n "raw_result",\n "normalized_result",\n "confidence",\n "authority",\n "environment",\n "limitations",\n "locations",\n "evidence_links"\n ],\n "type": "object"\n },\n "minItems": 1,\n "type": "array"\n }\n },\n "required": [\n "static_comparisons",\n "runtime_comparisons",\n "mappings"\n ],\n "type": "object"\n },\n "kind": "session",\n "name": "correlate_static_and_runtime",\n "outputSchema": {\n "$defs": {\n "__schema0": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "number"\n },\n {\n "type": "boolean"\n },\n {\n "type": "null"\n },\n {\n "items": {\n "$ref": "#/$defs/__schema0"\n },\n "type": "array"\n },\n {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n }\n ]\n }\n },\n "$schema": "https://json-schema.org/draft/2020-12/schema",\n "additionalProperties": false,\n "properties": {\n "evidence": {\n "additionalProperties": false,\n "properties": {\n "analysis_profile": {\n "additionalProperties": false,\n "properties": {\n "digest": {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n },\n "parameters": {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n },\n "provider": {\n "additionalProperties": false,\n "properties": {\n "id": {\n "minLength": 1,\n "type": "string"\n },\n "name": {\n "minLength": 1,\n "type": "string"\n },\n "version": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "id",\n "name",\n "version"\n ],\n "type": "object"\n }\n },\n "required": [\n "provider",\n "parameters",\n "digest"\n ],\n "type": "object"\n },\n "authority": {\n "enum": [\n "shipped-artifact",\n "controlled-replay",\n "historical-reference",\n "external-service",\n "analyst-inference"\n ],\n "type": "string"\n },\n "confidence": {\n "enum": [\n "observed",\n "derived",\n "inferred"\n ],\n "type": "string"\n },\n "environment": {\n "anyOf": [\n {\n "additionalProperties": false,\n "properties": {\n "architecture": {\n "minLength": 1,\n "type": "string"\n },\n "id": {\n "minLength": 1,\n "type": "string"\n },\n "isolation": {\n "enum": [\n "none",\n "process",\n "container",\n "virtual-machine"\n ],\n "type": "string"\n },\n "platform": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "id",\n "platform",\n "architecture",\n "isolation"\n ],\n "type": "object"\n },\n {\n "type": "null"\n }\n ]\n },\n "evidence_id": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "evidence_links": {\n "items": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "type": "array"\n },\n "limitations": {\n "items": {\n "type": "string"\n },\n "type": "array"\n },\n "locations": {\n "items": {\n "oneOf": [\n {\n "additionalProperties": false,\n "properties": {\n "address": {\n "minLength": 1,\n "type": "string"\n },\n "kind": {\n "const": "address",\n "type": "string"\n }\n },\n "required": [\n "kind",\n "address"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "end": {\n "minLength": 1,\n "type": "string"\n },\n "kind": {\n "const": "address-range",\n "type": "string"\n },\n "start": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "kind",\n "start",\n "end"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "kind": {\n "const": "artifact-path",\n "type": "string"\n },\n "path": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "kind",\n "path"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "kind": {\n "const": "file-offset",\n "type": "string"\n },\n "offset": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "kind",\n "offset"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "end": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "kind": {\n "const": "file-offset-range",\n "type": "string"\n },\n "start": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "kind",\n "start",\n "end"\n ],\n "type": "object"\n }\n ]\n },\n "type": "array"\n },\n "normalized_result": {\n "$ref": "#/$defs/__schema0"\n },\n "operation": {\n "minLength": 1,\n "type": "string"\n },\n "parameters": {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n },\n "predicate_type": {\n "minLength": 1,\n "type": "string"\n },\n "provider": {\n "additionalProperties": false,\n "properties": {\n "id": {\n "minLength": 1,\n "type": "string"\n },\n "name": {\n "minLength": 1,\n "type": "string"\n },\n "version": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "id",\n "name",\n "version"\n ],\n "type": "object"\n },\n "raw_result": {\n "anyOf": [\n {\n "$ref": "#/$defs/__schema0"\n },\n {\n "type": "null"\n }\n ]\n },\n "subject": {\n "anyOf": [\n {\n "additionalProperties": false,\n "properties": {\n "architecture": {\n "anyOf": [\n {\n "enum": [\n "x86",\n "x86_64",\n "arm",\n "arm64"\n ],\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "digest": {\n "additionalProperties": false,\n "properties": {\n "sha256": {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n }\n },\n "required": [\n "sha256"\n ],\n "type": "object"\n },\n "format": {\n "enum": [\n "hopper",\n "analysis-database",\n "mach-o",\n "elf",\n "pe",\n "dos-mz",\n "dos-com",\n "zip",\n "ipa",\n "apk",\n "msix",\n "appx",\n "asar",\n "dmg",\n "pkg",\n "plist",\n "javascript",\n "source-map",\n "directory",\n "file",\n "unknown",\n "mach-o-universal",\n "javascript-bundle",\n "entitlements"\n ],\n "type": "string"\n },\n "local_path": {\n "type": "string"\n },\n "name": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "name",\n "digest",\n "format",\n "architecture",\n "local_path"\n ],\n "type": "object"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "evidence_id",\n "subject",\n "provider",\n "predicate_type",\n "operation",\n "parameters",\n "raw_result",\n "normalized_result",\n "confidence",\n "authority",\n "environment",\n "limitations",\n "locations",\n "evidence_links"\n ],\n "type": "object"\n },\n "evidence_id": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "result": {\n "additionalProperties": false,\n "properties": {\n "correlations": {\n "additionalProperties": false,\n "properties": {\n "items": {\n "items": {\n "additionalProperties": false,\n "properties": {\n "classification": {\n "enum": [\n "hypothesis",\n "contradiction",\n "unresolved_branch"\n ],\n "type": "string"\n },\n "correlation_id": {\n "pattern": "^cor_[a-f0-9]{64}$",\n "type": "string"\n },\n "evidence_links": {\n "items": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "minItems": 2,\n "type": "array"\n },\n "hypothesis": {\n "additionalProperties": false,\n "properties": {\n "expected_pattern": {\n "enum": [\n "cochanged",\n "static_only",\n "runtime_only",\n "both_unchanged"\n ],\n "type": "string"\n },\n "statement": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "statement",\n "expected_pattern"\n ],\n "type": "object"\n },\n "limitations": {\n "items": {\n "type": "string"\n },\n "type": "array"\n },\n "observed_pattern": {\n "enum": [\n "cochanged",\n "static_only",\n "runtime_only",\n "both_unchanged",\n "unknown",\n "truncated"\n ],\n "type": "string"\n },\n "runtime": {\n "additionalProperties": false,\n "properties": {\n "comparison_evidence_id": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "dimension": {\n "enum": [\n "terminal",\n "interaction",\n "exit",\n "filesystem",\n "process"\n ],\n "type": "string"\n },\n "status": {\n "enum": [\n "unchanged",\n "added",\n "removed",\n "changed",\n "truncated",\n "unknown",\n "contradiction"\n ],\n "type": "string"\n }\n },\n "required": [\n "comparison_evidence_id",\n "dimension",\n "status"\n ],\n "type": "object"\n },\n "side_alignment": {\n "enum": [\n "left_to_left",\n "left_to_right"\n ],\n "type": "string"\n },\n "static": {\n "additionalProperties": false,\n "properties": {\n "comparison_evidence_id": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "conclusion_kind": {\n "enum": [\n "derived_relationship",\n "contradiction",\n "unresolved_branch"\n ],\n "type": "string"\n },\n "selector": {\n "oneOf": [\n {\n "additionalProperties": false,\n "properties": {\n "kind": {\n "const": "artifact",\n "type": "string"\n },\n "logical_path": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "kind",\n "logical_path"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "dimension": {\n "enum": [\n "identity",\n "pseudocode",\n "assembly",\n "comments",\n "calls",\n "references",\n "strings_names",\n "cfg"\n ],\n "type": "string"\n },\n "kind": {\n "const": "function",\n "type": "string"\n }\n },\n "required": [\n "kind",\n "dimension"\n ],\n "type": "object"\n }\n ]\n },\n "status": {\n "enum": [\n "unchanged",\n "added",\n "removed",\n "changed",\n "truncated",\n "unknown",\n "contradiction"\n ],\n "type": "string"\n }\n },\n "required": [\n "comparison_evidence_id",\n "selector",\n "status",\n "conclusion_kind"\n ],\n "type": "object"\n }\n },\n "required": [\n "correlation_id",\n "static",\n "runtime",\n "side_alignment",\n "hypothesis",\n "observed_pattern",\n "classification",\n "evidence_links",\n "limitations"\n ],\n "type": "object"\n },\n "type": "array"\n }\n },\n "required": [\n "items"\n ],\n "type": "object"\n },\n "evidence_links": {\n "items": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "minItems": 2,\n "type": "array"\n },\n "limitations": {\n "items": {\n "type": "string"\n },\n "type": "array"\n },\n "status": {\n "enum": [\n "correlated",\n "contradicted",\n "unknown",\n "truncated"\n ],\n "type": "string"\n },\n "summary": {\n "additionalProperties": false,\n "properties": {\n "contradictions": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "hypotheses": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "unresolved": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "hypotheses",\n "contradictions",\n "unresolved"\n ],\n "type": "object"\n }\n },\n "required": [\n "status",\n "summary",\n "correlations",\n "evidence_links",\n "limitations"\n ],\n "type": "object"\n }\n },\n "required": [\n "result",\n "evidence_id",\n "evidence"\n ],\n "type": "object"\n },\n "requiresSession": true,\n "title": "Correlate Static And Runtime"\n },\n {\n "analysisOperation": null,\n "annotations": {\n "destructiveHint": false,\n "idempotentHint": true,\n "openWorldHint": false,\n "readOnlyHint": false\n },\n "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.",\n "effects": {\n "accessesNetwork": false,\n "changesUiState": false,\n "idempotent": true,\n "launchesProcess": false,\n "mayDiscardData": false,\n "mutatesSession": true,\n "mutatesTarget": false,\n "writesFilesystem": false\n },\n "inputSchema": {\n "$schema": "https://json-schema.org/draft/2020-12/schema",\n "additionalProperties": false,\n "examples": [\n {\n "specification": {\n "claims": [\n {\n "claim_id": "terminal-output",\n "comparison_evidence_id": "ev_7b90781a4b4c9006d4eee122009b3baed342e442ad2ad62498bf9e7df850355c",\n "dimension": "terminal",\n "kind": "behavioral",\n "title": "Terminal output remains equivalent"\n }\n ],\n "name": "Terminal compatibility"\n }\n }\n ],\n "properties": {\n "specification": {\n "description": "Value for specification.",\n "properties": {\n "claims": {\n "description": "Value for claims.",\n "items": {\n "oneOf": [\n {\n "properties": {\n "claim_id": {\n "description": "Value for claim id.",\n "pattern": "^[A-Za-z][A-Za-z0-9._-]*$",\n "type": "string"\n },\n "comparison_evidence_id": {\n "description": "Exact Evidence identifier for the comparison observation.",\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "dimension": {\n "description": "Value for dimension.",\n "enum": [\n "overall",\n "terminal",\n "interaction",\n "exit",\n "filesystem",\n "process"\n ],\n "type": "string"\n },\n "kind": {\n "const": "behavioral",\n "description": "Value for kind.",\n "type": "string"\n },\n "title": {\n "description": "Value for title.",\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "claim_id",\n "title",\n "comparison_evidence_id",\n "kind",\n "dimension"\n ],\n "type": "object"\n },\n {\n "properties": {\n "claim_id": {\n "description": "Value for claim id.",\n "pattern": "^[A-Za-z][A-Za-z0-9._-]*$",\n "type": "string"\n },\n "comparison_evidence_id": {\n "description": "Exact Evidence identifier for the comparison observation.",\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "dimension": {\n "description": "Value for dimension.",\n "enum": [\n "overall",\n "identity",\n "pseudocode",\n "assembly",\n "comments",\n "calls",\n "references",\n "strings_names",\n "cfg"\n ],\n "type": "string"\n },\n "kind": {\n "const": "structural-function",\n "description": "Value for kind.",\n "type": "string"\n },\n "title": {\n "description": "Value for title.",\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "claim_id",\n "title",\n "comparison_evidence_id",\n "kind",\n "dimension"\n ],\n "type": "object"\n },\n {\n "properties": {\n "claim_id": {\n "description": "Value for claim id.",\n "pattern": "^[A-Za-z][A-Za-z0-9._-]*$",\n "type": "string"\n },\n "comparison_evidence_id": {\n "description": "Exact Evidence identifier for the comparison observation.",\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "dimension": {\n "const": "overall",\n "description": "Value for dimension.",\n "type": "string"\n },\n "kind": {\n "const": "structural-artifact",\n "description": "Value for kind.",\n "type": "string"\n },\n "title": {\n "description": "Value for title.",\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "claim_id",\n "title",\n "comparison_evidence_id",\n "kind",\n "dimension"\n ],\n "type": "object"\n }\n ]\n },\n "minItems": 1,\n "type": "array"\n },\n "name": {\n "description": "Exact name used by this operation.",\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "name",\n "claims"\n ],\n "type": "object"\n }\n },\n "required": [\n "specification"\n ],\n "type": "object"\n },\n "kind": "session",\n "name": "verify_reconstruction",\n "outputSchema": {\n "$defs": {\n "__schema0": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "number"\n },\n {\n "type": "boolean"\n },\n {\n "type": "null"\n },\n {\n "items": {\n "$ref": "#/$defs/__schema0"\n },\n "type": "array"\n },\n {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n }\n ]\n }\n },\n "$schema": "https://json-schema.org/draft/2020-12/schema",\n "additionalProperties": false,\n "properties": {\n "evidence": {\n "additionalProperties": false,\n "properties": {\n "analysis_profile": {\n "additionalProperties": false,\n "properties": {\n "digest": {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n },\n "parameters": {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n },\n "provider": {\n "additionalProperties": false,\n "properties": {\n "id": {\n "minLength": 1,\n "type": "string"\n },\n "name": {\n "minLength": 1,\n "type": "string"\n },\n "version": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "id",\n "name",\n "version"\n ],\n "type": "object"\n }\n },\n "required": [\n "provider",\n "parameters",\n "digest"\n ],\n "type": "object"\n },\n "authority": {\n "enum": [\n "shipped-artifact",\n "controlled-replay",\n "historical-reference",\n "external-service",\n "analyst-inference"\n ],\n "type": "string"\n },\n "confidence": {\n "enum": [\n "observed",\n "derived",\n "inferred"\n ],\n "type": "string"\n },\n "environment": {\n "anyOf": [\n {\n "additionalProperties": false,\n "properties": {\n "architecture": {\n "minLength": 1,\n "type": "string"\n },\n "id": {\n "minLength": 1,\n "type": "string"\n },\n "isolation": {\n "enum": [\n "none",\n "process",\n "container",\n "virtual-machine"\n ],\n "type": "string"\n },\n "platform": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "id",\n "platform",\n "architecture",\n "isolation"\n ],\n "type": "object"\n },\n {\n "type": "null"\n }\n ]\n },\n "evidence_id": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "evidence_links": {\n "items": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "type": "array"\n },\n "limitations": {\n "items": {\n "type": "string"\n },\n "type": "array"\n },\n "locations": {\n "items": {\n "oneOf": [\n {\n "additionalProperties": false,\n "properties": {\n "address": {\n "minLength": 1,\n "type": "string"\n },\n "kind": {\n "const": "address",\n "type": "string"\n }\n },\n "required": [\n "kind",\n "address"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "end": {\n "minLength": 1,\n "type": "string"\n },\n "kind": {\n "const": "address-range",\n "type": "string"\n },\n "start": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "kind",\n "start",\n "end"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "kind": {\n "const": "artifact-path",\n "type": "string"\n },\n "path": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "kind",\n "path"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "kind": {\n "const": "file-offset",\n "type": "string"\n },\n "offset": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "kind",\n "offset"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "end": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "kind": {\n "const": "file-offset-range",\n "type": "string"\n },\n "start": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "kind",\n "start",\n "end"\n ],\n "type": "object"\n }\n ]\n },\n "type": "array"\n },\n "normalized_result": {\n "$ref": "#/$defs/__schema0"\n },\n "operation": {\n "minLength": 1,\n "type": "string"\n },\n "parameters": {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n },\n "predicate_type": {\n "minLength": 1,\n "type": "string"\n },\n "provider": {\n "additionalProperties": false,\n "properties": {\n "id": {\n "minLength": 1,\n "type": "string"\n },\n "name": {\n "minLength": 1,\n "type": "string"\n },\n "version": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "id",\n "name",\n "version"\n ],\n "type": "object"\n },\n "raw_result": {\n "anyOf": [\n {\n "$ref": "#/$defs/__schema0"\n },\n {\n "type": "null"\n }\n ]\n },\n "subject": {\n "anyOf": [\n {\n "additionalProperties": false,\n "properties": {\n "architecture": {\n "anyOf": [\n {\n "enum": [\n "x86",\n "x86_64",\n "arm",\n "arm64"\n ],\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "digest": {\n "additionalProperties": false,\n "properties": {\n "sha256": {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n }\n },\n "required": [\n "sha256"\n ],\n "type": "object"\n },\n "format": {\n "enum": [\n "hopper",\n "analysis-database",\n "mach-o",\n "elf",\n "pe",\n "dos-mz",\n "dos-com",\n "zip",\n "ipa",\n "apk",\n "msix",\n "appx",\n "asar",\n "dmg",\n "pkg",\n "plist",\n "javascript",\n "source-map",\n "directory",\n "file",\n "unknown",\n "mach-o-universal",\n "javascript-bundle",\n "entitlements"\n ],\n "type": "string"\n },\n "local_path": {\n "type": "string"\n },\n "name": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "name",\n "digest",\n "format",\n "architecture",\n "local_path"\n ],\n "type": "object"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "evidence_id",\n "subject",\n "provider",\n "predicate_type",\n "operation",\n "parameters",\n "raw_result",\n "normalized_result",\n "confidence",\n "authority",\n "environment",\n "limitations",\n "locations",\n "evidence_links"\n ],\n "type": "object"\n },\n "evidence_id": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "result": {\n "additionalProperties": false,\n "properties": {\n "claims": {\n "additionalProperties": false,\n "properties": {\n "items": {\n "items": {\n "additionalProperties": false,\n "properties": {\n "claim_id": {\n "pattern": "^[A-Za-z][A-Za-z0-9._-]*$",\n "type": "string"\n },\n "comparison_evidence_id": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "dimension": {\n "minLength": 1,\n "type": "string"\n },\n "evidence_links": {\n "items": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "minItems": 3,\n "type": "array"\n },\n "kind": {\n "enum": [\n "behavioral",\n "structural-function",\n "structural-artifact"\n ],\n "type": "string"\n },\n "left_evidence_ids": {\n "items": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "minItems": 1,\n "type": "array"\n },\n "limitations": {\n "items": {\n "type": "string"\n },\n "type": "array"\n },\n "observed_status": {\n "enum": [\n "unchanged",\n "added",\n "removed",\n "changed",\n "truncated",\n "unknown",\n "contradiction"\n ],\n "type": "string"\n },\n "right_evidence_ids": {\n "items": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "minItems": 1,\n "type": "array"\n },\n "status": {\n "enum": [\n "pass",\n "fail",\n "unknown"\n ],\n "type": "string"\n },\n "unknown_ids": {\n "items": {\n "pattern": "^unk_[a-f0-9]{64}$",\n "type": "string"\n },\n "type": "array"\n }\n },\n "required": [\n "claim_id",\n "kind",\n "dimension",\n "status",\n "observed_status",\n "comparison_evidence_id",\n "left_evidence_ids",\n "right_evidence_ids",\n "evidence_links",\n "unknown_ids",\n "limitations"\n ],\n "type": "object"\n },\n "type": "array"\n }\n },\n "required": [\n "items"\n ],\n "type": "object"\n },\n "evidence_links": {\n "items": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "minItems": 3,\n "type": "array"\n },\n "limitations": {\n "items": {\n "type": "string"\n },\n "type": "array"\n },\n "recommended_probes": {\n "items": {\n "additionalProperties": false,\n "properties": {\n "claim_ids": {\n "items": {\n "pattern": "^[A-Za-z][A-Za-z0-9._-]*$",\n "type": "string"\n },\n "minItems": 1,\n "type": "array"\n },\n "operation": {\n "minLength": 1,\n "type": "string"\n },\n "rationale": {\n "minLength": 1,\n "type": "string"\n },\n "unknown_ids": {\n "items": {\n "pattern": "^unk_[a-f0-9]{64}$",\n "type": "string"\n },\n "type": "array"\n }\n },\n "required": [\n "operation",\n "rationale",\n "claim_ids",\n "unknown_ids"\n ],\n "type": "object"\n },\n "type": "array"\n },\n "specification_sha256": {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n },\n "status": {\n "enum": [\n "pass",\n "fail",\n "unknown"\n ],\n "type": "string"\n },\n "summary": {\n "additionalProperties": false,\n "properties": {\n "behavioral": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "failed": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "passed": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "structural": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "total": {\n "maximum": 9007199254740991,\n "minimum": 1,\n "type": "integer"\n },\n "unknown": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "total",\n "passed",\n "failed",\n "unknown",\n "behavioral",\n "structural"\n ],\n "type": "object"\n }\n },\n "required": [\n "status",\n "specification_sha256",\n "summary",\n "claims",\n "recommended_probes",\n "evidence_links",\n "limitations"\n ],\n "type": "object"\n }\n },\n "required": [\n "result",\n "evidence_id",\n "evidence"\n ],\n "type": "object"\n },\n "requiresSession": true,\n "title": "Verify Reconstruction"\n },\n {\n "analysisOperation": null,\n "annotations": {\n "destructiveHint": false,\n "idempotentHint": true,\n "openWorldHint": false,\n "readOnlyHint": true\n },\n "description": "List every current residual-unknown head in deterministic ID order, with optional exact status, severity, and domain filters. Results are complete and inline. This is read-only; unresolved, contradicted, and non-truth dispositions remain distinct.",\n "effects": {\n "accessesNetwork": false,\n "changesUiState": false,\n "idempotent": true,\n "launchesProcess": false,\n "mayDiscardData": false,\n "mutatesSession": false,\n "mutatesTarget": false,\n "writesFilesystem": false\n },\n "inputSchema": {\n "$schema": "https://json-schema.org/draft/2020-12/schema",\n "additionalProperties": false,\n "examples": [\n {}\n ],\n "properties": {\n "domain": {\n "description": "Value for domain.",\n "minLength": 1,\n "type": "string"\n },\n "severity": {\n "description": "Value for severity.",\n "enum": [\n "low",\n "medium",\n "high",\n "critical"\n ],\n "type": "string"\n },\n "status": {\n "description": "Current lifecycle or verification status.",\n "enum": [\n "open",\n "investigating",\n "blocked",\n "contradicted",\n "resolved"\n ],\n "type": "string"\n }\n },\n "type": "object"\n },\n "kind": "session",\n "name": "list_unknowns",\n "outputSchema": {\n "$schema": "https://json-schema.org/draft/2020-12/schema",\n "additionalProperties": false,\n "properties": {\n "result": {\n "additionalProperties": false,\n "properties": {\n "items": {\n "items": {\n "additionalProperties": false,\n "properties": {\n "contradicting_evidence_ids": {\n "items": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "type": "array"\n },\n "domain": {\n "minLength": 1,\n "type": "string"\n },\n "mutation_evidence_ids": {\n "items": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "minItems": 1,\n "type": "array"\n },\n "previous_revision_digest": {\n "anyOf": [\n {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "question": {\n "minLength": 1,\n "type": "string"\n },\n "recommended_probes": {\n "items": {\n "additionalProperties": false,\n "properties": {\n "operation": {\n "minLength": 1,\n "type": "string"\n },\n "rationale": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "operation",\n "rationale"\n ],\n "type": "object"\n },\n "type": "array"\n },\n "relationships": {\n "items": {\n "additionalProperties": false,\n "properties": {\n "type": {\n "enum": [\n "depends-on",\n "related-to",\n "contradicts"\n ],\n "type": "string"\n },\n "unknown_id": {\n "pattern": "^unk_[a-f0-9]{64}$",\n "type": "string"\n }\n },\n "required": [\n "type",\n "unknown_id"\n ],\n "type": "object"\n },\n "type": "array"\n },\n "required_authority": {\n "anyOf": [\n {\n "enum": [\n "shipped-artifact",\n "controlled-replay",\n "historical-reference",\n "external-service",\n "analyst-inference"\n ],\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "required_confidence": {\n "enum": [\n "observed",\n "derived",\n "inferred"\n ],\n "type": "string"\n },\n "required_environment": {\n "anyOf": [\n {\n "additionalProperties": false,\n "properties": {\n "architecture": {\n "anyOf": [\n {\n "minLength": 1,\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "id": {\n "anyOf": [\n {\n "minLength": 1,\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "isolation": {\n "anyOf": [\n {\n "enum": [\n "none",\n "process",\n "container",\n "virtual-machine"\n ],\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "platform": {\n "anyOf": [\n {\n "minLength": 1,\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "id",\n "platform",\n "architecture",\n "isolation"\n ],\n "type": "object"\n },\n {\n "type": "null"\n }\n ]\n },\n "resolution": {\n "anyOf": [\n {\n "oneOf": [\n {\n "additionalProperties": false,\n "properties": {\n "disposition": {\n "const": "verified",\n "type": "string"\n },\n "evidence_ids": {\n "items": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "minItems": 1,\n "type": "array"\n },\n "rationale": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "disposition",\n "rationale",\n "evidence_ids"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "disposition": {\n "enum": [\n "withdrawn",\n "out-of-scope"\n ],\n "type": "string"\n },\n "evidence_ids": {\n "items": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "type": "array"\n },\n "rationale": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "disposition",\n "rationale",\n "evidence_ids"\n ],\n "type": "object"\n }\n ]\n },\n {\n "type": "null"\n }\n ]\n },\n "revision": {\n "maximum": 9007199254740991,\n "minimum": 1,\n "type": "integer"\n },\n "revision_digest": {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n },\n "scope_digest": {\n "anyOf": [\n {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "severity": {\n "enum": [\n "low",\n "medium",\n "high",\n "critical"\n ],\n "type": "string"\n },\n "status": {\n "enum": [\n "open",\n "investigating",\n "blocked",\n "contradicted",\n "resolved"\n ],\n "type": "string"\n },\n "supporting_evidence_ids": {\n "items": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "type": "array"\n },\n "unknown_id": {\n "pattern": "^unk_[a-f0-9]{64}$",\n "type": "string"\n }\n },\n "required": [\n "unknown_id",\n "revision",\n "previous_revision_digest",\n "revision_digest",\n "scope_digest",\n "question",\n "status",\n "severity",\n "domain",\n "supporting_evidence_ids",\n "contradicting_evidence_ids",\n "required_authority",\n "required_confidence",\n "required_environment",\n "recommended_probes",\n "relationships",\n "resolution",\n "mutation_evidence_ids"\n ],\n "type": "object"\n },\n "type": "array"\n },\n "total": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "items",\n "total"\n ],\n "type": "object"\n }\n },\n "required": [\n "result"\n ],\n "type": "object"\n },\n "requiresSession": true,\n "title": "List Unknowns"\n },\n {\n "analysisOperation": null,\n "annotations": {\n "destructiveHint": false,\n "idempotentHint": false,\n "openWorldHint": false,\n "readOnlyHint": false\n },\n "description": "Create one deterministic residual unknown and immutable mutation evidence. Validates all evidence and relationship references, and rejects duplicate stable identity.",\n "effects": {\n "accessesNetwork": false,\n "changesUiState": false,\n "idempotent": false,\n "launchesProcess": false,\n "mayDiscardData": false,\n "mutatesSession": true,\n "mutatesTarget": false,\n "writesFilesystem": false\n },\n "inputSchema": {\n "$schema": "https://json-schema.org/draft/2020-12/schema",\n "examples": [\n {\n "contradicting_evidence_ids": [],\n "domain": "protocol",\n "question": "Does this branch require an unavailable external service?",\n "recommended_probes": [\n {\n "operation": "capture_process_scenario",\n "rationale": "Replay branch."\n }\n ],\n "relationships": [],\n "required_authority": "controlled-replay",\n "required_confidence": "observed",\n "required_environment": null,\n "severity": "medium",\n "supporting_evidence_ids": []\n }\n ],\n "properties": {\n "contradicting_evidence_ids": {\n "default": [],\n "description": "Ordered Evidence identifiers for the contradicting observations.",\n "items": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "type": "array"\n },\n "domain": {\n "description": "Value for domain.",\n "minLength": 1,\n "type": "string"\n },\n "question": {\n "description": "Concrete unresolved question to retain for later investigation.",\n "minLength": 1,\n "type": "string"\n },\n "recommended_probes": {\n "description": "Value for recommended probes.",\n "items": {\n "properties": {\n "operation": {\n "description": "Value for operation.",\n "minLength": 1,\n "type": "string"\n },\n "rationale": {\n "description": "Value for rationale.",\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "operation",\n "rationale"\n ],\n "type": "object"\n },\n "type": "array"\n },\n "relationships": {\n "description": "Value for relationships.",\n "items": {\n "properties": {\n "type": {\n "description": "Value for type.",\n "enum": [\n "depends-on",\n "related-to",\n "contradicts"\n ],\n "type": "string"\n },\n "unknown_id": {\n "description": "Exact residual-unknown identifier.",\n "pattern": "^unk_[a-f0-9]{64}$",\n "type": "string"\n }\n },\n "required": [\n "type",\n "unknown_id"\n ],\n "type": "object"\n },\n "type": "array"\n },\n "required_authority": {\n "anyOf": [\n {\n "enum": [\n "shipped-artifact",\n "controlled-replay",\n "historical-reference",\n "external-service",\n "analyst-inference"\n ],\n "type": "string"\n },\n {\n "type": "null"\n }\n ],\n "description": "Value for required authority."\n },\n "required_confidence": {\n "description": "Value for required confidence.",\n "enum": [\n "observed",\n "derived",\n "inferred"\n ],\n "type": "string"\n },\n "required_environment": {\n "anyOf": [\n {\n "properties": {\n "architecture": {\n "anyOf": [\n {\n "minLength": 1,\n "type": "string"\n },\n {\n "type": "null"\n }\n ],\n "description": "Value for architecture."\n },\n "id": {\n "anyOf": [\n {\n "minLength": 1,\n "type": "string"\n },\n {\n "type": "null"\n }\n ],\n "description": "Value for id."\n },\n "isolation": {\n "anyOf": [\n {\n "enum": [\n "none",\n "process",\n "container",\n "virtual-machine"\n ],\n "type": "string"\n },\n {\n "type": "null"\n }\n ],\n "description": "Value for isolation."\n },\n "platform": {\n "anyOf": [\n {\n "minLength": 1,\n "type": "string"\n },\n {\n "type": "null"\n }\n ],\n "description": "Value for platform."\n }\n },\n "required": [\n "id",\n "platform",\n "architecture",\n "isolation"\n ],\n "type": "object"\n },\n {\n "type": "null"\n }\n ],\n "description": "Value for required environment."\n },\n "severity": {\n "description": "Value for severity.",\n "enum": [\n "low",\n "medium",\n "high",\n "critical"\n ],\n "type": "string"\n },\n "supporting_evidence_ids": {\n "default": [],\n "description": "Ordered Evidence identifiers for the supporting observations.",\n "items": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "type": "array"\n }\n },\n "required": [\n "question",\n "severity",\n "domain",\n "required_authority",\n "required_confidence",\n "required_environment",\n "recommended_probes",\n "relationships"\n ],\n "type": "object"\n },\n "kind": "session",\n "name": "record_unknown",\n "outputSchema": {\n "$schema": "https://json-schema.org/draft/2020-12/schema",\n "additionalProperties": false,\n "properties": {\n "result": {\n "additionalProperties": false,\n "properties": {\n "contradicting_evidence_ids": {\n "items": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "type": "array"\n },\n "domain": {\n "minLength": 1,\n "type": "string"\n },\n "mutation_evidence_ids": {\n "items": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "minItems": 1,\n "type": "array"\n },\n "previous_revision_digest": {\n "anyOf": [\n {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "question": {\n "minLength": 1,\n "type": "string"\n },\n "recommended_probes": {\n "items": {\n "additionalProperties": false,\n "properties": {\n "operation": {\n "minLength": 1,\n "type": "string"\n },\n "rationale": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "operation",\n "rationale"\n ],\n "type": "object"\n },\n "type": "array"\n },\n "relationships": {\n "items": {\n "additionalProperties": false,\n "properties": {\n "type": {\n "enum": [\n "depends-on",\n "related-to",\n "contradicts"\n ],\n "type": "string"\n },\n "unknown_id": {\n "pattern": "^unk_[a-f0-9]{64}$",\n "type": "string"\n }\n },\n "required": [\n "type",\n "unknown_id"\n ],\n "type": "object"\n },\n "type": "array"\n },\n "required_authority": {\n "anyOf": [\n {\n "enum": [\n "shipped-artifact",\n "controlled-replay",\n "historical-reference",\n "external-service",\n "analyst-inference"\n ],\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "required_confidence": {\n "enum": [\n "observed",\n "derived",\n "inferred"\n ],\n "type": "string"\n },\n "required_environment": {\n "anyOf": [\n {\n "additionalProperties": false,\n "properties": {\n "architecture": {\n "anyOf": [\n {\n "minLength": 1,\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "id": {\n "anyOf": [\n {\n "minLength": 1,\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "isolation": {\n "anyOf": [\n {\n "enum": [\n "none",\n "process",\n "container",\n "virtual-machine"\n ],\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "platform": {\n "anyOf": [\n {\n "minLength": 1,\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "id",\n "platform",\n "architecture",\n "isolation"\n ],\n "type": "object"\n },\n {\n "type": "null"\n }\n ]\n },\n "resolution": {\n "anyOf": [\n {\n "oneOf": [\n {\n "additionalProperties": false,\n "properties": {\n "disposition": {\n "const": "verified",\n "type": "string"\n },\n "evidence_ids": {\n "items": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "minItems": 1,\n "type": "array"\n },\n "rationale": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "disposition",\n "rationale",\n "evidence_ids"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "disposition": {\n "enum": [\n "withdrawn",\n "out-of-scope"\n ],\n "type": "string"\n },\n "evidence_ids": {\n "items": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "type": "array"\n },\n "rationale": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "disposition",\n "rationale",\n "evidence_ids"\n ],\n "type": "object"\n }\n ]\n },\n {\n "type": "null"\n }\n ]\n },\n "revision": {\n "maximum": 9007199254740991,\n "minimum": 1,\n "type": "integer"\n },\n "revision_digest": {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n },\n "scope_digest": {\n "anyOf": [\n {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "severity": {\n "enum": [\n "low",\n "medium",\n "high",\n "critical"\n ],\n "type": "string"\n },\n "status": {\n "enum": [\n "open",\n "investigating",\n "blocked",\n "contradicted",\n "resolved"\n ],\n "type": "string"\n },\n "supporting_evidence_ids": {\n "items": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "type": "array"\n },\n "unknown_id": {\n "pattern": "^unk_[a-f0-9]{64}$",\n "type": "string"\n }\n },\n "required": [\n "unknown_id",\n "revision",\n "previous_revision_digest",\n "revision_digest",\n "scope_digest",\n "question",\n "status",\n "severity",\n "domain",\n "supporting_evidence_ids",\n "contradicting_evidence_ids",\n "required_authority",\n "required_confidence",\n "required_environment",\n "recommended_probes",\n "relationships",\n "resolution",\n "mutation_evidence_ids"\n ],\n "type": "object"\n }\n },\n "required": [\n "result"\n ],\n "type": "object"\n },\n "requiresSession": true,\n "title": "Record Unknown"\n },\n {\n "analysisOperation": null,\n "annotations": {\n "destructiveHint": false,\n "idempotentHint": false,\n "openWorldHint": false,\n "readOnlyHint": false\n },\n "description": "Append one immutable full-state revision and mutation evidence. Requires exact expected_revision; stale concurrent writers fail instead of overwriting newer analysis.",\n "effects": {\n "accessesNetwork": false,\n "changesUiState": false,\n "idempotent": false,\n "launchesProcess": false,\n "mayDiscardData": false,\n "mutatesSession": true,\n "mutatesTarget": false,\n "writesFilesystem": false\n },\n "inputSchema": {\n "$schema": "https://json-schema.org/draft/2020-12/schema",\n "examples": [\n {\n "contradicting_evidence_ids": [],\n "expected_revision": 1,\n "recommended_probes": [],\n "relationships": [],\n "required_authority": "controlled-replay",\n "required_confidence": "observed",\n "required_environment": null,\n "resolution": null,\n "severity": "medium",\n "status": "investigating",\n "supporting_evidence_ids": [],\n "unknown_id": "unk_0000000000000000000000000000000000000000000000000000000000000000"\n }\n ],\n "properties": {\n "contradicting_evidence_ids": {\n "description": "Ordered Evidence identifiers for the contradicting observations.",\n "items": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "type": "array"\n },\n "expected_revision": {\n "description": "Expected revision used to reject stale or mismatched input.",\n "maximum": 9007199254740991,\n "minimum": 1,\n "type": "integer"\n },\n "recommended_probes": {\n "description": "Value for recommended probes.",\n "items": {\n "properties": {\n "operation": {\n "description": "Value for operation.",\n "minLength": 1,\n "type": "string"\n },\n "rationale": {\n "description": "Value for rationale.",\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "operation",\n "rationale"\n ],\n "type": "object"\n },\n "type": "array"\n },\n "relationships": {\n "description": "Value for relationships.",\n "items": {\n "properties": {\n "type": {\n "description": "Value for type.",\n "enum": [\n "depends-on",\n "related-to",\n "contradicts"\n ],\n "type": "string"\n },\n "unknown_id": {\n "description": "Exact residual-unknown identifier.",\n "pattern": "^unk_[a-f0-9]{64}$",\n "type": "string"\n }\n },\n "required": [\n "type",\n "unknown_id"\n ],\n "type": "object"\n },\n "type": "array"\n },\n "required_authority": {\n "anyOf": [\n {\n "enum": [\n "shipped-artifact",\n "controlled-replay",\n "historical-reference",\n "external-service",\n "analyst-inference"\n ],\n "type": "string"\n },\n {\n "type": "null"\n }\n ],\n "description": "Value for required authority."\n },\n "required_confidence": {\n "description": "Value for required confidence.",\n "enum": [\n "observed",\n "derived",\n "inferred"\n ],\n "type": "string"\n },\n "required_environment": {\n "anyOf": [\n {\n "properties": {\n "architecture": {\n "anyOf": [\n {\n "minLength": 1,\n "type": "string"\n },\n {\n "type": "null"\n }\n ],\n "description": "Value for architecture."\n },\n "id": {\n "anyOf": [\n {\n "minLength": 1,\n "type": "string"\n },\n {\n "type": "null"\n }\n ],\n "description": "Value for id."\n },\n "isolation": {\n "anyOf": [\n {\n "enum": [\n "none",\n "process",\n "container",\n "virtual-machine"\n ],\n "type": "string"\n },\n {\n "type": "null"\n }\n ],\n "description": "Value for isolation."\n },\n "platform": {\n "anyOf": [\n {\n "minLength": 1,\n "type": "string"\n },\n {\n "type": "null"\n }\n ],\n "description": "Value for platform."\n }\n },\n "required": [\n "id",\n "platform",\n "architecture",\n "isolation"\n ],\n "type": "object"\n },\n {\n "type": "null"\n }\n ],\n "description": "Value for required environment."\n },\n "resolution": {\n "anyOf": [\n {\n "oneOf": [\n {\n "properties": {\n "disposition": {\n "const": "verified",\n "description": "Value for disposition.",\n "type": "string"\n },\n "evidence_ids": {\n "description": "Value for evidence ids.",\n "items": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "minItems": 1,\n "type": "array"\n },\n "rationale": {\n "description": "Value for rationale.",\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "disposition",\n "rationale",\n "evidence_ids"\n ],\n "type": "object"\n },\n {\n "properties": {\n "disposition": {\n "description": "Value for disposition.",\n "enum": [\n "withdrawn",\n "out-of-scope"\n ],\n "type": "string"\n },\n "evidence_ids": {\n "description": "Value for evidence ids.",\n "items": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "type": "array"\n },\n "rationale": {\n "description": "Value for rationale.",\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "disposition",\n "rationale",\n "evidence_ids"\n ],\n "type": "object"\n }\n ]\n },\n {\n "type": "null"\n }\n ],\n "description": "Value for resolution."\n },\n "severity": {\n "description": "Value for severity.",\n "enum": [\n "low",\n "medium",\n "high",\n "critical"\n ],\n "type": "string"\n },\n "status": {\n "description": "Current lifecycle or verification status.",\n "enum": [\n "open",\n "investigating",\n "blocked",\n "contradicted",\n "resolved"\n ],\n "type": "string"\n },\n "supporting_evidence_ids": {\n "description": "Ordered Evidence identifiers for the supporting observations.",\n "items": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "type": "array"\n },\n "unknown_id": {\n "description": "Exact residual-unknown identifier.",\n "pattern": "^unk_[a-f0-9]{64}$",\n "type": "string"\n }\n },\n "required": [\n "unknown_id",\n "expected_revision",\n "status",\n "severity",\n "supporting_evidence_ids",\n "contradicting_evidence_ids",\n "required_authority",\n "required_confidence",\n "required_environment",\n "recommended_probes",\n "relationships",\n "resolution"\n ],\n "type": "object"\n },\n "kind": "session",\n "name": "update_unknown",\n "outputSchema": {\n "$schema": "https://json-schema.org/draft/2020-12/schema",\n "additionalProperties": false,\n "properties": {\n "result": {\n "additionalProperties": false,\n "properties": {\n "contradicting_evidence_ids": {\n "items": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "type": "array"\n },\n "domain": {\n "minLength": 1,\n "type": "string"\n },\n "mutation_evidence_ids": {\n "items": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "minItems": 1,\n "type": "array"\n },\n "previous_revision_digest": {\n "anyOf": [\n {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "question": {\n "minLength": 1,\n "type": "string"\n },\n "recommended_probes": {\n "items": {\n "additionalProperties": false,\n "properties": {\n "operation": {\n "minLength": 1,\n "type": "string"\n },\n "rationale": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "operation",\n "rationale"\n ],\n "type": "object"\n },\n "type": "array"\n },\n "relationships": {\n "items": {\n "additionalProperties": false,\n "properties": {\n "type": {\n "enum": [\n "depends-on",\n "related-to",\n "contradicts"\n ],\n "type": "string"\n },\n "unknown_id": {\n "pattern": "^unk_[a-f0-9]{64}$",\n "type": "string"\n }\n },\n "required": [\n "type",\n "unknown_id"\n ],\n "type": "object"\n },\n "type": "array"\n },\n "required_authority": {\n "anyOf": [\n {\n "enum": [\n "shipped-artifact",\n "controlled-replay",\n "historical-reference",\n "external-service",\n "analyst-inference"\n ],\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "required_confidence": {\n "enum": [\n "observed",\n "derived",\n "inferred"\n ],\n "type": "string"\n },\n "required_environment": {\n "anyOf": [\n {\n "additionalProperties": false,\n "properties": {\n "architecture": {\n "anyOf": [\n {\n "minLength": 1,\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "id": {\n "anyOf": [\n {\n "minLength": 1,\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "isolation": {\n "anyOf": [\n {\n "enum": [\n "none",\n "process",\n "container",\n "virtual-machine"\n ],\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "platform": {\n "anyOf": [\n {\n "minLength": 1,\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "id",\n "platform",\n "architecture",\n "isolation"\n ],\n "type": "object"\n },\n {\n "type": "null"\n }\n ]\n },\n "resolution": {\n "anyOf": [\n {\n "oneOf": [\n {\n "additionalProperties": false,\n "properties": {\n "disposition": {\n "const": "verified",\n "type": "string"\n },\n "evidence_ids": {\n "items": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "minItems": 1,\n "type": "array"\n },\n "rationale": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "disposition",\n "rationale",\n "evidence_ids"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "disposition": {\n "enum": [\n "withdrawn",\n "out-of-scope"\n ],\n "type": "string"\n },\n "evidence_ids": {\n "items": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "type": "array"\n },\n "rationale": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "disposition",\n "rationale",\n "evidence_ids"\n ],\n "type": "object"\n }\n ]\n },\n {\n "type": "null"\n }\n ]\n },\n "revision": {\n "maximum": 9007199254740991,\n "minimum": 1,\n "type": "integer"\n },\n "revision_digest": {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n },\n "scope_digest": {\n "anyOf": [\n {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "severity": {\n "enum": [\n "low",\n "medium",\n "high",\n "critical"\n ],\n "type": "string"\n },\n "status": {\n "enum": [\n "open",\n "investigating",\n "blocked",\n "contradicted",\n "resolved"\n ],\n "type": "string"\n },\n "supporting_evidence_ids": {\n "items": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "type": "array"\n },\n "unknown_id": {\n "pattern": "^unk_[a-f0-9]{64}$",\n "type": "string"\n }\n },\n "required": [\n "unknown_id",\n "revision",\n "previous_revision_digest",\n "revision_digest",\n "scope_digest",\n "question",\n "status",\n "severity",\n "domain",\n "supporting_evidence_ids",\n "contradicting_evidence_ids",\n "required_authority",\n "required_confidence",\n "required_environment",\n "recommended_probes",\n "relationships",\n "resolution",\n "mutation_evidence_ids"\n ],\n "type": "object"\n }\n },\n "required": [\n "result"\n ],\n "type": "object"\n },\n "requiresSession": true,\n "title": "Update Unknown"\n },\n {\n "analysisOperation": null,\n "annotations": {\n "destructiveHint": false,\n "idempotentHint": true,\n "openWorldHint": false,\n "readOnlyHint": true\n },\n "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.",\n "effects": {\n "accessesNetwork": false,\n "changesUiState": false,\n "idempotent": true,\n "launchesProcess": false,\n "mayDiscardData": false,\n "mutatesSession": false,\n "mutatesTarget": false,\n "writesFilesystem": false\n },\n "inputSchema": {\n "$schema": "https://json-schema.org/draft/2020-12/schema",\n "additionalProperties": false,\n "examples": [\n {\n "unknown_id": "unk_0000000000000000000000000000000000000000000000000000000000000000"\n }\n ],\n "properties": {\n "unknown_id": {\n "description": "Exact residual-unknown identifier.",\n "pattern": "^unk_[a-f0-9]{64}$",\n "type": "string"\n }\n },\n "required": [\n "unknown_id"\n ],\n "type": "object"\n },\n "kind": "session",\n "name": "verify_unknown_resolution",\n "outputSchema": {\n "$schema": "https://json-schema.org/draft/2020-12/schema",\n "additionalProperties": false,\n "properties": {\n "result": {\n "additionalProperties": false,\n "properties": {\n "truthVerified": {\n "type": "boolean"\n },\n "unknown": {\n "additionalProperties": false,\n "properties": {\n "contradicting_evidence_ids": {\n "items": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "type": "array"\n },\n "domain": {\n "minLength": 1,\n "type": "string"\n },\n "mutation_evidence_ids": {\n "items": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "minItems": 1,\n "type": "array"\n },\n "previous_revision_digest": {\n "anyOf": [\n {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "question": {\n "minLength": 1,\n "type": "string"\n },\n "recommended_probes": {\n "items": {\n "additionalProperties": false,\n "properties": {\n "operation": {\n "minLength": 1,\n "type": "string"\n },\n "rationale": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "operation",\n "rationale"\n ],\n "type": "object"\n },\n "type": "array"\n },\n "relationships": {\n "items": {\n "additionalProperties": false,\n "properties": {\n "type": {\n "enum": [\n "depends-on",\n "related-to",\n "contradicts"\n ],\n "type": "string"\n },\n "unknown_id": {\n "pattern": "^unk_[a-f0-9]{64}$",\n "type": "string"\n }\n },\n "required": [\n "type",\n "unknown_id"\n ],\n "type": "object"\n },\n "type": "array"\n },\n "required_authority": {\n "anyOf": [\n {\n "enum": [\n "shipped-artifact",\n "controlled-replay",\n "historical-reference",\n "external-service",\n "analyst-inference"\n ],\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "required_confidence": {\n "enum": [\n "observed",\n "derived",\n "inferred"\n ],\n "type": "string"\n },\n "required_environment": {\n "anyOf": [\n {\n "additionalProperties": false,\n "properties": {\n "architecture": {\n "anyOf": [\n {\n "minLength": 1,\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "id": {\n "anyOf": [\n {\n "minLength": 1,\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "isolation": {\n "anyOf": [\n {\n "enum": [\n "none",\n "process",\n "container",\n "virtual-machine"\n ],\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "platform": {\n "anyOf": [\n {\n "minLength": 1,\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "id",\n "platform",\n "architecture",\n "isolation"\n ],\n "type": "object"\n },\n {\n "type": "null"\n }\n ]\n },\n "resolution": {\n "anyOf": [\n {\n "oneOf": [\n {\n "additionalProperties": false,\n "properties": {\n "disposition": {\n "const": "verified",\n "type": "string"\n },\n "evidence_ids": {\n "items": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "minItems": 1,\n "type": "array"\n },\n "rationale": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "disposition",\n "rationale",\n "evidence_ids"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "disposition": {\n "enum": [\n "withdrawn",\n "out-of-scope"\n ],\n "type": "string"\n },\n "evidence_ids": {\n "items": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "type": "array"\n },\n "rationale": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "disposition",\n "rationale",\n "evidence_ids"\n ],\n "type": "object"\n }\n ]\n },\n {\n "type": "null"\n }\n ]\n },\n "revision": {\n "maximum": 9007199254740991,\n "minimum": 1,\n "type": "integer"\n },\n "revision_digest": {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n },\n "scope_digest": {\n "anyOf": [\n {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "severity": {\n "enum": [\n "low",\n "medium",\n "high",\n "critical"\n ],\n "type": "string"\n },\n "status": {\n "enum": [\n "open",\n "investigating",\n "blocked",\n "contradicted",\n "resolved"\n ],\n "type": "string"\n },\n "supporting_evidence_ids": {\n "items": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "type": "array"\n },\n "unknown_id": {\n "pattern": "^unk_[a-f0-9]{64}$",\n "type": "string"\n }\n },\n "required": [\n "unknown_id",\n "revision",\n "previous_revision_digest",\n "revision_digest",\n "scope_digest",\n "question",\n "status",\n "severity",\n "domain",\n "supporting_evidence_ids",\n "contradicting_evidence_ids",\n "required_authority",\n "required_confidence",\n "required_environment",\n "recommended_probes",\n "relationships",\n "resolution",\n "mutation_evidence_ids"\n ],\n "type": "object"\n },\n "valid": {\n "type": "boolean"\n }\n },\n "required": [\n "valid",\n "truthVerified",\n "unknown"\n ],\n "type": "object"\n }\n },\n "required": [\n "result"\n ],\n "type": "object"\n },\n "requiresSession": true,\n "title": "Verify Unknown Resolution"\n },\n {\n "analysisOperation": null,\n "annotations": {\n "destructiveHint": false,\n "idempotentHint": true,\n "openWorldHint": false,\n "readOnlyHint": true\n },\n "description": "Return every Evidence record and residual unknown currently retained by this session as one inline bundle for direct inspection or follow-up workflows.",\n "effects": {\n "accessesNetwork": false,\n "changesUiState": false,\n "idempotent": true,\n "launchesProcess": false,\n "mayDiscardData": false,\n "mutatesSession": false,\n "mutatesTarget": false,\n "writesFilesystem": false\n },\n "inputSchema": {\n "$schema": "https://json-schema.org/draft/2020-12/schema",\n "additionalProperties": false,\n "examples": [\n {}\n ],\n "properties": {},\n "type": "object"\n },\n "kind": "session",\n "name": "get_evidence_bundle",\n "outputSchema": {\n "$defs": {\n "__schema0": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "number"\n },\n {\n "type": "boolean"\n },\n {\n "type": "null"\n },\n {\n "items": {\n "$ref": "#/$defs/__schema0"\n },\n "type": "array"\n },\n {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n }\n ]\n }\n },\n "$schema": "https://json-schema.org/draft/2020-12/schema",\n "additionalProperties": false,\n "properties": {\n "result": {\n "additionalProperties": false,\n "properties": {\n "artifacts": {\n "items": {\n "additionalProperties": false,\n "properties": {\n "architecture": {\n "anyOf": [\n {\n "enum": [\n "x86",\n "x86_64",\n "arm",\n "arm64"\n ],\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "digest": {\n "additionalProperties": false,\n "properties": {\n "sha256": {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n }\n },\n "required": [\n "sha256"\n ],\n "type": "object"\n },\n "format": {\n "enum": [\n "hopper",\n "analysis-database",\n "mach-o",\n "elf",\n "pe",\n "dos-mz",\n "dos-com",\n "zip",\n "ipa",\n "apk",\n "msix",\n "appx",\n "asar",\n "dmg",\n "pkg",\n "plist",\n "javascript",\n "source-map",\n "directory",\n "file",\n "unknown",\n "mach-o-universal",\n "javascript-bundle",\n "entitlements"\n ],\n "type": "string"\n }\n },\n "required": [\n "digest",\n "format",\n "architecture"\n ],\n "type": "object"\n },\n "type": "array"\n },\n "captures": {\n "items": {\n "additionalProperties": false,\n "properties": {\n "evidence_id": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "predicate_type": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "evidence_id",\n "predicate_type"\n ],\n "type": "object"\n },\n "type": "array"\n },\n "environments": {\n "items": {\n "additionalProperties": false,\n "properties": {\n "architecture": {\n "minLength": 1,\n "type": "string"\n },\n "id": {\n "minLength": 1,\n "type": "string"\n },\n "isolation": {\n "enum": [\n "none",\n "process",\n "container",\n "virtual-machine"\n ],\n "type": "string"\n },\n "platform": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "id",\n "platform",\n "architecture",\n "isolation"\n ],\n "type": "object"\n },\n "type": "array"\n },\n "providers": {\n "items": {\n "additionalProperties": false,\n "properties": {\n "id": {\n "minLength": 1,\n "type": "string"\n },\n "name": {\n "minLength": 1,\n "type": "string"\n },\n "version": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "id",\n "name",\n "version"\n ],\n "type": "object"\n },\n "type": "array"\n },\n "records": {\n "items": {\n "anyOf": [\n {\n "additionalProperties": false,\n "properties": {\n "analysis_profile": {\n "additionalProperties": false,\n "properties": {\n "digest": {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n },\n "parameters": {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n },\n "provider": {\n "additionalProperties": false,\n "properties": {\n "id": {\n "minLength": 1,\n "type": "string"\n },\n "name": {\n "minLength": 1,\n "type": "string"\n },\n "version": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "id",\n "name",\n "version"\n ],\n "type": "object"\n }\n },\n "required": [\n "provider",\n "parameters",\n "digest"\n ],\n "type": "object"\n },\n "authority": {\n "enum": [\n "shipped-artifact",\n "controlled-replay",\n "historical-reference",\n "external-service",\n "analyst-inference"\n ],\n "type": "string"\n },\n "confidence": {\n "enum": [\n "observed",\n "derived",\n "inferred"\n ],\n "type": "string"\n },\n "environment": {\n "anyOf": [\n {\n "additionalProperties": false,\n "properties": {\n "architecture": {\n "minLength": 1,\n "type": "string"\n },\n "id": {\n "minLength": 1,\n "type": "string"\n },\n "isolation": {\n "enum": [\n "none",\n "process",\n "container",\n "virtual-machine"\n ],\n "type": "string"\n },\n "platform": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "id",\n "platform",\n "architecture",\n "isolation"\n ],\n "type": "object"\n },\n {\n "type": "null"\n }\n ]\n },\n "evidence_id": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "evidence_links": {\n "items": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "type": "array"\n },\n "limitations": {\n "items": {\n "type": "string"\n },\n "type": "array"\n },\n "locations": {\n "items": {\n "oneOf": [\n {\n "additionalProperties": false,\n "properties": {\n "address": {\n "minLength": 1,\n "type": "string"\n },\n "kind": {\n "const": "address",\n "type": "string"\n }\n },\n "required": [\n "kind",\n "address"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "end": {\n "minLength": 1,\n "type": "string"\n },\n "kind": {\n "const": "address-range",\n "type": "string"\n },\n "start": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "kind",\n "start",\n "end"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "kind": {\n "const": "artifact-path",\n "type": "string"\n },\n "path": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "kind",\n "path"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "kind": {\n "const": "file-offset",\n "type": "string"\n },\n "offset": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "kind",\n "offset"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "end": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "kind": {\n "const": "file-offset-range",\n "type": "string"\n },\n "start": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "kind",\n "start",\n "end"\n ],\n "type": "object"\n }\n ]\n },\n "type": "array"\n },\n "normalized_result": {\n "$ref": "#/$defs/__schema0"\n },\n "operation": {\n "minLength": 1,\n "type": "string"\n },\n "parameters": {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n },\n "predicate_type": {\n "minLength": 1,\n "type": "string"\n },\n "provider": {\n "additionalProperties": false,\n "properties": {\n "id": {\n "minLength": 1,\n "type": "string"\n },\n "name": {\n "minLength": 1,\n "type": "string"\n },\n "version": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "id",\n "name",\n "version"\n ],\n "type": "object"\n },\n "raw_result": {\n "anyOf": [\n {\n "$ref": "#/$defs/__schema0"\n },\n {\n "type": "null"\n }\n ]\n },\n "subject": {\n "anyOf": [\n {\n "additionalProperties": false,\n "properties": {\n "architecture": {\n "anyOf": [\n {\n "enum": [\n "x86",\n "x86_64",\n "arm",\n "arm64"\n ],\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "digest": {\n "additionalProperties": false,\n "properties": {\n "sha256": {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n }\n },\n "required": [\n "sha256"\n ],\n "type": "object"\n },\n "format": {\n "enum": [\n "hopper",\n "analysis-database",\n "mach-o",\n "elf",\n "pe",\n "dos-mz",\n "dos-com",\n "zip",\n "ipa",\n "apk",\n "msix",\n "appx",\n "asar",\n "dmg",\n "pkg",\n "plist",\n "javascript",\n "source-map",\n "directory",\n "file",\n "unknown",\n "mach-o-universal",\n "javascript-bundle",\n "entitlements"\n ],\n "type": "string"\n },\n "local_path": {\n "type": "string"\n },\n "name": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "name",\n "digest",\n "format",\n "architecture",\n "local_path"\n ],\n "type": "object"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "evidence_id",\n "subject",\n "provider",\n "predicate_type",\n "operation",\n "parameters",\n "raw_result",\n "normalized_result",\n "confidence",\n "authority",\n "environment",\n "limitations",\n "locations",\n "evidence_links",\n "analysis_profile"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "authority": {\n "enum": [\n "shipped-artifact",\n "controlled-replay",\n "historical-reference",\n "external-service",\n "analyst-inference"\n ],\n "type": "string"\n },\n "confidence": {\n "enum": [\n "observed",\n "derived",\n "inferred"\n ],\n "type": "string"\n },\n "environment": {\n "anyOf": [\n {\n "additionalProperties": false,\n "properties": {\n "architecture": {\n "minLength": 1,\n "type": "string"\n },\n "id": {\n "minLength": 1,\n "type": "string"\n },\n "isolation": {\n "enum": [\n "none",\n "process",\n "container",\n "virtual-machine"\n ],\n "type": "string"\n },\n "platform": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "id",\n "platform",\n "architecture",\n "isolation"\n ],\n "type": "object"\n },\n {\n "type": "null"\n }\n ]\n },\n "evidence_id": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "evidence_links": {\n "items": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "type": "array"\n },\n "limitations": {\n "items": {\n "type": "string"\n },\n "type": "array"\n },\n "locations": {\n "items": {\n "oneOf": [\n {\n "additionalProperties": false,\n "properties": {\n "address": {\n "minLength": 1,\n "type": "string"\n },\n "kind": {\n "const": "address",\n "type": "string"\n }\n },\n "required": [\n "kind",\n "address"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "end": {\n "minLength": 1,\n "type": "string"\n },\n "kind": {\n "const": "address-range",\n "type": "string"\n },\n "start": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "kind",\n "start",\n "end"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "kind": {\n "const": "artifact-path",\n "type": "string"\n },\n "path": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "kind",\n "path"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "kind": {\n "const": "file-offset",\n "type": "string"\n },\n "offset": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "kind",\n "offset"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "end": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "kind": {\n "const": "file-offset-range",\n "type": "string"\n },\n "start": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "kind",\n "start",\n "end"\n ],\n "type": "object"\n }\n ]\n },\n "type": "array"\n },\n "normalized_result": {\n "$ref": "#/$defs/__schema0"\n },\n "operation": {\n "minLength": 1,\n "type": "string"\n },\n "parameters": {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n },\n "predicate_type": {\n "minLength": 1,\n "type": "string"\n },\n "provider": {\n "additionalProperties": false,\n "properties": {\n "id": {\n "minLength": 1,\n "type": "string"\n },\n "name": {\n "minLength": 1,\n "type": "string"\n },\n "version": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "id",\n "name",\n "version"\n ],\n "type": "object"\n },\n "raw_result": {\n "anyOf": [\n {\n "$ref": "#/$defs/__schema0"\n },\n {\n "type": "null"\n }\n ]\n },\n "subject": {\n "anyOf": [\n {\n "additionalProperties": false,\n "properties": {\n "architecture": {\n "anyOf": [\n {\n "enum": [\n "x86",\n "x86_64",\n "arm",\n "arm64"\n ],\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "digest": {\n "additionalProperties": false,\n "properties": {\n "sha256": {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n }\n },\n "required": [\n "sha256"\n ],\n "type": "object"\n },\n "format": {\n "enum": [\n "hopper",\n "analysis-database",\n "mach-o",\n "elf",\n "pe",\n "dos-mz",\n "dos-com",\n "zip",\n "ipa",\n "apk",\n "msix",\n "appx",\n "asar",\n "dmg",\n "pkg",\n "plist",\n "javascript",\n "source-map",\n "directory",\n "file",\n "unknown",\n "mach-o-universal",\n "javascript-bundle",\n "entitlements"\n ],\n "type": "string"\n },\n "local_path": {\n "type": "string"\n },\n "name": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "name",\n "digest",\n "format",\n "architecture",\n "local_path"\n ],\n "type": "object"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "evidence_id",\n "subject",\n "provider",\n "predicate_type",\n "operation",\n "parameters",\n "raw_result",\n "normalized_result",\n "confidence",\n "authority",\n "environment",\n "limitations",\n "locations",\n "evidence_links"\n ],\n "type": "object"\n }\n ]\n },\n "type": "array"\n },\n "scenarios": {\n "items": {\n "additionalProperties": false,\n "properties": {\n "authority": {\n "const": "controlled-replay",\n "type": "string"\n },\n "evidence_id": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "operation": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "evidence_id",\n "operation",\n "authority"\n ],\n "type": "object"\n },\n "type": "array"\n },\n "unknowns": {\n "items": {\n "additionalProperties": false,\n "properties": {\n "contradicting_evidence_ids": {\n "items": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "type": "array"\n },\n "domain": {\n "minLength": 1,\n "type": "string"\n },\n "mutation_evidence_ids": {\n "items": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "minItems": 1,\n "type": "array"\n },\n "previous_revision_digest": {\n "anyOf": [\n {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "question": {\n "minLength": 1,\n "type": "string"\n },\n "recommended_probes": {\n "items": {\n "additionalProperties": false,\n "properties": {\n "operation": {\n "minLength": 1,\n "type": "string"\n },\n "rationale": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "operation",\n "rationale"\n ],\n "type": "object"\n },\n "type": "array"\n },\n "relationships": {\n "items": {\n "additionalProperties": false,\n "properties": {\n "type": {\n "enum": [\n "depends-on",\n "related-to",\n "contradicts"\n ],\n "type": "string"\n },\n "unknown_id": {\n "pattern": "^unk_[a-f0-9]{64}$",\n "type": "string"\n }\n },\n "required": [\n "type",\n "unknown_id"\n ],\n "type": "object"\n },\n "type": "array"\n },\n "required_authority": {\n "anyOf": [\n {\n "enum": [\n "shipped-artifact",\n "controlled-replay",\n "historical-reference",\n "external-service",\n "analyst-inference"\n ],\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "required_confidence": {\n "enum": [\n "observed",\n "derived",\n "inferred"\n ],\n "type": "string"\n },\n "required_environment": {\n "anyOf": [\n {\n "additionalProperties": false,\n "properties": {\n "architecture": {\n "anyOf": [\n {\n "minLength": 1,\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "id": {\n "anyOf": [\n {\n "minLength": 1,\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "isolation": {\n "anyOf": [\n {\n "enum": [\n "none",\n "process",\n "container",\n "virtual-machine"\n ],\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "platform": {\n "anyOf": [\n {\n "minLength": 1,\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "id",\n "platform",\n "architecture",\n "isolation"\n ],\n "type": "object"\n },\n {\n "type": "null"\n }\n ]\n },\n "resolution": {\n "anyOf": [\n {\n "oneOf": [\n {\n "additionalProperties": false,\n "properties": {\n "disposition": {\n "const": "verified",\n "type": "string"\n },\n "evidence_ids": {\n "items": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "minItems": 1,\n "type": "array"\n },\n "rationale": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "disposition",\n "rationale",\n "evidence_ids"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "disposition": {\n "enum": [\n "withdrawn",\n "out-of-scope"\n ],\n "type": "string"\n },\n "evidence_ids": {\n "items": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "type": "array"\n },\n "rationale": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "disposition",\n "rationale",\n "evidence_ids"\n ],\n "type": "object"\n }\n ]\n },\n {\n "type": "null"\n }\n ]\n },\n "revision": {\n "maximum": 9007199254740991,\n "minimum": 1,\n "type": "integer"\n },\n "revision_digest": {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n },\n "scope_digest": {\n "anyOf": [\n {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "severity": {\n "enum": [\n "low",\n "medium",\n "high",\n "critical"\n ],\n "type": "string"\n },\n "status": {\n "enum": [\n "open",\n "investigating",\n "blocked",\n "contradicted",\n "resolved"\n ],\n "type": "string"\n },\n "supporting_evidence_ids": {\n "items": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "type": "array"\n },\n "unknown_id": {\n "pattern": "^unk_[a-f0-9]{64}$",\n "type": "string"\n }\n },\n "required": [\n "unknown_id",\n "revision",\n "previous_revision_digest",\n "revision_digest",\n "scope_digest",\n "question",\n "status",\n "severity",\n "domain",\n "supporting_evidence_ids",\n "contradicting_evidence_ids",\n "required_authority",\n "required_confidence",\n "required_environment",\n "recommended_probes",\n "relationships",\n "resolution",\n "mutation_evidence_ids"\n ],\n "type": "object"\n },\n "type": "array"\n }\n },\n "required": [\n "artifacts",\n "providers",\n "environments",\n "scenarios",\n "captures",\n "unknowns",\n "records"\n ],\n "type": "object"\n }\n },\n "required": [\n "result"\n ],\n "type": "object"\n },\n "requiresSession": true,\n "title": "Get Evidence Bundle"\n },\n {\n "analysisOperation": null,\n "annotations": {\n "destructiveHint": false,\n "idempotentHint": true,\n "openWorldHint": false,\n "readOnlyHint": false\n },\n "description": "Return the selected document, current address, and containing/current procedure in one provider-neutral result. The result reflects sequential provider observations, not an atomic cursor snapshot; a cursor outside any procedure returns procedure: null.",\n "effects": {\n "accessesNetwork": false,\n "changesUiState": false,\n "idempotent": true,\n "launchesProcess": false,\n "mayDiscardData": false,\n "mutatesSession": true,\n "mutatesTarget": false,\n "writesFilesystem": false\n },\n "inputSchema": {\n "$schema": "https://json-schema.org/draft/2020-12/schema",\n "additionalProperties": false,\n "examples": [\n {}\n ],\n "properties": {\n "document": {\n "description": "Exact provider document or program identity.",\n "minLength": 1,\n "type": "string"\n }\n },\n "type": "object"\n },\n "kind": "session",\n "name": "get_navigation_context",\n "outputSchema": {\n "$schema": "https://json-schema.org/draft/2020-12/schema",\n "additionalProperties": false,\n "properties": {\n "result": {\n "additionalProperties": false,\n "properties": {\n "address": {\n "type": "string"\n },\n "document": {\n "type": "string"\n },\n "procedure": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "document",\n "address",\n "procedure"\n ],\n "type": "object"\n }\n },\n "required": [\n "result"\n ],\n "type": "object"\n },\n "requiresSession": true,\n "title": "Get Navigation Context"\n },\n {\n "analysisOperation": null,\n "annotations": {\n "destructiveHint": false,\n "idempotentHint": true,\n "openWorldHint": false,\n "readOnlyHint": false\n },\n "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; use xrefs, assembly, or pseudocode for those deeper views.",\n "effects": {\n "accessesNetwork": false,\n "changesUiState": false,\n "idempotent": true,\n "launchesProcess": false,\n "mayDiscardData": false,\n "mutatesSession": true,\n "mutatesTarget": false,\n "writesFilesystem": false\n },\n "inputSchema": {\n "$schema": "https://json-schema.org/draft/2020-12/schema",\n "additionalProperties": false,\n "examples": [\n {\n "address": "0x1000"\n }\n ],\n "properties": {\n "address": {\n "description": "Value for address.",\n "minLength": 1,\n "type": "string"\n },\n "document": {\n "description": "Exact provider document or program identity.",\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "address"\n ],\n "type": "object"\n },\n "kind": "session",\n "name": "inspect_address_context",\n "outputSchema": {\n "$defs": {\n "__schema0": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "number"\n },\n {\n "type": "boolean"\n },\n {\n "type": "null"\n },\n {\n "items": {\n "$ref": "#/$defs/__schema0"\n },\n "type": "array"\n },\n {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n }\n ]\n }\n },\n "$schema": "https://json-schema.org/draft/2020-12/schema",\n "additionalProperties": false,\n "properties": {\n "result": {\n "additionalProperties": false,\n "properties": {\n "address": {\n "type": "string"\n },\n "bookmarks": {\n "oneOf": [\n {\n "additionalProperties": false,\n "properties": {\n "state": {\n "const": "available",\n "type": "string"\n },\n "value": {\n "items": {\n "additionalProperties": false,\n "properties": {\n "address": {\n "type": "string"\n },\n "name": {\n "type": "string"\n }\n },\n "required": [\n "address",\n "name"\n ],\n "type": "object"\n },\n "type": "array"\n }\n },\n "required": [\n "state",\n "value"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "reason": {\n "type": "string"\n },\n "remediation": {\n "type": "string"\n },\n "state": {\n "const": "unavailable",\n "type": "string"\n }\n },\n "required": [\n "state",\n "reason",\n "remediation"\n ],\n "type": "object"\n }\n ]\n },\n "comment": {\n "oneOf": [\n {\n "additionalProperties": false,\n "properties": {\n "state": {\n "const": "available",\n "type": "string"\n },\n "value": {\n "$ref": "#/$defs/__schema0"\n }\n },\n "required": [\n "state",\n "value"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "reason": {\n "type": "string"\n },\n "remediation": {\n "type": "string"\n },\n "state": {\n "const": "unavailable",\n "type": "string"\n }\n },\n "required": [\n "state",\n "reason",\n "remediation"\n ],\n "type": "object"\n }\n ]\n },\n "document": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "inline_comment": {\n "oneOf": [\n {\n "additionalProperties": false,\n "properties": {\n "state": {\n "const": "available",\n "type": "string"\n },\n "value": {\n "$ref": "#/$defs/__schema0"\n }\n },\n "required": [\n "state",\n "value"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "reason": {\n "type": "string"\n },\n "remediation": {\n "type": "string"\n },\n "state": {\n "const": "unavailable",\n "type": "string"\n }\n },\n "required": [\n "state",\n "reason",\n "remediation"\n ],\n "type": "object"\n }\n ]\n },\n "name": {\n "oneOf": [\n {\n "additionalProperties": false,\n "properties": {\n "state": {\n "const": "available",\n "type": "string"\n },\n "value": {\n "$ref": "#/$defs/__schema0"\n }\n },\n "required": [\n "state",\n "value"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "reason": {\n "type": "string"\n },\n "remediation": {\n "type": "string"\n },\n "state": {\n "const": "unavailable",\n "type": "string"\n }\n },\n "required": [\n "state",\n "reason",\n "remediation"\n ],\n "type": "object"\n }\n ]\n },\n "procedure": {\n "oneOf": [\n {\n "additionalProperties": false,\n "properties": {\n "state": {\n "const": "available",\n "type": "string"\n },\n "value": {\n "$ref": "#/$defs/__schema0"\n }\n },\n "required": [\n "state",\n "value"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "reason": {\n "type": "string"\n },\n "remediation": {\n "type": "string"\n },\n "state": {\n "const": "unavailable",\n "type": "string"\n }\n },\n "required": [\n "state",\n "reason",\n "remediation"\n ],\n "type": "object"\n }\n ]\n }\n },\n "required": [\n "address",\n "document",\n "name",\n "procedure",\n "comment",\n "inline_comment",\n "bookmarks"\n ],\n "type": "object"\n }\n },\n "required": [\n "result"\n ],\n "type": "object"\n },\n "requiresSession": true,\n "title": "Inspect Address Context"\n }\n ]\n}';
+ '{\n "auxiliaryProviders": [\n {\n "capabilities": [\n {\n "available": true,\n "effects": {\n "changesPermissions": false,\n "launchesProcess": true,\n "mayAccessNetwork": false,\n "mayShowUi": false,\n "mayWriteFilesystem": true,\n "mutatesArtifact": false,\n "requiresRoot": false\n },\n "limitations": [\n "DMG child inventory automatically uses a read-only native macOS mount; PKG remains root-hash-only.",\n "ASAR files discovered in filesystem-backed inventories are expanded without bulk extraction; other nested containers remain recorded only."\n ],\n "operation": "inventory_artifact",\n "provider": {\n "id": "rea-artifact-graph",\n "name": "REA safe artifact graph provider",\n "version": "1"\n },\n "reason": null\n },\n {\n "available": true,\n "effects": {\n "changesPermissions": false,\n "launchesProcess": true,\n "mayAccessNetwork": false,\n "mayShowUi": false,\n "mayWriteFilesystem": true,\n "mutatesArtifact": false,\n "requiresRoot": false\n },\n "limitations": [\n "DMG child inventory automatically uses a read-only native macOS mount; PKG remains root-hash-only.",\n "ASAR files discovered in filesystem-backed inventories are expanded without bulk extraction; other nested containers remain recorded only."\n ],\n "operation": "inspect_artifact",\n "provider": {\n "id": "rea-artifact-graph",\n "name": "REA safe artifact graph provider",\n "version": "1"\n },\n "reason": null\n },\n {\n "available": true,\n "effects": {\n "changesPermissions": false,\n "launchesProcess": true,\n "mayAccessNetwork": false,\n "mayShowUi": false,\n "mayWriteFilesystem": true,\n "mutatesArtifact": false,\n "requiresRoot": false\n },\n "limitations": [\n "DMG child inventory automatically uses a read-only native macOS mount; PKG remains root-hash-only.",\n "ASAR files discovered in filesystem-backed inventories are expanded without bulk extraction; other nested containers remain recorded only."\n ],\n "operation": "extract_artifact",\n "provider": {\n "id": "rea-artifact-graph",\n "name": "REA safe artifact graph provider",\n "version": "1"\n },\n "reason": null\n },\n {\n "available": true,\n "effects": {\n "changesPermissions": false,\n "launchesProcess": false,\n "mayAccessNetwork": false,\n "mayShowUi": false,\n "mayWriteFilesystem": false,\n "mutatesArtifact": false,\n "requiresRoot": false\n },\n "limitations": [\n "DMG child inventory automatically uses a read-only native macOS mount; PKG remains root-hash-only.",\n "ASAR files discovered in filesystem-backed inventories are expanded without bulk extraction; other nested containers remain recorded only."\n ],\n "operation": "decode_interface_builder",\n "provider": {\n "id": "rea-artifact-graph",\n "name": "REA safe artifact graph provider",\n "version": "1"\n },\n "reason": null\n },\n {\n "available": true,\n "effects": {\n "changesPermissions": false,\n "launchesProcess": false,\n "mayAccessNetwork": false,\n "mayShowUi": false,\n "mayWriteFilesystem": false,\n "mutatesArtifact": false,\n "requiresRoot": false\n },\n "limitations": [\n "DMG child inventory automatically uses a read-only native macOS mount; PKG remains root-hash-only.",\n "ASAR files discovered in filesystem-backed inventories are expanded without bulk extraction; other nested containers remain recorded only."\n ],\n "operation": "inspect_keyed_archive",\n "provider": {\n "id": "rea-artifact-graph",\n "name": "REA safe artifact graph provider",\n "version": "1"\n },\n "reason": null\n },\n {\n "available": true,\n "effects": {\n "changesPermissions": false,\n "launchesProcess": true,\n "mayAccessNetwork": false,\n "mayShowUi": false,\n "mayWriteFilesystem": false,\n "mutatesArtifact": false,\n "requiresRoot": false\n },\n "limitations": [\n "DMG child inventory automatically uses a read-only native macOS mount; PKG remains root-hash-only.",\n "ASAR files discovered in filesystem-backed inventories are expanded without bulk extraction; other nested containers remain recorded only."\n ],\n "operation": "inspect_asset_catalog",\n "provider": {\n "id": "rea-artifact-graph",\n "name": "REA safe artifact graph provider",\n "version": "1"\n },\n "reason": null\n }\n ],\n "identity": {\n "id": "rea-artifact-graph",\n "name": "REA safe artifact graph provider",\n "version": "1"\n }\n },\n {\n "capabilities": [\n {\n "available": true,\n "effects": {\n "changesPermissions": false,\n "launchesProcess": true,\n "mayAccessNetwork": false,\n "mayShowUi": false,\n "mayWriteFilesystem": true,\n "mutatesArtifact": false,\n "requiresRoot": false\n },\n "limitations": [\n "Availability and textual formats depend on the installed macOS/Xcode toolchain."\n ],\n "operation": "observe_native_ui",\n "provider": {\n "id": "native-macos",\n "name": "macOS native inspection utilities",\n "version": null\n },\n "reason": null\n },\n {\n "available": true,\n "effects": {\n "changesPermissions": false,\n "launchesProcess": true,\n "mayAccessNetwork": true,\n "mayShowUi": true,\n "mayWriteFilesystem": true,\n "mutatesArtifact": false,\n "requiresRoot": false\n },\n "limitations": [\n "Availability and textual formats depend on the installed macOS/Xcode toolchain."\n ],\n "operation": "capture_native_ui_scenario",\n "provider": {\n "id": "native-macos",\n "name": "macOS native inspection utilities",\n "version": null\n },\n "reason": null\n },\n {\n "available": true,\n "effects": {\n "changesPermissions": false,\n "launchesProcess": true,\n "mayAccessNetwork": false,\n "mayShowUi": false,\n "mayWriteFilesystem": false,\n "mutatesArtifact": false,\n "requiresRoot": false\n },\n "limitations": [\n "Availability and textual formats depend on the installed macOS/Xcode toolchain."\n ],\n "operation": "inspect_macho",\n "provider": {\n "id": "native-macos",\n "name": "macOS native inspection utilities",\n "version": null\n },\n "reason": null\n },\n {\n "available": true,\n "effects": {\n "changesPermissions": false,\n "launchesProcess": true,\n "mayAccessNetwork": false,\n "mayShowUi": false,\n "mayWriteFilesystem": false,\n "mutatesArtifact": false,\n "requiresRoot": false\n },\n "limitations": [\n "Availability and textual formats depend on the installed macOS/Xcode toolchain."\n ],\n "operation": "inspect_signature",\n "provider": {\n "id": "native-macos",\n "name": "macOS native inspection utilities",\n "version": null\n },\n "reason": null\n },\n {\n "available": true,\n "effects": {\n "changesPermissions": false,\n "launchesProcess": true,\n "mayAccessNetwork": false,\n "mayShowUi": false,\n "mayWriteFilesystem": false,\n "mutatesArtifact": false,\n "requiresRoot": false\n },\n "limitations": [\n "Availability and textual formats depend on the installed macOS/Xcode toolchain."\n ],\n "operation": "inspect_plist",\n "provider": {\n "id": "native-macos",\n "name": "macOS native inspection utilities",\n "version": null\n },\n "reason": null\n },\n {\n "available": true,\n "effects": {\n "changesPermissions": false,\n "launchesProcess": true,\n "mayAccessNetwork": false,\n "mayShowUi": false,\n "mayWriteFilesystem": false,\n "mutatesArtifact": false,\n "requiresRoot": false\n },\n "limitations": [\n "Availability and textual formats depend on the installed macOS/Xcode toolchain."\n ],\n "operation": "list_architectures",\n "provider": {\n "id": "native-macos",\n "name": "macOS native inspection utilities",\n "version": null\n },\n "reason": null\n },\n {\n "available": true,\n "effects": {\n "changesPermissions": false,\n "launchesProcess": true,\n "mayAccessNetwork": false,\n "mayShowUi": false,\n "mayWriteFilesystem": false,\n "mutatesArtifact": false,\n "requiresRoot": false\n },\n "limitations": [\n "Availability and textual formats depend on the installed macOS/Xcode toolchain."\n ],\n "operation": "demangle_swift",\n "provider": {\n "id": "native-macos",\n "name": "macOS native inspection utilities",\n "version": null\n },\n "reason": null\n },\n {\n "available": true,\n "effects": {\n "changesPermissions": false,\n "launchesProcess": false,\n "mayAccessNetwork": false,\n "mayShowUi": false,\n "mayWriteFilesystem": false,\n "mutatesArtifact": false,\n "requiresRoot": false\n },\n "limitations": [\n "Availability and textual formats depend on the installed macOS/Xcode toolchain."\n ],\n "operation": "inspect_native_dispatch_metadata",\n "provider": {\n "id": "native-macos",\n "name": "macOS native inspection utilities",\n "version": null\n },\n "reason": null\n }\n ],\n "identity": {\n "id": "native-macos",\n "name": "macOS native inspection utilities",\n "version": null\n }\n },\n {\n "capabilities": [\n {\n "available": true,\n "effects": {\n "changesPermissions": false,\n "launchesProcess": false,\n "mayAccessNetwork": false,\n "mayShowUi": false,\n "mayWriteFilesystem": false,\n "mutatesArtifact": false,\n "requiresRoot": false\n },\n "limitations": [\n "This capability inventories PE/CLI identity only; inspect_managed_members admits metadata members, signatures, and CIL anchors.",\n "It never loads the target assembly, resolves dependencies through a CLR, decompiles C#, or executes target code."\n ],\n "operation": "inspect_managed_artifact",\n "provider": {\n "id": "rea-dotnet-static",\n "name": "REA managed static analysis provider",\n "version": "1"\n },\n "reason": null\n },\n {\n "available": true,\n "effects": {\n "changesPermissions": false,\n "launchesProcess": false,\n "mayAccessNetwork": false,\n "mayShowUi": false,\n "mayWriteFilesystem": false,\n "mutatesArtifact": false,\n "requiresRoot": false\n },\n "limitations": [\n "This capability decodes PE/CLI metadata members, signatures, and file-backed method bodies; decompiled C# reconstruction and cross-build member comparison are separate operations.",\n "It never loads the target assembly, resolves dependencies through a CLR, decompiles C#, or executes target code."\n ],\n "operation": "inspect_managed_members",\n "provider": {\n "id": "rea-dotnet-static",\n "name": "REA managed static analysis provider",\n "version": "1"\n },\n "reason": null\n },\n {\n "available": true,\n "effects": {\n "changesPermissions": false,\n "launchesProcess": false,\n "mayAccessNetwork": false,\n "mayShowUi": false,\n "mayWriteFilesystem": false,\n "mutatesArtifact": false,\n "requiresRoot": false\n },\n "limitations": [\n "This capability inventories managed declarations for native boundaries only; native exports, thunks, and addresses require separate native-provider evidence.",\n "It never loads the target assembly, resolves dependencies through a CLR, decompiles C#, or executes target code."\n ],\n "operation": "inspect_managed_native_boundaries",\n "provider": {\n "id": "rea-dotnet-static",\n "name": "REA managed static analysis provider",\n "version": "1"\n },\n "reason": null\n }\n ],\n "identity": {\n "id": "rea-dotnet-static",\n "name": "REA managed static analysis provider",\n "version": "1"\n }\n }\n ],\n "catalog": [\n {\n "analysisOperation": "annotate_native_function",\n "annotations": {\n "destructiveHint": false,\n "idempotentHint": true,\n "openWorldHint": true,\n "readOnlyHint": false\n },\n "description": "Atomically update one function name and/or entry comments, read them back, and return a refreshed complete function dossier. Ghidra changes its ephemeral session analysis database only; original executable bytes remain unchanged. Empty comment text clears that comment. Edits remain available to subsequent MCP calls until close; CLI returns the updated dossier before discarding its session. Invalid edits roll back the entire operation. Windows P0 and providers without this capability are unsupported.",\n "effects": {\n "accessesNetwork": false,\n "changesUiState": false,\n "idempotent": true,\n "launchesProcess": true,\n "mayDiscardData": false,\n "mutatesSession": true,\n "mutatesTarget": true,\n "writesFilesystem": true\n },\n "inputSchema": {\n "$schema": "https://json-schema.org/draft/2020-12/schema",\n "additionalProperties": false,\n "examples": [\n {\n "comment": "Analyst observation",\n "name": "entry",\n "procedure": "0x10100"\n }\n ],\n "properties": {\n "comment": {\n "description": "Regular entry comment; empty text clears it",\n "type": "string"\n },\n "inline_comment": {\n "description": "Inline entry comment; empty text clears it",\n "type": "string"\n },\n "name": {\n "description": "Exact name used by this operation.",\n "minLength": 1,\n "type": "string"\n },\n "procedure": {\n "description": "Value for procedure.",\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "procedure"\n ],\n "type": "object"\n },\n "kind": "official-proxy",\n "name": "annotate_native_function",\n "outputSchema": {\n "$defs": {\n "__schema0": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "number"\n },\n {\n "type": "boolean"\n },\n {\n "type": "null"\n },\n {\n "items": {\n "$ref": "#/$defs/__schema0"\n },\n "type": "array"\n },\n {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n }\n ]\n }\n },\n "$schema": "https://json-schema.org/draft/2020-12/schema",\n "additionalProperties": false,\n "properties": {\n "evidence": {\n "additionalProperties": false,\n "properties": {\n "analysis_profile": {\n "additionalProperties": false,\n "properties": {\n "digest": {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n },\n "parameters": {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n },\n "provider": {\n "additionalProperties": false,\n "properties": {\n "id": {\n "minLength": 1,\n "type": "string"\n },\n "name": {\n "minLength": 1,\n "type": "string"\n },\n "version": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "id",\n "name",\n "version"\n ],\n "type": "object"\n }\n },\n "required": [\n "provider",\n "parameters",\n "digest"\n ],\n "type": "object"\n },\n "authority": {\n "enum": [\n "shipped-artifact",\n "controlled-replay",\n "historical-reference",\n "external-service",\n "analyst-inference"\n ],\n "type": "string"\n },\n "confidence": {\n "enum": [\n "observed",\n "derived",\n "inferred"\n ],\n "type": "string"\n },\n "environment": {\n "anyOf": [\n {\n "additionalProperties": false,\n "properties": {\n "architecture": {\n "minLength": 1,\n "type": "string"\n },\n "id": {\n "minLength": 1,\n "type": "string"\n },\n "isolation": {\n "enum": [\n "none",\n "process",\n "container",\n "virtual-machine"\n ],\n "type": "string"\n },\n "platform": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "id",\n "platform",\n "architecture",\n "isolation"\n ],\n "type": "object"\n },\n {\n "type": "null"\n }\n ]\n },\n "evidence_id": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "evidence_links": {\n "items": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "type": "array"\n },\n "limitations": {\n "items": {\n "type": "string"\n },\n "type": "array"\n },\n "locations": {\n "items": {\n "oneOf": [\n {\n "additionalProperties": false,\n "properties": {\n "address": {\n "minLength": 1,\n "type": "string"\n },\n "kind": {\n "const": "address",\n "type": "string"\n }\n },\n "required": [\n "kind",\n "address"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "end": {\n "minLength": 1,\n "type": "string"\n },\n "kind": {\n "const": "address-range",\n "type": "string"\n },\n "start": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "kind",\n "start",\n "end"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "kind": {\n "const": "artifact-path",\n "type": "string"\n },\n "path": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "kind",\n "path"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "kind": {\n "const": "file-offset",\n "type": "string"\n },\n "offset": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "kind",\n "offset"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "end": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "kind": {\n "const": "file-offset-range",\n "type": "string"\n },\n "start": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "kind",\n "start",\n "end"\n ],\n "type": "object"\n }\n ]\n },\n "type": "array"\n },\n "normalized_result": {\n "$ref": "#/$defs/__schema0"\n },\n "operation": {\n "minLength": 1,\n "type": "string"\n },\n "parameters": {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n },\n "predicate_type": {\n "minLength": 1,\n "type": "string"\n },\n "provider": {\n "additionalProperties": false,\n "properties": {\n "id": {\n "minLength": 1,\n "type": "string"\n },\n "name": {\n "minLength": 1,\n "type": "string"\n },\n "version": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "id",\n "name",\n "version"\n ],\n "type": "object"\n },\n "raw_result": {\n "anyOf": [\n {\n "$ref": "#/$defs/__schema0"\n },\n {\n "type": "null"\n }\n ]\n },\n "subject": {\n "anyOf": [\n {\n "additionalProperties": false,\n "properties": {\n "architecture": {\n "anyOf": [\n {\n "enum": [\n "x86",\n "x86_64",\n "arm",\n "arm64"\n ],\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "digest": {\n "additionalProperties": false,\n "properties": {\n "sha256": {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n }\n },\n "required": [\n "sha256"\n ],\n "type": "object"\n },\n "format": {\n "enum": [\n "hopper",\n "analysis-database",\n "mach-o",\n "elf",\n "pe",\n "dos-mz",\n "dos-com",\n "zip",\n "ipa",\n "apk",\n "msix",\n "appx",\n "asar",\n "dmg",\n "pkg",\n "plist",\n "javascript",\n "source-map",\n "directory",\n "file",\n "unknown",\n "mach-o-universal",\n "javascript-bundle",\n "entitlements"\n ],\n "type": "string"\n },\n "local_path": {\n "type": "string"\n },\n "name": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "name",\n "digest",\n "format",\n "architecture",\n "local_path"\n ],\n "type": "object"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "evidence_id",\n "subject",\n "provider",\n "predicate_type",\n "operation",\n "parameters",\n "raw_result",\n "normalized_result",\n "confidence",\n "authority",\n "environment",\n "limitations",\n "locations",\n "evidence_links"\n ],\n "type": "object"\n },\n "evidence_id": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "result": {\n "additionalProperties": false,\n "properties": {\n "annotations": {\n "additionalProperties": false,\n "properties": {\n "address": {\n "minLength": 1,\n "type": "string"\n },\n "comment": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "inline_comment": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "name": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "address",\n "name",\n "comment",\n "inline_comment"\n ],\n "type": "object"\n },\n "dossier": {\n "additionalProperties": false,\n "properties": {\n "assembly": {\n "items": {\n "type": "string"\n },\n "type": "array"\n },\n "basic_blocks": {\n "items": {\n "additionalProperties": false,\n "properties": {\n "end": {\n "type": "string"\n },\n "start": {\n "type": "string"\n },\n "successors": {\n "items": {\n "type": "string"\n },\n "type": "array"\n }\n },\n "required": [\n "start",\n "end",\n "successors"\n ],\n "type": "object"\n },\n "type": "array"\n },\n "callees": {\n "items": {\n "additionalProperties": false,\n "properties": {\n "address": {\n "type": "string"\n },\n "body": {\n "default": {\n "available": false,\n "reason": "The provider did not report complete function body ranges."\n },\n "oneOf": [\n {\n "additionalProperties": false,\n "properties": {\n "available": {\n "const": false,\n "type": "boolean"\n },\n "reason": {\n "type": "string"\n }\n },\n "required": [\n "available",\n "reason"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "available": {\n "const": true,\n "type": "boolean"\n },\n "contains_entry": {\n "type": "boolean"\n },\n "non_contiguous": {\n "type": "boolean"\n },\n "provenance": {\n "minLength": 1,\n "type": "string"\n },\n "ranges": {\n "items": {\n "additionalProperties": false,\n "properties": {\n "end": {\n "description": "Inclusive last address of this observed body range.",\n "type": "string"\n },\n "start": {\n "type": "string"\n }\n },\n "required": [\n "start",\n "end"\n ],\n "type": "object"\n },\n "type": "array"\n },\n "span_bytes": {\n "anyOf": [\n {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n {\n "type": "null"\n }\n ]\n },\n "total_bytes": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "available",\n "provenance",\n "ranges",\n "total_bytes",\n "span_bytes",\n "non_contiguous",\n "contains_entry"\n ],\n "type": "object"\n }\n ]\n },\n "classification": {\n "anyOf": [\n {\n "additionalProperties": false,\n "properties": {\n "external": {\n "type": "boolean"\n },\n "provenance": {\n "minLength": 1,\n "type": "string"\n },\n "thunk": {\n "type": "boolean"\n },\n "thunk_target": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "external",\n "thunk",\n "thunk_target",\n "provenance"\n ],\n "type": "object"\n },\n {\n "type": "null"\n }\n ],\n "default": null\n },\n "name": {\n "type": "string"\n }\n },\n "required": [\n "address",\n "name",\n "classification",\n "body"\n ],\n "type": "object"\n },\n "type": "array"\n },\n "callers": {\n "items": {\n "additionalProperties": false,\n "properties": {\n "address": {\n "type": "string"\n },\n "body": {\n "default": {\n "available": false,\n "reason": "The provider did not report complete function body ranges."\n },\n "oneOf": [\n {\n "additionalProperties": false,\n "properties": {\n "available": {\n "const": false,\n "type": "boolean"\n },\n "reason": {\n "type": "string"\n }\n },\n "required": [\n "available",\n "reason"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "available": {\n "const": true,\n "type": "boolean"\n },\n "contains_entry": {\n "type": "boolean"\n },\n "non_contiguous": {\n "type": "boolean"\n },\n "provenance": {\n "minLength": 1,\n "type": "string"\n },\n "ranges": {\n "items": {\n "additionalProperties": false,\n "properties": {\n "end": {\n "description": "Inclusive last address of this observed body range.",\n "type": "string"\n },\n "start": {\n "type": "string"\n }\n },\n "required": [\n "start",\n "end"\n ],\n "type": "object"\n },\n "type": "array"\n },\n "span_bytes": {\n "anyOf": [\n {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n {\n "type": "null"\n }\n ]\n },\n "total_bytes": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "available",\n "provenance",\n "ranges",\n "total_bytes",\n "span_bytes",\n "non_contiguous",\n "contains_entry"\n ],\n "type": "object"\n }\n ]\n },\n "classification": {\n "anyOf": [\n {\n "additionalProperties": false,\n "properties": {\n "external": {\n "type": "boolean"\n },\n "provenance": {\n "minLength": 1,\n "type": "string"\n },\n "thunk": {\n "type": "boolean"\n },\n "thunk_target": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "external",\n "thunk",\n "thunk_target",\n "provenance"\n ],\n "type": "object"\n },\n {\n "type": "null"\n }\n ],\n "default": null\n },\n "name": {\n "type": "string"\n }\n },\n "required": [\n "address",\n "name",\n "classification",\n "body"\n ],\n "type": "object"\n },\n "type": "array"\n },\n "comments": {\n "items": {\n "additionalProperties": false,\n "properties": {\n "address": {\n "type": "string"\n },\n "kind": {\n "enum": [\n "comment",\n "inline"\n ],\n "type": "string"\n },\n "text": {\n "type": "string"\n }\n },\n "required": [\n "address",\n "kind",\n "text"\n ],\n "type": "object"\n },\n "type": "array"\n },\n "incoming_references": {\n "items": {\n "additionalProperties": false,\n "properties": {\n "kind": {\n "oneOf": [\n {\n "additionalProperties": false,\n "properties": {\n "available": {\n "const": false,\n "type": "boolean"\n },\n "reason": {\n "type": "string"\n }\n },\n "required": [\n "available",\n "reason"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "available": {\n "const": true,\n "type": "boolean"\n },\n "call": {\n "type": "boolean"\n },\n "computed": {\n "type": "boolean"\n },\n "conditional": {\n "type": "boolean"\n },\n "data": {\n "type": "boolean"\n },\n "external": {\n "type": "boolean"\n },\n "flow": {\n "type": "boolean"\n },\n "indirect": {\n "type": "boolean"\n },\n "jump": {\n "type": "boolean"\n },\n "operand_index": {\n "maximum": 9007199254740991,\n "minimum": -9007199254740991,\n "type": "integer"\n },\n "primary": {\n "type": "boolean"\n },\n "provenance": {\n "minLength": 1,\n "type": "string"\n },\n "read": {\n "type": "boolean"\n },\n "terminal": {\n "type": "boolean"\n },\n "type": {\n "type": "string"\n },\n "write": {\n "type": "boolean"\n }\n },\n "required": [\n "available",\n "provenance",\n "type",\n "flow",\n "call",\n "jump",\n "data",\n "read",\n "write",\n "indirect",\n "computed",\n "conditional",\n "terminal",\n "primary",\n "operand_index",\n "external"\n ],\n "type": "object"\n }\n ]\n },\n "source_address": {\n "type": "string"\n },\n "source_procedure": {\n "anyOf": [\n {\n "additionalProperties": false,\n "properties": {\n "address": {\n "type": "string"\n },\n "body": {\n "default": {\n "available": false,\n "reason": "The provider did not report complete function body ranges."\n },\n "oneOf": [\n {\n "additionalProperties": false,\n "properties": {\n "available": {\n "const": false,\n "type": "boolean"\n },\n "reason": {\n "type": "string"\n }\n },\n "required": [\n "available",\n "reason"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "available": {\n "const": true,\n "type": "boolean"\n },\n "contains_entry": {\n "type": "boolean"\n },\n "non_contiguous": {\n "type": "boolean"\n },\n "provenance": {\n "minLength": 1,\n "type": "string"\n },\n "ranges": {\n "items": {\n "additionalProperties": false,\n "properties": {\n "end": {\n "description": "Inclusive last address of this observed body range.",\n "type": "string"\n },\n "start": {\n "type": "string"\n }\n },\n "required": [\n "start",\n "end"\n ],\n "type": "object"\n },\n "type": "array"\n },\n "span_bytes": {\n "anyOf": [\n {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n {\n "type": "null"\n }\n ]\n },\n "total_bytes": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "available",\n "provenance",\n "ranges",\n "total_bytes",\n "span_bytes",\n "non_contiguous",\n "contains_entry"\n ],\n "type": "object"\n }\n ]\n },\n "classification": {\n "anyOf": [\n {\n "additionalProperties": false,\n "properties": {\n "external": {\n "type": "boolean"\n },\n "provenance": {\n "minLength": 1,\n "type": "string"\n },\n "thunk": {\n "type": "boolean"\n },\n "thunk_target": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "external",\n "thunk",\n "thunk_target",\n "provenance"\n ],\n "type": "object"\n },\n {\n "type": "null"\n }\n ],\n "default": null\n },\n "name": {\n "type": "string"\n }\n },\n "required": [\n "address",\n "name",\n "classification",\n "body"\n ],\n "type": "object"\n },\n {\n "type": "null"\n }\n ]\n },\n "target_address": {\n "type": "string"\n },\n "target_procedure": {\n "anyOf": [\n {\n "additionalProperties": false,\n "properties": {\n "address": {\n "type": "string"\n },\n "body": {\n "default": {\n "available": false,\n "reason": "The provider did not report complete function body ranges."\n },\n "oneOf": [\n {\n "additionalProperties": false,\n "properties": {\n "available": {\n "const": false,\n "type": "boolean"\n },\n "reason": {\n "type": "string"\n }\n },\n "required": [\n "available",\n "reason"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "available": {\n "const": true,\n "type": "boolean"\n },\n "contains_entry": {\n "type": "boolean"\n },\n "non_contiguous": {\n "type": "boolean"\n },\n "provenance": {\n "minLength": 1,\n "type": "string"\n },\n "ranges": {\n "items": {\n "additionalProperties": false,\n "properties": {\n "end": {\n "description": "Inclusive last address of this observed body range.",\n "type": "string"\n },\n "start": {\n "type": "string"\n }\n },\n "required": [\n "start",\n "end"\n ],\n "type": "object"\n },\n "type": "array"\n },\n "span_bytes": {\n "anyOf": [\n {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n {\n "type": "null"\n }\n ]\n },\n "total_bytes": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "available",\n "provenance",\n "ranges",\n "total_bytes",\n "span_bytes",\n "non_contiguous",\n "contains_entry"\n ],\n "type": "object"\n }\n ]\n },\n "classification": {\n "anyOf": [\n {\n "additionalProperties": false,\n "properties": {\n "external": {\n "type": "boolean"\n },\n "provenance": {\n "minLength": 1,\n "type": "string"\n },\n "thunk": {\n "type": "boolean"\n },\n "thunk_target": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "external",\n "thunk",\n "thunk_target",\n "provenance"\n ],\n "type": "object"\n },\n {\n "type": "null"\n }\n ],\n "default": null\n },\n "name": {\n "type": "string"\n }\n },\n "required": [\n "address",\n "name",\n "classification",\n "body"\n ],\n "type": "object"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "source_address",\n "target_address",\n "source_procedure",\n "target_procedure",\n "kind"\n ],\n "type": "object"\n },\n "type": "array"\n },\n "limitations": {\n "default": [],\n "items": {\n "type": "string"\n },\n "type": "array"\n },\n "native_api": {\n "anyOf": [\n {\n "oneOf": [\n {\n "additionalProperties": false,\n "properties": {\n "available": {\n "const": false,\n "type": "boolean"\n },\n "reason": {\n "minLength": 1,\n "type": "string"\n },\n "residual_unknowns": {\n "items": {\n "minLength": 1,\n "type": "string"\n },\n "minItems": 1,\n "type": "array"\n }\n },\n "required": [\n "available",\n "reason",\n "residual_unknowns"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "available": {\n "const": true,\n "type": "boolean"\n },\n "calling_convention": {\n "minLength": 1,\n "type": "string"\n },\n "decompiler_artifacts": {\n "items": {\n "enum": [\n "recovered-signature",\n "register-and-stack-variables",\n "compiler-generated-control-flow",\n "pointer-arithmetic",\n "pseudocode"\n ],\n "type": "string"\n },\n "type": "array"\n },\n "jump_tables": {\n "items": {\n "additionalProperties": false,\n "properties": {\n "data_sources": {\n "items": {\n "additionalProperties": false,\n "properties": {\n "address": {\n "minLength": 1,\n "type": "string"\n },\n "confidence": {\n "enum": [\n "low",\n "medium",\n "high"\n ],\n "type": "string"\n },\n "entry_count": {\n "anyOf": [\n {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n {\n "type": "null"\n }\n ]\n },\n "entry_size_bytes": {\n "anyOf": [\n {\n "maximum": 9007199254740991,\n "minimum": 1,\n "type": "integer"\n },\n {\n "type": "null"\n }\n ]\n },\n "evidence": {\n "items": {\n "additionalProperties": false,\n "properties": {\n "detail": {\n "minLength": 1,\n "type": "string"\n },\n "kind": {\n "enum": [\n "signature-source",\n "decompiler-type",\n "type-lock",\n "calling-convention",\n "jump-table"\n ],\n "type": "string"\n },\n "source": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "kind",\n "source",\n "detail"\n ],\n "type": "object"\n },\n "minItems": 1,\n "type": "array"\n },\n "provenance": {\n "enum": [\n "ghidra-decompiler-load-table",\n "ghidra-dispatch-block-data-reference",\n "ghidra-aarch64-byte-table",\n "ghidra-aarch64-halfword-table"\n ],\n "type": "string"\n }\n },\n "required": [\n "address",\n "provenance",\n "entry_size_bytes",\n "entry_count",\n "confidence",\n "evidence"\n ],\n "type": "object"\n },\n "type": "array"\n },\n "default_targets": {\n "default": [],\n "items": {\n "additionalProperties": false,\n "properties": {\n "confidence": {\n "enum": [\n "low",\n "medium",\n "high"\n ],\n "type": "string"\n },\n "evidence": {\n "items": {\n "additionalProperties": false,\n "properties": {\n "detail": {\n "minLength": 1,\n "type": "string"\n },\n "kind": {\n "enum": [\n "signature-source",\n "decompiler-type",\n "type-lock",\n "calling-convention",\n "jump-table"\n ],\n "type": "string"\n },\n "source": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "kind",\n "source",\n "detail"\n ],\n "type": "object"\n },\n "minItems": 1,\n "type": "array"\n },\n "target_address": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "target_address",\n "confidence",\n "evidence"\n ],\n "type": "object"\n },\n "type": "array"\n },\n "dispatch_address": {\n "minLength": 1,\n "type": "string"\n },\n "limitations": {\n "items": {\n "type": "string"\n },\n "type": "array"\n },\n "mappings": {\n "items": {\n "additionalProperties": false,\n "properties": {\n "case_value": {\n "anyOf": [\n {\n "maximum": 9007199254740991,\n "minimum": -9007199254740991,\n "type": "integer"\n },\n {\n "type": "null"\n }\n ]\n },\n "confidence": {\n "enum": [\n "low",\n "medium",\n "high"\n ],\n "type": "string"\n },\n "evidence": {\n "items": {\n "additionalProperties": false,\n "properties": {\n "detail": {\n "minLength": 1,\n "type": "string"\n },\n "kind": {\n "enum": [\n "signature-source",\n "decompiler-type",\n "type-lock",\n "calling-convention",\n "jump-table"\n ],\n "type": "string"\n },\n "source": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "kind",\n "source",\n "detail"\n ],\n "type": "object"\n },\n "minItems": 1,\n "type": "array"\n },\n "target_address": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "case_value",\n "target_address",\n "confidence",\n "evidence"\n ],\n "type": "object"\n },\n "type": "array"\n }\n },\n "required": [\n "dispatch_address",\n "data_sources",\n "mappings",\n "default_targets",\n "limitations"\n ],\n "type": "object"\n },\n "type": "array"\n },\n "limitations": {\n "items": {\n "type": "string"\n },\n "type": "array"\n },\n "parameters": {\n "items": {\n "additionalProperties": false,\n "properties": {\n "confidence": {\n "enum": [\n "low",\n "medium",\n "high"\n ],\n "type": "string"\n },\n "data_type": {\n "minLength": 1,\n "type": "string"\n },\n "decompiler_artifacts": {\n "items": {\n "enum": [\n "recovered-signature",\n "register-or-stack-storage",\n "compiler-generated-variable"\n ],\n "type": "string"\n },\n "type": "array"\n },\n "evidence": {\n "items": {\n "additionalProperties": false,\n "properties": {\n "detail": {\n "minLength": 1,\n "type": "string"\n },\n "kind": {\n "enum": [\n "signature-source",\n "decompiler-type",\n "type-lock",\n "calling-convention",\n "jump-table"\n ],\n "type": "string"\n },\n "source": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "kind",\n "source",\n "detail"\n ],\n "type": "object"\n },\n "minItems": 1,\n "type": "array"\n },\n "name": {\n "anyOf": [\n {\n "minLength": 1,\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "ordinal": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "role": {\n "const": "parameter",\n "type": "string"\n },\n "size_bytes": {\n "anyOf": [\n {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n {\n "type": "null"\n }\n ]\n },\n "storage": {\n "anyOf": [\n {\n "minLength": 1,\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "ordinal",\n "name",\n "data_type",\n "size_bytes",\n "storage",\n "confidence",\n "evidence",\n "decompiler_artifacts",\n "role"\n ],\n "type": "object"\n },\n "type": "array"\n },\n "provenance": {\n "minLength": 1,\n "type": "string"\n },\n "pseudocode": {\n "additionalProperties": false,\n "properties": {\n "classification": {\n "const": "decompiler-generated-non-source",\n "type": "string"\n },\n "compilable": {\n "const": false,\n "type": "boolean"\n }\n },\n "required": [\n "classification",\n "compilable"\n ],\n "type": "object"\n },\n "return_type": {\n "additionalProperties": false,\n "properties": {\n "confidence": {\n "enum": [\n "low",\n "medium",\n "high"\n ],\n "type": "string"\n },\n "data_type": {\n "minLength": 1,\n "type": "string"\n },\n "decompiler_artifacts": {\n "items": {\n "enum": [\n "recovered-signature",\n "register-or-stack-storage",\n "compiler-generated-variable"\n ],\n "type": "string"\n },\n "type": "array"\n },\n "evidence": {\n "items": {\n "additionalProperties": false,\n "properties": {\n "detail": {\n "minLength": 1,\n "type": "string"\n },\n "kind": {\n "enum": [\n "signature-source",\n "decompiler-type",\n "type-lock",\n "calling-convention",\n "jump-table"\n ],\n "type": "string"\n },\n "source": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "kind",\n "source",\n "detail"\n ],\n "type": "object"\n },\n "minItems": 1,\n "type": "array"\n },\n "name": {\n "type": "null"\n },\n "ordinal": {\n "type": "null"\n },\n "role": {\n "const": "return",\n "type": "string"\n },\n "size_bytes": {\n "anyOf": [\n {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n {\n "type": "null"\n }\n ]\n },\n "storage": {\n "anyOf": [\n {\n "minLength": 1,\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "ordinal",\n "name",\n "data_type",\n "size_bytes",\n "storage",\n "confidence",\n "evidence",\n "decompiler_artifacts",\n "role"\n ],\n "type": "object"\n },\n "signature_source": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "available",\n "provenance",\n "signature_source",\n "calling_convention",\n "return_type",\n "parameters",\n "jump_tables",\n "pseudocode",\n "decompiler_artifacts",\n "limitations"\n ],\n "type": "object"\n }\n ]\n },\n {\n "type": "null"\n }\n ],\n "default": null\n },\n "native_value_flow": {\n "anyOf": [\n {\n "oneOf": [\n {\n "additionalProperties": false,\n "properties": {\n "available": {\n "const": true,\n "type": "boolean"\n },\n "def_use": {\n "items": {\n "additionalProperties": false,\n "properties": {\n "definition": {\n "minLength": 1,\n "type": "string"\n },\n "input_index": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "use": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "definition",\n "use",\n "input_index"\n ],\n "type": "object"\n },\n "type": "array"\n },\n "effects": {\n "items": {\n "additionalProperties": false,\n "properties": {\n "kind": {\n "enum": [\n "memory_read",\n "memory_write",\n "conditional_branch",\n "indirect_branch",\n "direct_call",\n "indirect_call"\n ],\n "type": "string"\n },\n "operand_input": {\n "anyOf": [\n {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n {\n "type": "null"\n }\n ]\n },\n "operation": {\n "minLength": 1,\n "type": "string"\n },\n "value_input": {\n "anyOf": [\n {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "operation",\n "kind",\n "operand_input",\n "value_input"\n ],\n "type": "object"\n },\n "type": "array"\n },\n "known_omitted_edges": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "known_omitted_inputs": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "limitations": {\n "items": {\n "minLength": 1,\n "type": "string"\n },\n "type": "array"\n },\n "omitted_operations_lower_bound": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "operations": {\n "items": {\n "additionalProperties": false,\n "properties": {\n "address": {\n "minLength": 1,\n "type": "string"\n },\n "block_membership": {\n "default": "unavailable",\n "enum": [\n "member",\n "detached",\n "unavailable"\n ],\n "type": "string"\n },\n "id": {\n "minLength": 1,\n "type": "string"\n },\n "inputs": {\n "items": {\n "additionalProperties": false,\n "properties": {\n "constant_hex": {\n "anyOf": [\n {\n "pattern": "^[0-9a-f]+$",\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "kind": {\n "enum": [\n "constant",\n "address",\n "register",\n "unique",\n "other"\n ],\n "type": "string"\n },\n "location": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "size_bytes": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "kind",\n "size_bytes",\n "location",\n "constant_hex"\n ],\n "type": "object"\n },\n "type": "array"\n },\n "is_dead": {\n "type": "boolean"\n },\n "opcode": {\n "minLength": 1,\n "type": "string"\n },\n "output": {\n "anyOf": [\n {\n "additionalProperties": false,\n "properties": {\n "constant_hex": {\n "anyOf": [\n {\n "pattern": "^[0-9a-f]+$",\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "kind": {\n "enum": [\n "constant",\n "address",\n "register",\n "unique",\n "other"\n ],\n "type": "string"\n },\n "location": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "size_bytes": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "kind",\n "size_bytes",\n "location",\n "constant_hex"\n ],\n "type": "object"\n },\n {\n "type": "null"\n }\n ]\n },\n "sequence": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "id",\n "address",\n "sequence",\n "opcode",\n "is_dead",\n "block_membership",\n "inputs",\n "output"\n ],\n "type": "object"\n },\n "type": "array"\n },\n "parameter_uses": {\n "default": [],\n "items": {\n "additionalProperties": false,\n "properties": {\n "input_index": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "ordinal": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "use": {\n "type": "string"\n }\n },\n "required": [\n "ordinal",\n "use",\n "input_index"\n ],\n "type": "object"\n },\n "type": "array"\n },\n "parameters": {\n "default": [],\n "items": {\n "additionalProperties": false,\n "properties": {\n "data_type": {\n "type": "string"\n },\n "name": {\n "type": "string"\n },\n "ordinal": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "ordinal",\n "name",\n "data_type"\n ],\n "type": "object"\n },\n "type": "array"\n },\n "provenance": {\n "const": "ghidra-high-pcode",\n "type": "string"\n },\n "truncated": {\n "type": "boolean"\n }\n },\n "required": [\n "available",\n "provenance",\n "operations",\n "def_use",\n "effects",\n "parameters",\n "parameter_uses",\n "truncated",\n "omitted_operations_lower_bound",\n "known_omitted_inputs",\n "known_omitted_edges",\n "limitations"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "available": {\n "const": false,\n "type": "boolean"\n },\n "limitations": {\n "items": {\n "minLength": 1,\n "type": "string"\n },\n "type": "array"\n },\n "reason": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "available",\n "reason",\n "limitations"\n ],\n "type": "object"\n }\n ]\n },\n {\n "type": "null"\n }\n ],\n "default": null\n },\n "outgoing_references": {\n "items": {\n "additionalProperties": false,\n "properties": {\n "kind": {\n "oneOf": [\n {\n "additionalProperties": false,\n "properties": {\n "available": {\n "const": false,\n "type": "boolean"\n },\n "reason": {\n "type": "string"\n }\n },\n "required": [\n "available",\n "reason"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "available": {\n "const": true,\n "type": "boolean"\n },\n "call": {\n "type": "boolean"\n },\n "computed": {\n "type": "boolean"\n },\n "conditional": {\n "type": "boolean"\n },\n "data": {\n "type": "boolean"\n },\n "external": {\n "type": "boolean"\n },\n "flow": {\n "type": "boolean"\n },\n "indirect": {\n "type": "boolean"\n },\n "jump": {\n "type": "boolean"\n },\n "operand_index": {\n "maximum": 9007199254740991,\n "minimum": -9007199254740991,\n "type": "integer"\n },\n "primary": {\n "type": "boolean"\n },\n "provenance": {\n "minLength": 1,\n "type": "string"\n },\n "read": {\n "type": "boolean"\n },\n "terminal": {\n "type": "boolean"\n },\n "type": {\n "type": "string"\n },\n "write": {\n "type": "boolean"\n }\n },\n "required": [\n "available",\n "provenance",\n "type",\n "flow",\n "call",\n "jump",\n "data",\n "read",\n "write",\n "indirect",\n "computed",\n "conditional",\n "terminal",\n "primary",\n "operand_index",\n "external"\n ],\n "type": "object"\n }\n ]\n },\n "source_address": {\n "type": "string"\n },\n "source_procedure": {\n "anyOf": [\n {\n "additionalProperties": false,\n "properties": {\n "address": {\n "type": "string"\n },\n "body": {\n "default": {\n "available": false,\n "reason": "The provider did not report complete function body ranges."\n },\n "oneOf": [\n {\n "additionalProperties": false,\n "properties": {\n "available": {\n "const": false,\n "type": "boolean"\n },\n "reason": {\n "type": "string"\n }\n },\n "required": [\n "available",\n "reason"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "available": {\n "const": true,\n "type": "boolean"\n },\n "contains_entry": {\n "type": "boolean"\n },\n "non_contiguous": {\n "type": "boolean"\n },\n "provenance": {\n "minLength": 1,\n "type": "string"\n },\n "ranges": {\n "items": {\n "additionalProperties": false,\n "properties": {\n "end": {\n "description": "Inclusive last address of this observed body range.",\n "type": "string"\n },\n "start": {\n "type": "string"\n }\n },\n "required": [\n "start",\n "end"\n ],\n "type": "object"\n },\n "type": "array"\n },\n "span_bytes": {\n "anyOf": [\n {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n {\n "type": "null"\n }\n ]\n },\n "total_bytes": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "available",\n "provenance",\n "ranges",\n "total_bytes",\n "span_bytes",\n "non_contiguous",\n "contains_entry"\n ],\n "type": "object"\n }\n ]\n },\n "classification": {\n "anyOf": [\n {\n "additionalProperties": false,\n "properties": {\n "external": {\n "type": "boolean"\n },\n "provenance": {\n "minLength": 1,\n "type": "string"\n },\n "thunk": {\n "type": "boolean"\n },\n "thunk_target": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "external",\n "thunk",\n "thunk_target",\n "provenance"\n ],\n "type": "object"\n },\n {\n "type": "null"\n }\n ],\n "default": null\n },\n "name": {\n "type": "string"\n }\n },\n "required": [\n "address",\n "name",\n "classification",\n "body"\n ],\n "type": "object"\n },\n {\n "type": "null"\n }\n ]\n },\n "target_address": {\n "type": "string"\n },\n "target_procedure": {\n "anyOf": [\n {\n "additionalProperties": false,\n "properties": {\n "address": {\n "type": "string"\n },\n "body": {\n "default": {\n "available": false,\n "reason": "The provider did not report complete function body ranges."\n },\n "oneOf": [\n {\n "additionalProperties": false,\n "properties": {\n "available": {\n "const": false,\n "type": "boolean"\n },\n "reason": {\n "type": "string"\n }\n },\n "required": [\n "available",\n "reason"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "available": {\n "const": true,\n "type": "boolean"\n },\n "contains_entry": {\n "type": "boolean"\n },\n "non_contiguous": {\n "type": "boolean"\n },\n "provenance": {\n "minLength": 1,\n "type": "string"\n },\n "ranges": {\n "items": {\n "additionalProperties": false,\n "properties": {\n "end": {\n "description": "Inclusive last address of this observed body range.",\n "type": "string"\n },\n "start": {\n "type": "string"\n }\n },\n "required": [\n "start",\n "end"\n ],\n "type": "object"\n },\n "type": "array"\n },\n "span_bytes": {\n "anyOf": [\n {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n {\n "type": "null"\n }\n ]\n },\n "total_bytes": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "available",\n "provenance",\n "ranges",\n "total_bytes",\n "span_bytes",\n "non_contiguous",\n "contains_entry"\n ],\n "type": "object"\n }\n ]\n },\n "classification": {\n "anyOf": [\n {\n "additionalProperties": false,\n "properties": {\n "external": {\n "type": "boolean"\n },\n "provenance": {\n "minLength": 1,\n "type": "string"\n },\n "thunk": {\n "type": "boolean"\n },\n "thunk_target": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "external",\n "thunk",\n "thunk_target",\n "provenance"\n ],\n "type": "object"\n },\n {\n "type": "null"\n }\n ],\n "default": null\n },\n "name": {\n "type": "string"\n }\n },\n "required": [\n "address",\n "name",\n "classification",\n "body"\n ],\n "type": "object"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "source_address",\n "target_address",\n "source_procedure",\n "target_procedure",\n "kind"\n ],\n "type": "object"\n },\n "type": "array"\n },\n "procedure": {\n "additionalProperties": false,\n "properties": {\n "address": {\n "type": "string"\n },\n "body": {\n "default": {\n "available": false,\n "reason": "The provider did not report complete function body ranges."\n },\n "oneOf": [\n {\n "additionalProperties": false,\n "properties": {\n "available": {\n "const": false,\n "type": "boolean"\n },\n "reason": {\n "type": "string"\n }\n },\n "required": [\n "available",\n "reason"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "available": {\n "const": true,\n "type": "boolean"\n },\n "contains_entry": {\n "type": "boolean"\n },\n "non_contiguous": {\n "type": "boolean"\n },\n "provenance": {\n "minLength": 1,\n "type": "string"\n },\n "ranges": {\n "items": {\n "additionalProperties": false,\n "properties": {\n "end": {\n "description": "Inclusive last address of this observed body range.",\n "type": "string"\n },\n "start": {\n "type": "string"\n }\n },\n "required": [\n "start",\n "end"\n ],\n "type": "object"\n },\n "type": "array"\n },\n "span_bytes": {\n "anyOf": [\n {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n {\n "type": "null"\n }\n ]\n },\n "total_bytes": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "available",\n "provenance",\n "ranges",\n "total_bytes",\n "span_bytes",\n "non_contiguous",\n "contains_entry"\n ],\n "type": "object"\n }\n ]\n },\n "classification": {\n "anyOf": [\n {\n "additionalProperties": false,\n "properties": {\n "external": {\n "type": "boolean"\n },\n "provenance": {\n "minLength": 1,\n "type": "string"\n },\n "thunk": {\n "type": "boolean"\n },\n "thunk_target": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "external",\n "thunk",\n "thunk_target",\n "provenance"\n ],\n "type": "object"\n },\n {\n "type": "null"\n }\n ],\n "default": null\n },\n "locals": {\n "items": {\n "additionalProperties": false,\n "properties": {\n "description": {\n "type": "string"\n },\n "provenance": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "description",\n "provenance"\n ],\n "type": "object"\n },\n "type": "array"\n },\n "name": {\n "type": "string"\n },\n "signature": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "address",\n "name",\n "classification",\n "body",\n "signature",\n "locals"\n ],\n "type": "object"\n },\n "pseudocode": {\n "type": "string"\n },\n "referenced_names": {\n "items": {\n "additionalProperties": false,\n "properties": {\n "address": {\n "type": "string"\n },\n "source_address": {\n "type": "string"\n },\n "value": {\n "type": "string"\n }\n },\n "required": [\n "address",\n "value",\n "source_address"\n ],\n "type": "object"\n },\n "type": "array"\n },\n "referenced_strings": {\n "items": {\n "additionalProperties": false,\n "properties": {\n "address": {\n "type": "string"\n },\n "source_address": {\n "type": "string"\n },\n "value": {\n "type": "string"\n }\n },\n "required": [\n "address",\n "value",\n "source_address"\n ],\n "type": "object"\n },\n "type": "array"\n }\n },\n "required": [\n "procedure",\n "pseudocode",\n "assembly",\n "comments",\n "callers",\n "callees",\n "incoming_references",\n "outgoing_references",\n "referenced_strings",\n "referenced_names",\n "basic_blocks",\n "native_api",\n "native_value_flow",\n "limitations"\n ],\n "type": "object"\n },\n "effects": {\n "additionalProperties": false,\n "properties": {\n "persists_after_close": {\n "const": false,\n "type": "boolean"\n },\n "scope": {\n "const": "session-analysis-database",\n "type": "string"\n },\n "source_bytes_modified": {\n "const": false,\n "type": "boolean"\n }\n },\n "required": [\n "scope",\n "source_bytes_modified",\n "persists_after_close"\n ],\n "type": "object"\n }\n },\n "required": [\n "annotations",\n "dossier",\n "effects"\n ],\n "type": "object"\n }\n },\n "required": [\n "result",\n "evidence_id",\n "evidence"\n ],\n "type": "object"\n },\n "requiresSession": false,\n "title": "Annotate Native Function"\n },\n {\n "analysisOperation": "inspect_native_load_image",\n "annotations": {\n "destructiveHint": false,\n "idempotentHint": true,\n "openWorldHint": false,\n "readOnlyHint": false\n },\n "description": "Verify the provider\'s loaded DOS MZ or explicitly selected COM image against its immutable target snapshot: complete original/modified source-byte digests, header/module file mappings and memory digests, relocations and external entry. Returns measured observations and independent checks with mismatch coordinates. COM verification includes its imposed entry register context and does not claim PSP/runtime coverage. Overlay and uninitialized coverage remain explicit; other formats return unsupported. Does not execute or modify the target.",\n "effects": {\n "accessesNetwork": false,\n "changesUiState": false,\n "idempotent": true,\n "launchesProcess": false,\n "mayDiscardData": false,\n "mutatesSession": true,\n "mutatesTarget": false,\n "writesFilesystem": false\n },\n "inputSchema": {\n "$schema": "https://json-schema.org/draft/2020-12/schema",\n "additionalProperties": false,\n "examples": [\n {}\n ],\n "properties": {},\n "type": "object"\n },\n "kind": "official-proxy",\n "name": "inspect_native_load_image",\n "outputSchema": {\n "$defs": {\n "__schema0": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "number"\n },\n {\n "type": "boolean"\n },\n {\n "type": "null"\n },\n {\n "items": {\n "$ref": "#/$defs/__schema0"\n },\n "type": "array"\n },\n {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n }\n ]\n }\n },\n "$schema": "https://json-schema.org/draft/2020-12/schema",\n "additionalProperties": false,\n "properties": {\n "evidence": {\n "additionalProperties": false,\n "properties": {\n "analysis_profile": {\n "additionalProperties": false,\n "properties": {\n "digest": {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n },\n "parameters": {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n },\n "provider": {\n "additionalProperties": false,\n "properties": {\n "id": {\n "minLength": 1,\n "type": "string"\n },\n "name": {\n "minLength": 1,\n "type": "string"\n },\n "version": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "id",\n "name",\n "version"\n ],\n "type": "object"\n }\n },\n "required": [\n "provider",\n "parameters",\n "digest"\n ],\n "type": "object"\n },\n "authority": {\n "enum": [\n "shipped-artifact",\n "controlled-replay",\n "historical-reference",\n "external-service",\n "analyst-inference"\n ],\n "type": "string"\n },\n "confidence": {\n "enum": [\n "observed",\n "derived",\n "inferred"\n ],\n "type": "string"\n },\n "environment": {\n "anyOf": [\n {\n "additionalProperties": false,\n "properties": {\n "architecture": {\n "minLength": 1,\n "type": "string"\n },\n "id": {\n "minLength": 1,\n "type": "string"\n },\n "isolation": {\n "enum": [\n "none",\n "process",\n "container",\n "virtual-machine"\n ],\n "type": "string"\n },\n "platform": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "id",\n "platform",\n "architecture",\n "isolation"\n ],\n "type": "object"\n },\n {\n "type": "null"\n }\n ]\n },\n "evidence_id": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "evidence_links": {\n "items": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "type": "array"\n },\n "limitations": {\n "items": {\n "type": "string"\n },\n "type": "array"\n },\n "locations": {\n "items": {\n "oneOf": [\n {\n "additionalProperties": false,\n "properties": {\n "address": {\n "minLength": 1,\n "type": "string"\n },\n "kind": {\n "const": "address",\n "type": "string"\n }\n },\n "required": [\n "kind",\n "address"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "end": {\n "minLength": 1,\n "type": "string"\n },\n "kind": {\n "const": "address-range",\n "type": "string"\n },\n "start": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "kind",\n "start",\n "end"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "kind": {\n "const": "artifact-path",\n "type": "string"\n },\n "path": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "kind",\n "path"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "kind": {\n "const": "file-offset",\n "type": "string"\n },\n "offset": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "kind",\n "offset"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "end": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "kind": {\n "const": "file-offset-range",\n "type": "string"\n },\n "start": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "kind",\n "start",\n "end"\n ],\n "type": "object"\n }\n ]\n },\n "type": "array"\n },\n "normalized_result": {\n "$ref": "#/$defs/__schema0"\n },\n "operation": {\n "minLength": 1,\n "type": "string"\n },\n "parameters": {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n },\n "predicate_type": {\n "minLength": 1,\n "type": "string"\n },\n "provider": {\n "additionalProperties": false,\n "properties": {\n "id": {\n "minLength": 1,\n "type": "string"\n },\n "name": {\n "minLength": 1,\n "type": "string"\n },\n "version": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "id",\n "name",\n "version"\n ],\n "type": "object"\n },\n "raw_result": {\n "anyOf": [\n {\n "$ref": "#/$defs/__schema0"\n },\n {\n "type": "null"\n }\n ]\n },\n "subject": {\n "anyOf": [\n {\n "additionalProperties": false,\n "properties": {\n "architecture": {\n "anyOf": [\n {\n "enum": [\n "x86",\n "x86_64",\n "arm",\n "arm64"\n ],\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "digest": {\n "additionalProperties": false,\n "properties": {\n "sha256": {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n }\n },\n "required": [\n "sha256"\n ],\n "type": "object"\n },\n "format": {\n "enum": [\n "hopper",\n "analysis-database",\n "mach-o",\n "elf",\n "pe",\n "dos-mz",\n "dos-com",\n "zip",\n "ipa",\n "apk",\n "msix",\n "appx",\n "asar",\n "dmg",\n "pkg",\n "plist",\n "javascript",\n "source-map",\n "directory",\n "file",\n "unknown",\n "mach-o-universal",\n "javascript-bundle",\n "entitlements"\n ],\n "type": "string"\n },\n "local_path": {\n "type": "string"\n },\n "name": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "name",\n "digest",\n "format",\n "architecture",\n "local_path"\n ],\n "type": "object"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "evidence_id",\n "subject",\n "provider",\n "predicate_type",\n "operation",\n "parameters",\n "raw_result",\n "normalized_result",\n "confidence",\n "authority",\n "environment",\n "limitations",\n "locations",\n "evidence_links"\n ],\n "type": "object"\n },\n "evidence_id": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "result": {\n "oneOf": [\n {\n "additionalProperties": false,\n "properties": {\n "limitations": {\n "items": {\n "minLength": 1,\n "type": "string"\n },\n "type": "array"\n },\n "observations": {\n "additionalProperties": false,\n "properties": {\n "compiler_spec_id": {\n "minLength": 1,\n "type": "string"\n },\n "default_address_space": {\n "minLength": 1,\n "type": "string"\n },\n "entry_context": {\n "items": {\n "additionalProperties": false,\n "properties": {\n "address": {\n "minLength": 1,\n "type": "string"\n },\n "registers": {\n "items": {\n "additionalProperties": false,\n "properties": {\n "name": {\n "minLength": 1,\n "type": "string"\n },\n "value_hex": {\n "anyOf": [\n {\n "pattern": "^0x[a-f0-9]+$",\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "name",\n "value_hex"\n ],\n "type": "object"\n },\n "type": "array"\n }\n },\n "required": [\n "address",\n "registers"\n ],\n "type": "object"\n },\n "type": "array"\n },\n "entry_points": {\n "items": {\n "minLength": 1,\n "type": "string"\n },\n "type": "array"\n },\n "executable_format": {\n "minLength": 1,\n "type": "string"\n },\n "image_base": {\n "minLength": 1,\n "type": "string"\n },\n "language_id": {\n "minLength": 1,\n "type": "string"\n },\n "mappings": {\n "items": {\n "additionalProperties": false,\n "properties": {\n "address_space": {\n "minLength": 1,\n "type": "string"\n },\n "block": {\n "type": "string"\n },\n "end": {\n "minLength": 1,\n "type": "string"\n },\n "file_offset": {\n "anyOf": [\n {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n {\n "type": "null"\n }\n ]\n },\n "initialized": {\n "type": "boolean"\n },\n "length": {\n "maximum": 9007199254740991,\n "minimum": 1,\n "type": "integer"\n },\n "loaded": {\n "type": "boolean"\n },\n "overlay": {\n "type": "boolean"\n },\n "sha256": {\n "anyOf": [\n {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "source_file_index": {\n "anyOf": [\n {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n {\n "type": "null"\n }\n ]\n },\n "start": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "block",\n "start",\n "end",\n "address_space",\n "initialized",\n "loaded",\n "overlay",\n "length",\n "source_file_index",\n "file_offset",\n "sha256"\n ],\n "type": "object"\n },\n "type": "array"\n },\n "metadata_recovery": {\n "items": {\n "additionalProperties": false,\n "properties": {\n "analysis_artifact_sha256": {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n },\n "coverage": {\n "anyOf": [\n {\n "additionalProperties": false,\n "properties": {\n "basis": {\n "const": "rehydrated-pointer-candidates-and-committed-instance-types",\n "type": "string"\n },\n "frozen_object_candidates": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "frozen_objects_annotated": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "frozen_object_candidates",\n "frozen_objects_annotated",\n "basis"\n ],\n "type": "object"\n },\n {\n "type": "null"\n }\n ]\n },\n "derived_memory": {\n "anyOf": [\n {\n "additionalProperties": false,\n "properties": {\n "address": {\n "pattern": "^0x[0-9a-f]+$",\n "type": "string"\n },\n "file_offset": {\n "type": "null"\n },\n "sha256": {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n },\n "size_bytes": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "address",\n "size_bytes",\n "sha256",\n "file_offset"\n ],\n "type": "object"\n },\n {\n "type": "null"\n }\n ]\n },\n "diagnostics": {\n "items": {\n "type": "string"\n },\n "type": "array"\n },\n "discovery": {\n "anyOf": [\n {\n "enum": [\n "symbol",\n "signature-heuristic"\n ],\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "format": {\n "const": "dotnet-nativeaot",\n "type": "string"\n },\n "format_major": {\n "anyOf": [\n {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n {\n "type": "null"\n }\n ]\n },\n "format_minor": {\n "anyOf": [\n {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n {\n "type": "null"\n }\n ]\n },\n "header_address": {\n "anyOf": [\n {\n "pattern": "^0x[0-9a-f]+$",\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "limitations": {\n "items": {\n "type": "string"\n },\n "type": "array"\n },\n "method_tables": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "reason": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "status": {\n "enum": [\n "complete",\n "partial",\n "not_applicable"\n ],\n "type": "string"\n },\n "types": {\n "items": {\n "additionalProperties": false,\n "properties": {\n "address": {\n "pattern": "^0x[0-9a-f]+$",\n "type": "string"\n },\n "type": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "address",\n "type"\n ],\n "type": "object"\n },\n "type": "array"\n }\n },\n "required": [\n "format",\n "status",\n "reason",\n "analysis_artifact_sha256",\n "header_address",\n "discovery",\n "format_major",\n "format_minor",\n "method_tables",\n "types",\n "derived_memory",\n "coverage",\n "diagnostics",\n "limitations"\n ],\n "type": "object"\n },\n "type": "array"\n },\n "relocations": {\n "items": {\n "additionalProperties": false,\n "properties": {\n "address": {\n "minLength": 1,\n "type": "string"\n },\n "memory_bytes_hex": {\n "anyOf": [\n {\n "pattern": "^(?:[a-f0-9]{2})*$",\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "offset": {\n "anyOf": [\n {\n "maximum": 65535,\n "minimum": 0,\n "type": "integer"\n },\n {\n "type": "null"\n }\n ]\n },\n "original_bytes_hex": {\n "anyOf": [\n {\n "pattern": "^(?:[a-f0-9]{2})*$",\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "segment": {\n "anyOf": [\n {\n "maximum": 65535,\n "minimum": 0,\n "type": "integer"\n },\n {\n "type": "null"\n }\n ]\n },\n "status": {\n "minLength": 1,\n "type": "string"\n },\n "type": {\n "maximum": 9007199254740991,\n "minimum": -9007199254740991,\n "type": "integer"\n },\n "values": {\n "items": {\n "maximum": 9007199254740991,\n "minimum": -9007199254740991,\n "type": "integer"\n },\n "type": "array"\n }\n },\n "required": [\n "address",\n "segment",\n "offset",\n "status",\n "type",\n "values",\n "original_bytes_hex",\n "memory_bytes_hex"\n ],\n "type": "object"\n },\n "type": "array"\n },\n "source_files": {\n "items": {\n "additionalProperties": false,\n "properties": {\n "modified_sha256": {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n },\n "name": {\n "type": "string"\n },\n "original_sha256": {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n },\n "size": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "name",\n "size",\n "original_sha256",\n "modified_sha256"\n ],\n "type": "object"\n },\n "type": "array"\n }\n },\n "required": [\n "executable_format",\n "language_id",\n "compiler_spec_id",\n "image_base",\n "default_address_space",\n "source_files",\n "mappings",\n "relocations",\n "entry_points",\n "entry_context"\n ],\n "type": "object"\n },\n "reason": {\n "minLength": 1,\n "type": "string"\n },\n "status": {\n "const": "unsupported",\n "type": "string"\n }\n },\n "required": [\n "status",\n "reason",\n "observations",\n "limitations"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "checks": {\n "items": {\n "additionalProperties": false,\n "properties": {\n "address": {\n "anyOf": [\n {\n "minLength": 1,\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "expected": {\n "$ref": "#/$defs/__schema0"\n },\n "file_offset": {\n "anyOf": [\n {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n {\n "type": "null"\n }\n ]\n },\n "matched": {\n "type": "boolean"\n },\n "name": {\n "minLength": 1,\n "type": "string"\n },\n "observed": {\n "$ref": "#/$defs/__schema0"\n }\n },\n "required": [\n "name",\n "matched",\n "expected",\n "observed",\n "file_offset",\n "address"\n ],\n "type": "object"\n },\n "type": "array"\n },\n "entry": {\n "additionalProperties": false,\n "properties": {\n "linear_address": {\n "minLength": 1,\n "type": "string"\n },\n "offset": {\n "maximum": 65535,\n "minimum": 0,\n "type": "integer"\n },\n "relative_segment": {\n "maximum": 65535,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "relative_segment",\n "offset",\n "linear_address"\n ],\n "type": "object"\n },\n "format": {\n "enum": [\n "dos-mz",\n "dos-com"\n ],\n "type": "string"\n },\n "header_bytes": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "limitations": {\n "items": {\n "minLength": 1,\n "type": "string"\n },\n "type": "array"\n },\n "load_segment": {\n "maximum": 65535,\n "minimum": 0,\n "type": "integer"\n },\n "module_bytes": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "observations": {\n "additionalProperties": false,\n "properties": {\n "compiler_spec_id": {\n "minLength": 1,\n "type": "string"\n },\n "default_address_space": {\n "minLength": 1,\n "type": "string"\n },\n "entry_context": {\n "items": {\n "additionalProperties": false,\n "properties": {\n "address": {\n "minLength": 1,\n "type": "string"\n },\n "registers": {\n "items": {\n "additionalProperties": false,\n "properties": {\n "name": {\n "minLength": 1,\n "type": "string"\n },\n "value_hex": {\n "anyOf": [\n {\n "pattern": "^0x[a-f0-9]+$",\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "name",\n "value_hex"\n ],\n "type": "object"\n },\n "type": "array"\n }\n },\n "required": [\n "address",\n "registers"\n ],\n "type": "object"\n },\n "type": "array"\n },\n "entry_points": {\n "items": {\n "minLength": 1,\n "type": "string"\n },\n "type": "array"\n },\n "executable_format": {\n "minLength": 1,\n "type": "string"\n },\n "image_base": {\n "minLength": 1,\n "type": "string"\n },\n "language_id": {\n "minLength": 1,\n "type": "string"\n },\n "mappings": {\n "items": {\n "additionalProperties": false,\n "properties": {\n "address_space": {\n "minLength": 1,\n "type": "string"\n },\n "block": {\n "type": "string"\n },\n "end": {\n "minLength": 1,\n "type": "string"\n },\n "file_offset": {\n "anyOf": [\n {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n {\n "type": "null"\n }\n ]\n },\n "initialized": {\n "type": "boolean"\n },\n "length": {\n "maximum": 9007199254740991,\n "minimum": 1,\n "type": "integer"\n },\n "loaded": {\n "type": "boolean"\n },\n "overlay": {\n "type": "boolean"\n },\n "sha256": {\n "anyOf": [\n {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "source_file_index": {\n "anyOf": [\n {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n {\n "type": "null"\n }\n ]\n },\n "start": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "block",\n "start",\n "end",\n "address_space",\n "initialized",\n "loaded",\n "overlay",\n "length",\n "source_file_index",\n "file_offset",\n "sha256"\n ],\n "type": "object"\n },\n "type": "array"\n },\n "metadata_recovery": {\n "items": {\n "additionalProperties": false,\n "properties": {\n "analysis_artifact_sha256": {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n },\n "coverage": {\n "anyOf": [\n {\n "additionalProperties": false,\n "properties": {\n "basis": {\n "const": "rehydrated-pointer-candidates-and-committed-instance-types",\n "type": "string"\n },\n "frozen_object_candidates": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "frozen_objects_annotated": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "frozen_object_candidates",\n "frozen_objects_annotated",\n "basis"\n ],\n "type": "object"\n },\n {\n "type": "null"\n }\n ]\n },\n "derived_memory": {\n "anyOf": [\n {\n "additionalProperties": false,\n "properties": {\n "address": {\n "pattern": "^0x[0-9a-f]+$",\n "type": "string"\n },\n "file_offset": {\n "type": "null"\n },\n "sha256": {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n },\n "size_bytes": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "address",\n "size_bytes",\n "sha256",\n "file_offset"\n ],\n "type": "object"\n },\n {\n "type": "null"\n }\n ]\n },\n "diagnostics": {\n "items": {\n "type": "string"\n },\n "type": "array"\n },\n "discovery": {\n "anyOf": [\n {\n "enum": [\n "symbol",\n "signature-heuristic"\n ],\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "format": {\n "const": "dotnet-nativeaot",\n "type": "string"\n },\n "format_major": {\n "anyOf": [\n {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n {\n "type": "null"\n }\n ]\n },\n "format_minor": {\n "anyOf": [\n {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n {\n "type": "null"\n }\n ]\n },\n "header_address": {\n "anyOf": [\n {\n "pattern": "^0x[0-9a-f]+$",\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "limitations": {\n "items": {\n "type": "string"\n },\n "type": "array"\n },\n "method_tables": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "reason": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "status": {\n "enum": [\n "complete",\n "partial",\n "not_applicable"\n ],\n "type": "string"\n },\n "types": {\n "items": {\n "additionalProperties": false,\n "properties": {\n "address": {\n "pattern": "^0x[0-9a-f]+$",\n "type": "string"\n },\n "type": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "address",\n "type"\n ],\n "type": "object"\n },\n "type": "array"\n }\n },\n "required": [\n "format",\n "status",\n "reason",\n "analysis_artifact_sha256",\n "header_address",\n "discovery",\n "format_major",\n "format_minor",\n "method_tables",\n "types",\n "derived_memory",\n "coverage",\n "diagnostics",\n "limitations"\n ],\n "type": "object"\n },\n "type": "array"\n },\n "relocations": {\n "items": {\n "additionalProperties": false,\n "properties": {\n "address": {\n "minLength": 1,\n "type": "string"\n },\n "memory_bytes_hex": {\n "anyOf": [\n {\n "pattern": "^(?:[a-f0-9]{2})*$",\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "offset": {\n "anyOf": [\n {\n "maximum": 65535,\n "minimum": 0,\n "type": "integer"\n },\n {\n "type": "null"\n }\n ]\n },\n "original_bytes_hex": {\n "anyOf": [\n {\n "pattern": "^(?:[a-f0-9]{2})*$",\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "segment": {\n "anyOf": [\n {\n "maximum": 65535,\n "minimum": 0,\n "type": "integer"\n },\n {\n "type": "null"\n }\n ]\n },\n "status": {\n "minLength": 1,\n "type": "string"\n },\n "type": {\n "maximum": 9007199254740991,\n "minimum": -9007199254740991,\n "type": "integer"\n },\n "values": {\n "items": {\n "maximum": 9007199254740991,\n "minimum": -9007199254740991,\n "type": "integer"\n },\n "type": "array"\n }\n },\n "required": [\n "address",\n "segment",\n "offset",\n "status",\n "type",\n "values",\n "original_bytes_hex",\n "memory_bytes_hex"\n ],\n "type": "object"\n },\n "type": "array"\n },\n "source_files": {\n "items": {\n "additionalProperties": false,\n "properties": {\n "modified_sha256": {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n },\n "name": {\n "type": "string"\n },\n "original_sha256": {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n },\n "size": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "name",\n "size",\n "original_sha256",\n "modified_sha256"\n ],\n "type": "object"\n },\n "type": "array"\n }\n },\n "required": [\n "executable_format",\n "language_id",\n "compiler_spec_id",\n "image_base",\n "default_address_space",\n "source_files",\n "mappings",\n "relocations",\n "entry_points",\n "entry_context"\n ],\n "type": "object"\n },\n "overlay_bytes": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "status": {\n "enum": [\n "verified",\n "mismatch"\n ],\n "type": "string"\n },\n "target_sha256": {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n }\n },\n "required": [\n "status",\n "format",\n "target_sha256",\n "load_segment",\n "header_bytes",\n "module_bytes",\n "overlay_bytes",\n "entry",\n "observations",\n "checks",\n "limitations"\n ],\n "type": "object"\n }\n ]\n }\n },\n "required": [\n "result",\n "evidence_id",\n "evidence"\n ],\n "type": "object"\n },\n "requiresSession": false,\n "title": "Inspect Native Load Image"\n },\n {\n "analysisOperation": "inspect_native_data_type",\n "annotations": {\n "destructiveHint": false,\n "idempotentHint": true,\n "openWorldHint": false,\n "readOnlyHint": false\n },\n "description": "Inspect one recovered type by exact database category path or defined typed data address. Returns observed size, alignment, packing, fields, bitfields, enum values, and child type identities; source-level authority and flexible-tail semantics remain unknown unless substantiated.",\n "effects": {\n "accessesNetwork": false,\n "changesUiState": false,\n "idempotent": true,\n "launchesProcess": false,\n "mayDiscardData": false,\n "mutatesSession": true,\n "mutatesTarget": false,\n "writesFilesystem": false\n },\n "inputSchema": {\n "$schema": "https://json-schema.org/draft/2020-12/schema",\n "additionalProperties": false,\n "examples": [\n {\n "type": "/MyStruct"\n }\n ],\n "properties": {\n "address": {\n "description": "Value for address.",\n "minLength": 1,\n "type": "string"\n },\n "document": {\n "description": "Exact provider document or program identity.",\n "type": "string"\n },\n "type": {\n "description": "Value for type.",\n "minLength": 1,\n "type": "string"\n }\n },\n "type": "object"\n },\n "kind": "official-proxy",\n "name": "inspect_native_data_type",\n "outputSchema": {\n "$defs": {\n "__schema0": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "number"\n },\n {\n "type": "boolean"\n },\n {\n "type": "null"\n },\n {\n "items": {\n "$ref": "#/$defs/__schema0"\n },\n "type": "array"\n },\n {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n }\n ]\n }\n },\n "$schema": "https://json-schema.org/draft/2020-12/schema",\n "additionalProperties": false,\n "properties": {\n "evidence": {\n "additionalProperties": false,\n "properties": {\n "analysis_profile": {\n "additionalProperties": false,\n "properties": {\n "digest": {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n },\n "parameters": {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n },\n "provider": {\n "additionalProperties": false,\n "properties": {\n "id": {\n "minLength": 1,\n "type": "string"\n },\n "name": {\n "minLength": 1,\n "type": "string"\n },\n "version": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "id",\n "name",\n "version"\n ],\n "type": "object"\n }\n },\n "required": [\n "provider",\n "parameters",\n "digest"\n ],\n "type": "object"\n },\n "authority": {\n "enum": [\n "shipped-artifact",\n "controlled-replay",\n "historical-reference",\n "external-service",\n "analyst-inference"\n ],\n "type": "string"\n },\n "confidence": {\n "enum": [\n "observed",\n "derived",\n "inferred"\n ],\n "type": "string"\n },\n "environment": {\n "anyOf": [\n {\n "additionalProperties": false,\n "properties": {\n "architecture": {\n "minLength": 1,\n "type": "string"\n },\n "id": {\n "minLength": 1,\n "type": "string"\n },\n "isolation": {\n "enum": [\n "none",\n "process",\n "container",\n "virtual-machine"\n ],\n "type": "string"\n },\n "platform": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "id",\n "platform",\n "architecture",\n "isolation"\n ],\n "type": "object"\n },\n {\n "type": "null"\n }\n ]\n },\n "evidence_id": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "evidence_links": {\n "items": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "type": "array"\n },\n "limitations": {\n "items": {\n "type": "string"\n },\n "type": "array"\n },\n "locations": {\n "items": {\n "oneOf": [\n {\n "additionalProperties": false,\n "properties": {\n "address": {\n "minLength": 1,\n "type": "string"\n },\n "kind": {\n "const": "address",\n "type": "string"\n }\n },\n "required": [\n "kind",\n "address"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "end": {\n "minLength": 1,\n "type": "string"\n },\n "kind": {\n "const": "address-range",\n "type": "string"\n },\n "start": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "kind",\n "start",\n "end"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "kind": {\n "const": "artifact-path",\n "type": "string"\n },\n "path": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "kind",\n "path"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "kind": {\n "const": "file-offset",\n "type": "string"\n },\n "offset": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "kind",\n "offset"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "end": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "kind": {\n "const": "file-offset-range",\n "type": "string"\n },\n "start": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "kind",\n "start",\n "end"\n ],\n "type": "object"\n }\n ]\n },\n "type": "array"\n },\n "normalized_result": {\n "$ref": "#/$defs/__schema0"\n },\n "operation": {\n "minLength": 1,\n "type": "string"\n },\n "parameters": {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n },\n "predicate_type": {\n "minLength": 1,\n "type": "string"\n },\n "provider": {\n "additionalProperties": false,\n "properties": {\n "id": {\n "minLength": 1,\n "type": "string"\n },\n "name": {\n "minLength": 1,\n "type": "string"\n },\n "version": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "id",\n "name",\n "version"\n ],\n "type": "object"\n },\n "raw_result": {\n "anyOf": [\n {\n "$ref": "#/$defs/__schema0"\n },\n {\n "type": "null"\n }\n ]\n },\n "subject": {\n "anyOf": [\n {\n "additionalProperties": false,\n "properties": {\n "architecture": {\n "anyOf": [\n {\n "enum": [\n "x86",\n "x86_64",\n "arm",\n "arm64"\n ],\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "digest": {\n "additionalProperties": false,\n "properties": {\n "sha256": {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n }\n },\n "required": [\n "sha256"\n ],\n "type": "object"\n },\n "format": {\n "enum": [\n "hopper",\n "analysis-database",\n "mach-o",\n "elf",\n "pe",\n "dos-mz",\n "dos-com",\n "zip",\n "ipa",\n "apk",\n "msix",\n "appx",\n "asar",\n "dmg",\n "pkg",\n "plist",\n "javascript",\n "source-map",\n "directory",\n "file",\n "unknown",\n "mach-o-universal",\n "javascript-bundle",\n "entitlements"\n ],\n "type": "string"\n },\n "local_path": {\n "type": "string"\n },\n "name": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "name",\n "digest",\n "format",\n "architecture",\n "local_path"\n ],\n "type": "object"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "evidence_id",\n "subject",\n "provider",\n "predicate_type",\n "operation",\n "parameters",\n "raw_result",\n "normalized_result",\n "confidence",\n "authority",\n "environment",\n "limitations",\n "locations",\n "evidence_links"\n ],\n "type": "object"\n },\n "evidence_id": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "result": {\n "additionalProperties": false,\n "properties": {\n "address": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "alignment_bytes": {\n "anyOf": [\n {\n "exclusiveMinimum": 0,\n "maximum": 9007199254740991,\n "type": "integer"\n },\n {\n "type": "null"\n }\n ]\n },\n "array_count": {\n "anyOf": [\n {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n {\n "type": "null"\n }\n ]\n },\n "array_stride_bytes": {\n "anyOf": [\n {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n {\n "type": "null"\n }\n ]\n },\n "fields": {\n "items": {\n "additionalProperties": false,\n "properties": {\n "bit_offset": {\n "anyOf": [\n {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n {\n "type": "null"\n }\n ]\n },\n "bit_size": {\n "anyOf": [\n {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n {\n "type": "null"\n }\n ]\n },\n "flexible_tail": {\n "const": "unknown",\n "type": "string"\n },\n "name": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "offset_bytes": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "ordinal": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "size_bytes": {\n "anyOf": [\n {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n {\n "type": "null"\n }\n ]\n },\n "status": {\n "enum": [\n "observed",\n "unsupported"\n ],\n "type": "string"\n },\n "type_id": {\n "type": "string"\n }\n },\n "required": [\n "ordinal",\n "name",\n "offset_bytes",\n "size_bytes",\n "type_id",\n "bit_size",\n "bit_offset",\n "status",\n "flexible_tail"\n ],\n "type": "object"\n },\n "type": "array"\n },\n "id": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "kind": {\n "enum": [\n "struct",\n "union",\n "enum",\n "pointer",\n "array",\n "typedef",\n "scalar",\n "unsupported",\n "unavailable"\n ],\n "type": "string"\n },\n "limitations": {\n "items": {\n "type": "string"\n },\n "type": "array"\n },\n "members": {\n "items": {\n "additionalProperties": false,\n "properties": {\n "name": {\n "type": "string"\n },\n "value": {\n "type": "string"\n }\n },\n "required": [\n "name",\n "value"\n ],\n "type": "object"\n },\n "type": "array"\n },\n "metadata_recovery": {\n "additionalProperties": false,\n "properties": {\n "base_size_bytes": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "derived_memory": {\n "additionalProperties": false,\n "properties": {\n "address": {\n "pattern": "^0x[0-9a-f]+$",\n "type": "string"\n },\n "file_offset": {\n "type": "null"\n },\n "sha256": {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n },\n "size_bytes": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "address",\n "size_bytes",\n "sha256",\n "file_offset"\n ],\n "type": "object"\n },\n "diagnostics": {\n "items": {\n "type": "string"\n },\n "type": "array"\n },\n "format": {\n "const": "dotnet-nativeaot",\n "type": "string"\n },\n "format_major": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "format_minor": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "header_address": {\n "pattern": "^0x[0-9a-f]+$",\n "type": "string"\n },\n "interfaces": {\n "items": {\n "additionalProperties": false,\n "properties": {\n "address": {\n "pattern": "^0x[0-9a-f]+$",\n "type": "string"\n },\n "type": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "address",\n "type"\n ],\n "type": "object"\n },\n "type": "array"\n },\n "limitations": {\n "items": {\n "type": "string"\n },\n "type": "array"\n },\n "method_table_address": {\n "pattern": "^0x[0-9a-f]+$",\n "type": "string"\n },\n "name_origin": {\n "enum": [\n "generated",\n "inferred"\n ],\n "type": "string"\n },\n "original_name": {\n "type": "null"\n },\n "related_type": {\n "anyOf": [\n {\n "additionalProperties": false,\n "properties": {\n "address": {\n "pattern": "^0x[0-9a-f]+$",\n "type": "string"\n },\n "type": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "address",\n "type"\n ],\n "type": "object"\n },\n {\n "type": "null"\n }\n ]\n },\n "status": {\n "enum": [\n "complete",\n "partial"\n ],\n "type": "string"\n },\n "virtual_slots": {\n "items": {\n "additionalProperties": false,\n "properties": {\n "basis": {\n "const": "method-table-pointer",\n "type": "string"\n },\n "procedure_name": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "slot": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "slot_address": {\n "pattern": "^0x[0-9a-f]+$",\n "type": "string"\n },\n "target_address": {\n "anyOf": [\n {\n "pattern": "^0x[0-9a-f]+$",\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "slot",\n "slot_address",\n "target_address",\n "procedure_name",\n "basis"\n ],\n "type": "object"\n },\n "type": "array"\n }\n },\n "required": [\n "format",\n "status",\n "header_address",\n "format_major",\n "format_minor",\n "method_table_address",\n "name_origin",\n "original_name",\n "base_size_bytes",\n "related_type",\n "interfaces",\n "virtual_slots",\n "derived_memory",\n "diagnostics",\n "limitations"\n ],\n "type": "object"\n },\n "name": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "packing_enabled": {\n "anyOf": [\n {\n "type": "boolean"\n },\n {\n "type": "null"\n }\n ]\n },\n "reason": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "referenced_type": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "size_bytes": {\n "anyOf": [\n {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n {\n "type": "null"\n }\n ]\n },\n "source": {\n "const": "analysis-database",\n "type": "string"\n },\n "source_archive": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "status": {\n "enum": [\n "available",\n "unavailable"\n ],\n "type": "string"\n },\n "total_fields": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "truncated": {\n "type": "boolean"\n }\n },\n "required": [\n "status",\n "reason",\n "id",\n "name",\n "kind",\n "source",\n "source_archive",\n "address",\n "size_bytes",\n "alignment_bytes",\n "packing_enabled",\n "referenced_type",\n "array_count",\n "array_stride_bytes",\n "fields",\n "members",\n "total_fields",\n "truncated",\n "limitations"\n ],\n "type": "object"\n }\n },\n "required": [\n "result",\n "evidence_id",\n "evidence"\n ],\n "type": "object"\n },\n "requiresSession": false,\n "title": "Inspect Native Data Type"\n },\n {\n "analysisOperation": "inspect_native_instruction",\n "annotations": {\n "destructiveHint": false,\n "idempotentHint": true,\n "openWorldHint": false,\n "readOnlyHint": false\n },\n "description": "Inspect one exact instruction address: decoded bytes, mnemonic, ordered operand tokens, flow and typed references. Memory addressing decomposition is unavailable when the provider supplies only tokens. Data, interior instruction addresses and undecodable bytes are distinct outcomes.",\n "effects": {\n "accessesNetwork": false,\n "changesUiState": false,\n "idempotent": true,\n "launchesProcess": false,\n "mayDiscardData": false,\n "mutatesSession": true,\n "mutatesTarget": false,\n "writesFilesystem": false\n },\n "inputSchema": {\n "$schema": "https://json-schema.org/draft/2020-12/schema",\n "additionalProperties": false,\n "examples": [\n {\n "address": "0x1000"\n }\n ],\n "properties": {\n "address": {\n "description": "Value for address.",\n "minLength": 1,\n "type": "string"\n },\n "document": {\n "description": "Exact provider document or program identity.",\n "type": "string"\n }\n },\n "required": [\n "address"\n ],\n "type": "object"\n },\n "kind": "official-proxy",\n "name": "inspect_native_instruction",\n "outputSchema": {\n "$defs": {\n "__schema0": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "number"\n },\n {\n "type": "boolean"\n },\n {\n "type": "null"\n },\n {\n "items": {\n "$ref": "#/$defs/__schema0"\n },\n "type": "array"\n },\n {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n }\n ]\n }\n },\n "$schema": "https://json-schema.org/draft/2020-12/schema",\n "additionalProperties": false,\n "properties": {\n "evidence": {\n "additionalProperties": false,\n "properties": {\n "analysis_profile": {\n "additionalProperties": false,\n "properties": {\n "digest": {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n },\n "parameters": {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n },\n "provider": {\n "additionalProperties": false,\n "properties": {\n "id": {\n "minLength": 1,\n "type": "string"\n },\n "name": {\n "minLength": 1,\n "type": "string"\n },\n "version": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "id",\n "name",\n "version"\n ],\n "type": "object"\n }\n },\n "required": [\n "provider",\n "parameters",\n "digest"\n ],\n "type": "object"\n },\n "authority": {\n "enum": [\n "shipped-artifact",\n "controlled-replay",\n "historical-reference",\n "external-service",\n "analyst-inference"\n ],\n "type": "string"\n },\n "confidence": {\n "enum": [\n "observed",\n "derived",\n "inferred"\n ],\n "type": "string"\n },\n "environment": {\n "anyOf": [\n {\n "additionalProperties": false,\n "properties": {\n "architecture": {\n "minLength": 1,\n "type": "string"\n },\n "id": {\n "minLength": 1,\n "type": "string"\n },\n "isolation": {\n "enum": [\n "none",\n "process",\n "container",\n "virtual-machine"\n ],\n "type": "string"\n },\n "platform": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "id",\n "platform",\n "architecture",\n "isolation"\n ],\n "type": "object"\n },\n {\n "type": "null"\n }\n ]\n },\n "evidence_id": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "evidence_links": {\n "items": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "type": "array"\n },\n "limitations": {\n "items": {\n "type": "string"\n },\n "type": "array"\n },\n "locations": {\n "items": {\n "oneOf": [\n {\n "additionalProperties": false,\n "properties": {\n "address": {\n "minLength": 1,\n "type": "string"\n },\n "kind": {\n "const": "address",\n "type": "string"\n }\n },\n "required": [\n "kind",\n "address"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "end": {\n "minLength": 1,\n "type": "string"\n },\n "kind": {\n "const": "address-range",\n "type": "string"\n },\n "start": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "kind",\n "start",\n "end"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "kind": {\n "const": "artifact-path",\n "type": "string"\n },\n "path": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "kind",\n "path"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "kind": {\n "const": "file-offset",\n "type": "string"\n },\n "offset": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "kind",\n "offset"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "end": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "kind": {\n "const": "file-offset-range",\n "type": "string"\n },\n "start": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "kind",\n "start",\n "end"\n ],\n "type": "object"\n }\n ]\n },\n "type": "array"\n },\n "normalized_result": {\n "$ref": "#/$defs/__schema0"\n },\n "operation": {\n "minLength": 1,\n "type": "string"\n },\n "parameters": {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n },\n "predicate_type": {\n "minLength": 1,\n "type": "string"\n },\n "provider": {\n "additionalProperties": false,\n "properties": {\n "id": {\n "minLength": 1,\n "type": "string"\n },\n "name": {\n "minLength": 1,\n "type": "string"\n },\n "version": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "id",\n "name",\n "version"\n ],\n "type": "object"\n },\n "raw_result": {\n "anyOf": [\n {\n "$ref": "#/$defs/__schema0"\n },\n {\n "type": "null"\n }\n ]\n },\n "subject": {\n "anyOf": [\n {\n "additionalProperties": false,\n "properties": {\n "architecture": {\n "anyOf": [\n {\n "enum": [\n "x86",\n "x86_64",\n "arm",\n "arm64"\n ],\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "digest": {\n "additionalProperties": false,\n "properties": {\n "sha256": {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n }\n },\n "required": [\n "sha256"\n ],\n "type": "object"\n },\n "format": {\n "enum": [\n "hopper",\n "analysis-database",\n "mach-o",\n "elf",\n "pe",\n "dos-mz",\n "dos-com",\n "zip",\n "ipa",\n "apk",\n "msix",\n "appx",\n "asar",\n "dmg",\n "pkg",\n "plist",\n "javascript",\n "source-map",\n "directory",\n "file",\n "unknown",\n "mach-o-universal",\n "javascript-bundle",\n "entitlements"\n ],\n "type": "string"\n },\n "local_path": {\n "type": "string"\n },\n "name": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "name",\n "digest",\n "format",\n "architecture",\n "local_path"\n ],\n "type": "object"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "evidence_id",\n "subject",\n "provider",\n "predicate_type",\n "operation",\n "parameters",\n "raw_result",\n "normalized_result",\n "confidence",\n "authority",\n "environment",\n "limitations",\n "locations",\n "evidence_links"\n ],\n "type": "object"\n },\n "evidence_id": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "result": {\n "additionalProperties": false,\n "properties": {\n "address": {\n "type": "string"\n },\n "architecture": {\n "type": "string"\n },\n "bytes": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "flow": {\n "additionalProperties": false,\n "properties": {\n "computed": {\n "type": "boolean"\n },\n "conditional": {\n "type": "boolean"\n },\n "direct_destinations": {\n "items": {\n "type": "string"\n },\n "type": "array"\n },\n "kind": {\n "enum": [\n "call",\n "jump",\n "return",\n "fallthrough",\n "terminal",\n "unavailable"\n ],\n "type": "string"\n }\n },\n "required": [\n "kind",\n "conditional",\n "computed",\n "direct_destinations"\n ],\n "type": "object"\n },\n "length": {\n "anyOf": [\n {\n "exclusiveMinimum": 0,\n "maximum": 9007199254740991,\n "type": "integer"\n },\n {\n "type": "null"\n }\n ]\n },\n "limitations": {\n "items": {\n "type": "string"\n },\n "type": "array"\n },\n "mnemonic": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "mode": {\n "type": "string"\n },\n "operands": {\n "items": {\n "additionalProperties": false,\n "properties": {\n "components": {\n "items": {\n "additionalProperties": false,\n "properties": {\n "bit_width": {\n "anyOf": [\n {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n {\n "type": "null"\n }\n ]\n },\n "kind": {\n "enum": [\n "register",\n "immediate",\n "address",\n "unknown"\n ],\n "type": "string"\n },\n "text": {\n "type": "string"\n },\n "value": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "kind",\n "text",\n "value",\n "bit_width"\n ],\n "type": "object"\n },\n "type": "array"\n },\n "index": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "memory_addressing": {\n "const": "unavailable",\n "type": "string"\n },\n "provider_type": {\n "maximum": 9007199254740991,\n "minimum": -9007199254740991,\n "type": "integer"\n },\n "raw": {\n "type": "string"\n }\n },\n "required": [\n "index",\n "raw",\n "provider_type",\n "components",\n "memory_addressing"\n ],\n "type": "object"\n },\n "type": "array"\n },\n "procedure": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "raw_disassembly": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "references": {\n "items": {\n "additionalProperties": false,\n "properties": {\n "call": {\n "type": "boolean"\n },\n "computed": {\n "type": "boolean"\n },\n "indirect": {\n "type": "boolean"\n },\n "jump": {\n "type": "boolean"\n },\n "operand_index": {\n "maximum": 9007199254740991,\n "minimum": -9007199254740991,\n "type": "integer"\n },\n "target_address": {\n "type": "string"\n },\n "type": {\n "type": "string"\n }\n },\n "required": [\n "target_address",\n "type",\n "call",\n "jump",\n "indirect",\n "computed",\n "operand_index"\n ],\n "type": "object"\n },\n "type": "array"\n },\n "status": {\n "enum": [\n "decoded",\n "not-instruction-boundary",\n "data",\n "undecodable",\n "outside-memory"\n ],\n "type": "string"\n }\n },\n "required": [\n "address",\n "status",\n "procedure",\n "architecture",\n "mode",\n "bytes",\n "length",\n "mnemonic",\n "raw_disassembly",\n "operands",\n "flow",\n "references",\n "limitations"\n ],\n "type": "object"\n }\n },\n "required": [\n "result",\n "evidence_id",\n "evidence"\n ],\n "type": "object"\n },\n "requiresSession": false,\n "title": "Inspect Native Instruction"\n },\n {\n "analysisOperation": "resolve_native_call_targets",\n "annotations": {\n "destructiveHint": false,\n "idempotentHint": true,\n "openWorldHint": false,\n "readOnlyHint": false\n },\n "description": "Resolve one explicit static call site using typed provider call references. Preserves ambiguous targets as candidates and unresolved computed calls as unknown; does not execute code or traverse a call graph.",\n "effects": {\n "accessesNetwork": false,\n "changesUiState": false,\n "idempotent": true,\n "launchesProcess": false,\n "mayDiscardData": false,\n "mutatesSession": true,\n "mutatesTarget": false,\n "writesFilesystem": false\n },\n "inputSchema": {\n "$schema": "https://json-schema.org/draft/2020-12/schema",\n "additionalProperties": false,\n "examples": [\n {\n "address": "0x1000"\n }\n ],\n "properties": {\n "address": {\n "description": "Value for address.",\n "minLength": 1,\n "type": "string"\n },\n "document": {\n "description": "Exact provider document or program identity.",\n "type": "string"\n }\n },\n "required": [\n "address"\n ],\n "type": "object"\n },\n "kind": "official-proxy",\n "name": "resolve_native_call_targets",\n "outputSchema": {\n "$defs": {\n "__schema0": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "number"\n },\n {\n "type": "boolean"\n },\n {\n "type": "null"\n },\n {\n "items": {\n "$ref": "#/$defs/__schema0"\n },\n "type": "array"\n },\n {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n }\n ]\n }\n },\n "$schema": "https://json-schema.org/draft/2020-12/schema",\n "additionalProperties": false,\n "properties": {\n "evidence": {\n "additionalProperties": false,\n "properties": {\n "analysis_profile": {\n "additionalProperties": false,\n "properties": {\n "digest": {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n },\n "parameters": {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n },\n "provider": {\n "additionalProperties": false,\n "properties": {\n "id": {\n "minLength": 1,\n "type": "string"\n },\n "name": {\n "minLength": 1,\n "type": "string"\n },\n "version": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "id",\n "name",\n "version"\n ],\n "type": "object"\n }\n },\n "required": [\n "provider",\n "parameters",\n "digest"\n ],\n "type": "object"\n },\n "authority": {\n "enum": [\n "shipped-artifact",\n "controlled-replay",\n "historical-reference",\n "external-service",\n "analyst-inference"\n ],\n "type": "string"\n },\n "confidence": {\n "enum": [\n "observed",\n "derived",\n "inferred"\n ],\n "type": "string"\n },\n "environment": {\n "anyOf": [\n {\n "additionalProperties": false,\n "properties": {\n "architecture": {\n "minLength": 1,\n "type": "string"\n },\n "id": {\n "minLength": 1,\n "type": "string"\n },\n "isolation": {\n "enum": [\n "none",\n "process",\n "container",\n "virtual-machine"\n ],\n "type": "string"\n },\n "platform": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "id",\n "platform",\n "architecture",\n "isolation"\n ],\n "type": "object"\n },\n {\n "type": "null"\n }\n ]\n },\n "evidence_id": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "evidence_links": {\n "items": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "type": "array"\n },\n "limitations": {\n "items": {\n "type": "string"\n },\n "type": "array"\n },\n "locations": {\n "items": {\n "oneOf": [\n {\n "additionalProperties": false,\n "properties": {\n "address": {\n "minLength": 1,\n "type": "string"\n },\n "kind": {\n "const": "address",\n "type": "string"\n }\n },\n "required": [\n "kind",\n "address"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "end": {\n "minLength": 1,\n "type": "string"\n },\n "kind": {\n "const": "address-range",\n "type": "string"\n },\n "start": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "kind",\n "start",\n "end"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "kind": {\n "const": "artifact-path",\n "type": "string"\n },\n "path": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "kind",\n "path"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "kind": {\n "const": "file-offset",\n "type": "string"\n },\n "offset": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "kind",\n "offset"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "end": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "kind": {\n "const": "file-offset-range",\n "type": "string"\n },\n "start": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "kind",\n "start",\n "end"\n ],\n "type": "object"\n }\n ]\n },\n "type": "array"\n },\n "normalized_result": {\n "$ref": "#/$defs/__schema0"\n },\n "operation": {\n "minLength": 1,\n "type": "string"\n },\n "parameters": {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n },\n "predicate_type": {\n "minLength": 1,\n "type": "string"\n },\n "provider": {\n "additionalProperties": false,\n "properties": {\n "id": {\n "minLength": 1,\n "type": "string"\n },\n "name": {\n "minLength": 1,\n "type": "string"\n },\n "version": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "id",\n "name",\n "version"\n ],\n "type": "object"\n },\n "raw_result": {\n "anyOf": [\n {\n "$ref": "#/$defs/__schema0"\n },\n {\n "type": "null"\n }\n ]\n },\n "subject": {\n "anyOf": [\n {\n "additionalProperties": false,\n "properties": {\n "architecture": {\n "anyOf": [\n {\n "enum": [\n "x86",\n "x86_64",\n "arm",\n "arm64"\n ],\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "digest": {\n "additionalProperties": false,\n "properties": {\n "sha256": {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n }\n },\n "required": [\n "sha256"\n ],\n "type": "object"\n },\n "format": {\n "enum": [\n "hopper",\n "analysis-database",\n "mach-o",\n "elf",\n "pe",\n "dos-mz",\n "dos-com",\n "zip",\n "ipa",\n "apk",\n "msix",\n "appx",\n "asar",\n "dmg",\n "pkg",\n "plist",\n "javascript",\n "source-map",\n "directory",\n "file",\n "unknown",\n "mach-o-universal",\n "javascript-bundle",\n "entitlements"\n ],\n "type": "string"\n },\n "local_path": {\n "type": "string"\n },\n "name": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "name",\n "digest",\n "format",\n "architecture",\n "local_path"\n ],\n "type": "object"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "evidence_id",\n "subject",\n "provider",\n "predicate_type",\n "operation",\n "parameters",\n "raw_result",\n "normalized_result",\n "confidence",\n "authority",\n "environment",\n "limitations",\n "locations",\n "evidence_links"\n ],\n "type": "object"\n },\n "evidence_id": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "result": {\n "additionalProperties": false,\n "properties": {\n "call_site": {\n "type": "string"\n },\n "limitations": {\n "items": {\n "type": "string"\n },\n "type": "array"\n },\n "mechanism": {\n "enum": [\n "direct",\n "computed",\n "indirect",\n "unavailable"\n ],\n "type": "string"\n },\n "procedure": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "status": {\n "enum": [\n "direct",\n "resolved-indirect",\n "ambiguous",\n "unresolved",\n "not-call",\n "unavailable"\n ],\n "type": "string"\n },\n "targets": {\n "items": {\n "additionalProperties": false,\n "properties": {\n "address": {\n "type": "string"\n },\n "basis": {\n "const": "provider-reference",\n "type": "string"\n },\n "procedure": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "references": {\n "items": {\n "additionalProperties": false,\n "properties": {\n "call": {\n "type": "boolean"\n },\n "computed": {\n "type": "boolean"\n },\n "indirect": {\n "type": "boolean"\n },\n "jump": {\n "type": "boolean"\n },\n "operand_index": {\n "maximum": 9007199254740991,\n "minimum": -9007199254740991,\n "type": "integer"\n },\n "target_address": {\n "type": "string"\n },\n "type": {\n "type": "string"\n }\n },\n "required": [\n "target_address",\n "type",\n "call",\n "jump",\n "indirect",\n "computed",\n "operand_index"\n ],\n "type": "object"\n },\n "type": "array"\n },\n "status": {\n "enum": [\n "direct",\n "resolved-indirect",\n "candidate"\n ],\n "type": "string"\n }\n },\n "required": [\n "address",\n "procedure",\n "status",\n "basis",\n "references"\n ],\n "type": "object"\n },\n "type": "array"\n }\n },\n "required": [\n "call_site",\n "procedure",\n "status",\n "mechanism",\n "targets",\n "limitations"\n ],\n "type": "object"\n }\n },\n "required": [\n "result",\n "evidence_id",\n "evidence"\n ],\n "type": "object"\n },\n "requiresSession": false,\n "title": "Resolve Native Call Targets"\n },\n {\n "analysisOperation": "address_name",\n "annotations": {\n "destructiveHint": false,\n "idempotentHint": true,\n "openWorldHint": false,\n "readOnlyHint": false\n },\n "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.",\n "effects": {\n "accessesNetwork": false,\n "changesUiState": false,\n "idempotent": true,\n "launchesProcess": false,\n "mayDiscardData": false,\n "mutatesSession": true,\n "mutatesTarget": false,\n "writesFilesystem": false\n },\n "inputSchema": {\n "$schema": "https://json-schema.org/draft/2020-12/schema",\n "examples": [\n {}\n ],\n "properties": {\n "address": {\n "description": "A provider-normalized address; default memory uses 0x-prefixed hexadecimal",\n "type": "string"\n },\n "document": {\n "description": "The document name",\n "type": "string"\n }\n },\n "type": "object"\n },\n "kind": "official-proxy",\n "name": "address_name",\n "outputSchema": {\n "$defs": {\n "__schema0": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "number"\n },\n {\n "type": "boolean"\n },\n {\n "type": "null"\n },\n {\n "items": {\n "$ref": "#/$defs/__schema0"\n },\n "type": "array"\n },\n {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n }\n ]\n }\n },\n "$schema": "https://json-schema.org/draft/2020-12/schema",\n "additionalProperties": false,\n "properties": {\n "evidence": {\n "additionalProperties": false,\n "properties": {\n "analysis_profile": {\n "additionalProperties": false,\n "properties": {\n "digest": {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n },\n "parameters": {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n },\n "provider": {\n "additionalProperties": false,\n "properties": {\n "id": {\n "minLength": 1,\n "type": "string"\n },\n "name": {\n "minLength": 1,\n "type": "string"\n },\n "version": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "id",\n "name",\n "version"\n ],\n "type": "object"\n }\n },\n "required": [\n "provider",\n "parameters",\n "digest"\n ],\n "type": "object"\n },\n "authority": {\n "enum": [\n "shipped-artifact",\n "controlled-replay",\n "historical-reference",\n "external-service",\n "analyst-inference"\n ],\n "type": "string"\n },\n "confidence": {\n "enum": [\n "observed",\n "derived",\n "inferred"\n ],\n "type": "string"\n },\n "environment": {\n "anyOf": [\n {\n "additionalProperties": false,\n "properties": {\n "architecture": {\n "minLength": 1,\n "type": "string"\n },\n "id": {\n "minLength": 1,\n "type": "string"\n },\n "isolation": {\n "enum": [\n "none",\n "process",\n "container",\n "virtual-machine"\n ],\n "type": "string"\n },\n "platform": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "id",\n "platform",\n "architecture",\n "isolation"\n ],\n "type": "object"\n },\n {\n "type": "null"\n }\n ]\n },\n "evidence_id": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "evidence_links": {\n "items": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "type": "array"\n },\n "limitations": {\n "items": {\n "type": "string"\n },\n "type": "array"\n },\n "locations": {\n "items": {\n "oneOf": [\n {\n "additionalProperties": false,\n "properties": {\n "address": {\n "minLength": 1,\n "type": "string"\n },\n "kind": {\n "const": "address",\n "type": "string"\n }\n },\n "required": [\n "kind",\n "address"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "end": {\n "minLength": 1,\n "type": "string"\n },\n "kind": {\n "const": "address-range",\n "type": "string"\n },\n "start": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "kind",\n "start",\n "end"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "kind": {\n "const": "artifact-path",\n "type": "string"\n },\n "path": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "kind",\n "path"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "kind": {\n "const": "file-offset",\n "type": "string"\n },\n "offset": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "kind",\n "offset"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "end": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "kind": {\n "const": "file-offset-range",\n "type": "string"\n },\n "start": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "kind",\n "start",\n "end"\n ],\n "type": "object"\n }\n ]\n },\n "type": "array"\n },\n "normalized_result": {\n "$ref": "#/$defs/__schema0"\n },\n "operation": {\n "minLength": 1,\n "type": "string"\n },\n "parameters": {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n },\n "predicate_type": {\n "minLength": 1,\n "type": "string"\n },\n "provider": {\n "additionalProperties": false,\n "properties": {\n "id": {\n "minLength": 1,\n "type": "string"\n },\n "name": {\n "minLength": 1,\n "type": "string"\n },\n "version": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "id",\n "name",\n "version"\n ],\n "type": "object"\n },\n "raw_result": {\n "anyOf": [\n {\n "$ref": "#/$defs/__schema0"\n },\n {\n "type": "null"\n }\n ]\n },\n "subject": {\n "anyOf": [\n {\n "additionalProperties": false,\n "properties": {\n "architecture": {\n "anyOf": [\n {\n "enum": [\n "x86",\n "x86_64",\n "arm",\n "arm64"\n ],\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "digest": {\n "additionalProperties": false,\n "properties": {\n "sha256": {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n }\n },\n "required": [\n "sha256"\n ],\n "type": "object"\n },\n "format": {\n "enum": [\n "hopper",\n "analysis-database",\n "mach-o",\n "elf",\n "pe",\n "dos-mz",\n "dos-com",\n "zip",\n "ipa",\n "apk",\n "msix",\n "appx",\n "asar",\n "dmg",\n "pkg",\n "plist",\n "javascript",\n "source-map",\n "directory",\n "file",\n "unknown",\n "mach-o-universal",\n "javascript-bundle",\n "entitlements"\n ],\n "type": "string"\n },\n "local_path": {\n "type": "string"\n },\n "name": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "name",\n "digest",\n "format",\n "architecture",\n "local_path"\n ],\n "type": "object"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "evidence_id",\n "subject",\n "provider",\n "predicate_type",\n "operation",\n "parameters",\n "raw_result",\n "normalized_result",\n "confidence",\n "authority",\n "environment",\n "limitations",\n "locations",\n "evidence_links"\n ],\n "type": "object"\n },\n "evidence_id": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "result": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "result",\n "evidence_id",\n "evidence"\n ],\n "type": "object"\n },\n "requiresSession": false,\n "title": "Address Name"\n },\n {\n "analysisOperation": "comment",\n "annotations": {\n "destructiveHint": false,\n "idempotentHint": true,\n "openWorldHint": false,\n "readOnlyHint": false\n },\n "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.",\n "effects": {\n "accessesNetwork": false,\n "changesUiState": false,\n "idempotent": true,\n "launchesProcess": false,\n "mayDiscardData": false,\n "mutatesSession": true,\n "mutatesTarget": false,\n "writesFilesystem": false\n },\n "inputSchema": {\n "$schema": "https://json-schema.org/draft/2020-12/schema",\n "examples": [\n {}\n ],\n "properties": {\n "address": {\n "description": "A provider-normalized address; default memory uses 0x-prefixed hexadecimal",\n "type": "string"\n },\n "document": {\n "description": "The document name",\n "type": "string"\n }\n },\n "type": "object"\n },\n "kind": "official-proxy",\n "name": "comment",\n "outputSchema": {\n "$defs": {\n "__schema0": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "number"\n },\n {\n "type": "boolean"\n },\n {\n "type": "null"\n },\n {\n "items": {\n "$ref": "#/$defs/__schema0"\n },\n "type": "array"\n },\n {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n }\n ]\n }\n },\n "$schema": "https://json-schema.org/draft/2020-12/schema",\n "additionalProperties": false,\n "properties": {\n "evidence": {\n "additionalProperties": false,\n "properties": {\n "analysis_profile": {\n "additionalProperties": false,\n "properties": {\n "digest": {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n },\n "parameters": {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n },\n "provider": {\n "additionalProperties": false,\n "properties": {\n "id": {\n "minLength": 1,\n "type": "string"\n },\n "name": {\n "minLength": 1,\n "type": "string"\n },\n "version": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "id",\n "name",\n "version"\n ],\n "type": "object"\n }\n },\n "required": [\n "provider",\n "parameters",\n "digest"\n ],\n "type": "object"\n },\n "authority": {\n "enum": [\n "shipped-artifact",\n "controlled-replay",\n "historical-reference",\n "external-service",\n "analyst-inference"\n ],\n "type": "string"\n },\n "confidence": {\n "enum": [\n "observed",\n "derived",\n "inferred"\n ],\n "type": "string"\n },\n "environment": {\n "anyOf": [\n {\n "additionalProperties": false,\n "properties": {\n "architecture": {\n "minLength": 1,\n "type": "string"\n },\n "id": {\n "minLength": 1,\n "type": "string"\n },\n "isolation": {\n "enum": [\n "none",\n "process",\n "container",\n "virtual-machine"\n ],\n "type": "string"\n },\n "platform": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "id",\n "platform",\n "architecture",\n "isolation"\n ],\n "type": "object"\n },\n {\n "type": "null"\n }\n ]\n },\n "evidence_id": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "evidence_links": {\n "items": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "type": "array"\n },\n "limitations": {\n "items": {\n "type": "string"\n },\n "type": "array"\n },\n "locations": {\n "items": {\n "oneOf": [\n {\n "additionalProperties": false,\n "properties": {\n "address": {\n "minLength": 1,\n "type": "string"\n },\n "kind": {\n "const": "address",\n "type": "string"\n }\n },\n "required": [\n "kind",\n "address"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "end": {\n "minLength": 1,\n "type": "string"\n },\n "kind": {\n "const": "address-range",\n "type": "string"\n },\n "start": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "kind",\n "start",\n "end"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "kind": {\n "const": "artifact-path",\n "type": "string"\n },\n "path": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "kind",\n "path"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "kind": {\n "const": "file-offset",\n "type": "string"\n },\n "offset": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "kind",\n "offset"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "end": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "kind": {\n "const": "file-offset-range",\n "type": "string"\n },\n "start": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "kind",\n "start",\n "end"\n ],\n "type": "object"\n }\n ]\n },\n "type": "array"\n },\n "normalized_result": {\n "$ref": "#/$defs/__schema0"\n },\n "operation": {\n "minLength": 1,\n "type": "string"\n },\n "parameters": {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n },\n "predicate_type": {\n "minLength": 1,\n "type": "string"\n },\n "provider": {\n "additionalProperties": false,\n "properties": {\n "id": {\n "minLength": 1,\n "type": "string"\n },\n "name": {\n "minLength": 1,\n "type": "string"\n },\n "version": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "id",\n "name",\n "version"\n ],\n "type": "object"\n },\n "raw_result": {\n "anyOf": [\n {\n "$ref": "#/$defs/__schema0"\n },\n {\n "type": "null"\n }\n ]\n },\n "subject": {\n "anyOf": [\n {\n "additionalProperties": false,\n "properties": {\n "architecture": {\n "anyOf": [\n {\n "enum": [\n "x86",\n "x86_64",\n "arm",\n "arm64"\n ],\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "digest": {\n "additionalProperties": false,\n "properties": {\n "sha256": {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n }\n },\n "required": [\n "sha256"\n ],\n "type": "object"\n },\n "format": {\n "enum": [\n "hopper",\n "analysis-database",\n "mach-o",\n "elf",\n "pe",\n "dos-mz",\n "dos-com",\n "zip",\n "ipa",\n "apk",\n "msix",\n "appx",\n "asar",\n "dmg",\n "pkg",\n "plist",\n "javascript",\n "source-map",\n "directory",\n "file",\n "unknown",\n "mach-o-universal",\n "javascript-bundle",\n "entitlements"\n ],\n "type": "string"\n },\n "local_path": {\n "type": "string"\n },\n "name": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "name",\n "digest",\n "format",\n "architecture",\n "local_path"\n ],\n "type": "object"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "evidence_id",\n "subject",\n "provider",\n "predicate_type",\n "operation",\n "parameters",\n "raw_result",\n "normalized_result",\n "confidence",\n "authority",\n "environment",\n "limitations",\n "locations",\n "evidence_links"\n ],\n "type": "object"\n },\n "evidence_id": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "result": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "result",\n "evidence_id",\n "evidence"\n ],\n "type": "object"\n },\n "requiresSession": false,\n "title": "Comment"\n },\n {\n "analysisOperation": "current_address",\n "annotations": {\n "destructiveHint": false,\n "idempotentHint": true,\n "openWorldHint": false,\n "readOnlyHint": false\n },\n "description": "Return Hopper\'s current cursor address for the selected document. Use only for interactive navigation state; prefer explicit addresses in reproducible investigations.",\n "effects": {\n "accessesNetwork": false,\n "changesUiState": false,\n "idempotent": true,\n "launchesProcess": false,\n "mayDiscardData": false,\n "mutatesSession": true,\n "mutatesTarget": false,\n "writesFilesystem": false\n },\n "inputSchema": {\n "$schema": "https://json-schema.org/draft/2020-12/schema",\n "examples": [\n {}\n ],\n "properties": {\n "document": {\n "description": "The document name",\n "type": "string"\n }\n },\n "type": "object"\n },\n "kind": "official-proxy",\n "name": "current_address",\n "outputSchema": {\n "$defs": {\n "__schema0": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "number"\n },\n {\n "type": "boolean"\n },\n {\n "type": "null"\n },\n {\n "items": {\n "$ref": "#/$defs/__schema0"\n },\n "type": "array"\n },\n {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n }\n ]\n }\n },\n "$schema": "https://json-schema.org/draft/2020-12/schema",\n "additionalProperties": false,\n "properties": {\n "evidence": {\n "additionalProperties": false,\n "properties": {\n "analysis_profile": {\n "additionalProperties": false,\n "properties": {\n "digest": {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n },\n "parameters": {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n },\n "provider": {\n "additionalProperties": false,\n "properties": {\n "id": {\n "minLength": 1,\n "type": "string"\n },\n "name": {\n "minLength": 1,\n "type": "string"\n },\n "version": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "id",\n "name",\n "version"\n ],\n "type": "object"\n }\n },\n "required": [\n "provider",\n "parameters",\n "digest"\n ],\n "type": "object"\n },\n "authority": {\n "enum": [\n "shipped-artifact",\n "controlled-replay",\n "historical-reference",\n "external-service",\n "analyst-inference"\n ],\n "type": "string"\n },\n "confidence": {\n "enum": [\n "observed",\n "derived",\n "inferred"\n ],\n "type": "string"\n },\n "environment": {\n "anyOf": [\n {\n "additionalProperties": false,\n "properties": {\n "architecture": {\n "minLength": 1,\n "type": "string"\n },\n "id": {\n "minLength": 1,\n "type": "string"\n },\n "isolation": {\n "enum": [\n "none",\n "process",\n "container",\n "virtual-machine"\n ],\n "type": "string"\n },\n "platform": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "id",\n "platform",\n "architecture",\n "isolation"\n ],\n "type": "object"\n },\n {\n "type": "null"\n }\n ]\n },\n "evidence_id": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "evidence_links": {\n "items": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "type": "array"\n },\n "limitations": {\n "items": {\n "type": "string"\n },\n "type": "array"\n },\n "locations": {\n "items": {\n "oneOf": [\n {\n "additionalProperties": false,\n "properties": {\n "address": {\n "minLength": 1,\n "type": "string"\n },\n "kind": {\n "const": "address",\n "type": "string"\n }\n },\n "required": [\n "kind",\n "address"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "end": {\n "minLength": 1,\n "type": "string"\n },\n "kind": {\n "const": "address-range",\n "type": "string"\n },\n "start": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "kind",\n "start",\n "end"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "kind": {\n "const": "artifact-path",\n "type": "string"\n },\n "path": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "kind",\n "path"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "kind": {\n "const": "file-offset",\n "type": "string"\n },\n "offset": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "kind",\n "offset"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "end": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "kind": {\n "const": "file-offset-range",\n "type": "string"\n },\n "start": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "kind",\n "start",\n "end"\n ],\n "type": "object"\n }\n ]\n },\n "type": "array"\n },\n "normalized_result": {\n "$ref": "#/$defs/__schema0"\n },\n "operation": {\n "minLength": 1,\n "type": "string"\n },\n "parameters": {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n },\n "predicate_type": {\n "minLength": 1,\n "type": "string"\n },\n "provider": {\n "additionalProperties": false,\n "properties": {\n "id": {\n "minLength": 1,\n "type": "string"\n },\n "name": {\n "minLength": 1,\n "type": "string"\n },\n "version": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "id",\n "name",\n "version"\n ],\n "type": "object"\n },\n "raw_result": {\n "anyOf": [\n {\n "$ref": "#/$defs/__schema0"\n },\n {\n "type": "null"\n }\n ]\n },\n "subject": {\n "anyOf": [\n {\n "additionalProperties": false,\n "properties": {\n "architecture": {\n "anyOf": [\n {\n "enum": [\n "x86",\n "x86_64",\n "arm",\n "arm64"\n ],\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "digest": {\n "additionalProperties": false,\n "properties": {\n "sha256": {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n }\n },\n "required": [\n "sha256"\n ],\n "type": "object"\n },\n "format": {\n "enum": [\n "hopper",\n "analysis-database",\n "mach-o",\n "elf",\n "pe",\n "dos-mz",\n "dos-com",\n "zip",\n "ipa",\n "apk",\n "msix",\n "appx",\n "asar",\n "dmg",\n "pkg",\n "plist",\n "javascript",\n "source-map",\n "directory",\n "file",\n "unknown",\n "mach-o-universal",\n "javascript-bundle",\n "entitlements"\n ],\n "type": "string"\n },\n "local_path": {\n "type": "string"\n },\n "name": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "name",\n "digest",\n "format",\n "architecture",\n "local_path"\n ],\n "type": "object"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "evidence_id",\n "subject",\n "provider",\n "predicate_type",\n "operation",\n "parameters",\n "raw_result",\n "normalized_result",\n "confidence",\n "authority",\n "environment",\n "limitations",\n "locations",\n "evidence_links"\n ],\n "type": "object"\n },\n "evidence_id": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "result": {\n "type": "string"\n }\n },\n "required": [\n "result",\n "evidence_id",\n "evidence"\n ],\n "type": "object"\n },\n "requiresSession": false,\n "title": "Current Address"\n },\n {\n "analysisOperation": "current_procedure",\n "annotations": {\n "destructiveHint": false,\n "idempotentHint": true,\n "openWorldHint": false,\n "readOnlyHint": false\n },\n "description": "Return the analyzed procedure containing Hopper\'s current cursor. This uses GUI cursor state and is not a procedure-name lookup.",\n "effects": {\n "accessesNetwork": false,\n "changesUiState": false,\n "idempotent": true,\n "launchesProcess": false,\n "mayDiscardData": false,\n "mutatesSession": true,\n "mutatesTarget": false,\n "writesFilesystem": false\n },\n "inputSchema": {\n "$schema": "https://json-schema.org/draft/2020-12/schema",\n "examples": [\n {}\n ],\n "properties": {\n "document": {\n "description": "The document name",\n "type": "string"\n }\n },\n "type": "object"\n },\n "kind": "official-proxy",\n "name": "current_procedure",\n "outputSchema": {\n "$defs": {\n "__schema0": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "number"\n },\n {\n "type": "boolean"\n },\n {\n "type": "null"\n },\n {\n "items": {\n "$ref": "#/$defs/__schema0"\n },\n "type": "array"\n },\n {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n }\n ]\n }\n },\n "$schema": "https://json-schema.org/draft/2020-12/schema",\n "additionalProperties": false,\n "properties": {\n "evidence": {\n "additionalProperties": false,\n "properties": {\n "analysis_profile": {\n "additionalProperties": false,\n "properties": {\n "digest": {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n },\n "parameters": {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n },\n "provider": {\n "additionalProperties": false,\n "properties": {\n "id": {\n "minLength": 1,\n "type": "string"\n },\n "name": {\n "minLength": 1,\n "type": "string"\n },\n "version": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "id",\n "name",\n "version"\n ],\n "type": "object"\n }\n },\n "required": [\n "provider",\n "parameters",\n "digest"\n ],\n "type": "object"\n },\n "authority": {\n "enum": [\n "shipped-artifact",\n "controlled-replay",\n "historical-reference",\n "external-service",\n "analyst-inference"\n ],\n "type": "string"\n },\n "confidence": {\n "enum": [\n "observed",\n "derived",\n "inferred"\n ],\n "type": "string"\n },\n "environment": {\n "anyOf": [\n {\n "additionalProperties": false,\n "properties": {\n "architecture": {\n "minLength": 1,\n "type": "string"\n },\n "id": {\n "minLength": 1,\n "type": "string"\n },\n "isolation": {\n "enum": [\n "none",\n "process",\n "container",\n "virtual-machine"\n ],\n "type": "string"\n },\n "platform": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "id",\n "platform",\n "architecture",\n "isolation"\n ],\n "type": "object"\n },\n {\n "type": "null"\n }\n ]\n },\n "evidence_id": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "evidence_links": {\n "items": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "type": "array"\n },\n "limitations": {\n "items": {\n "type": "string"\n },\n "type": "array"\n },\n "locations": {\n "items": {\n "oneOf": [\n {\n "additionalProperties": false,\n "properties": {\n "address": {\n "minLength": 1,\n "type": "string"\n },\n "kind": {\n "const": "address",\n "type": "string"\n }\n },\n "required": [\n "kind",\n "address"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "end": {\n "minLength": 1,\n "type": "string"\n },\n "kind": {\n "const": "address-range",\n "type": "string"\n },\n "start": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "kind",\n "start",\n "end"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "kind": {\n "const": "artifact-path",\n "type": "string"\n },\n "path": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "kind",\n "path"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "kind": {\n "const": "file-offset",\n "type": "string"\n },\n "offset": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "kind",\n "offset"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "end": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "kind": {\n "const": "file-offset-range",\n "type": "string"\n },\n "start": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "kind",\n "start",\n "end"\n ],\n "type": "object"\n }\n ]\n },\n "type": "array"\n },\n "normalized_result": {\n "$ref": "#/$defs/__schema0"\n },\n "operation": {\n "minLength": 1,\n "type": "string"\n },\n "parameters": {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n },\n "predicate_type": {\n "minLength": 1,\n "type": "string"\n },\n "provider": {\n "additionalProperties": false,\n "properties": {\n "id": {\n "minLength": 1,\n "type": "string"\n },\n "name": {\n "minLength": 1,\n "type": "string"\n },\n "version": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "id",\n "name",\n "version"\n ],\n "type": "object"\n },\n "raw_result": {\n "anyOf": [\n {\n "$ref": "#/$defs/__schema0"\n },\n {\n "type": "null"\n }\n ]\n },\n "subject": {\n "anyOf": [\n {\n "additionalProperties": false,\n "properties": {\n "architecture": {\n "anyOf": [\n {\n "enum": [\n "x86",\n "x86_64",\n "arm",\n "arm64"\n ],\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "digest": {\n "additionalProperties": false,\n "properties": {\n "sha256": {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n }\n },\n "required": [\n "sha256"\n ],\n "type": "object"\n },\n "format": {\n "enum": [\n "hopper",\n "analysis-database",\n "mach-o",\n "elf",\n "pe",\n "dos-mz",\n "dos-com",\n "zip",\n "ipa",\n "apk",\n "msix",\n "appx",\n "asar",\n "dmg",\n "pkg",\n "plist",\n "javascript",\n "source-map",\n "directory",\n "file",\n "unknown",\n "mach-o-universal",\n "javascript-bundle",\n "entitlements"\n ],\n "type": "string"\n },\n "local_path": {\n "type": "string"\n },\n "name": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "name",\n "digest",\n "format",\n "architecture",\n "local_path"\n ],\n "type": "object"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "evidence_id",\n "subject",\n "provider",\n "predicate_type",\n "operation",\n "parameters",\n "raw_result",\n "normalized_result",\n "confidence",\n "authority",\n "environment",\n "limitations",\n "locations",\n "evidence_links"\n ],\n "type": "object"\n },\n "evidence_id": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "result": {\n "type": "string"\n }\n },\n "required": [\n "result",\n "evidence_id",\n "evidence"\n ],\n "type": "object"\n },\n "requiresSession": false,\n "title": "Current Procedure"\n },\n {\n "analysisOperation": "current_document",\n "annotations": {\n "destructiveHint": false,\n "idempotentHint": true,\n "openWorldHint": false,\n "readOnlyHint": false\n },\n "description": "Return the document currently selected by REA\'s Hopper bridge.",\n "effects": {\n "accessesNetwork": false,\n "changesUiState": false,\n "idempotent": true,\n "launchesProcess": false,\n "mayDiscardData": false,\n "mutatesSession": true,\n "mutatesTarget": false,\n "writesFilesystem": false\n },\n "inputSchema": {\n "$schema": "https://json-schema.org/draft/2020-12/schema",\n "examples": [\n {}\n ],\n "properties": {},\n "type": "object"\n },\n "kind": "official-proxy",\n "name": "current_document",\n "outputSchema": {\n "$defs": {\n "__schema0": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "number"\n },\n {\n "type": "boolean"\n },\n {\n "type": "null"\n },\n {\n "items": {\n "$ref": "#/$defs/__schema0"\n },\n "type": "array"\n },\n {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n }\n ]\n }\n },\n "$schema": "https://json-schema.org/draft/2020-12/schema",\n "additionalProperties": false,\n "properties": {\n "evidence": {\n "additionalProperties": false,\n "properties": {\n "analysis_profile": {\n "additionalProperties": false,\n "properties": {\n "digest": {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n },\n "parameters": {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n },\n "provider": {\n "additionalProperties": false,\n "properties": {\n "id": {\n "minLength": 1,\n "type": "string"\n },\n "name": {\n "minLength": 1,\n "type": "string"\n },\n "version": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "id",\n "name",\n "version"\n ],\n "type": "object"\n }\n },\n "required": [\n "provider",\n "parameters",\n "digest"\n ],\n "type": "object"\n },\n "authority": {\n "enum": [\n "shipped-artifact",\n "controlled-replay",\n "historical-reference",\n "external-service",\n "analyst-inference"\n ],\n "type": "string"\n },\n "confidence": {\n "enum": [\n "observed",\n "derived",\n "inferred"\n ],\n "type": "string"\n },\n "environment": {\n "anyOf": [\n {\n "additionalProperties": false,\n "properties": {\n "architecture": {\n "minLength": 1,\n "type": "string"\n },\n "id": {\n "minLength": 1,\n "type": "string"\n },\n "isolation": {\n "enum": [\n "none",\n "process",\n "container",\n "virtual-machine"\n ],\n "type": "string"\n },\n "platform": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "id",\n "platform",\n "architecture",\n "isolation"\n ],\n "type": "object"\n },\n {\n "type": "null"\n }\n ]\n },\n "evidence_id": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "evidence_links": {\n "items": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "type": "array"\n },\n "limitations": {\n "items": {\n "type": "string"\n },\n "type": "array"\n },\n "locations": {\n "items": {\n "oneOf": [\n {\n "additionalProperties": false,\n "properties": {\n "address": {\n "minLength": 1,\n "type": "string"\n },\n "kind": {\n "const": "address",\n "type": "string"\n }\n },\n "required": [\n "kind",\n "address"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "end": {\n "minLength": 1,\n "type": "string"\n },\n "kind": {\n "const": "address-range",\n "type": "string"\n },\n "start": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "kind",\n "start",\n "end"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "kind": {\n "const": "artifact-path",\n "type": "string"\n },\n "path": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "kind",\n "path"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "kind": {\n "const": "file-offset",\n "type": "string"\n },\n "offset": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "kind",\n "offset"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "end": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "kind": {\n "const": "file-offset-range",\n "type": "string"\n },\n "start": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "kind",\n "start",\n "end"\n ],\n "type": "object"\n }\n ]\n },\n "type": "array"\n },\n "normalized_result": {\n "$ref": "#/$defs/__schema0"\n },\n "operation": {\n "minLength": 1,\n "type": "string"\n },\n "parameters": {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n },\n "predicate_type": {\n "minLength": 1,\n "type": "string"\n },\n "provider": {\n "additionalProperties": false,\n "properties": {\n "id": {\n "minLength": 1,\n "type": "string"\n },\n "name": {\n "minLength": 1,\n "type": "string"\n },\n "version": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "id",\n "name",\n "version"\n ],\n "type": "object"\n },\n "raw_result": {\n "anyOf": [\n {\n "$ref": "#/$defs/__schema0"\n },\n {\n "type": "null"\n }\n ]\n },\n "subject": {\n "anyOf": [\n {\n "additionalProperties": false,\n "properties": {\n "architecture": {\n "anyOf": [\n {\n "enum": [\n "x86",\n "x86_64",\n "arm",\n "arm64"\n ],\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "digest": {\n "additionalProperties": false,\n "properties": {\n "sha256": {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n }\n },\n "required": [\n "sha256"\n ],\n "type": "object"\n },\n "format": {\n "enum": [\n "hopper",\n "analysis-database",\n "mach-o",\n "elf",\n "pe",\n "dos-mz",\n "dos-com",\n "zip",\n "ipa",\n "apk",\n "msix",\n "appx",\n "asar",\n "dmg",\n "pkg",\n "plist",\n "javascript",\n "source-map",\n "directory",\n "file",\n "unknown",\n "mach-o-universal",\n "javascript-bundle",\n "entitlements"\n ],\n "type": "string"\n },\n "local_path": {\n "type": "string"\n },\n "name": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "name",\n "digest",\n "format",\n "architecture",\n "local_path"\n ],\n "type": "object"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "evidence_id",\n "subject",\n "provider",\n "predicate_type",\n "operation",\n "parameters",\n "raw_result",\n "normalized_result",\n "confidence",\n "authority",\n "environment",\n "limitations",\n "locations",\n "evidence_links"\n ],\n "type": "object"\n },\n "evidence_id": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "result": {\n "type": "string"\n }\n },\n "required": [\n "result",\n "evidence_id",\n "evidence"\n ],\n "type": "object"\n },\n "requiresSession": false,\n "title": "Current Document"\n },\n {\n "analysisOperation": "goto_address",\n "annotations": {\n "destructiveHint": false,\n "idempotentHint": true,\n "openWorldHint": false,\n "readOnlyHint": false\n },\n "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.",\n "effects": {\n "accessesNetwork": false,\n "changesUiState": true,\n "idempotent": true,\n "launchesProcess": false,\n "mayDiscardData": false,\n "mutatesSession": true,\n "mutatesTarget": false,\n "writesFilesystem": false\n },\n "inputSchema": {\n "$schema": "https://json-schema.org/draft/2020-12/schema",\n "examples": [\n {\n "address": "0x1000"\n }\n ],\n "properties": {\n "address": {\n "description": "A provider-normalized address; default memory uses 0x-prefixed hexadecimal",\n "type": "string"\n },\n "document": {\n "description": "The document name",\n "type": "string"\n }\n },\n "required": [\n "address"\n ],\n "type": "object"\n },\n "kind": "official-proxy",\n "name": "goto_address",\n "outputSchema": {\n "$defs": {\n "__schema0": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "number"\n },\n {\n "type": "boolean"\n },\n {\n "type": "null"\n },\n {\n "items": {\n "$ref": "#/$defs/__schema0"\n },\n "type": "array"\n },\n {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n }\n ]\n }\n },\n "$schema": "https://json-schema.org/draft/2020-12/schema",\n "additionalProperties": false,\n "properties": {\n "evidence": {\n "additionalProperties": false,\n "properties": {\n "analysis_profile": {\n "additionalProperties": false,\n "properties": {\n "digest": {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n },\n "parameters": {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n },\n "provider": {\n "additionalProperties": false,\n "properties": {\n "id": {\n "minLength": 1,\n "type": "string"\n },\n "name": {\n "minLength": 1,\n "type": "string"\n },\n "version": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "id",\n "name",\n "version"\n ],\n "type": "object"\n }\n },\n "required": [\n "provider",\n "parameters",\n "digest"\n ],\n "type": "object"\n },\n "authority": {\n "enum": [\n "shipped-artifact",\n "controlled-replay",\n "historical-reference",\n "external-service",\n "analyst-inference"\n ],\n "type": "string"\n },\n "confidence": {\n "enum": [\n "observed",\n "derived",\n "inferred"\n ],\n "type": "string"\n },\n "environment": {\n "anyOf": [\n {\n "additionalProperties": false,\n "properties": {\n "architecture": {\n "minLength": 1,\n "type": "string"\n },\n "id": {\n "minLength": 1,\n "type": "string"\n },\n "isolation": {\n "enum": [\n "none",\n "process",\n "container",\n "virtual-machine"\n ],\n "type": "string"\n },\n "platform": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "id",\n "platform",\n "architecture",\n "isolation"\n ],\n "type": "object"\n },\n {\n "type": "null"\n }\n ]\n },\n "evidence_id": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "evidence_links": {\n "items": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "type": "array"\n },\n "limitations": {\n "items": {\n "type": "string"\n },\n "type": "array"\n },\n "locations": {\n "items": {\n "oneOf": [\n {\n "additionalProperties": false,\n "properties": {\n "address": {\n "minLength": 1,\n "type": "string"\n },\n "kind": {\n "const": "address",\n "type": "string"\n }\n },\n "required": [\n "kind",\n "address"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "end": {\n "minLength": 1,\n "type": "string"\n },\n "kind": {\n "const": "address-range",\n "type": "string"\n },\n "start": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "kind",\n "start",\n "end"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "kind": {\n "const": "artifact-path",\n "type": "string"\n },\n "path": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "kind",\n "path"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "kind": {\n "const": "file-offset",\n "type": "string"\n },\n "offset": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "kind",\n "offset"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "end": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "kind": {\n "const": "file-offset-range",\n "type": "string"\n },\n "start": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "kind",\n "start",\n "end"\n ],\n "type": "object"\n }\n ]\n },\n "type": "array"\n },\n "normalized_result": {\n "$ref": "#/$defs/__schema0"\n },\n "operation": {\n "minLength": 1,\n "type": "string"\n },\n "parameters": {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n },\n "predicate_type": {\n "minLength": 1,\n "type": "string"\n },\n "provider": {\n "additionalProperties": false,\n "properties": {\n "id": {\n "minLength": 1,\n "type": "string"\n },\n "name": {\n "minLength": 1,\n "type": "string"\n },\n "version": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "id",\n "name",\n "version"\n ],\n "type": "object"\n },\n "raw_result": {\n "anyOf": [\n {\n "$ref": "#/$defs/__schema0"\n },\n {\n "type": "null"\n }\n ]\n },\n "subject": {\n "anyOf": [\n {\n "additionalProperties": false,\n "properties": {\n "architecture": {\n "anyOf": [\n {\n "enum": [\n "x86",\n "x86_64",\n "arm",\n "arm64"\n ],\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "digest": {\n "additionalProperties": false,\n "properties": {\n "sha256": {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n }\n },\n "required": [\n "sha256"\n ],\n "type": "object"\n },\n "format": {\n "enum": [\n "hopper",\n "analysis-database",\n "mach-o",\n "elf",\n "pe",\n "dos-mz",\n "dos-com",\n "zip",\n "ipa",\n "apk",\n "msix",\n "appx",\n "asar",\n "dmg",\n "pkg",\n "plist",\n "javascript",\n "source-map",\n "directory",\n "file",\n "unknown",\n "mach-o-universal",\n "javascript-bundle",\n "entitlements"\n ],\n "type": "string"\n },\n "local_path": {\n "type": "string"\n },\n "name": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "name",\n "digest",\n "format",\n "architecture",\n "local_path"\n ],\n "type": "object"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "evidence_id",\n "subject",\n "provider",\n "predicate_type",\n "operation",\n "parameters",\n "raw_result",\n "normalized_result",\n "confidence",\n "authority",\n "environment",\n "limitations",\n "locations",\n "evidence_links"\n ],\n "type": "object"\n },\n "evidence_id": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "result": {\n "type": "string"\n }\n },\n "required": [\n "result",\n "evidence_id",\n "evidence"\n ],\n "type": "object"\n },\n "requiresSession": false,\n "title": "Goto Address"\n },\n {\n "analysisOperation": "inline_comment",\n "annotations": {\n "destructiveHint": false,\n "idempotentHint": true,\n "openWorldHint": false,\n "readOnlyHint": false\n },\n "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.",\n "effects": {\n "accessesNetwork": false,\n "changesUiState": false,\n "idempotent": true,\n "launchesProcess": false,\n "mayDiscardData": false,\n "mutatesSession": true,\n "mutatesTarget": false,\n "writesFilesystem": false\n },\n "inputSchema": {\n "$schema": "https://json-schema.org/draft/2020-12/schema",\n "examples": [\n {}\n ],\n "properties": {\n "address": {\n "description": "A provider-normalized address; default memory uses 0x-prefixed hexadecimal",\n "type": "string"\n },\n "document": {\n "description": "The document name",\n "type": "string"\n }\n },\n "type": "object"\n },\n "kind": "official-proxy",\n "name": "inline_comment",\n "outputSchema": {\n "$defs": {\n "__schema0": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "number"\n },\n {\n "type": "boolean"\n },\n {\n "type": "null"\n },\n {\n "items": {\n "$ref": "#/$defs/__schema0"\n },\n "type": "array"\n },\n {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n }\n ]\n }\n },\n "$schema": "https://json-schema.org/draft/2020-12/schema",\n "additionalProperties": false,\n "properties": {\n "evidence": {\n "additionalProperties": false,\n "properties": {\n "analysis_profile": {\n "additionalProperties": false,\n "properties": {\n "digest": {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n },\n "parameters": {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n },\n "provider": {\n "additionalProperties": false,\n "properties": {\n "id": {\n "minLength": 1,\n "type": "string"\n },\n "name": {\n "minLength": 1,\n "type": "string"\n },\n "version": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "id",\n "name",\n "version"\n ],\n "type": "object"\n }\n },\n "required": [\n "provider",\n "parameters",\n "digest"\n ],\n "type": "object"\n },\n "authority": {\n "enum": [\n "shipped-artifact",\n "controlled-replay",\n "historical-reference",\n "external-service",\n "analyst-inference"\n ],\n "type": "string"\n },\n "confidence": {\n "enum": [\n "observed",\n "derived",\n "inferred"\n ],\n "type": "string"\n },\n "environment": {\n "anyOf": [\n {\n "additionalProperties": false,\n "properties": {\n "architecture": {\n "minLength": 1,\n "type": "string"\n },\n "id": {\n "minLength": 1,\n "type": "string"\n },\n "isolation": {\n "enum": [\n "none",\n "process",\n "container",\n "virtual-machine"\n ],\n "type": "string"\n },\n "platform": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "id",\n "platform",\n "architecture",\n "isolation"\n ],\n "type": "object"\n },\n {\n "type": "null"\n }\n ]\n },\n "evidence_id": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "evidence_links": {\n "items": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "type": "array"\n },\n "limitations": {\n "items": {\n "type": "string"\n },\n "type": "array"\n },\n "locations": {\n "items": {\n "oneOf": [\n {\n "additionalProperties": false,\n "properties": {\n "address": {\n "minLength": 1,\n "type": "string"\n },\n "kind": {\n "const": "address",\n "type": "string"\n }\n },\n "required": [\n "kind",\n "address"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "end": {\n "minLength": 1,\n "type": "string"\n },\n "kind": {\n "const": "address-range",\n "type": "string"\n },\n "start": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "kind",\n "start",\n "end"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "kind": {\n "const": "artifact-path",\n "type": "string"\n },\n "path": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "kind",\n "path"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "kind": {\n "const": "file-offset",\n "type": "string"\n },\n "offset": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "kind",\n "offset"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "end": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "kind": {\n "const": "file-offset-range",\n "type": "string"\n },\n "start": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "kind",\n "start",\n "end"\n ],\n "type": "object"\n }\n ]\n },\n "type": "array"\n },\n "normalized_result": {\n "$ref": "#/$defs/__schema0"\n },\n "operation": {\n "minLength": 1,\n "type": "string"\n },\n "parameters": {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n },\n "predicate_type": {\n "minLength": 1,\n "type": "string"\n },\n "provider": {\n "additionalProperties": false,\n "properties": {\n "id": {\n "minLength": 1,\n "type": "string"\n },\n "name": {\n "minLength": 1,\n "type": "string"\n },\n "version": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "id",\n "name",\n "version"\n ],\n "type": "object"\n },\n "raw_result": {\n "anyOf": [\n {\n "$ref": "#/$defs/__schema0"\n },\n {\n "type": "null"\n }\n ]\n },\n "subject": {\n "anyOf": [\n {\n "additionalProperties": false,\n "properties": {\n "architecture": {\n "anyOf": [\n {\n "enum": [\n "x86",\n "x86_64",\n "arm",\n "arm64"\n ],\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "digest": {\n "additionalProperties": false,\n "properties": {\n "sha256": {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n }\n },\n "required": [\n "sha256"\n ],\n "type": "object"\n },\n "format": {\n "enum": [\n "hopper",\n "analysis-database",\n "mach-o",\n "elf",\n "pe",\n "dos-mz",\n "dos-com",\n "zip",\n "ipa",\n "apk",\n "msix",\n "appx",\n "asar",\n "dmg",\n "pkg",\n "plist",\n "javascript",\n "source-map",\n "directory",\n "file",\n "unknown",\n "mach-o-universal",\n "javascript-bundle",\n "entitlements"\n ],\n "type": "string"\n },\n "local_path": {\n "type": "string"\n },\n "name": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "name",\n "digest",\n "format",\n "architecture",\n "local_path"\n ],\n "type": "object"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "evidence_id",\n "subject",\n "provider",\n "predicate_type",\n "operation",\n "parameters",\n "raw_result",\n "normalized_result",\n "confidence",\n "authority",\n "environment",\n "limitations",\n "locations",\n "evidence_links"\n ],\n "type": "object"\n },\n "evidence_id": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "result": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "result",\n "evidence_id",\n "evidence"\n ],\n "type": "object"\n },\n "requiresSession": false,\n "title": "Inline Comment"\n },\n {\n "analysisOperation": "list_bookmarks",\n "annotations": {\n "destructiveHint": false,\n "idempotentHint": true,\n "openWorldHint": false,\n "readOnlyHint": false\n },\n "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.",\n "effects": {\n "accessesNetwork": false,\n "changesUiState": false,\n "idempotent": true,\n "launchesProcess": false,\n "mayDiscardData": false,\n "mutatesSession": true,\n "mutatesTarget": false,\n "writesFilesystem": false\n },\n "inputSchema": {\n "$schema": "https://json-schema.org/draft/2020-12/schema",\n "examples": [\n {}\n ],\n "properties": {\n "document": {\n "description": "The document name",\n "type": "string"\n }\n },\n "type": "object"\n },\n "kind": "official-proxy",\n "name": "list_bookmarks",\n "outputSchema": {\n "$defs": {\n "__schema0": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "number"\n },\n {\n "type": "boolean"\n },\n {\n "type": "null"\n },\n {\n "items": {\n "$ref": "#/$defs/__schema0"\n },\n "type": "array"\n },\n {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n }\n ]\n }\n },\n "$schema": "https://json-schema.org/draft/2020-12/schema",\n "additionalProperties": false,\n "properties": {\n "evidence": {\n "additionalProperties": false,\n "properties": {\n "analysis_profile": {\n "additionalProperties": false,\n "properties": {\n "digest": {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n },\n "parameters": {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n },\n "provider": {\n "additionalProperties": false,\n "properties": {\n "id": {\n "minLength": 1,\n "type": "string"\n },\n "name": {\n "minLength": 1,\n "type": "string"\n },\n "version": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "id",\n "name",\n "version"\n ],\n "type": "object"\n }\n },\n "required": [\n "provider",\n "parameters",\n "digest"\n ],\n "type": "object"\n },\n "authority": {\n "enum": [\n "shipped-artifact",\n "controlled-replay",\n "historical-reference",\n "external-service",\n "analyst-inference"\n ],\n "type": "string"\n },\n "confidence": {\n "enum": [\n "observed",\n "derived",\n "inferred"\n ],\n "type": "string"\n },\n "environment": {\n "anyOf": [\n {\n "additionalProperties": false,\n "properties": {\n "architecture": {\n "minLength": 1,\n "type": "string"\n },\n "id": {\n "minLength": 1,\n "type": "string"\n },\n "isolation": {\n "enum": [\n "none",\n "process",\n "container",\n "virtual-machine"\n ],\n "type": "string"\n },\n "platform": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "id",\n "platform",\n "architecture",\n "isolation"\n ],\n "type": "object"\n },\n {\n "type": "null"\n }\n ]\n },\n "evidence_id": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "evidence_links": {\n "items": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "type": "array"\n },\n "limitations": {\n "items": {\n "type": "string"\n },\n "type": "array"\n },\n "locations": {\n "items": {\n "oneOf": [\n {\n "additionalProperties": false,\n "properties": {\n "address": {\n "minLength": 1,\n "type": "string"\n },\n "kind": {\n "const": "address",\n "type": "string"\n }\n },\n "required": [\n "kind",\n "address"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "end": {\n "minLength": 1,\n "type": "string"\n },\n "kind": {\n "const": "address-range",\n "type": "string"\n },\n "start": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "kind",\n "start",\n "end"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "kind": {\n "const": "artifact-path",\n "type": "string"\n },\n "path": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "kind",\n "path"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "kind": {\n "const": "file-offset",\n "type": "string"\n },\n "offset": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "kind",\n "offset"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "end": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "kind": {\n "const": "file-offset-range",\n "type": "string"\n },\n "start": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "kind",\n "start",\n "end"\n ],\n "type": "object"\n }\n ]\n },\n "type": "array"\n },\n "normalized_result": {\n "$ref": "#/$defs/__schema0"\n },\n "operation": {\n "minLength": 1,\n "type": "string"\n },\n "parameters": {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n },\n "predicate_type": {\n "minLength": 1,\n "type": "string"\n },\n "provider": {\n "additionalProperties": false,\n "properties": {\n "id": {\n "minLength": 1,\n "type": "string"\n },\n "name": {\n "minLength": 1,\n "type": "string"\n },\n "version": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "id",\n "name",\n "version"\n ],\n "type": "object"\n },\n "raw_result": {\n "anyOf": [\n {\n "$ref": "#/$defs/__schema0"\n },\n {\n "type": "null"\n }\n ]\n },\n "subject": {\n "anyOf": [\n {\n "additionalProperties": false,\n "properties": {\n "architecture": {\n "anyOf": [\n {\n "enum": [\n "x86",\n "x86_64",\n "arm",\n "arm64"\n ],\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "digest": {\n "additionalProperties": false,\n "properties": {\n "sha256": {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n }\n },\n "required": [\n "sha256"\n ],\n "type": "object"\n },\n "format": {\n "enum": [\n "hopper",\n "analysis-database",\n "mach-o",\n "elf",\n "pe",\n "dos-mz",\n "dos-com",\n "zip",\n "ipa",\n "apk",\n "msix",\n "appx",\n "asar",\n "dmg",\n "pkg",\n "plist",\n "javascript",\n "source-map",\n "directory",\n "file",\n "unknown",\n "mach-o-universal",\n "javascript-bundle",\n "entitlements"\n ],\n "type": "string"\n },\n "local_path": {\n "type": "string"\n },\n "name": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "name",\n "digest",\n "format",\n "architecture",\n "local_path"\n ],\n "type": "object"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "evidence_id",\n "subject",\n "provider",\n "predicate_type",\n "operation",\n "parameters",\n "raw_result",\n "normalized_result",\n "confidence",\n "authority",\n "environment",\n "limitations",\n "locations",\n "evidence_links"\n ],\n "type": "object"\n },\n "evidence_id": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "result": {\n "items": {\n "additionalProperties": false,\n "properties": {\n "address": {\n "type": "string"\n },\n "name": {\n "type": "string"\n }\n },\n "required": [\n "address",\n "name"\n ],\n "type": "object"\n },\n "type": "array"\n }\n },\n "required": [\n "result",\n "evidence_id",\n "evidence"\n ],\n "type": "object"\n },\n "requiresSession": false,\n "title": "List Bookmarks"\n },\n {\n "analysisOperation": "list_documents",\n "annotations": {\n "destructiveHint": false,\n "idempotentHint": true,\n "openWorldHint": false,\n "readOnlyHint": false\n },\n "description": "List provider program or document identities. Hopper may expose several documents; a Ghidra headless session contains exactly its one imported Program.",\n "effects": {\n "accessesNetwork": false,\n "changesUiState": false,\n "idempotent": true,\n "launchesProcess": false,\n "mayDiscardData": false,\n "mutatesSession": true,\n "mutatesTarget": false,\n "writesFilesystem": false\n },\n "inputSchema": {\n "$schema": "https://json-schema.org/draft/2020-12/schema",\n "examples": [\n {}\n ],\n "properties": {},\n "type": "object"\n },\n "kind": "official-proxy",\n "name": "list_documents",\n "outputSchema": {\n "$defs": {\n "__schema0": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "number"\n },\n {\n "type": "boolean"\n },\n {\n "type": "null"\n },\n {\n "items": {\n "$ref": "#/$defs/__schema0"\n },\n "type": "array"\n },\n {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n }\n ]\n }\n },\n "$schema": "https://json-schema.org/draft/2020-12/schema",\n "additionalProperties": false,\n "properties": {\n "evidence": {\n "additionalProperties": false,\n "properties": {\n "analysis_profile": {\n "additionalProperties": false,\n "properties": {\n "digest": {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n },\n "parameters": {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n },\n "provider": {\n "additionalProperties": false,\n "properties": {\n "id": {\n "minLength": 1,\n "type": "string"\n },\n "name": {\n "minLength": 1,\n "type": "string"\n },\n "version": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "id",\n "name",\n "version"\n ],\n "type": "object"\n }\n },\n "required": [\n "provider",\n "parameters",\n "digest"\n ],\n "type": "object"\n },\n "authority": {\n "enum": [\n "shipped-artifact",\n "controlled-replay",\n "historical-reference",\n "external-service",\n "analyst-inference"\n ],\n "type": "string"\n },\n "confidence": {\n "enum": [\n "observed",\n "derived",\n "inferred"\n ],\n "type": "string"\n },\n "environment": {\n "anyOf": [\n {\n "additionalProperties": false,\n "properties": {\n "architecture": {\n "minLength": 1,\n "type": "string"\n },\n "id": {\n "minLength": 1,\n "type": "string"\n },\n "isolation": {\n "enum": [\n "none",\n "process",\n "container",\n "virtual-machine"\n ],\n "type": "string"\n },\n "platform": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "id",\n "platform",\n "architecture",\n "isolation"\n ],\n "type": "object"\n },\n {\n "type": "null"\n }\n ]\n },\n "evidence_id": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "evidence_links": {\n "items": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "type": "array"\n },\n "limitations": {\n "items": {\n "type": "string"\n },\n "type": "array"\n },\n "locations": {\n "items": {\n "oneOf": [\n {\n "additionalProperties": false,\n "properties": {\n "address": {\n "minLength": 1,\n "type": "string"\n },\n "kind": {\n "const": "address",\n "type": "string"\n }\n },\n "required": [\n "kind",\n "address"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "end": {\n "minLength": 1,\n "type": "string"\n },\n "kind": {\n "const": "address-range",\n "type": "string"\n },\n "start": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "kind",\n "start",\n "end"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "kind": {\n "const": "artifact-path",\n "type": "string"\n },\n "path": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "kind",\n "path"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "kind": {\n "const": "file-offset",\n "type": "string"\n },\n "offset": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "kind",\n "offset"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "end": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "kind": {\n "const": "file-offset-range",\n "type": "string"\n },\n "start": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "kind",\n "start",\n "end"\n ],\n "type": "object"\n }\n ]\n },\n "type": "array"\n },\n "normalized_result": {\n "$ref": "#/$defs/__schema0"\n },\n "operation": {\n "minLength": 1,\n "type": "string"\n },\n "parameters": {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n },\n "predicate_type": {\n "minLength": 1,\n "type": "string"\n },\n "provider": {\n "additionalProperties": false,\n "properties": {\n "id": {\n "minLength": 1,\n "type": "string"\n },\n "name": {\n "minLength": 1,\n "type": "string"\n },\n "version": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "id",\n "name",\n "version"\n ],\n "type": "object"\n },\n "raw_result": {\n "anyOf": [\n {\n "$ref": "#/$defs/__schema0"\n },\n {\n "type": "null"\n }\n ]\n },\n "subject": {\n "anyOf": [\n {\n "additionalProperties": false,\n "properties": {\n "architecture": {\n "anyOf": [\n {\n "enum": [\n "x86",\n "x86_64",\n "arm",\n "arm64"\n ],\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "digest": {\n "additionalProperties": false,\n "properties": {\n "sha256": {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n }\n },\n "required": [\n "sha256"\n ],\n "type": "object"\n },\n "format": {\n "enum": [\n "hopper",\n "analysis-database",\n "mach-o",\n "elf",\n "pe",\n "dos-mz",\n "dos-com",\n "zip",\n "ipa",\n "apk",\n "msix",\n "appx",\n "asar",\n "dmg",\n "pkg",\n "plist",\n "javascript",\n "source-map",\n "directory",\n "file",\n "unknown",\n "mach-o-universal",\n "javascript-bundle",\n "entitlements"\n ],\n "type": "string"\n },\n "local_path": {\n "type": "string"\n },\n "name": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "name",\n "digest",\n "format",\n "architecture",\n "local_path"\n ],\n "type": "object"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "evidence_id",\n "subject",\n "provider",\n "predicate_type",\n "operation",\n "parameters",\n "raw_result",\n "normalized_result",\n "confidence",\n "authority",\n "environment",\n "limitations",\n "locations",\n "evidence_links"\n ],\n "type": "object"\n },\n "evidence_id": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "result": {\n "items": {\n "type": "string"\n },\n "type": "array"\n }\n },\n "required": [\n "result",\n "evidence_id",\n "evidence"\n ],\n "type": "object"\n },\n "requiresSession": false,\n "title": "List Documents"\n },\n {\n "analysisOperation": "list_names",\n "annotations": {\n "destructiveHint": false,\n "idempotentHint": true,\n "openWorldHint": false,\n "readOnlyHint": false\n },\n "description": "List every analyzed memory and external symbol as address/value pairs. Provider metadata distinguishes Ghidra primary, dynamic, external, type, and source facts when available.",\n "effects": {\n "accessesNetwork": false,\n "changesUiState": false,\n "idempotent": true,\n "launchesProcess": false,\n "mayDiscardData": false,\n "mutatesSession": true,\n "mutatesTarget": false,\n "writesFilesystem": false\n },\n "inputSchema": {\n "$schema": "https://json-schema.org/draft/2020-12/schema",\n "examples": [\n {}\n ],\n "properties": {\n "address": {\n "description": "A provider-normalized address; default memory uses 0x-prefixed hexadecimal",\n "type": "string"\n },\n "document": {\n "description": "The document name",\n "type": "string"\n }\n },\n "type": "object"\n },\n "kind": "official-proxy",\n "name": "list_names",\n "outputSchema": {\n "$defs": {\n "__schema0": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "number"\n },\n {\n "type": "boolean"\n },\n {\n "type": "null"\n },\n {\n "items": {\n "$ref": "#/$defs/__schema0"\n },\n "type": "array"\n },\n {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n }\n ]\n }\n },\n "$schema": "https://json-schema.org/draft/2020-12/schema",\n "additionalProperties": false,\n "properties": {\n "evidence": {\n "additionalProperties": false,\n "properties": {\n "analysis_profile": {\n "additionalProperties": false,\n "properties": {\n "digest": {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n },\n "parameters": {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n },\n "provider": {\n "additionalProperties": false,\n "properties": {\n "id": {\n "minLength": 1,\n "type": "string"\n },\n "name": {\n "minLength": 1,\n "type": "string"\n },\n "version": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "id",\n "name",\n "version"\n ],\n "type": "object"\n }\n },\n "required": [\n "provider",\n "parameters",\n "digest"\n ],\n "type": "object"\n },\n "authority": {\n "enum": [\n "shipped-artifact",\n "controlled-replay",\n "historical-reference",\n "external-service",\n "analyst-inference"\n ],\n "type": "string"\n },\n "confidence": {\n "enum": [\n "observed",\n "derived",\n "inferred"\n ],\n "type": "string"\n },\n "environment": {\n "anyOf": [\n {\n "additionalProperties": false,\n "properties": {\n "architecture": {\n "minLength": 1,\n "type": "string"\n },\n "id": {\n "minLength": 1,\n "type": "string"\n },\n "isolation": {\n "enum": [\n "none",\n "process",\n "container",\n "virtual-machine"\n ],\n "type": "string"\n },\n "platform": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "id",\n "platform",\n "architecture",\n "isolation"\n ],\n "type": "object"\n },\n {\n "type": "null"\n }\n ]\n },\n "evidence_id": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "evidence_links": {\n "items": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "type": "array"\n },\n "limitations": {\n "items": {\n "type": "string"\n },\n "type": "array"\n },\n "locations": {\n "items": {\n "oneOf": [\n {\n "additionalProperties": false,\n "properties": {\n "address": {\n "minLength": 1,\n "type": "string"\n },\n "kind": {\n "const": "address",\n "type": "string"\n }\n },\n "required": [\n "kind",\n "address"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "end": {\n "minLength": 1,\n "type": "string"\n },\n "kind": {\n "const": "address-range",\n "type": "string"\n },\n "start": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "kind",\n "start",\n "end"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "kind": {\n "const": "artifact-path",\n "type": "string"\n },\n "path": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "kind",\n "path"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "kind": {\n "const": "file-offset",\n "type": "string"\n },\n "offset": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "kind",\n "offset"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "end": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "kind": {\n "const": "file-offset-range",\n "type": "string"\n },\n "start": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "kind",\n "start",\n "end"\n ],\n "type": "object"\n }\n ]\n },\n "type": "array"\n },\n "normalized_result": {\n "$ref": "#/$defs/__schema0"\n },\n "operation": {\n "minLength": 1,\n "type": "string"\n },\n "parameters": {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n },\n "predicate_type": {\n "minLength": 1,\n "type": "string"\n },\n "provider": {\n "additionalProperties": false,\n "properties": {\n "id": {\n "minLength": 1,\n "type": "string"\n },\n "name": {\n "minLength": 1,\n "type": "string"\n },\n "version": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "id",\n "name",\n "version"\n ],\n "type": "object"\n },\n "raw_result": {\n "anyOf": [\n {\n "$ref": "#/$defs/__schema0"\n },\n {\n "type": "null"\n }\n ]\n },\n "subject": {\n "anyOf": [\n {\n "additionalProperties": false,\n "properties": {\n "architecture": {\n "anyOf": [\n {\n "enum": [\n "x86",\n "x86_64",\n "arm",\n "arm64"\n ],\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "digest": {\n "additionalProperties": false,\n "properties": {\n "sha256": {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n }\n },\n "required": [\n "sha256"\n ],\n "type": "object"\n },\n "format": {\n "enum": [\n "hopper",\n "analysis-database",\n "mach-o",\n "elf",\n "pe",\n "dos-mz",\n "dos-com",\n "zip",\n "ipa",\n "apk",\n "msix",\n "appx",\n "asar",\n "dmg",\n "pkg",\n "plist",\n "javascript",\n "source-map",\n "directory",\n "file",\n "unknown",\n "mach-o-universal",\n "javascript-bundle",\n "entitlements"\n ],\n "type": "string"\n },\n "local_path": {\n "type": "string"\n },\n "name": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "name",\n "digest",\n "format",\n "architecture",\n "local_path"\n ],\n "type": "object"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "evidence_id",\n "subject",\n "provider",\n "predicate_type",\n "operation",\n "parameters",\n "raw_result",\n "normalized_result",\n "confidence",\n "authority",\n "environment",\n "limitations",\n "locations",\n "evidence_links"\n ],\n "type": "object"\n },\n "evidence_id": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "result": {\n "items": {\n "additionalProperties": false,\n "properties": {\n "address": {\n "type": "string"\n },\n "procedure": {\n "additionalProperties": false,\n "properties": {\n "external": {\n "type": "boolean"\n },\n "thunk": {\n "type": "boolean"\n },\n "thunk_target": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "external",\n "thunk",\n "thunk_target"\n ],\n "type": "object"\n },\n "string": {\n "additionalProperties": false,\n "properties": {\n "byte_length": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "encoding": {\n "type": "string"\n },\n "termination": {\n "enum": [\n "missing",\n "present_or_not_required"\n ],\n "type": "string"\n }\n },\n "required": [\n "encoding",\n "termination",\n "byte_length"\n ],\n "type": "object"\n },\n "symbol": {\n "additionalProperties": false,\n "properties": {\n "dynamic": {\n "type": "boolean"\n },\n "external": {\n "type": "boolean"\n },\n "primary": {\n "type": "boolean"\n },\n "source": {\n "enum": [\n "default",\n "analysis",\n "ai",\n "imported",\n "user_defined"\n ],\n "type": "string"\n },\n "type": {\n "type": "string"\n }\n },\n "required": [\n "primary",\n "dynamic",\n "external",\n "type",\n "source"\n ],\n "type": "object"\n },\n "value": {\n "type": "string"\n }\n },\n "required": [\n "address",\n "value"\n ],\n "type": "object"\n },\n "type": "array"\n }\n },\n "required": [\n "result",\n "evidence_id",\n "evidence"\n ],\n "type": "object"\n },\n "requiresSession": false,\n "title": "List Names"\n },\n {\n "analysisOperation": "list_procedures",\n "annotations": {\n "destructiveHint": false,\n "idempotentHint": true,\n "openWorldHint": false,\n "readOnlyHint": false\n },\n "description": "List every analyzed procedure as address/value pairs after provider analysis. Ghidra metadata distinguishes thunks and external functions; use returned addresses in later function operations.",\n "effects": {\n "accessesNetwork": false,\n "changesUiState": false,\n "idempotent": true,\n "launchesProcess": false,\n "mayDiscardData": false,\n "mutatesSession": true,\n "mutatesTarget": false,\n "writesFilesystem": false\n },\n "inputSchema": {\n "$schema": "https://json-schema.org/draft/2020-12/schema",\n "examples": [\n {}\n ],\n "properties": {\n "document": {\n "description": "The document name",\n "type": "string"\n }\n },\n "type": "object"\n },\n "kind": "official-proxy",\n "name": "list_procedures",\n "outputSchema": {\n "$defs": {\n "__schema0": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "number"\n },\n {\n "type": "boolean"\n },\n {\n "type": "null"\n },\n {\n "items": {\n "$ref": "#/$defs/__schema0"\n },\n "type": "array"\n },\n {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n }\n ]\n }\n },\n "$schema": "https://json-schema.org/draft/2020-12/schema",\n "additionalProperties": false,\n "properties": {\n "evidence": {\n "additionalProperties": false,\n "properties": {\n "analysis_profile": {\n "additionalProperties": false,\n "properties": {\n "digest": {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n },\n "parameters": {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n },\n "provider": {\n "additionalProperties": false,\n "properties": {\n "id": {\n "minLength": 1,\n "type": "string"\n },\n "name": {\n "minLength": 1,\n "type": "string"\n },\n "version": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "id",\n "name",\n "version"\n ],\n "type": "object"\n }\n },\n "required": [\n "provider",\n "parameters",\n "digest"\n ],\n "type": "object"\n },\n "authority": {\n "enum": [\n "shipped-artifact",\n "controlled-replay",\n "historical-reference",\n "external-service",\n "analyst-inference"\n ],\n "type": "string"\n },\n "confidence": {\n "enum": [\n "observed",\n "derived",\n "inferred"\n ],\n "type": "string"\n },\n "environment": {\n "anyOf": [\n {\n "additionalProperties": false,\n "properties": {\n "architecture": {\n "minLength": 1,\n "type": "string"\n },\n "id": {\n "minLength": 1,\n "type": "string"\n },\n "isolation": {\n "enum": [\n "none",\n "process",\n "container",\n "virtual-machine"\n ],\n "type": "string"\n },\n "platform": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "id",\n "platform",\n "architecture",\n "isolation"\n ],\n "type": "object"\n },\n {\n "type": "null"\n }\n ]\n },\n "evidence_id": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "evidence_links": {\n "items": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "type": "array"\n },\n "limitations": {\n "items": {\n "type": "string"\n },\n "type": "array"\n },\n "locations": {\n "items": {\n "oneOf": [\n {\n "additionalProperties": false,\n "properties": {\n "address": {\n "minLength": 1,\n "type": "string"\n },\n "kind": {\n "const": "address",\n "type": "string"\n }\n },\n "required": [\n "kind",\n "address"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "end": {\n "minLength": 1,\n "type": "string"\n },\n "kind": {\n "const": "address-range",\n "type": "string"\n },\n "start": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "kind",\n "start",\n "end"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "kind": {\n "const": "artifact-path",\n "type": "string"\n },\n "path": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "kind",\n "path"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "kind": {\n "const": "file-offset",\n "type": "string"\n },\n "offset": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "kind",\n "offset"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "end": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "kind": {\n "const": "file-offset-range",\n "type": "string"\n },\n "start": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "kind",\n "start",\n "end"\n ],\n "type": "object"\n }\n ]\n },\n "type": "array"\n },\n "normalized_result": {\n "$ref": "#/$defs/__schema0"\n },\n "operation": {\n "minLength": 1,\n "type": "string"\n },\n "parameters": {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n },\n "predicate_type": {\n "minLength": 1,\n "type": "string"\n },\n "provider": {\n "additionalProperties": false,\n "properties": {\n "id": {\n "minLength": 1,\n "type": "string"\n },\n "name": {\n "minLength": 1,\n "type": "string"\n },\n "version": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "id",\n "name",\n "version"\n ],\n "type": "object"\n },\n "raw_result": {\n "anyOf": [\n {\n "$ref": "#/$defs/__schema0"\n },\n {\n "type": "null"\n }\n ]\n },\n "subject": {\n "anyOf": [\n {\n "additionalProperties": false,\n "properties": {\n "architecture": {\n "anyOf": [\n {\n "enum": [\n "x86",\n "x86_64",\n "arm",\n "arm64"\n ],\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "digest": {\n "additionalProperties": false,\n "properties": {\n "sha256": {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n }\n },\n "required": [\n "sha256"\n ],\n "type": "object"\n },\n "format": {\n "enum": [\n "hopper",\n "analysis-database",\n "mach-o",\n "elf",\n "pe",\n "dos-mz",\n "dos-com",\n "zip",\n "ipa",\n "apk",\n "msix",\n "appx",\n "asar",\n "dmg",\n "pkg",\n "plist",\n "javascript",\n "source-map",\n "directory",\n "file",\n "unknown",\n "mach-o-universal",\n "javascript-bundle",\n "entitlements"\n ],\n "type": "string"\n },\n "local_path": {\n "type": "string"\n },\n "name": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "name",\n "digest",\n "format",\n "architecture",\n "local_path"\n ],\n "type": "object"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "evidence_id",\n "subject",\n "provider",\n "predicate_type",\n "operation",\n "parameters",\n "raw_result",\n "normalized_result",\n "confidence",\n "authority",\n "environment",\n "limitations",\n "locations",\n "evidence_links"\n ],\n "type": "object"\n },\n "evidence_id": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "result": {\n "items": {\n "additionalProperties": false,\n "properties": {\n "address": {\n "type": "string"\n },\n "procedure": {\n "additionalProperties": false,\n "properties": {\n "external": {\n "type": "boolean"\n },\n "thunk": {\n "type": "boolean"\n },\n "thunk_target": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "external",\n "thunk",\n "thunk_target"\n ],\n "type": "object"\n },\n "string": {\n "additionalProperties": false,\n "properties": {\n "byte_length": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "encoding": {\n "type": "string"\n },\n "termination": {\n "enum": [\n "missing",\n "present_or_not_required"\n ],\n "type": "string"\n }\n },\n "required": [\n "encoding",\n "termination",\n "byte_length"\n ],\n "type": "object"\n },\n "symbol": {\n "additionalProperties": false,\n "properties": {\n "dynamic": {\n "type": "boolean"\n },\n "external": {\n "type": "boolean"\n },\n "primary": {\n "type": "boolean"\n },\n "source": {\n "enum": [\n "default",\n "analysis",\n "ai",\n "imported",\n "user_defined"\n ],\n "type": "string"\n },\n "type": {\n "type": "string"\n }\n },\n "required": [\n "primary",\n "dynamic",\n "external",\n "type",\n "source"\n ],\n "type": "object"\n },\n "value": {\n "type": "string"\n }\n },\n "required": [\n "address",\n "value"\n ],\n "type": "object"\n },\n "type": "array"\n }\n },\n "required": [\n "result",\n "evidence_id",\n "evidence"\n ],\n "type": "object"\n },\n "requiresSession": false,\n "title": "List Procedures"\n },\n {\n "analysisOperation": "list_segments",\n "annotations": {\n "destructiveHint": false,\n "idempotentHint": true,\n "openWorldHint": false,\n "readOnlyHint": false\n },\n "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.",\n "effects": {\n "accessesNetwork": false,\n "changesUiState": false,\n "idempotent": true,\n "launchesProcess": false,\n "mayDiscardData": false,\n "mutatesSession": true,\n "mutatesTarget": false,\n "writesFilesystem": false\n },\n "inputSchema": {\n "$schema": "https://json-schema.org/draft/2020-12/schema",\n "examples": [\n {}\n ],\n "properties": {\n "document": {\n "description": "The document name",\n "type": "string"\n }\n },\n "type": "object"\n },\n "kind": "official-proxy",\n "name": "list_segments",\n "outputSchema": {\n "$defs": {\n "__schema0": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "number"\n },\n {\n "type": "boolean"\n },\n {\n "type": "null"\n },\n {\n "items": {\n "$ref": "#/$defs/__schema0"\n },\n "type": "array"\n },\n {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n }\n ]\n }\n },\n "$schema": "https://json-schema.org/draft/2020-12/schema",\n "additionalProperties": false,\n "properties": {\n "evidence": {\n "additionalProperties": false,\n "properties": {\n "analysis_profile": {\n "additionalProperties": false,\n "properties": {\n "digest": {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n },\n "parameters": {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n },\n "provider": {\n "additionalProperties": false,\n "properties": {\n "id": {\n "minLength": 1,\n "type": "string"\n },\n "name": {\n "minLength": 1,\n "type": "string"\n },\n "version": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "id",\n "name",\n "version"\n ],\n "type": "object"\n }\n },\n "required": [\n "provider",\n "parameters",\n "digest"\n ],\n "type": "object"\n },\n "authority": {\n "enum": [\n "shipped-artifact",\n "controlled-replay",\n "historical-reference",\n "external-service",\n "analyst-inference"\n ],\n "type": "string"\n },\n "confidence": {\n "enum": [\n "observed",\n "derived",\n "inferred"\n ],\n "type": "string"\n },\n "environment": {\n "anyOf": [\n {\n "additionalProperties": false,\n "properties": {\n "architecture": {\n "minLength": 1,\n "type": "string"\n },\n "id": {\n "minLength": 1,\n "type": "string"\n },\n "isolation": {\n "enum": [\n "none",\n "process",\n "container",\n "virtual-machine"\n ],\n "type": "string"\n },\n "platform": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "id",\n "platform",\n "architecture",\n "isolation"\n ],\n "type": "object"\n },\n {\n "type": "null"\n }\n ]\n },\n "evidence_id": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "evidence_links": {\n "items": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "type": "array"\n },\n "limitations": {\n "items": {\n "type": "string"\n },\n "type": "array"\n },\n "locations": {\n "items": {\n "oneOf": [\n {\n "additionalProperties": false,\n "properties": {\n "address": {\n "minLength": 1,\n "type": "string"\n },\n "kind": {\n "const": "address",\n "type": "string"\n }\n },\n "required": [\n "kind",\n "address"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "end": {\n "minLength": 1,\n "type": "string"\n },\n "kind": {\n "const": "address-range",\n "type": "string"\n },\n "start": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "kind",\n "start",\n "end"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "kind": {\n "const": "artifact-path",\n "type": "string"\n },\n "path": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "kind",\n "path"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "kind": {\n "const": "file-offset",\n "type": "string"\n },\n "offset": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "kind",\n "offset"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "end": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "kind": {\n "const": "file-offset-range",\n "type": "string"\n },\n "start": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "kind",\n "start",\n "end"\n ],\n "type": "object"\n }\n ]\n },\n "type": "array"\n },\n "normalized_result": {\n "$ref": "#/$defs/__schema0"\n },\n "operation": {\n "minLength": 1,\n "type": "string"\n },\n "parameters": {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n },\n "predicate_type": {\n "minLength": 1,\n "type": "string"\n },\n "provider": {\n "additionalProperties": false,\n "properties": {\n "id": {\n "minLength": 1,\n "type": "string"\n },\n "name": {\n "minLength": 1,\n "type": "string"\n },\n "version": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "id",\n "name",\n "version"\n ],\n "type": "object"\n },\n "raw_result": {\n "anyOf": [\n {\n "$ref": "#/$defs/__schema0"\n },\n {\n "type": "null"\n }\n ]\n },\n "subject": {\n "anyOf": [\n {\n "additionalProperties": false,\n "properties": {\n "architecture": {\n "anyOf": [\n {\n "enum": [\n "x86",\n "x86_64",\n "arm",\n "arm64"\n ],\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "digest": {\n "additionalProperties": false,\n "properties": {\n "sha256": {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n }\n },\n "required": [\n "sha256"\n ],\n "type": "object"\n },\n "format": {\n "enum": [\n "hopper",\n "analysis-database",\n "mach-o",\n "elf",\n "pe",\n "dos-mz",\n "dos-com",\n "zip",\n "ipa",\n "apk",\n "msix",\n "appx",\n "asar",\n "dmg",\n "pkg",\n "plist",\n "javascript",\n "source-map",\n "directory",\n "file",\n "unknown",\n "mach-o-universal",\n "javascript-bundle",\n "entitlements"\n ],\n "type": "string"\n },\n "local_path": {\n "type": "string"\n },\n "name": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "name",\n "digest",\n "format",\n "architecture",\n "local_path"\n ],\n "type": "object"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "evidence_id",\n "subject",\n "provider",\n "predicate_type",\n "operation",\n "parameters",\n "raw_result",\n "normalized_result",\n "confidence",\n "authority",\n "environment",\n "limitations",\n "locations",\n "evidence_links"\n ],\n "type": "object"\n },\n "evidence_id": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "result": {\n "items": {\n "additionalProperties": false,\n "properties": {\n "address_space": {\n "type": "string"\n },\n "end": {\n "type": "string"\n },\n "executable": {\n "anyOf": [\n {\n "type": "boolean"\n },\n {\n "type": "null"\n }\n ]\n },\n "image_base": {\n "type": "string"\n },\n "initialized": {\n "type": "boolean"\n },\n "name": {\n "type": "string"\n },\n "overlay": {\n "type": "boolean"\n },\n "permissions": {\n "anyOf": [\n {\n "additionalProperties": false,\n "properties": {\n "available": {\n "const": false,\n "type": "boolean"\n },\n "reason": {\n "type": "string"\n }\n },\n "required": [\n "available",\n "reason"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "available": {\n "const": true,\n "type": "boolean"\n },\n "source": {\n "const": "ghidra-memory-block",\n "type": "string"\n }\n },\n "required": [\n "available",\n "source"\n ],\n "type": "object"\n }\n ]\n },\n "provenance": {\n "enum": [\n "hopper-public-python-api",\n "ghidra-memory-block"\n ],\n "type": "string"\n },\n "readable": {\n "anyOf": [\n {\n "type": "boolean"\n },\n {\n "type": "null"\n }\n ]\n },\n "sections": {\n "items": {\n "additionalProperties": false,\n "properties": {\n "address_space": {\n "type": "string"\n },\n "end": {\n "type": "string"\n },\n "executable": {\n "anyOf": [\n {\n "type": "boolean"\n },\n {\n "type": "null"\n }\n ]\n },\n "image_base": {\n "type": "string"\n },\n "initialized": {\n "type": "boolean"\n },\n "name": {\n "type": "string"\n },\n "overlay": {\n "type": "boolean"\n },\n "permissions": {\n "anyOf": [\n {\n "additionalProperties": false,\n "properties": {\n "available": {\n "const": false,\n "type": "boolean"\n },\n "reason": {\n "type": "string"\n }\n },\n "required": [\n "available",\n "reason"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "available": {\n "const": true,\n "type": "boolean"\n },\n "source": {\n "const": "ghidra-memory-block",\n "type": "string"\n }\n },\n "required": [\n "available",\n "source"\n ],\n "type": "object"\n }\n ]\n },\n "provenance": {\n "enum": [\n "hopper-public-python-api",\n "ghidra-memory-block"\n ],\n "type": "string"\n },\n "readable": {\n "anyOf": [\n {\n "type": "boolean"\n },\n {\n "type": "null"\n }\n ]\n },\n "start": {\n "type": "string"\n },\n "writable": {\n "anyOf": [\n {\n "type": "boolean"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "name",\n "start",\n "end",\n "readable",\n "writable",\n "executable",\n "permissions",\n "provenance"\n ],\n "type": "object"\n },\n "type": "array"\n },\n "start": {\n "type": "string"\n },\n "writable": {\n "anyOf": [\n {\n "type": "boolean"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "name",\n "start",\n "end",\n "readable",\n "writable",\n "executable",\n "permissions",\n "provenance",\n "sections"\n ],\n "type": "object"\n },\n "type": "array"\n }\n },\n "required": [\n "result",\n "evidence_id",\n "evidence"\n ],\n "type": "object"\n },\n "requiresSession": false,\n "title": "List Segments"\n },\n {\n "analysisOperation": "list_strings",\n "annotations": {\n "destructiveHint": false,\n "idempotentHint": true,\n "openWorldHint": false,\n "readOnlyHint": false\n },\n "description": "List every provider-defined string, or filter to one address, as address/value pairs. Ghidra also reports encoding, terminator status, and byte length.",\n "effects": {\n "accessesNetwork": false,\n "changesUiState": false,\n "idempotent": true,\n "launchesProcess": false,\n "mayDiscardData": false,\n "mutatesSession": true,\n "mutatesTarget": false,\n "writesFilesystem": false\n },\n "inputSchema": {\n "$schema": "https://json-schema.org/draft/2020-12/schema",\n "examples": [\n {}\n ],\n "properties": {\n "address": {\n "description": "A provider-normalized address; default memory uses 0x-prefixed hexadecimal",\n "type": "string"\n },\n "document": {\n "description": "The document name",\n "type": "string"\n }\n },\n "type": "object"\n },\n "kind": "official-proxy",\n "name": "list_strings",\n "outputSchema": {\n "$defs": {\n "__schema0": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "number"\n },\n {\n "type": "boolean"\n },\n {\n "type": "null"\n },\n {\n "items": {\n "$ref": "#/$defs/__schema0"\n },\n "type": "array"\n },\n {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n }\n ]\n }\n },\n "$schema": "https://json-schema.org/draft/2020-12/schema",\n "additionalProperties": false,\n "properties": {\n "evidence": {\n "additionalProperties": false,\n "properties": {\n "analysis_profile": {\n "additionalProperties": false,\n "properties": {\n "digest": {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n },\n "parameters": {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n },\n "provider": {\n "additionalProperties": false,\n "properties": {\n "id": {\n "minLength": 1,\n "type": "string"\n },\n "name": {\n "minLength": 1,\n "type": "string"\n },\n "version": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "id",\n "name",\n "version"\n ],\n "type": "object"\n }\n },\n "required": [\n "provider",\n "parameters",\n "digest"\n ],\n "type": "object"\n },\n "authority": {\n "enum": [\n "shipped-artifact",\n "controlled-replay",\n "historical-reference",\n "external-service",\n "analyst-inference"\n ],\n "type": "string"\n },\n "confidence": {\n "enum": [\n "observed",\n "derived",\n "inferred"\n ],\n "type": "string"\n },\n "environment": {\n "anyOf": [\n {\n "additionalProperties": false,\n "properties": {\n "architecture": {\n "minLength": 1,\n "type": "string"\n },\n "id": {\n "minLength": 1,\n "type": "string"\n },\n "isolation": {\n "enum": [\n "none",\n "process",\n "container",\n "virtual-machine"\n ],\n "type": "string"\n },\n "platform": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "id",\n "platform",\n "architecture",\n "isolation"\n ],\n "type": "object"\n },\n {\n "type": "null"\n }\n ]\n },\n "evidence_id": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "evidence_links": {\n "items": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "type": "array"\n },\n "limitations": {\n "items": {\n "type": "string"\n },\n "type": "array"\n },\n "locations": {\n "items": {\n "oneOf": [\n {\n "additionalProperties": false,\n "properties": {\n "address": {\n "minLength": 1,\n "type": "string"\n },\n "kind": {\n "const": "address",\n "type": "string"\n }\n },\n "required": [\n "kind",\n "address"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "end": {\n "minLength": 1,\n "type": "string"\n },\n "kind": {\n "const": "address-range",\n "type": "string"\n },\n "start": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "kind",\n "start",\n "end"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "kind": {\n "const": "artifact-path",\n "type": "string"\n },\n "path": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "kind",\n "path"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "kind": {\n "const": "file-offset",\n "type": "string"\n },\n "offset": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "kind",\n "offset"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "end": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "kind": {\n "const": "file-offset-range",\n "type": "string"\n },\n "start": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "kind",\n "start",\n "end"\n ],\n "type": "object"\n }\n ]\n },\n "type": "array"\n },\n "normalized_result": {\n "$ref": "#/$defs/__schema0"\n },\n "operation": {\n "minLength": 1,\n "type": "string"\n },\n "parameters": {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n },\n "predicate_type": {\n "minLength": 1,\n "type": "string"\n },\n "provider": {\n "additionalProperties": false,\n "properties": {\n "id": {\n "minLength": 1,\n "type": "string"\n },\n "name": {\n "minLength": 1,\n "type": "string"\n },\n "version": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "id",\n "name",\n "version"\n ],\n "type": "object"\n },\n "raw_result": {\n "anyOf": [\n {\n "$ref": "#/$defs/__schema0"\n },\n {\n "type": "null"\n }\n ]\n },\n "subject": {\n "anyOf": [\n {\n "additionalProperties": false,\n "properties": {\n "architecture": {\n "anyOf": [\n {\n "enum": [\n "x86",\n "x86_64",\n "arm",\n "arm64"\n ],\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "digest": {\n "additionalProperties": false,\n "properties": {\n "sha256": {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n }\n },\n "required": [\n "sha256"\n ],\n "type": "object"\n },\n "format": {\n "enum": [\n "hopper",\n "analysis-database",\n "mach-o",\n "elf",\n "pe",\n "dos-mz",\n "dos-com",\n "zip",\n "ipa",\n "apk",\n "msix",\n "appx",\n "asar",\n "dmg",\n "pkg",\n "plist",\n "javascript",\n "source-map",\n "directory",\n "file",\n "unknown",\n "mach-o-universal",\n "javascript-bundle",\n "entitlements"\n ],\n "type": "string"\n },\n "local_path": {\n "type": "string"\n },\n "name": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "name",\n "digest",\n "format",\n "architecture",\n "local_path"\n ],\n "type": "object"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "evidence_id",\n "subject",\n "provider",\n "predicate_type",\n "operation",\n "parameters",\n "raw_result",\n "normalized_result",\n "confidence",\n "authority",\n "environment",\n "limitations",\n "locations",\n "evidence_links"\n ],\n "type": "object"\n },\n "evidence_id": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "result": {\n "items": {\n "additionalProperties": false,\n "properties": {\n "address": {\n "type": "string"\n },\n "string": {\n "additionalProperties": false,\n "properties": {\n "byte_length": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "encoding": {\n "minLength": 1,\n "type": "string"\n },\n "termination": {\n "enum": [\n "missing",\n "present_or_not_required"\n ],\n "type": "string"\n }\n },\n "required": [\n "encoding",\n "termination",\n "byte_length"\n ],\n "type": "object"\n },\n "value": {\n "type": "string"\n }\n },\n "required": [\n "address",\n "value"\n ],\n "type": "object"\n },\n "type": "array"\n }\n },\n "required": [\n "result",\n "evidence_id",\n "evidence"\n ],\n "type": "object"\n },\n "requiresSession": false,\n "title": "List Strings"\n },\n {\n "analysisOperation": "next_address",\n "annotations": {\n "destructiveHint": false,\n "idempotentHint": true,\n "openWorldHint": false,\n "readOnlyHint": false\n },\n "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.",\n "effects": {\n "accessesNetwork": false,\n "changesUiState": false,\n "idempotent": true,\n "launchesProcess": false,\n "mayDiscardData": false,\n "mutatesSession": true,\n "mutatesTarget": false,\n "writesFilesystem": false\n },\n "inputSchema": {\n "$schema": "https://json-schema.org/draft/2020-12/schema",\n "examples": [\n {}\n ],\n "properties": {\n "address": {\n "description": "A provider-normalized address; default memory uses 0x-prefixed hexadecimal",\n "type": "string"\n },\n "document": {\n "description": "The document name",\n "type": "string"\n }\n },\n "type": "object"\n },\n "kind": "official-proxy",\n "name": "next_address",\n "outputSchema": {\n "$defs": {\n "__schema0": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "number"\n },\n {\n "type": "boolean"\n },\n {\n "type": "null"\n },\n {\n "items": {\n "$ref": "#/$defs/__schema0"\n },\n "type": "array"\n },\n {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n }\n ]\n }\n },\n "$schema": "https://json-schema.org/draft/2020-12/schema",\n "additionalProperties": false,\n "properties": {\n "evidence": {\n "additionalProperties": false,\n "properties": {\n "analysis_profile": {\n "additionalProperties": false,\n "properties": {\n "digest": {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n },\n "parameters": {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n },\n "provider": {\n "additionalProperties": false,\n "properties": {\n "id": {\n "minLength": 1,\n "type": "string"\n },\n "name": {\n "minLength": 1,\n "type": "string"\n },\n "version": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "id",\n "name",\n "version"\n ],\n "type": "object"\n }\n },\n "required": [\n "provider",\n "parameters",\n "digest"\n ],\n "type": "object"\n },\n "authority": {\n "enum": [\n "shipped-artifact",\n "controlled-replay",\n "historical-reference",\n "external-service",\n "analyst-inference"\n ],\n "type": "string"\n },\n "confidence": {\n "enum": [\n "observed",\n "derived",\n "inferred"\n ],\n "type": "string"\n },\n "environment": {\n "anyOf": [\n {\n "additionalProperties": false,\n "properties": {\n "architecture": {\n "minLength": 1,\n "type": "string"\n },\n "id": {\n "minLength": 1,\n "type": "string"\n },\n "isolation": {\n "enum": [\n "none",\n "process",\n "container",\n "virtual-machine"\n ],\n "type": "string"\n },\n "platform": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "id",\n "platform",\n "architecture",\n "isolation"\n ],\n "type": "object"\n },\n {\n "type": "null"\n }\n ]\n },\n "evidence_id": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "evidence_links": {\n "items": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "type": "array"\n },\n "limitations": {\n "items": {\n "type": "string"\n },\n "type": "array"\n },\n "locations": {\n "items": {\n "oneOf": [\n {\n "additionalProperties": false,\n "properties": {\n "address": {\n "minLength": 1,\n "type": "string"\n },\n "kind": {\n "const": "address",\n "type": "string"\n }\n },\n "required": [\n "kind",\n "address"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "end": {\n "minLength": 1,\n "type": "string"\n },\n "kind": {\n "const": "address-range",\n "type": "string"\n },\n "start": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "kind",\n "start",\n "end"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "kind": {\n "const": "artifact-path",\n "type": "string"\n },\n "path": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "kind",\n "path"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "kind": {\n "const": "file-offset",\n "type": "string"\n },\n "offset": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "kind",\n "offset"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "end": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "kind": {\n "const": "file-offset-range",\n "type": "string"\n },\n "start": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "kind",\n "start",\n "end"\n ],\n "type": "object"\n }\n ]\n },\n "type": "array"\n },\n "normalized_result": {\n "$ref": "#/$defs/__schema0"\n },\n "operation": {\n "minLength": 1,\n "type": "string"\n },\n "parameters": {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n },\n "predicate_type": {\n "minLength": 1,\n "type": "string"\n },\n "provider": {\n "additionalProperties": false,\n "properties": {\n "id": {\n "minLength": 1,\n "type": "string"\n },\n "name": {\n "minLength": 1,\n "type": "string"\n },\n "version": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "id",\n "name",\n "version"\n ],\n "type": "object"\n },\n "raw_result": {\n "anyOf": [\n {\n "$ref": "#/$defs/__schema0"\n },\n {\n "type": "null"\n }\n ]\n },\n "subject": {\n "anyOf": [\n {\n "additionalProperties": false,\n "properties": {\n "architecture": {\n "anyOf": [\n {\n "enum": [\n "x86",\n "x86_64",\n "arm",\n "arm64"\n ],\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "digest": {\n "additionalProperties": false,\n "properties": {\n "sha256": {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n }\n },\n "required": [\n "sha256"\n ],\n "type": "object"\n },\n "format": {\n "enum": [\n "hopper",\n "analysis-database",\n "mach-o",\n "elf",\n "pe",\n "dos-mz",\n "dos-com",\n "zip",\n "ipa",\n "apk",\n "msix",\n "appx",\n "asar",\n "dmg",\n "pkg",\n "plist",\n "javascript",\n "source-map",\n "directory",\n "file",\n "unknown",\n "mach-o-universal",\n "javascript-bundle",\n "entitlements"\n ],\n "type": "string"\n },\n "local_path": {\n "type": "string"\n },\n "name": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "name",\n "digest",\n "format",\n "architecture",\n "local_path"\n ],\n "type": "object"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "evidence_id",\n "subject",\n "provider",\n "predicate_type",\n "operation",\n "parameters",\n "raw_result",\n "normalized_result",\n "confidence",\n "authority",\n "environment",\n "limitations",\n "locations",\n "evidence_links"\n ],\n "type": "object"\n },\n "evidence_id": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "result": {\n "type": "string"\n }\n },\n "required": [\n "result",\n "evidence_id",\n "evidence"\n ],\n "type": "object"\n },\n "requiresSession": false,\n "title": "Next Address"\n },\n {\n "analysisOperation": "prev_address",\n "annotations": {\n "destructiveHint": false,\n "idempotentHint": true,\n "openWorldHint": false,\n "readOnlyHint": false\n },\n "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.",\n "effects": {\n "accessesNetwork": false,\n "changesUiState": false,\n "idempotent": true,\n "launchesProcess": false,\n "mayDiscardData": false,\n "mutatesSession": true,\n "mutatesTarget": false,\n "writesFilesystem": false\n },\n "inputSchema": {\n "$schema": "https://json-schema.org/draft/2020-12/schema",\n "examples": [\n {}\n ],\n "properties": {\n "address": {\n "description": "A provider-normalized address; default memory uses 0x-prefixed hexadecimal",\n "type": "string"\n },\n "document": {\n "description": "The document name",\n "type": "string"\n }\n },\n "type": "object"\n },\n "kind": "official-proxy",\n "name": "prev_address",\n "outputSchema": {\n "$defs": {\n "__schema0": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "number"\n },\n {\n "type": "boolean"\n },\n {\n "type": "null"\n },\n {\n "items": {\n "$ref": "#/$defs/__schema0"\n },\n "type": "array"\n },\n {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n }\n ]\n }\n },\n "$schema": "https://json-schema.org/draft/2020-12/schema",\n "additionalProperties": false,\n "properties": {\n "evidence": {\n "additionalProperties": false,\n "properties": {\n "analysis_profile": {\n "additionalProperties": false,\n "properties": {\n "digest": {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n },\n "parameters": {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n },\n "provider": {\n "additionalProperties": false,\n "properties": {\n "id": {\n "minLength": 1,\n "type": "string"\n },\n "name": {\n "minLength": 1,\n "type": "string"\n },\n "version": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "id",\n "name",\n "version"\n ],\n "type": "object"\n }\n },\n "required": [\n "provider",\n "parameters",\n "digest"\n ],\n "type": "object"\n },\n "authority": {\n "enum": [\n "shipped-artifact",\n "controlled-replay",\n "historical-reference",\n "external-service",\n "analyst-inference"\n ],\n "type": "string"\n },\n "confidence": {\n "enum": [\n "observed",\n "derived",\n "inferred"\n ],\n "type": "string"\n },\n "environment": {\n "anyOf": [\n {\n "additionalProperties": false,\n "properties": {\n "architecture": {\n "minLength": 1,\n "type": "string"\n },\n "id": {\n "minLength": 1,\n "type": "string"\n },\n "isolation": {\n "enum": [\n "none",\n "process",\n "container",\n "virtual-machine"\n ],\n "type": "string"\n },\n "platform": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "id",\n "platform",\n "architecture",\n "isolation"\n ],\n "type": "object"\n },\n {\n "type": "null"\n }\n ]\n },\n "evidence_id": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "evidence_links": {\n "items": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "type": "array"\n },\n "limitations": {\n "items": {\n "type": "string"\n },\n "type": "array"\n },\n "locations": {\n "items": {\n "oneOf": [\n {\n "additionalProperties": false,\n "properties": {\n "address": {\n "minLength": 1,\n "type": "string"\n },\n "kind": {\n "const": "address",\n "type": "string"\n }\n },\n "required": [\n "kind",\n "address"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "end": {\n "minLength": 1,\n "type": "string"\n },\n "kind": {\n "const": "address-range",\n "type": "string"\n },\n "start": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "kind",\n "start",\n "end"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "kind": {\n "const": "artifact-path",\n "type": "string"\n },\n "path": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "kind",\n "path"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "kind": {\n "const": "file-offset",\n "type": "string"\n },\n "offset": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "kind",\n "offset"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "end": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "kind": {\n "const": "file-offset-range",\n "type": "string"\n },\n "start": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "kind",\n "start",\n "end"\n ],\n "type": "object"\n }\n ]\n },\n "type": "array"\n },\n "normalized_result": {\n "$ref": "#/$defs/__schema0"\n },\n "operation": {\n "minLength": 1,\n "type": "string"\n },\n "parameters": {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n },\n "predicate_type": {\n "minLength": 1,\n "type": "string"\n },\n "provider": {\n "additionalProperties": false,\n "properties": {\n "id": {\n "minLength": 1,\n "type": "string"\n },\n "name": {\n "minLength": 1,\n "type": "string"\n },\n "version": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "id",\n "name",\n "version"\n ],\n "type": "object"\n },\n "raw_result": {\n "anyOf": [\n {\n "$ref": "#/$defs/__schema0"\n },\n {\n "type": "null"\n }\n ]\n },\n "subject": {\n "anyOf": [\n {\n "additionalProperties": false,\n "properties": {\n "architecture": {\n "anyOf": [\n {\n "enum": [\n "x86",\n "x86_64",\n "arm",\n "arm64"\n ],\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "digest": {\n "additionalProperties": false,\n "properties": {\n "sha256": {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n }\n },\n "required": [\n "sha256"\n ],\n "type": "object"\n },\n "format": {\n "enum": [\n "hopper",\n "analysis-database",\n "mach-o",\n "elf",\n "pe",\n "dos-mz",\n "dos-com",\n "zip",\n "ipa",\n "apk",\n "msix",\n "appx",\n "asar",\n "dmg",\n "pkg",\n "plist",\n "javascript",\n "source-map",\n "directory",\n "file",\n "unknown",\n "mach-o-universal",\n "javascript-bundle",\n "entitlements"\n ],\n "type": "string"\n },\n "local_path": {\n "type": "string"\n },\n "name": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "name",\n "digest",\n "format",\n "architecture",\n "local_path"\n ],\n "type": "object"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "evidence_id",\n "subject",\n "provider",\n "predicate_type",\n "operation",\n "parameters",\n "raw_result",\n "normalized_result",\n "confidence",\n "authority",\n "environment",\n "limitations",\n "locations",\n "evidence_links"\n ],\n "type": "object"\n },\n "evidence_id": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "result": {\n "type": "string"\n }\n },\n "required": [\n "result",\n "evidence_id",\n "evidence"\n ],\n "type": "object"\n },\n "requiresSession": false,\n "title": "Prev Address"\n },\n {\n "analysisOperation": "procedure_address",\n "annotations": {\n "destructiveHint": false,\n "idempotentHint": true,\n "openWorldHint": false,\n "readOnlyHint": false\n },\n "description": "Resolve an unambiguous procedure symbol name or provider-normalized address to its canonical entry address. External address spaces remain explicit.",\n "effects": {\n "accessesNetwork": false,\n "changesUiState": false,\n "idempotent": true,\n "launchesProcess": false,\n "mayDiscardData": false,\n "mutatesSession": true,\n "mutatesTarget": false,\n "writesFilesystem": false\n },\n "inputSchema": {\n "$schema": "https://json-schema.org/draft/2020-12/schema",\n "examples": [\n {\n "procedure": "main"\n }\n ],\n "properties": {\n "document": {\n "description": "The document name",\n "type": "string"\n },\n "procedure": {\n "description": "The procedure name or address",\n "type": "string"\n }\n },\n "required": [\n "procedure"\n ],\n "type": "object"\n },\n "kind": "official-proxy",\n "name": "procedure_address",\n "outputSchema": {\n "$defs": {\n "__schema0": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "number"\n },\n {\n "type": "boolean"\n },\n {\n "type": "null"\n },\n {\n "items": {\n "$ref": "#/$defs/__schema0"\n },\n "type": "array"\n },\n {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n }\n ]\n }\n },\n "$schema": "https://json-schema.org/draft/2020-12/schema",\n "additionalProperties": false,\n "properties": {\n "evidence": {\n "additionalProperties": false,\n "properties": {\n "analysis_profile": {\n "additionalProperties": false,\n "properties": {\n "digest": {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n },\n "parameters": {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n },\n "provider": {\n "additionalProperties": false,\n "properties": {\n "id": {\n "minLength": 1,\n "type": "string"\n },\n "name": {\n "minLength": 1,\n "type": "string"\n },\n "version": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "id",\n "name",\n "version"\n ],\n "type": "object"\n }\n },\n "required": [\n "provider",\n "parameters",\n "digest"\n ],\n "type": "object"\n },\n "authority": {\n "enum": [\n "shipped-artifact",\n "controlled-replay",\n "historical-reference",\n "external-service",\n "analyst-inference"\n ],\n "type": "string"\n },\n "confidence": {\n "enum": [\n "observed",\n "derived",\n "inferred"\n ],\n "type": "string"\n },\n "environment": {\n "anyOf": [\n {\n "additionalProperties": false,\n "properties": {\n "architecture": {\n "minLength": 1,\n "type": "string"\n },\n "id": {\n "minLength": 1,\n "type": "string"\n },\n "isolation": {\n "enum": [\n "none",\n "process",\n "container",\n "virtual-machine"\n ],\n "type": "string"\n },\n "platform": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "id",\n "platform",\n "architecture",\n "isolation"\n ],\n "type": "object"\n },\n {\n "type": "null"\n }\n ]\n },\n "evidence_id": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "evidence_links": {\n "items": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "type": "array"\n },\n "limitations": {\n "items": {\n "type": "string"\n },\n "type": "array"\n },\n "locations": {\n "items": {\n "oneOf": [\n {\n "additionalProperties": false,\n "properties": {\n "address": {\n "minLength": 1,\n "type": "string"\n },\n "kind": {\n "const": "address",\n "type": "string"\n }\n },\n "required": [\n "kind",\n "address"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "end": {\n "minLength": 1,\n "type": "string"\n },\n "kind": {\n "const": "address-range",\n "type": "string"\n },\n "start": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "kind",\n "start",\n "end"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "kind": {\n "const": "artifact-path",\n "type": "string"\n },\n "path": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "kind",\n "path"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "kind": {\n "const": "file-offset",\n "type": "string"\n },\n "offset": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "kind",\n "offset"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "end": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "kind": {\n "const": "file-offset-range",\n "type": "string"\n },\n "start": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "kind",\n "start",\n "end"\n ],\n "type": "object"\n }\n ]\n },\n "type": "array"\n },\n "normalized_result": {\n "$ref": "#/$defs/__schema0"\n },\n "operation": {\n "minLength": 1,\n "type": "string"\n },\n "parameters": {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n },\n "predicate_type": {\n "minLength": 1,\n "type": "string"\n },\n "provider": {\n "additionalProperties": false,\n "properties": {\n "id": {\n "minLength": 1,\n "type": "string"\n },\n "name": {\n "minLength": 1,\n "type": "string"\n },\n "version": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "id",\n "name",\n "version"\n ],\n "type": "object"\n },\n "raw_result": {\n "anyOf": [\n {\n "$ref": "#/$defs/__schema0"\n },\n {\n "type": "null"\n }\n ]\n },\n "subject": {\n "anyOf": [\n {\n "additionalProperties": false,\n "properties": {\n "architecture": {\n "anyOf": [\n {\n "enum": [\n "x86",\n "x86_64",\n "arm",\n "arm64"\n ],\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "digest": {\n "additionalProperties": false,\n "properties": {\n "sha256": {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n }\n },\n "required": [\n "sha256"\n ],\n "type": "object"\n },\n "format": {\n "enum": [\n "hopper",\n "analysis-database",\n "mach-o",\n "elf",\n "pe",\n "dos-mz",\n "dos-com",\n "zip",\n "ipa",\n "apk",\n "msix",\n "appx",\n "asar",\n "dmg",\n "pkg",\n "plist",\n "javascript",\n "source-map",\n "directory",\n "file",\n "unknown",\n "mach-o-universal",\n "javascript-bundle",\n "entitlements"\n ],\n "type": "string"\n },\n "local_path": {\n "type": "string"\n },\n "name": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "name",\n "digest",\n "format",\n "architecture",\n "local_path"\n ],\n "type": "object"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "evidence_id",\n "subject",\n "provider",\n "predicate_type",\n "operation",\n "parameters",\n "raw_result",\n "normalized_result",\n "confidence",\n "authority",\n "environment",\n "limitations",\n "locations",\n "evidence_links"\n ],\n "type": "object"\n },\n "evidence_id": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "result": {\n "type": "string"\n }\n },\n "required": [\n "result",\n "evidence_id",\n "evidence"\n ],\n "type": "object"\n },\n "requiresSession": false,\n "title": "Procedure Address"\n },\n {\n "analysisOperation": "procedure_assembly",\n "annotations": {\n "destructiveHint": false,\n "idempotentHint": true,\n "openWorldHint": false,\n "readOnlyHint": false\n },\n "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.",\n "effects": {\n "accessesNetwork": false,\n "changesUiState": false,\n "idempotent": true,\n "launchesProcess": false,\n "mayDiscardData": false,\n "mutatesSession": true,\n "mutatesTarget": false,\n "writesFilesystem": false\n },\n "inputSchema": {\n "$schema": "https://json-schema.org/draft/2020-12/schema",\n "examples": [\n {\n "procedure": "main"\n }\n ],\n "properties": {\n "document": {\n "description": "The document name",\n "type": "string"\n },\n "procedure": {\n "description": "The procedure name or address",\n "type": "string"\n }\n },\n "required": [\n "procedure"\n ],\n "type": "object"\n },\n "kind": "official-proxy",\n "name": "procedure_assembly",\n "outputSchema": {\n "$defs": {\n "__schema0": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "number"\n },\n {\n "type": "boolean"\n },\n {\n "type": "null"\n },\n {\n "items": {\n "$ref": "#/$defs/__schema0"\n },\n "type": "array"\n },\n {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n }\n ]\n }\n },\n "$schema": "https://json-schema.org/draft/2020-12/schema",\n "additionalProperties": false,\n "properties": {\n "evidence": {\n "additionalProperties": false,\n "properties": {\n "analysis_profile": {\n "additionalProperties": false,\n "properties": {\n "digest": {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n },\n "parameters": {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n },\n "provider": {\n "additionalProperties": false,\n "properties": {\n "id": {\n "minLength": 1,\n "type": "string"\n },\n "name": {\n "minLength": 1,\n "type": "string"\n },\n "version": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "id",\n "name",\n "version"\n ],\n "type": "object"\n }\n },\n "required": [\n "provider",\n "parameters",\n "digest"\n ],\n "type": "object"\n },\n "authority": {\n "enum": [\n "shipped-artifact",\n "controlled-replay",\n "historical-reference",\n "external-service",\n "analyst-inference"\n ],\n "type": "string"\n },\n "confidence": {\n "enum": [\n "observed",\n "derived",\n "inferred"\n ],\n "type": "string"\n },\n "environment": {\n "anyOf": [\n {\n "additionalProperties": false,\n "properties": {\n "architecture": {\n "minLength": 1,\n "type": "string"\n },\n "id": {\n "minLength": 1,\n "type": "string"\n },\n "isolation": {\n "enum": [\n "none",\n "process",\n "container",\n "virtual-machine"\n ],\n "type": "string"\n },\n "platform": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "id",\n "platform",\n "architecture",\n "isolation"\n ],\n "type": "object"\n },\n {\n "type": "null"\n }\n ]\n },\n "evidence_id": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "evidence_links": {\n "items": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "type": "array"\n },\n "limitations": {\n "items": {\n "type": "string"\n },\n "type": "array"\n },\n "locations": {\n "items": {\n "oneOf": [\n {\n "additionalProperties": false,\n "properties": {\n "address": {\n "minLength": 1,\n "type": "string"\n },\n "kind": {\n "const": "address",\n "type": "string"\n }\n },\n "required": [\n "kind",\n "address"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "end": {\n "minLength": 1,\n "type": "string"\n },\n "kind": {\n "const": "address-range",\n "type": "string"\n },\n "start": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "kind",\n "start",\n "end"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "kind": {\n "const": "artifact-path",\n "type": "string"\n },\n "path": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "kind",\n "path"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "kind": {\n "const": "file-offset",\n "type": "string"\n },\n "offset": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "kind",\n "offset"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "end": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "kind": {\n "const": "file-offset-range",\n "type": "string"\n },\n "start": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "kind",\n "start",\n "end"\n ],\n "type": "object"\n }\n ]\n },\n "type": "array"\n },\n "normalized_result": {\n "$ref": "#/$defs/__schema0"\n },\n "operation": {\n "minLength": 1,\n "type": "string"\n },\n "parameters": {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n },\n "predicate_type": {\n "minLength": 1,\n "type": "string"\n },\n "provider": {\n "additionalProperties": false,\n "properties": {\n "id": {\n "minLength": 1,\n "type": "string"\n },\n "name": {\n "minLength": 1,\n "type": "string"\n },\n "version": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "id",\n "name",\n "version"\n ],\n "type": "object"\n },\n "raw_result": {\n "anyOf": [\n {\n "$ref": "#/$defs/__schema0"\n },\n {\n "type": "null"\n }\n ]\n },\n "subject": {\n "anyOf": [\n {\n "additionalProperties": false,\n "properties": {\n "architecture": {\n "anyOf": [\n {\n "enum": [\n "x86",\n "x86_64",\n "arm",\n "arm64"\n ],\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "digest": {\n "additionalProperties": false,\n "properties": {\n "sha256": {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n }\n },\n "required": [\n "sha256"\n ],\n "type": "object"\n },\n "format": {\n "enum": [\n "hopper",\n "analysis-database",\n "mach-o",\n "elf",\n "pe",\n "dos-mz",\n "dos-com",\n "zip",\n "ipa",\n "apk",\n "msix",\n "appx",\n "asar",\n "dmg",\n "pkg",\n "plist",\n "javascript",\n "source-map",\n "directory",\n "file",\n "unknown",\n "mach-o-universal",\n "javascript-bundle",\n "entitlements"\n ],\n "type": "string"\n },\n "local_path": {\n "type": "string"\n },\n "name": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "name",\n "digest",\n "format",\n "architecture",\n "local_path"\n ],\n "type": "object"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "evidence_id",\n "subject",\n "provider",\n "predicate_type",\n "operation",\n "parameters",\n "raw_result",\n "normalized_result",\n "confidence",\n "authority",\n "environment",\n "limitations",\n "locations",\n "evidence_links"\n ],\n "type": "object"\n },\n "evidence_id": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "result": {\n "type": "string"\n }\n },\n "required": [\n "result",\n "evidence_id",\n "evidence"\n ],\n "type": "object"\n },\n "requiresSession": false,\n "title": "Procedure Assembly"\n },\n {\n "analysisOperation": "procedure_callees",\n "annotations": {\n "destructiveHint": false,\n "idempotentHint": true,\n "openWorldHint": false,\n "readOnlyHint": false\n },\n "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.",\n "effects": {\n "accessesNetwork": false,\n "changesUiState": false,\n "idempotent": true,\n "launchesProcess": false,\n "mayDiscardData": false,\n "mutatesSession": true,\n "mutatesTarget": false,\n "writesFilesystem": false\n },\n "inputSchema": {\n "$schema": "https://json-schema.org/draft/2020-12/schema",\n "examples": [\n {\n "procedure": "main"\n }\n ],\n "properties": {\n "document": {\n "description": "The document name",\n "type": "string"\n },\n "procedure": {\n "description": "The procedure name or address",\n "type": "string"\n }\n },\n "required": [\n "procedure"\n ],\n "type": "object"\n },\n "kind": "official-proxy",\n "name": "procedure_callees",\n "outputSchema": {\n "$defs": {\n "__schema0": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "number"\n },\n {\n "type": "boolean"\n },\n {\n "type": "null"\n },\n {\n "items": {\n "$ref": "#/$defs/__schema0"\n },\n "type": "array"\n },\n {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n }\n ]\n }\n },\n "$schema": "https://json-schema.org/draft/2020-12/schema",\n "additionalProperties": false,\n "properties": {\n "evidence": {\n "additionalProperties": false,\n "properties": {\n "analysis_profile": {\n "additionalProperties": false,\n "properties": {\n "digest": {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n },\n "parameters": {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n },\n "provider": {\n "additionalProperties": false,\n "properties": {\n "id": {\n "minLength": 1,\n "type": "string"\n },\n "name": {\n "minLength": 1,\n "type": "string"\n },\n "version": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "id",\n "name",\n "version"\n ],\n "type": "object"\n }\n },\n "required": [\n "provider",\n "parameters",\n "digest"\n ],\n "type": "object"\n },\n "authority": {\n "enum": [\n "shipped-artifact",\n "controlled-replay",\n "historical-reference",\n "external-service",\n "analyst-inference"\n ],\n "type": "string"\n },\n "confidence": {\n "enum": [\n "observed",\n "derived",\n "inferred"\n ],\n "type": "string"\n },\n "environment": {\n "anyOf": [\n {\n "additionalProperties": false,\n "properties": {\n "architecture": {\n "minLength": 1,\n "type": "string"\n },\n "id": {\n "minLength": 1,\n "type": "string"\n },\n "isolation": {\n "enum": [\n "none",\n "process",\n "container",\n "virtual-machine"\n ],\n "type": "string"\n },\n "platform": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "id",\n "platform",\n "architecture",\n "isolation"\n ],\n "type": "object"\n },\n {\n "type": "null"\n }\n ]\n },\n "evidence_id": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "evidence_links": {\n "items": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "type": "array"\n },\n "limitations": {\n "items": {\n "type": "string"\n },\n "type": "array"\n },\n "locations": {\n "items": {\n "oneOf": [\n {\n "additionalProperties": false,\n "properties": {\n "address": {\n "minLength": 1,\n "type": "string"\n },\n "kind": {\n "const": "address",\n "type": "string"\n }\n },\n "required": [\n "kind",\n "address"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "end": {\n "minLength": 1,\n "type": "string"\n },\n "kind": {\n "const": "address-range",\n "type": "string"\n },\n "start": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "kind",\n "start",\n "end"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "kind": {\n "const": "artifact-path",\n "type": "string"\n },\n "path": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "kind",\n "path"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "kind": {\n "const": "file-offset",\n "type": "string"\n },\n "offset": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "kind",\n "offset"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "end": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "kind": {\n "const": "file-offset-range",\n "type": "string"\n },\n "start": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "kind",\n "start",\n "end"\n ],\n "type": "object"\n }\n ]\n },\n "type": "array"\n },\n "normalized_result": {\n "$ref": "#/$defs/__schema0"\n },\n "operation": {\n "minLength": 1,\n "type": "string"\n },\n "parameters": {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n },\n "predicate_type": {\n "minLength": 1,\n "type": "string"\n },\n "provider": {\n "additionalProperties": false,\n "properties": {\n "id": {\n "minLength": 1,\n "type": "string"\n },\n "name": {\n "minLength": 1,\n "type": "string"\n },\n "version": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "id",\n "name",\n "version"\n ],\n "type": "object"\n },\n "raw_result": {\n "anyOf": [\n {\n "$ref": "#/$defs/__schema0"\n },\n {\n "type": "null"\n }\n ]\n },\n "subject": {\n "anyOf": [\n {\n "additionalProperties": false,\n "properties": {\n "architecture": {\n "anyOf": [\n {\n "enum": [\n "x86",\n "x86_64",\n "arm",\n "arm64"\n ],\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "digest": {\n "additionalProperties": false,\n "properties": {\n "sha256": {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n }\n },\n "required": [\n "sha256"\n ],\n "type": "object"\n },\n "format": {\n "enum": [\n "hopper",\n "analysis-database",\n "mach-o",\n "elf",\n "pe",\n "dos-mz",\n "dos-com",\n "zip",\n "ipa",\n "apk",\n "msix",\n "appx",\n "asar",\n "dmg",\n "pkg",\n "plist",\n "javascript",\n "source-map",\n "directory",\n "file",\n "unknown",\n "mach-o-universal",\n "javascript-bundle",\n "entitlements"\n ],\n "type": "string"\n },\n "local_path": {\n "type": "string"\n },\n "name": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "name",\n "digest",\n "format",\n "architecture",\n "local_path"\n ],\n "type": "object"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "evidence_id",\n "subject",\n "provider",\n "predicate_type",\n "operation",\n "parameters",\n "raw_result",\n "normalized_result",\n "confidence",\n "authority",\n "environment",\n "limitations",\n "locations",\n "evidence_links"\n ],\n "type": "object"\n },\n "evidence_id": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "result": {\n "items": {\n "type": "string"\n },\n "type": "array"\n }\n },\n "required": [\n "result",\n "evidence_id",\n "evidence"\n ],\n "type": "object"\n },\n "requiresSession": false,\n "title": "Procedure Callees"\n },\n {\n "analysisOperation": "procedure_callers",\n "annotations": {\n "destructiveHint": false,\n "idempotentHint": true,\n "openWorldHint": false,\n "readOnlyHint": false\n },\n "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.",\n "effects": {\n "accessesNetwork": false,\n "changesUiState": false,\n "idempotent": true,\n "launchesProcess": false,\n "mayDiscardData": false,\n "mutatesSession": true,\n "mutatesTarget": false,\n "writesFilesystem": false\n },\n "inputSchema": {\n "$schema": "https://json-schema.org/draft/2020-12/schema",\n "examples": [\n {\n "procedure": "main"\n }\n ],\n "properties": {\n "document": {\n "description": "The document name",\n "type": "string"\n },\n "procedure": {\n "description": "The procedure name or address",\n "type": "string"\n }\n },\n "required": [\n "procedure"\n ],\n "type": "object"\n },\n "kind": "official-proxy",\n "name": "procedure_callers",\n "outputSchema": {\n "$defs": {\n "__schema0": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "number"\n },\n {\n "type": "boolean"\n },\n {\n "type": "null"\n },\n {\n "items": {\n "$ref": "#/$defs/__schema0"\n },\n "type": "array"\n },\n {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n }\n ]\n }\n },\n "$schema": "https://json-schema.org/draft/2020-12/schema",\n "additionalProperties": false,\n "properties": {\n "evidence": {\n "additionalProperties": false,\n "properties": {\n "analysis_profile": {\n "additionalProperties": false,\n "properties": {\n "digest": {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n },\n "parameters": {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n },\n "provider": {\n "additionalProperties": false,\n "properties": {\n "id": {\n "minLength": 1,\n "type": "string"\n },\n "name": {\n "minLength": 1,\n "type": "string"\n },\n "version": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "id",\n "name",\n "version"\n ],\n "type": "object"\n }\n },\n "required": [\n "provider",\n "parameters",\n "digest"\n ],\n "type": "object"\n },\n "authority": {\n "enum": [\n "shipped-artifact",\n "controlled-replay",\n "historical-reference",\n "external-service",\n "analyst-inference"\n ],\n "type": "string"\n },\n "confidence": {\n "enum": [\n "observed",\n "derived",\n "inferred"\n ],\n "type": "string"\n },\n "environment": {\n "anyOf": [\n {\n "additionalProperties": false,\n "properties": {\n "architecture": {\n "minLength": 1,\n "type": "string"\n },\n "id": {\n "minLength": 1,\n "type": "string"\n },\n "isolation": {\n "enum": [\n "none",\n "process",\n "container",\n "virtual-machine"\n ],\n "type": "string"\n },\n "platform": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "id",\n "platform",\n "architecture",\n "isolation"\n ],\n "type": "object"\n },\n {\n "type": "null"\n }\n ]\n },\n "evidence_id": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "evidence_links": {\n "items": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "type": "array"\n },\n "limitations": {\n "items": {\n "type": "string"\n },\n "type": "array"\n },\n "locations": {\n "items": {\n "oneOf": [\n {\n "additionalProperties": false,\n "properties": {\n "address": {\n "minLength": 1,\n "type": "string"\n },\n "kind": {\n "const": "address",\n "type": "string"\n }\n },\n "required": [\n "kind",\n "address"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "end": {\n "minLength": 1,\n "type": "string"\n },\n "kind": {\n "const": "address-range",\n "type": "string"\n },\n "start": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "kind",\n "start",\n "end"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "kind": {\n "const": "artifact-path",\n "type": "string"\n },\n "path": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "kind",\n "path"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "kind": {\n "const": "file-offset",\n "type": "string"\n },\n "offset": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "kind",\n "offset"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "end": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "kind": {\n "const": "file-offset-range",\n "type": "string"\n },\n "start": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "kind",\n "start",\n "end"\n ],\n "type": "object"\n }\n ]\n },\n "type": "array"\n },\n "normalized_result": {\n "$ref": "#/$defs/__schema0"\n },\n "operation": {\n "minLength": 1,\n "type": "string"\n },\n "parameters": {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n },\n "predicate_type": {\n "minLength": 1,\n "type": "string"\n },\n "provider": {\n "additionalProperties": false,\n "properties": {\n "id": {\n "minLength": 1,\n "type": "string"\n },\n "name": {\n "minLength": 1,\n "type": "string"\n },\n "version": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "id",\n "name",\n "version"\n ],\n "type": "object"\n },\n "raw_result": {\n "anyOf": [\n {\n "$ref": "#/$defs/__schema0"\n },\n {\n "type": "null"\n }\n ]\n },\n "subject": {\n "anyOf": [\n {\n "additionalProperties": false,\n "properties": {\n "architecture": {\n "anyOf": [\n {\n "enum": [\n "x86",\n "x86_64",\n "arm",\n "arm64"\n ],\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "digest": {\n "additionalProperties": false,\n "properties": {\n "sha256": {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n }\n },\n "required": [\n "sha256"\n ],\n "type": "object"\n },\n "format": {\n "enum": [\n "hopper",\n "analysis-database",\n "mach-o",\n "elf",\n "pe",\n "dos-mz",\n "dos-com",\n "zip",\n "ipa",\n "apk",\n "msix",\n "appx",\n "asar",\n "dmg",\n "pkg",\n "plist",\n "javascript",\n "source-map",\n "directory",\n "file",\n "unknown",\n "mach-o-universal",\n "javascript-bundle",\n "entitlements"\n ],\n "type": "string"\n },\n "local_path": {\n "type": "string"\n },\n "name": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "name",\n "digest",\n "format",\n "architecture",\n "local_path"\n ],\n "type": "object"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "evidence_id",\n "subject",\n "provider",\n "predicate_type",\n "operation",\n "parameters",\n "raw_result",\n "normalized_result",\n "confidence",\n "authority",\n "environment",\n "limitations",\n "locations",\n "evidence_links"\n ],\n "type": "object"\n },\n "evidence_id": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "result": {\n "items": {\n "type": "string"\n },\n "type": "array"\n }\n },\n "required": [\n "result",\n "evidence_id",\n "evidence"\n ],\n "type": "object"\n },\n "requiresSession": false,\n "title": "Procedure Callers"\n },\n {\n "analysisOperation": "procedure_info",\n "annotations": {\n "destructiveHint": false,\n "idempotentHint": true,\n "openWorldHint": false,\n "readOnlyHint": false\n },\n "description": "Return provider metadata for one procedure identified by symbol or address: entrypoint, signature, locals, size, block count, and complete inclusive body ranges when observed. Body byte count and enclosing span remain distinct; unavailable extent is explicit.",\n "effects": {\n "accessesNetwork": false,\n "changesUiState": false,\n "idempotent": true,\n "launchesProcess": false,\n "mayDiscardData": false,\n "mutatesSession": true,\n "mutatesTarget": false,\n "writesFilesystem": false\n },\n "inputSchema": {\n "$schema": "https://json-schema.org/draft/2020-12/schema",\n "examples": [\n {\n "procedure": "main"\n }\n ],\n "properties": {\n "document": {\n "description": "The document name",\n "type": "string"\n },\n "procedure": {\n "description": "The procedure name or address",\n "type": "string"\n }\n },\n "required": [\n "procedure"\n ],\n "type": "object"\n },\n "kind": "official-proxy",\n "name": "procedure_info",\n "outputSchema": {\n "$defs": {\n "__schema0": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "number"\n },\n {\n "type": "boolean"\n },\n {\n "type": "null"\n },\n {\n "items": {\n "$ref": "#/$defs/__schema0"\n },\n "type": "array"\n },\n {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n }\n ]\n }\n },\n "$schema": "https://json-schema.org/draft/2020-12/schema",\n "additionalProperties": false,\n "properties": {\n "evidence": {\n "additionalProperties": false,\n "properties": {\n "analysis_profile": {\n "additionalProperties": false,\n "properties": {\n "digest": {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n },\n "parameters": {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n },\n "provider": {\n "additionalProperties": false,\n "properties": {\n "id": {\n "minLength": 1,\n "type": "string"\n },\n "name": {\n "minLength": 1,\n "type": "string"\n },\n "version": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "id",\n "name",\n "version"\n ],\n "type": "object"\n }\n },\n "required": [\n "provider",\n "parameters",\n "digest"\n ],\n "type": "object"\n },\n "authority": {\n "enum": [\n "shipped-artifact",\n "controlled-replay",\n "historical-reference",\n "external-service",\n "analyst-inference"\n ],\n "type": "string"\n },\n "confidence": {\n "enum": [\n "observed",\n "derived",\n "inferred"\n ],\n "type": "string"\n },\n "environment": {\n "anyOf": [\n {\n "additionalProperties": false,\n "properties": {\n "architecture": {\n "minLength": 1,\n "type": "string"\n },\n "id": {\n "minLength": 1,\n "type": "string"\n },\n "isolation": {\n "enum": [\n "none",\n "process",\n "container",\n "virtual-machine"\n ],\n "type": "string"\n },\n "platform": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "id",\n "platform",\n "architecture",\n "isolation"\n ],\n "type": "object"\n },\n {\n "type": "null"\n }\n ]\n },\n "evidence_id": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "evidence_links": {\n "items": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "type": "array"\n },\n "limitations": {\n "items": {\n "type": "string"\n },\n "type": "array"\n },\n "locations": {\n "items": {\n "oneOf": [\n {\n "additionalProperties": false,\n "properties": {\n "address": {\n "minLength": 1,\n "type": "string"\n },\n "kind": {\n "const": "address",\n "type": "string"\n }\n },\n "required": [\n "kind",\n "address"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "end": {\n "minLength": 1,\n "type": "string"\n },\n "kind": {\n "const": "address-range",\n "type": "string"\n },\n "start": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "kind",\n "start",\n "end"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "kind": {\n "const": "artifact-path",\n "type": "string"\n },\n "path": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "kind",\n "path"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "kind": {\n "const": "file-offset",\n "type": "string"\n },\n "offset": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "kind",\n "offset"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "end": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "kind": {\n "const": "file-offset-range",\n "type": "string"\n },\n "start": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "kind",\n "start",\n "end"\n ],\n "type": "object"\n }\n ]\n },\n "type": "array"\n },\n "normalized_result": {\n "$ref": "#/$defs/__schema0"\n },\n "operation": {\n "minLength": 1,\n "type": "string"\n },\n "parameters": {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n },\n "predicate_type": {\n "minLength": 1,\n "type": "string"\n },\n "provider": {\n "additionalProperties": false,\n "properties": {\n "id": {\n "minLength": 1,\n "type": "string"\n },\n "name": {\n "minLength": 1,\n "type": "string"\n },\n "version": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "id",\n "name",\n "version"\n ],\n "type": "object"\n },\n "raw_result": {\n "anyOf": [\n {\n "$ref": "#/$defs/__schema0"\n },\n {\n "type": "null"\n }\n ]\n },\n "subject": {\n "anyOf": [\n {\n "additionalProperties": false,\n "properties": {\n "architecture": {\n "anyOf": [\n {\n "enum": [\n "x86",\n "x86_64",\n "arm",\n "arm64"\n ],\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "digest": {\n "additionalProperties": false,\n "properties": {\n "sha256": {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n }\n },\n "required": [\n "sha256"\n ],\n "type": "object"\n },\n "format": {\n "enum": [\n "hopper",\n "analysis-database",\n "mach-o",\n "elf",\n "pe",\n "dos-mz",\n "dos-com",\n "zip",\n "ipa",\n "apk",\n "msix",\n "appx",\n "asar",\n "dmg",\n "pkg",\n "plist",\n "javascript",\n "source-map",\n "directory",\n "file",\n "unknown",\n "mach-o-universal",\n "javascript-bundle",\n "entitlements"\n ],\n "type": "string"\n },\n "local_path": {\n "type": "string"\n },\n "name": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "name",\n "digest",\n "format",\n "architecture",\n "local_path"\n ],\n "type": "object"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "evidence_id",\n "subject",\n "provider",\n "predicate_type",\n "operation",\n "parameters",\n "raw_result",\n "normalized_result",\n "confidence",\n "authority",\n "environment",\n "limitations",\n "locations",\n "evidence_links"\n ],\n "type": "object"\n },\n "evidence_id": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "result": {\n "additionalProperties": false,\n "properties": {\n "basicblock_count": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "body": {\n "default": {\n "available": false,\n "reason": "The provider did not report complete function body ranges."\n },\n "oneOf": [\n {\n "additionalProperties": false,\n "properties": {\n "available": {\n "const": false,\n "type": "boolean"\n },\n "reason": {\n "type": "string"\n }\n },\n "required": [\n "available",\n "reason"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "available": {\n "const": true,\n "type": "boolean"\n },\n "contains_entry": {\n "type": "boolean"\n },\n "non_contiguous": {\n "type": "boolean"\n },\n "provenance": {\n "minLength": 1,\n "type": "string"\n },\n "ranges": {\n "items": {\n "additionalProperties": false,\n "properties": {\n "end": {\n "description": "Inclusive last address of this observed body range.",\n "type": "string"\n },\n "start": {\n "type": "string"\n }\n },\n "required": [\n "start",\n "end"\n ],\n "type": "object"\n },\n "type": "array"\n },\n "span_bytes": {\n "anyOf": [\n {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n {\n "type": "null"\n }\n ]\n },\n "total_bytes": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "available",\n "provenance",\n "ranges",\n "total_bytes",\n "span_bytes",\n "non_contiguous",\n "contains_entry"\n ],\n "type": "object"\n }\n ]\n },\n "classification": {\n "anyOf": [\n {\n "additionalProperties": false,\n "properties": {\n "external": {\n "type": "boolean"\n },\n "provenance": {\n "minLength": 1,\n "type": "string"\n },\n "thunk": {\n "type": "boolean"\n },\n "thunk_target": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "external",\n "thunk",\n "thunk_target",\n "provenance"\n ],\n "type": "object"\n },\n {\n "type": "null"\n }\n ],\n "default": null\n },\n "entrypoint": {\n "type": "string"\n },\n "length": {\n "minimum": 0,\n "type": "number"\n },\n "locals": {\n "items": {\n "additionalProperties": false,\n "properties": {\n "description": {\n "type": "string"\n },\n "provenance": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "description",\n "provenance"\n ],\n "type": "object"\n },\n "type": "array"\n },\n "name": {\n "type": "string"\n },\n "signature": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "name",\n "entrypoint",\n "basicblock_count",\n "length",\n "signature",\n "locals",\n "classification",\n "body"\n ],\n "type": "object"\n }\n },\n "required": [\n "result",\n "evidence_id",\n "evidence"\n ],\n "type": "object"\n },\n "requiresSession": false,\n "title": "Procedure Info"\n },\n {\n "analysisOperation": "read_function_instructions",\n "annotations": {\n "destructiveHint": false,\n "idempotentHint": true,\n "openWorldHint": false,\n "readOnlyHint": false\n },\n "description": "Return every raw instruction for one analyzed procedure. Instruction text is provider-specific.",\n "effects": {\n "accessesNetwork": false,\n "changesUiState": false,\n "idempotent": true,\n "launchesProcess": false,\n "mayDiscardData": false,\n "mutatesSession": true,\n "mutatesTarget": false,\n "writesFilesystem": false\n },\n "inputSchema": {\n "$schema": "https://json-schema.org/draft/2020-12/schema",\n "examples": [\n {\n "procedure": "main"\n }\n ],\n "properties": {\n "document": {\n "description": "The document name",\n "type": "string"\n },\n "procedure": {\n "description": "The procedure name or address",\n "type": "string"\n }\n },\n "required": [\n "procedure"\n ],\n "type": "object"\n },\n "kind": "official-proxy",\n "name": "read_function_instructions",\n "outputSchema": {\n "$defs": {\n "__schema0": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "number"\n },\n {\n "type": "boolean"\n },\n {\n "type": "null"\n },\n {\n "items": {\n "$ref": "#/$defs/__schema0"\n },\n "type": "array"\n },\n {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n }\n ]\n }\n },\n "$schema": "https://json-schema.org/draft/2020-12/schema",\n "additionalProperties": false,\n "properties": {\n "evidence": {\n "additionalProperties": false,\n "properties": {\n "analysis_profile": {\n "additionalProperties": false,\n "properties": {\n "digest": {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n },\n "parameters": {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n },\n "provider": {\n "additionalProperties": false,\n "properties": {\n "id": {\n "minLength": 1,\n "type": "string"\n },\n "name": {\n "minLength": 1,\n "type": "string"\n },\n "version": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "id",\n "name",\n "version"\n ],\n "type": "object"\n }\n },\n "required": [\n "provider",\n "parameters",\n "digest"\n ],\n "type": "object"\n },\n "authority": {\n "enum": [\n "shipped-artifact",\n "controlled-replay",\n "historical-reference",\n "external-service",\n "analyst-inference"\n ],\n "type": "string"\n },\n "confidence": {\n "enum": [\n "observed",\n "derived",\n "inferred"\n ],\n "type": "string"\n },\n "environment": {\n "anyOf": [\n {\n "additionalProperties": false,\n "properties": {\n "architecture": {\n "minLength": 1,\n "type": "string"\n },\n "id": {\n "minLength": 1,\n "type": "string"\n },\n "isolation": {\n "enum": [\n "none",\n "process",\n "container",\n "virtual-machine"\n ],\n "type": "string"\n },\n "platform": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "id",\n "platform",\n "architecture",\n "isolation"\n ],\n "type": "object"\n },\n {\n "type": "null"\n }\n ]\n },\n "evidence_id": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "evidence_links": {\n "items": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "type": "array"\n },\n "limitations": {\n "items": {\n "type": "string"\n },\n "type": "array"\n },\n "locations": {\n "items": {\n "oneOf": [\n {\n "additionalProperties": false,\n "properties": {\n "address": {\n "minLength": 1,\n "type": "string"\n },\n "kind": {\n "const": "address",\n "type": "string"\n }\n },\n "required": [\n "kind",\n "address"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "end": {\n "minLength": 1,\n "type": "string"\n },\n "kind": {\n "const": "address-range",\n "type": "string"\n },\n "start": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "kind",\n "start",\n "end"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "kind": {\n "const": "artifact-path",\n "type": "string"\n },\n "path": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "kind",\n "path"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "kind": {\n "const": "file-offset",\n "type": "string"\n },\n "offset": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "kind",\n "offset"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "end": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "kind": {\n "const": "file-offset-range",\n "type": "string"\n },\n "start": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "kind",\n "start",\n "end"\n ],\n "type": "object"\n }\n ]\n },\n "type": "array"\n },\n "normalized_result": {\n "$ref": "#/$defs/__schema0"\n },\n "operation": {\n "minLength": 1,\n "type": "string"\n },\n "parameters": {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n },\n "predicate_type": {\n "minLength": 1,\n "type": "string"\n },\n "provider": {\n "additionalProperties": false,\n "properties": {\n "id": {\n "minLength": 1,\n "type": "string"\n },\n "name": {\n "minLength": 1,\n "type": "string"\n },\n "version": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "id",\n "name",\n "version"\n ],\n "type": "object"\n },\n "raw_result": {\n "anyOf": [\n {\n "$ref": "#/$defs/__schema0"\n },\n {\n "type": "null"\n }\n ]\n },\n "subject": {\n "anyOf": [\n {\n "additionalProperties": false,\n "properties": {\n "architecture": {\n "anyOf": [\n {\n "enum": [\n "x86",\n "x86_64",\n "arm",\n "arm64"\n ],\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "digest": {\n "additionalProperties": false,\n "properties": {\n "sha256": {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n }\n },\n "required": [\n "sha256"\n ],\n "type": "object"\n },\n "format": {\n "enum": [\n "hopper",\n "analysis-database",\n "mach-o",\n "elf",\n "pe",\n "dos-mz",\n "dos-com",\n "zip",\n "ipa",\n "apk",\n "msix",\n "appx",\n "asar",\n "dmg",\n "pkg",\n "plist",\n "javascript",\n "source-map",\n "directory",\n "file",\n "unknown",\n "mach-o-universal",\n "javascript-bundle",\n "entitlements"\n ],\n "type": "string"\n },\n "local_path": {\n "type": "string"\n },\n "name": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "name",\n "digest",\n "format",\n "architecture",\n "local_path"\n ],\n "type": "object"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "evidence_id",\n "subject",\n "provider",\n "predicate_type",\n "operation",\n "parameters",\n "raw_result",\n "normalized_result",\n "confidence",\n "authority",\n "environment",\n "limitations",\n "locations",\n "evidence_links"\n ],\n "type": "object"\n },\n "evidence_id": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "result": {\n "additionalProperties": false,\n "properties": {\n "instructions": {\n "items": {\n "type": "string"\n },\n "type": "array"\n },\n "limitations": {\n "items": {\n "type": "string"\n },\n "type": "array"\n },\n "procedure": {\n "additionalProperties": false,\n "properties": {\n "address": {\n "type": "string"\n },\n "body": {\n "default": {\n "available": false,\n "reason": "The provider did not report complete function body ranges."\n },\n "oneOf": [\n {\n "additionalProperties": false,\n "properties": {\n "available": {\n "const": false,\n "type": "boolean"\n },\n "reason": {\n "type": "string"\n }\n },\n "required": [\n "available",\n "reason"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "available": {\n "const": true,\n "type": "boolean"\n },\n "contains_entry": {\n "type": "boolean"\n },\n "non_contiguous": {\n "type": "boolean"\n },\n "provenance": {\n "minLength": 1,\n "type": "string"\n },\n "ranges": {\n "items": {\n "additionalProperties": false,\n "properties": {\n "end": {\n "description": "Inclusive last address of this observed body range.",\n "type": "string"\n },\n "start": {\n "type": "string"\n }\n },\n "required": [\n "start",\n "end"\n ],\n "type": "object"\n },\n "type": "array"\n },\n "span_bytes": {\n "anyOf": [\n {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n {\n "type": "null"\n }\n ]\n },\n "total_bytes": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "available",\n "provenance",\n "ranges",\n "total_bytes",\n "span_bytes",\n "non_contiguous",\n "contains_entry"\n ],\n "type": "object"\n }\n ]\n },\n "classification": {\n "anyOf": [\n {\n "additionalProperties": false,\n "properties": {\n "external": {\n "type": "boolean"\n },\n "provenance": {\n "minLength": 1,\n "type": "string"\n },\n "thunk": {\n "type": "boolean"\n },\n "thunk_target": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "external",\n "thunk",\n "thunk_target",\n "provenance"\n ],\n "type": "object"\n },\n {\n "type": "null"\n }\n ],\n "default": null\n },\n "name": {\n "type": "string"\n }\n },\n "required": [\n "address",\n "name",\n "classification",\n "body"\n ],\n "type": "object"\n }\n },\n "required": [\n "procedure",\n "instructions",\n "limitations"\n ],\n "type": "object"\n }\n },\n "required": [\n "result",\n "evidence_id",\n "evidence"\n ],\n "type": "object"\n },\n "requiresSession": false,\n "title": "Read Function Instructions"\n },\n {\n "analysisOperation": "read_bytes",\n "annotations": {\n "destructiveHint": false,\n "idempotentHint": true,\n "openWorldHint": false,\n "readOnlyHint": false\n },\n "description": "Read 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.",\n "effects": {\n "accessesNetwork": false,\n "changesUiState": false,\n "idempotent": true,\n "launchesProcess": false,\n "mayDiscardData": false,\n "mutatesSession": true,\n "mutatesTarget": false,\n "writesFilesystem": false\n },\n "inputSchema": {\n "$schema": "https://json-schema.org/draft/2020-12/schema",\n "examples": [\n {\n "address": "0x1000",\n "length": 16\n }\n ],\n "properties": {\n "address": {\n "description": "A provider-normalized address; default memory uses 0x-prefixed hexadecimal",\n "type": "string"\n },\n "document": {\n "description": "The document name",\n "type": "string"\n },\n "length": {\n "default": 256,\n "description": "Value for length.",\n "maximum": 9007199254740991,\n "minimum": 1,\n "type": "integer"\n }\n },\n "required": [\n "address"\n ],\n "type": "object"\n },\n "kind": "official-proxy",\n "name": "read_bytes",\n "outputSchema": {\n "$defs": {\n "__schema0": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "number"\n },\n {\n "type": "boolean"\n },\n {\n "type": "null"\n },\n {\n "items": {\n "$ref": "#/$defs/__schema0"\n },\n "type": "array"\n },\n {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n }\n ]\n }\n },\n "$schema": "https://json-schema.org/draft/2020-12/schema",\n "additionalProperties": false,\n "properties": {\n "evidence": {\n "additionalProperties": false,\n "properties": {\n "analysis_profile": {\n "additionalProperties": false,\n "properties": {\n "digest": {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n },\n "parameters": {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n },\n "provider": {\n "additionalProperties": false,\n "properties": {\n "id": {\n "minLength": 1,\n "type": "string"\n },\n "name": {\n "minLength": 1,\n "type": "string"\n },\n "version": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "id",\n "name",\n "version"\n ],\n "type": "object"\n }\n },\n "required": [\n "provider",\n "parameters",\n "digest"\n ],\n "type": "object"\n },\n "authority": {\n "enum": [\n "shipped-artifact",\n "controlled-replay",\n "historical-reference",\n "external-service",\n "analyst-inference"\n ],\n "type": "string"\n },\n "confidence": {\n "enum": [\n "observed",\n "derived",\n "inferred"\n ],\n "type": "string"\n },\n "environment": {\n "anyOf": [\n {\n "additionalProperties": false,\n "properties": {\n "architecture": {\n "minLength": 1,\n "type": "string"\n },\n "id": {\n "minLength": 1,\n "type": "string"\n },\n "isolation": {\n "enum": [\n "none",\n "process",\n "container",\n "virtual-machine"\n ],\n "type": "string"\n },\n "platform": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "id",\n "platform",\n "architecture",\n "isolation"\n ],\n "type": "object"\n },\n {\n "type": "null"\n }\n ]\n },\n "evidence_id": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "evidence_links": {\n "items": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "type": "array"\n },\n "limitations": {\n "items": {\n "type": "string"\n },\n "type": "array"\n },\n "locations": {\n "items": {\n "oneOf": [\n {\n "additionalProperties": false,\n "properties": {\n "address": {\n "minLength": 1,\n "type": "string"\n },\n "kind": {\n "const": "address",\n "type": "string"\n }\n },\n "required": [\n "kind",\n "address"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "end": {\n "minLength": 1,\n "type": "string"\n },\n "kind": {\n "const": "address-range",\n "type": "string"\n },\n "start": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "kind",\n "start",\n "end"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "kind": {\n "const": "artifact-path",\n "type": "string"\n },\n "path": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "kind",\n "path"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "kind": {\n "const": "file-offset",\n "type": "string"\n },\n "offset": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "kind",\n "offset"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "end": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "kind": {\n "const": "file-offset-range",\n "type": "string"\n },\n "start": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "kind",\n "start",\n "end"\n ],\n "type": "object"\n }\n ]\n },\n "type": "array"\n },\n "normalized_result": {\n "$ref": "#/$defs/__schema0"\n },\n "operation": {\n "minLength": 1,\n "type": "string"\n },\n "parameters": {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n },\n "predicate_type": {\n "minLength": 1,\n "type": "string"\n },\n "provider": {\n "additionalProperties": false,\n "properties": {\n "id": {\n "minLength": 1,\n "type": "string"\n },\n "name": {\n "minLength": 1,\n "type": "string"\n },\n "version": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "id",\n "name",\n "version"\n ],\n "type": "object"\n },\n "raw_result": {\n "anyOf": [\n {\n "$ref": "#/$defs/__schema0"\n },\n {\n "type": "null"\n }\n ]\n },\n "subject": {\n "anyOf": [\n {\n "additionalProperties": false,\n "properties": {\n "architecture": {\n "anyOf": [\n {\n "enum": [\n "x86",\n "x86_64",\n "arm",\n "arm64"\n ],\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "digest": {\n "additionalProperties": false,\n "properties": {\n "sha256": {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n }\n },\n "required": [\n "sha256"\n ],\n "type": "object"\n },\n "format": {\n "enum": [\n "hopper",\n "analysis-database",\n "mach-o",\n "elf",\n "pe",\n "dos-mz",\n "dos-com",\n "zip",\n "ipa",\n "apk",\n "msix",\n "appx",\n "asar",\n "dmg",\n "pkg",\n "plist",\n "javascript",\n "source-map",\n "directory",\n "file",\n "unknown",\n "mach-o-universal",\n "javascript-bundle",\n "entitlements"\n ],\n "type": "string"\n },\n "local_path": {\n "type": "string"\n },\n "name": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "name",\n "digest",\n "format",\n "architecture",\n "local_path"\n ],\n "type": "object"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "evidence_id",\n "subject",\n "provider",\n "predicate_type",\n "operation",\n "parameters",\n "raw_result",\n "normalized_result",\n "confidence",\n "authority",\n "environment",\n "limitations",\n "locations",\n "evidence_links"\n ],\n "type": "object"\n },\n "evidence_id": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "result": {\n "additionalProperties": false,\n "properties": {\n "address": {\n "type": "string"\n },\n "bytes_hex": {\n "pattern": "^(?:[a-f0-9]{2})*$",\n "type": "string"\n },\n "complete": {\n "type": "boolean"\n },\n "requested_bytes": {\n "maximum": 9007199254740991,\n "minimum": 1,\n "type": "integer"\n },\n "returned_bytes": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "address",\n "requested_bytes",\n "returned_bytes",\n "bytes_hex",\n "complete"\n ],\n "type": "object"\n }\n },\n "required": [\n "result",\n "evidence_id",\n "evidence"\n ],\n "type": "object"\n },\n "requiresSession": false,\n "title": "Read Bytes"\n },\n {\n "analysisOperation": "address_to_file_offset",\n "annotations": {\n "destructiveHint": false,\n "idempotentHint": true,\n "openWorldHint": false,\n "readOnlyHint": false\n },\n "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.",\n "effects": {\n "accessesNetwork": false,\n "changesUiState": false,\n "idempotent": true,\n "launchesProcess": false,\n "mayDiscardData": false,\n "mutatesSession": true,\n "mutatesTarget": false,\n "writesFilesystem": false\n },\n "inputSchema": {\n "$schema": "https://json-schema.org/draft/2020-12/schema",\n "examples": [\n {\n "address": "0x1000"\n }\n ],\n "properties": {\n "address": {\n "description": "A provider-normalized address; default memory uses 0x-prefixed hexadecimal",\n "type": "string"\n },\n "document": {\n "description": "The document name",\n "type": "string"\n }\n },\n "required": [\n "address"\n ],\n "type": "object"\n },\n "kind": "official-proxy",\n "name": "address_to_file_offset",\n "outputSchema": {\n "$defs": {\n "__schema0": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "number"\n },\n {\n "type": "boolean"\n },\n {\n "type": "null"\n },\n {\n "items": {\n "$ref": "#/$defs/__schema0"\n },\n "type": "array"\n },\n {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n }\n ]\n }\n },\n "$schema": "https://json-schema.org/draft/2020-12/schema",\n "additionalProperties": false,\n "properties": {\n "evidence": {\n "additionalProperties": false,\n "properties": {\n "analysis_profile": {\n "additionalProperties": false,\n "properties": {\n "digest": {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n },\n "parameters": {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n },\n "provider": {\n "additionalProperties": false,\n "properties": {\n "id": {\n "minLength": 1,\n "type": "string"\n },\n "name": {\n "minLength": 1,\n "type": "string"\n },\n "version": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "id",\n "name",\n "version"\n ],\n "type": "object"\n }\n },\n "required": [\n "provider",\n "parameters",\n "digest"\n ],\n "type": "object"\n },\n "authority": {\n "enum": [\n "shipped-artifact",\n "controlled-replay",\n "historical-reference",\n "external-service",\n "analyst-inference"\n ],\n "type": "string"\n },\n "confidence": {\n "enum": [\n "observed",\n "derived",\n "inferred"\n ],\n "type": "string"\n },\n "environment": {\n "anyOf": [\n {\n "additionalProperties": false,\n "properties": {\n "architecture": {\n "minLength": 1,\n "type": "string"\n },\n "id": {\n "minLength": 1,\n "type": "string"\n },\n "isolation": {\n "enum": [\n "none",\n "process",\n "container",\n "virtual-machine"\n ],\n "type": "string"\n },\n "platform": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "id",\n "platform",\n "architecture",\n "isolation"\n ],\n "type": "object"\n },\n {\n "type": "null"\n }\n ]\n },\n "evidence_id": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "evidence_links": {\n "items": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "type": "array"\n },\n "limitations": {\n "items": {\n "type": "string"\n },\n "type": "array"\n },\n "locations": {\n "items": {\n "oneOf": [\n {\n "additionalProperties": false,\n "properties": {\n "address": {\n "minLength": 1,\n "type": "string"\n },\n "kind": {\n "const": "address",\n "type": "string"\n }\n },\n "required": [\n "kind",\n "address"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "end": {\n "minLength": 1,\n "type": "string"\n },\n "kind": {\n "const": "address-range",\n "type": "string"\n },\n "start": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "kind",\n "start",\n "end"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "kind": {\n "const": "artifact-path",\n "type": "string"\n },\n "path": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "kind",\n "path"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "kind": {\n "const": "file-offset",\n "type": "string"\n },\n "offset": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "kind",\n "offset"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "end": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "kind": {\n "const": "file-offset-range",\n "type": "string"\n },\n "start": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "kind",\n "start",\n "end"\n ],\n "type": "object"\n }\n ]\n },\n "type": "array"\n },\n "normalized_result": {\n "$ref": "#/$defs/__schema0"\n },\n "operation": {\n "minLength": 1,\n "type": "string"\n },\n "parameters": {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n },\n "predicate_type": {\n "minLength": 1,\n "type": "string"\n },\n "provider": {\n "additionalProperties": false,\n "properties": {\n "id": {\n "minLength": 1,\n "type": "string"\n },\n "name": {\n "minLength": 1,\n "type": "string"\n },\n "version": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "id",\n "name",\n "version"\n ],\n "type": "object"\n },\n "raw_result": {\n "anyOf": [\n {\n "$ref": "#/$defs/__schema0"\n },\n {\n "type": "null"\n }\n ]\n },\n "subject": {\n "anyOf": [\n {\n "additionalProperties": false,\n "properties": {\n "architecture": {\n "anyOf": [\n {\n "enum": [\n "x86",\n "x86_64",\n "arm",\n "arm64"\n ],\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "digest": {\n "additionalProperties": false,\n "properties": {\n "sha256": {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n }\n },\n "required": [\n "sha256"\n ],\n "type": "object"\n },\n "format": {\n "enum": [\n "hopper",\n "analysis-database",\n "mach-o",\n "elf",\n "pe",\n "dos-mz",\n "dos-com",\n "zip",\n "ipa",\n "apk",\n "msix",\n "appx",\n "asar",\n "dmg",\n "pkg",\n "plist",\n "javascript",\n "source-map",\n "directory",\n "file",\n "unknown",\n "mach-o-universal",\n "javascript-bundle",\n "entitlements"\n ],\n "type": "string"\n },\n "local_path": {\n "type": "string"\n },\n "name": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "name",\n "digest",\n "format",\n "architecture",\n "local_path"\n ],\n "type": "object"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "evidence_id",\n "subject",\n "provider",\n "predicate_type",\n "operation",\n "parameters",\n "raw_result",\n "normalized_result",\n "confidence",\n "authority",\n "environment",\n "limitations",\n "locations",\n "evidence_links"\n ],\n "type": "object"\n },\n "evidence_id": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "result": {\n "additionalProperties": false,\n "properties": {\n "address": {\n "type": "string"\n },\n "file_offset": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "address",\n "file_offset"\n ],\n "type": "object"\n }\n },\n "required": [\n "result",\n "evidence_id",\n "evidence"\n ],\n "type": "object"\n },\n "requiresSession": false,\n "title": "Address To File Offset"\n },\n {\n "analysisOperation": "procedure_references",\n "annotations": {\n "destructiveHint": false,\n "idempotentHint": true,\n "openWorldHint": false,\n "readOnlyHint": false\n },\n "description": "Return every raw incoming or outgoing reference edge for one procedure. Endpoint procedures are resolved only from provider containment; Ghidra preserves observed reference kinds while providers without kind authority mark them unavailable.",\n "effects": {\n "accessesNetwork": false,\n "changesUiState": false,\n "idempotent": true,\n "launchesProcess": false,\n "mayDiscardData": false,\n "mutatesSession": true,\n "mutatesTarget": false,\n "writesFilesystem": false\n },\n "inputSchema": {\n "$schema": "https://json-schema.org/draft/2020-12/schema",\n "examples": [\n {\n "direction": "outgoing",\n "procedure": "main"\n }\n ],\n "properties": {\n "direction": {\n "default": "outgoing",\n "description": "Direction in which to traverse or compare relationships.",\n "enum": [\n "incoming",\n "outgoing"\n ],\n "type": "string"\n },\n "document": {\n "description": "The document name",\n "type": "string"\n },\n "procedure": {\n "description": "The procedure name or address",\n "type": "string"\n }\n },\n "required": [\n "procedure"\n ],\n "type": "object"\n },\n "kind": "official-proxy",\n "name": "procedure_references",\n "outputSchema": {\n "$defs": {\n "__schema0": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "number"\n },\n {\n "type": "boolean"\n },\n {\n "type": "null"\n },\n {\n "items": {\n "$ref": "#/$defs/__schema0"\n },\n "type": "array"\n },\n {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n }\n ]\n }\n },\n "$schema": "https://json-schema.org/draft/2020-12/schema",\n "additionalProperties": false,\n "properties": {\n "evidence": {\n "additionalProperties": false,\n "properties": {\n "analysis_profile": {\n "additionalProperties": false,\n "properties": {\n "digest": {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n },\n "parameters": {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n },\n "provider": {\n "additionalProperties": false,\n "properties": {\n "id": {\n "minLength": 1,\n "type": "string"\n },\n "name": {\n "minLength": 1,\n "type": "string"\n },\n "version": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "id",\n "name",\n "version"\n ],\n "type": "object"\n }\n },\n "required": [\n "provider",\n "parameters",\n "digest"\n ],\n "type": "object"\n },\n "authority": {\n "enum": [\n "shipped-artifact",\n "controlled-replay",\n "historical-reference",\n "external-service",\n "analyst-inference"\n ],\n "type": "string"\n },\n "confidence": {\n "enum": [\n "observed",\n "derived",\n "inferred"\n ],\n "type": "string"\n },\n "environment": {\n "anyOf": [\n {\n "additionalProperties": false,\n "properties": {\n "architecture": {\n "minLength": 1,\n "type": "string"\n },\n "id": {\n "minLength": 1,\n "type": "string"\n },\n "isolation": {\n "enum": [\n "none",\n "process",\n "container",\n "virtual-machine"\n ],\n "type": "string"\n },\n "platform": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "id",\n "platform",\n "architecture",\n "isolation"\n ],\n "type": "object"\n },\n {\n "type": "null"\n }\n ]\n },\n "evidence_id": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "evidence_links": {\n "items": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "type": "array"\n },\n "limitations": {\n "items": {\n "type": "string"\n },\n "type": "array"\n },\n "locations": {\n "items": {\n "oneOf": [\n {\n "additionalProperties": false,\n "properties": {\n "address": {\n "minLength": 1,\n "type": "string"\n },\n "kind": {\n "const": "address",\n "type": "string"\n }\n },\n "required": [\n "kind",\n "address"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "end": {\n "minLength": 1,\n "type": "string"\n },\n "kind": {\n "const": "address-range",\n "type": "string"\n },\n "start": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "kind",\n "start",\n "end"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "kind": {\n "const": "artifact-path",\n "type": "string"\n },\n "path": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "kind",\n "path"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "kind": {\n "const": "file-offset",\n "type": "string"\n },\n "offset": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "kind",\n "offset"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "end": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "kind": {\n "const": "file-offset-range",\n "type": "string"\n },\n "start": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "kind",\n "start",\n "end"\n ],\n "type": "object"\n }\n ]\n },\n "type": "array"\n },\n "normalized_result": {\n "$ref": "#/$defs/__schema0"\n },\n "operation": {\n "minLength": 1,\n "type": "string"\n },\n "parameters": {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n },\n "predicate_type": {\n "minLength": 1,\n "type": "string"\n },\n "provider": {\n "additionalProperties": false,\n "properties": {\n "id": {\n "minLength": 1,\n "type": "string"\n },\n "name": {\n "minLength": 1,\n "type": "string"\n },\n "version": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "id",\n "name",\n "version"\n ],\n "type": "object"\n },\n "raw_result": {\n "anyOf": [\n {\n "$ref": "#/$defs/__schema0"\n },\n {\n "type": "null"\n }\n ]\n },\n "subject": {\n "anyOf": [\n {\n "additionalProperties": false,\n "properties": {\n "architecture": {\n "anyOf": [\n {\n "enum": [\n "x86",\n "x86_64",\n "arm",\n "arm64"\n ],\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "digest": {\n "additionalProperties": false,\n "properties": {\n "sha256": {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n }\n },\n "required": [\n "sha256"\n ],\n "type": "object"\n },\n "format": {\n "enum": [\n "hopper",\n "analysis-database",\n "mach-o",\n "elf",\n "pe",\n "dos-mz",\n "dos-com",\n "zip",\n "ipa",\n "apk",\n "msix",\n "appx",\n "asar",\n "dmg",\n "pkg",\n "plist",\n "javascript",\n "source-map",\n "directory",\n "file",\n "unknown",\n "mach-o-universal",\n "javascript-bundle",\n "entitlements"\n ],\n "type": "string"\n },\n "local_path": {\n "type": "string"\n },\n "name": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "name",\n "digest",\n "format",\n "architecture",\n "local_path"\n ],\n "type": "object"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "evidence_id",\n "subject",\n "provider",\n "predicate_type",\n "operation",\n "parameters",\n "raw_result",\n "normalized_result",\n "confidence",\n "authority",\n "environment",\n "limitations",\n "locations",\n "evidence_links"\n ],\n "type": "object"\n },\n "evidence_id": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "result": {\n "additionalProperties": false,\n "properties": {\n "direction": {\n "enum": [\n "incoming",\n "outgoing"\n ],\n "type": "string"\n },\n "procedure": {\n "additionalProperties": false,\n "properties": {\n "address": {\n "type": "string"\n },\n "body": {\n "default": {\n "available": false,\n "reason": "The provider did not report complete function body ranges."\n },\n "oneOf": [\n {\n "additionalProperties": false,\n "properties": {\n "available": {\n "const": false,\n "type": "boolean"\n },\n "reason": {\n "type": "string"\n }\n },\n "required": [\n "available",\n "reason"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "available": {\n "const": true,\n "type": "boolean"\n },\n "contains_entry": {\n "type": "boolean"\n },\n "non_contiguous": {\n "type": "boolean"\n },\n "provenance": {\n "minLength": 1,\n "type": "string"\n },\n "ranges": {\n "items": {\n "additionalProperties": false,\n "properties": {\n "end": {\n "description": "Inclusive last address of this observed body range.",\n "type": "string"\n },\n "start": {\n "type": "string"\n }\n },\n "required": [\n "start",\n "end"\n ],\n "type": "object"\n },\n "type": "array"\n },\n "span_bytes": {\n "anyOf": [\n {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n {\n "type": "null"\n }\n ]\n },\n "total_bytes": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "available",\n "provenance",\n "ranges",\n "total_bytes",\n "span_bytes",\n "non_contiguous",\n "contains_entry"\n ],\n "type": "object"\n }\n ]\n },\n "classification": {\n "anyOf": [\n {\n "additionalProperties": false,\n "properties": {\n "external": {\n "type": "boolean"\n },\n "provenance": {\n "minLength": 1,\n "type": "string"\n },\n "thunk": {\n "type": "boolean"\n },\n "thunk_target": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "external",\n "thunk",\n "thunk_target",\n "provenance"\n ],\n "type": "object"\n },\n {\n "type": "null"\n }\n ],\n "default": null\n },\n "name": {\n "type": "string"\n }\n },\n "required": [\n "address",\n "name",\n "classification",\n "body"\n ],\n "type": "object"\n },\n "reference_kinds_available": {\n "type": "boolean"\n },\n "references": {\n "items": {\n "additionalProperties": false,\n "properties": {\n "kind": {\n "oneOf": [\n {\n "additionalProperties": false,\n "properties": {\n "available": {\n "const": false,\n "type": "boolean"\n },\n "reason": {\n "type": "string"\n }\n },\n "required": [\n "available",\n "reason"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "available": {\n "const": true,\n "type": "boolean"\n },\n "call": {\n "type": "boolean"\n },\n "computed": {\n "type": "boolean"\n },\n "conditional": {\n "type": "boolean"\n },\n "data": {\n "type": "boolean"\n },\n "external": {\n "type": "boolean"\n },\n "flow": {\n "type": "boolean"\n },\n "indirect": {\n "type": "boolean"\n },\n "jump": {\n "type": "boolean"\n },\n "operand_index": {\n "maximum": 9007199254740991,\n "minimum": -9007199254740991,\n "type": "integer"\n },\n "primary": {\n "type": "boolean"\n },\n "provenance": {\n "minLength": 1,\n "type": "string"\n },\n "read": {\n "type": "boolean"\n },\n "terminal": {\n "type": "boolean"\n },\n "type": {\n "type": "string"\n },\n "write": {\n "type": "boolean"\n }\n },\n "required": [\n "available",\n "provenance",\n "type",\n "flow",\n "call",\n "jump",\n "data",\n "read",\n "write",\n "indirect",\n "computed",\n "conditional",\n "terminal",\n "primary",\n "operand_index",\n "external"\n ],\n "type": "object"\n }\n ]\n },\n "source_address": {\n "type": "string"\n },\n "source_procedure": {\n "anyOf": [\n {\n "additionalProperties": false,\n "properties": {\n "address": {\n "type": "string"\n },\n "body": {\n "default": {\n "available": false,\n "reason": "The provider did not report complete function body ranges."\n },\n "oneOf": [\n {\n "additionalProperties": false,\n "properties": {\n "available": {\n "const": false,\n "type": "boolean"\n },\n "reason": {\n "type": "string"\n }\n },\n "required": [\n "available",\n "reason"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "available": {\n "const": true,\n "type": "boolean"\n },\n "contains_entry": {\n "type": "boolean"\n },\n "non_contiguous": {\n "type": "boolean"\n },\n "provenance": {\n "minLength": 1,\n "type": "string"\n },\n "ranges": {\n "items": {\n "additionalProperties": false,\n "properties": {\n "end": {\n "description": "Inclusive last address of this observed body range.",\n "type": "string"\n },\n "start": {\n "type": "string"\n }\n },\n "required": [\n "start",\n "end"\n ],\n "type": "object"\n },\n "type": "array"\n },\n "span_bytes": {\n "anyOf": [\n {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n {\n "type": "null"\n }\n ]\n },\n "total_bytes": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "available",\n "provenance",\n "ranges",\n "total_bytes",\n "span_bytes",\n "non_contiguous",\n "contains_entry"\n ],\n "type": "object"\n }\n ]\n },\n "classification": {\n "anyOf": [\n {\n "additionalProperties": false,\n "properties": {\n "external": {\n "type": "boolean"\n },\n "provenance": {\n "minLength": 1,\n "type": "string"\n },\n "thunk": {\n "type": "boolean"\n },\n "thunk_target": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "external",\n "thunk",\n "thunk_target",\n "provenance"\n ],\n "type": "object"\n },\n {\n "type": "null"\n }\n ],\n "default": null\n },\n "name": {\n "type": "string"\n }\n },\n "required": [\n "address",\n "name",\n "classification",\n "body"\n ],\n "type": "object"\n },\n {\n "type": "null"\n }\n ]\n },\n "target_address": {\n "type": "string"\n },\n "target_procedure": {\n "anyOf": [\n {\n "additionalProperties": false,\n "properties": {\n "address": {\n "type": "string"\n },\n "body": {\n "default": {\n "available": false,\n "reason": "The provider did not report complete function body ranges."\n },\n "oneOf": [\n {\n "additionalProperties": false,\n "properties": {\n "available": {\n "const": false,\n "type": "boolean"\n },\n "reason": {\n "type": "string"\n }\n },\n "required": [\n "available",\n "reason"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "available": {\n "const": true,\n "type": "boolean"\n },\n "contains_entry": {\n "type": "boolean"\n },\n "non_contiguous": {\n "type": "boolean"\n },\n "provenance": {\n "minLength": 1,\n "type": "string"\n },\n "ranges": {\n "items": {\n "additionalProperties": false,\n "properties": {\n "end": {\n "description": "Inclusive last address of this observed body range.",\n "type": "string"\n },\n "start": {\n "type": "string"\n }\n },\n "required": [\n "start",\n "end"\n ],\n "type": "object"\n },\n "type": "array"\n },\n "span_bytes": {\n "anyOf": [\n {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n {\n "type": "null"\n }\n ]\n },\n "total_bytes": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "available",\n "provenance",\n "ranges",\n "total_bytes",\n "span_bytes",\n "non_contiguous",\n "contains_entry"\n ],\n "type": "object"\n }\n ]\n },\n "classification": {\n "anyOf": [\n {\n "additionalProperties": false,\n "properties": {\n "external": {\n "type": "boolean"\n },\n "provenance": {\n "minLength": 1,\n "type": "string"\n },\n "thunk": {\n "type": "boolean"\n },\n "thunk_target": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "external",\n "thunk",\n "thunk_target",\n "provenance"\n ],\n "type": "object"\n },\n {\n "type": "null"\n }\n ],\n "default": null\n },\n "name": {\n "type": "string"\n }\n },\n "required": [\n "address",\n "name",\n "classification",\n "body"\n ],\n "type": "object"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "source_address",\n "target_address",\n "source_procedure",\n "target_procedure",\n "kind"\n ],\n "type": "object"\n },\n "type": "array"\n },\n "unresolved_calls": {\n "default": [],\n "items": {\n "additionalProperties": false,\n "properties": {\n "address": {\n "type": "string"\n },\n "reason": {\n "type": "string"\n }\n },\n "required": [\n "address",\n "reason"\n ],\n "type": "object"\n },\n "type": "array"\n }\n },\n "required": [\n "procedure",\n "direction",\n "unresolved_calls",\n "references"\n ],\n "type": "object"\n }\n },\n "required": [\n "result",\n "evidence_id",\n "evidence"\n ],\n "type": "object"\n },\n "requiresSession": false,\n "title": "Procedure References"\n },\n {\n "analysisOperation": "procedure_pseudo_code",\n "annotations": {\n "destructiveHint": false,\n "idempotentHint": true,\n "openWorldHint": false,\n "readOnlyHint": false\n },\n "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.",\n "effects": {\n "accessesNetwork": false,\n "changesUiState": false,\n "idempotent": true,\n "launchesProcess": false,\n "mayDiscardData": false,\n "mutatesSession": true,\n "mutatesTarget": false,\n "writesFilesystem": false\n },\n "inputSchema": {\n "$schema": "https://json-schema.org/draft/2020-12/schema",\n "examples": [\n {\n "procedure": "main"\n }\n ],\n "properties": {\n "document": {\n "description": "The document name",\n "type": "string"\n },\n "procedure": {\n "description": "The procedure name or address",\n "type": "string"\n }\n },\n "required": [\n "procedure"\n ],\n "type": "object"\n },\n "kind": "official-proxy",\n "name": "procedure_pseudo_code",\n "outputSchema": {\n "$defs": {\n "__schema0": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "number"\n },\n {\n "type": "boolean"\n },\n {\n "type": "null"\n },\n {\n "items": {\n "$ref": "#/$defs/__schema0"\n },\n "type": "array"\n },\n {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n }\n ]\n }\n },\n "$schema": "https://json-schema.org/draft/2020-12/schema",\n "additionalProperties": false,\n "properties": {\n "evidence": {\n "additionalProperties": false,\n "properties": {\n "analysis_profile": {\n "additionalProperties": false,\n "properties": {\n "digest": {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n },\n "parameters": {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n },\n "provider": {\n "additionalProperties": false,\n "properties": {\n "id": {\n "minLength": 1,\n "type": "string"\n },\n "name": {\n "minLength": 1,\n "type": "string"\n },\n "version": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "id",\n "name",\n "version"\n ],\n "type": "object"\n }\n },\n "required": [\n "provider",\n "parameters",\n "digest"\n ],\n "type": "object"\n },\n "authority": {\n "enum": [\n "shipped-artifact",\n "controlled-replay",\n "historical-reference",\n "external-service",\n "analyst-inference"\n ],\n "type": "string"\n },\n "confidence": {\n "enum": [\n "observed",\n "derived",\n "inferred"\n ],\n "type": "string"\n },\n "environment": {\n "anyOf": [\n {\n "additionalProperties": false,\n "properties": {\n "architecture": {\n "minLength": 1,\n "type": "string"\n },\n "id": {\n "minLength": 1,\n "type": "string"\n },\n "isolation": {\n "enum": [\n "none",\n "process",\n "container",\n "virtual-machine"\n ],\n "type": "string"\n },\n "platform": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "id",\n "platform",\n "architecture",\n "isolation"\n ],\n "type": "object"\n },\n {\n "type": "null"\n }\n ]\n },\n "evidence_id": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "evidence_links": {\n "items": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "type": "array"\n },\n "limitations": {\n "items": {\n "type": "string"\n },\n "type": "array"\n },\n "locations": {\n "items": {\n "oneOf": [\n {\n "additionalProperties": false,\n "properties": {\n "address": {\n "minLength": 1,\n "type": "string"\n },\n "kind": {\n "const": "address",\n "type": "string"\n }\n },\n "required": [\n "kind",\n "address"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "end": {\n "minLength": 1,\n "type": "string"\n },\n "kind": {\n "const": "address-range",\n "type": "string"\n },\n "start": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "kind",\n "start",\n "end"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "kind": {\n "const": "artifact-path",\n "type": "string"\n },\n "path": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "kind",\n "path"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "kind": {\n "const": "file-offset",\n "type": "string"\n },\n "offset": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "kind",\n "offset"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "end": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "kind": {\n "const": "file-offset-range",\n "type": "string"\n },\n "start": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "kind",\n "start",\n "end"\n ],\n "type": "object"\n }\n ]\n },\n "type": "array"\n },\n "normalized_result": {\n "$ref": "#/$defs/__schema0"\n },\n "operation": {\n "minLength": 1,\n "type": "string"\n },\n "parameters": {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n },\n "predicate_type": {\n "minLength": 1,\n "type": "string"\n },\n "provider": {\n "additionalProperties": false,\n "properties": {\n "id": {\n "minLength": 1,\n "type": "string"\n },\n "name": {\n "minLength": 1,\n "type": "string"\n },\n "version": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "id",\n "name",\n "version"\n ],\n "type": "object"\n },\n "raw_result": {\n "anyOf": [\n {\n "$ref": "#/$defs/__schema0"\n },\n {\n "type": "null"\n }\n ]\n },\n "subject": {\n "anyOf": [\n {\n "additionalProperties": false,\n "properties": {\n "architecture": {\n "anyOf": [\n {\n "enum": [\n "x86",\n "x86_64",\n "arm",\n "arm64"\n ],\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "digest": {\n "additionalProperties": false,\n "properties": {\n "sha256": {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n }\n },\n "required": [\n "sha256"\n ],\n "type": "object"\n },\n "format": {\n "enum": [\n "hopper",\n "analysis-database",\n "mach-o",\n "elf",\n "pe",\n "dos-mz",\n "dos-com",\n "zip",\n "ipa",\n "apk",\n "msix",\n "appx",\n "asar",\n "dmg",\n "pkg",\n "plist",\n "javascript",\n "source-map",\n "directory",\n "file",\n "unknown",\n "mach-o-universal",\n "javascript-bundle",\n "entitlements"\n ],\n "type": "string"\n },\n "local_path": {\n "type": "string"\n },\n "name": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "name",\n "digest",\n "format",\n "architecture",\n "local_path"\n ],\n "type": "object"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "evidence_id",\n "subject",\n "provider",\n "predicate_type",\n "operation",\n "parameters",\n "raw_result",\n "normalized_result",\n "confidence",\n "authority",\n "environment",\n "limitations",\n "locations",\n "evidence_links"\n ],\n "type": "object"\n },\n "evidence_id": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "result": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "result",\n "evidence_id",\n "evidence"\n ],\n "type": "object"\n },\n "requiresSession": false,\n "title": "Procedure Pseudo Code"\n },\n {\n "analysisOperation": "resolve_containing_procedure",\n "annotations": {\n "destructiveHint": false,\n "idempotentHint": true,\n "openWorldHint": false,\n "readOnlyHint": false\n },\n "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.",\n "effects": {\n "accessesNetwork": false,\n "changesUiState": false,\n "idempotent": true,\n "launchesProcess": false,\n "mayDiscardData": false,\n "mutatesSession": true,\n "mutatesTarget": false,\n "writesFilesystem": false\n },\n "inputSchema": {\n "$schema": "https://json-schema.org/draft/2020-12/schema",\n "examples": [\n {\n "address": "0x1000"\n }\n ],\n "properties": {\n "address": {\n "description": "A provider-normalized address; default memory uses 0x-prefixed hexadecimal",\n "type": "string"\n },\n "document": {\n "description": "The document name",\n "type": "string"\n }\n },\n "required": [\n "address"\n ],\n "type": "object"\n },\n "kind": "official-proxy",\n "name": "resolve_containing_procedure",\n "outputSchema": {\n "$defs": {\n "__schema0": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "number"\n },\n {\n "type": "boolean"\n },\n {\n "type": "null"\n },\n {\n "items": {\n "$ref": "#/$defs/__schema0"\n },\n "type": "array"\n },\n {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n }\n ]\n }\n },\n "$schema": "https://json-schema.org/draft/2020-12/schema",\n "additionalProperties": false,\n "properties": {\n "evidence": {\n "additionalProperties": false,\n "properties": {\n "analysis_profile": {\n "additionalProperties": false,\n "properties": {\n "digest": {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n },\n "parameters": {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n },\n "provider": {\n "additionalProperties": false,\n "properties": {\n "id": {\n "minLength": 1,\n "type": "string"\n },\n "name": {\n "minLength": 1,\n "type": "string"\n },\n "version": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "id",\n "name",\n "version"\n ],\n "type": "object"\n }\n },\n "required": [\n "provider",\n "parameters",\n "digest"\n ],\n "type": "object"\n },\n "authority": {\n "enum": [\n "shipped-artifact",\n "controlled-replay",\n "historical-reference",\n "external-service",\n "analyst-inference"\n ],\n "type": "string"\n },\n "confidence": {\n "enum": [\n "observed",\n "derived",\n "inferred"\n ],\n "type": "string"\n },\n "environment": {\n "anyOf": [\n {\n "additionalProperties": false,\n "properties": {\n "architecture": {\n "minLength": 1,\n "type": "string"\n },\n "id": {\n "minLength": 1,\n "type": "string"\n },\n "isolation": {\n "enum": [\n "none",\n "process",\n "container",\n "virtual-machine"\n ],\n "type": "string"\n },\n "platform": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "id",\n "platform",\n "architecture",\n "isolation"\n ],\n "type": "object"\n },\n {\n "type": "null"\n }\n ]\n },\n "evidence_id": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "evidence_links": {\n "items": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "type": "array"\n },\n "limitations": {\n "items": {\n "type": "string"\n },\n "type": "array"\n },\n "locations": {\n "items": {\n "oneOf": [\n {\n "additionalProperties": false,\n "properties": {\n "address": {\n "minLength": 1,\n "type": "string"\n },\n "kind": {\n "const": "address",\n "type": "string"\n }\n },\n "required": [\n "kind",\n "address"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "end": {\n "minLength": 1,\n "type": "string"\n },\n "kind": {\n "const": "address-range",\n "type": "string"\n },\n "start": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "kind",\n "start",\n "end"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "kind": {\n "const": "artifact-path",\n "type": "string"\n },\n "path": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "kind",\n "path"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "kind": {\n "const": "file-offset",\n "type": "string"\n },\n "offset": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "kind",\n "offset"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "end": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "kind": {\n "const": "file-offset-range",\n "type": "string"\n },\n "start": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "kind",\n "start",\n "end"\n ],\n "type": "object"\n }\n ]\n },\n "type": "array"\n },\n "normalized_result": {\n "$ref": "#/$defs/__schema0"\n },\n "operation": {\n "minLength": 1,\n "type": "string"\n },\n "parameters": {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n },\n "predicate_type": {\n "minLength": 1,\n "type": "string"\n },\n "provider": {\n "additionalProperties": false,\n "properties": {\n "id": {\n "minLength": 1,\n "type": "string"\n },\n "name": {\n "minLength": 1,\n "type": "string"\n },\n "version": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "id",\n "name",\n "version"\n ],\n "type": "object"\n },\n "raw_result": {\n "anyOf": [\n {\n "$ref": "#/$defs/__schema0"\n },\n {\n "type": "null"\n }\n ]\n },\n "subject": {\n "anyOf": [\n {\n "additionalProperties": false,\n "properties": {\n "architecture": {\n "anyOf": [\n {\n "enum": [\n "x86",\n "x86_64",\n "arm",\n "arm64"\n ],\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "digest": {\n "additionalProperties": false,\n "properties": {\n "sha256": {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n }\n },\n "required": [\n "sha256"\n ],\n "type": "object"\n },\n "format": {\n "enum": [\n "hopper",\n "analysis-database",\n "mach-o",\n "elf",\n "pe",\n "dos-mz",\n "dos-com",\n "zip",\n "ipa",\n "apk",\n "msix",\n "appx",\n "asar",\n "dmg",\n "pkg",\n "plist",\n "javascript",\n "source-map",\n "directory",\n "file",\n "unknown",\n "mach-o-universal",\n "javascript-bundle",\n "entitlements"\n ],\n "type": "string"\n },\n "local_path": {\n "type": "string"\n },\n "name": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "name",\n "digest",\n "format",\n "architecture",\n "local_path"\n ],\n "type": "object"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "evidence_id",\n "subject",\n "provider",\n "predicate_type",\n "operation",\n "parameters",\n "raw_result",\n "normalized_result",\n "confidence",\n "authority",\n "environment",\n "limitations",\n "locations",\n "evidence_links"\n ],\n "type": "object"\n },\n "evidence_id": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "result": {\n "oneOf": [\n {\n "additionalProperties": false,\n "properties": {\n "found": {\n "const": true,\n "type": "boolean"\n },\n "procedure": {\n "additionalProperties": false,\n "properties": {\n "address": {\n "type": "string"\n },\n "body": {\n "default": {\n "available": false,\n "reason": "The provider did not report complete function body ranges."\n },\n "oneOf": [\n {\n "additionalProperties": false,\n "properties": {\n "available": {\n "const": false,\n "type": "boolean"\n },\n "reason": {\n "type": "string"\n }\n },\n "required": [\n "available",\n "reason"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "available": {\n "const": true,\n "type": "boolean"\n },\n "contains_entry": {\n "type": "boolean"\n },\n "non_contiguous": {\n "type": "boolean"\n },\n "provenance": {\n "minLength": 1,\n "type": "string"\n },\n "ranges": {\n "items": {\n "additionalProperties": false,\n "properties": {\n "end": {\n "description": "Inclusive last address of this observed body range.",\n "type": "string"\n },\n "start": {\n "type": "string"\n }\n },\n "required": [\n "start",\n "end"\n ],\n "type": "object"\n },\n "type": "array"\n },\n "span_bytes": {\n "anyOf": [\n {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n {\n "type": "null"\n }\n ]\n },\n "total_bytes": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "available",\n "provenance",\n "ranges",\n "total_bytes",\n "span_bytes",\n "non_contiguous",\n "contains_entry"\n ],\n "type": "object"\n }\n ]\n },\n "classification": {\n "anyOf": [\n {\n "additionalProperties": false,\n "properties": {\n "external": {\n "type": "boolean"\n },\n "provenance": {\n "minLength": 1,\n "type": "string"\n },\n "thunk": {\n "type": "boolean"\n },\n "thunk_target": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "external",\n "thunk",\n "thunk_target",\n "provenance"\n ],\n "type": "object"\n },\n {\n "type": "null"\n }\n ],\n "default": null\n },\n "name": {\n "type": "string"\n }\n },\n "required": [\n "address",\n "name",\n "classification",\n "body"\n ],\n "type": "object"\n },\n "query_address": {\n "type": "string"\n }\n },\n "required": [\n "query_address",\n "found",\n "procedure"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "found": {\n "const": false,\n "type": "boolean"\n },\n "procedure": {\n "type": "null"\n },\n "query_address": {\n "type": "string"\n },\n "reason": {\n "enum": [\n "outside_segments",\n "not_in_procedure"\n ],\n "type": "string"\n }\n },\n "required": [\n "query_address",\n "found",\n "procedure",\n "reason"\n ],\n "type": "object"\n }\n ]\n }\n },\n "required": [\n "result",\n "evidence_id",\n "evidence"\n ],\n "type": "object"\n },\n "requiresSession": false,\n "title": "Resolve Containing Procedure"\n },\n {\n "analysisOperation": "search_procedures",\n "annotations": {\n "destructiveHint": false,\n "idempotentHint": true,\n "openWorldHint": false,\n "readOnlyHint": false\n },\n "description": "Search every analyzed procedure name using literal matching by default or regex when requested. Results are deterministic and complete.",\n "effects": {\n "accessesNetwork": false,\n "changesUiState": false,\n "idempotent": true,\n "launchesProcess": false,\n "mayDiscardData": false,\n "mutatesSession": true,\n "mutatesTarget": false,\n "writesFilesystem": false\n },\n "inputSchema": {\n "$schema": "https://json-schema.org/draft/2020-12/schema",\n "examples": [\n {\n "case_sensitive": false,\n "mode": "literal",\n "pattern": "main"\n }\n ],\n "properties": {\n "case_sensitive": {\n "default": false,\n "description": "Whether to match case",\n "type": "boolean"\n },\n "document": {\n "description": "The document name",\n "type": "string"\n },\n "mode": {\n "default": "literal",\n "description": "Operation mode that selects the requested behavior.",\n "enum": [\n "literal",\n "regex"\n ],\n "type": "string"\n },\n "pattern": {\n "description": "The literal text or regex pattern to search for",\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "pattern"\n ],\n "type": "object"\n },\n "kind": "official-proxy",\n "name": "search_procedures",\n "outputSchema": {\n "$defs": {\n "__schema0": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "number"\n },\n {\n "type": "boolean"\n },\n {\n "type": "null"\n },\n {\n "items": {\n "$ref": "#/$defs/__schema0"\n },\n "type": "array"\n },\n {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n }\n ]\n }\n },\n "$schema": "https://json-schema.org/draft/2020-12/schema",\n "additionalProperties": false,\n "properties": {\n "evidence": {\n "additionalProperties": false,\n "properties": {\n "analysis_profile": {\n "additionalProperties": false,\n "properties": {\n "digest": {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n },\n "parameters": {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n },\n "provider": {\n "additionalProperties": false,\n "properties": {\n "id": {\n "minLength": 1,\n "type": "string"\n },\n "name": {\n "minLength": 1,\n "type": "string"\n },\n "version": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "id",\n "name",\n "version"\n ],\n "type": "object"\n }\n },\n "required": [\n "provider",\n "parameters",\n "digest"\n ],\n "type": "object"\n },\n "authority": {\n "enum": [\n "shipped-artifact",\n "controlled-replay",\n "historical-reference",\n "external-service",\n "analyst-inference"\n ],\n "type": "string"\n },\n "confidence": {\n "enum": [\n "observed",\n "derived",\n "inferred"\n ],\n "type": "string"\n },\n "environment": {\n "anyOf": [\n {\n "additionalProperties": false,\n "properties": {\n "architecture": {\n "minLength": 1,\n "type": "string"\n },\n "id": {\n "minLength": 1,\n "type": "string"\n },\n "isolation": {\n "enum": [\n "none",\n "process",\n "container",\n "virtual-machine"\n ],\n "type": "string"\n },\n "platform": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "id",\n "platform",\n "architecture",\n "isolation"\n ],\n "type": "object"\n },\n {\n "type": "null"\n }\n ]\n },\n "evidence_id": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "evidence_links": {\n "items": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "type": "array"\n },\n "limitations": {\n "items": {\n "type": "string"\n },\n "type": "array"\n },\n "locations": {\n "items": {\n "oneOf": [\n {\n "additionalProperties": false,\n "properties": {\n "address": {\n "minLength": 1,\n "type": "string"\n },\n "kind": {\n "const": "address",\n "type": "string"\n }\n },\n "required": [\n "kind",\n "address"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "end": {\n "minLength": 1,\n "type": "string"\n },\n "kind": {\n "const": "address-range",\n "type": "string"\n },\n "start": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "kind",\n "start",\n "end"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "kind": {\n "const": "artifact-path",\n "type": "string"\n },\n "path": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "kind",\n "path"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "kind": {\n "const": "file-offset",\n "type": "string"\n },\n "offset": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "kind",\n "offset"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "end": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "kind": {\n "const": "file-offset-range",\n "type": "string"\n },\n "start": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "kind",\n "start",\n "end"\n ],\n "type": "object"\n }\n ]\n },\n "type": "array"\n },\n "normalized_result": {\n "$ref": "#/$defs/__schema0"\n },\n "operation": {\n "minLength": 1,\n "type": "string"\n },\n "parameters": {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n },\n "predicate_type": {\n "minLength": 1,\n "type": "string"\n },\n "provider": {\n "additionalProperties": false,\n "properties": {\n "id": {\n "minLength": 1,\n "type": "string"\n },\n "name": {\n "minLength": 1,\n "type": "string"\n },\n "version": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "id",\n "name",\n "version"\n ],\n "type": "object"\n },\n "raw_result": {\n "anyOf": [\n {\n "$ref": "#/$defs/__schema0"\n },\n {\n "type": "null"\n }\n ]\n },\n "subject": {\n "anyOf": [\n {\n "additionalProperties": false,\n "properties": {\n "architecture": {\n "anyOf": [\n {\n "enum": [\n "x86",\n "x86_64",\n "arm",\n "arm64"\n ],\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "digest": {\n "additionalProperties": false,\n "properties": {\n "sha256": {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n }\n },\n "required": [\n "sha256"\n ],\n "type": "object"\n },\n "format": {\n "enum": [\n "hopper",\n "analysis-database",\n "mach-o",\n "elf",\n "pe",\n "dos-mz",\n "dos-com",\n "zip",\n "ipa",\n "apk",\n "msix",\n "appx",\n "asar",\n "dmg",\n "pkg",\n "plist",\n "javascript",\n "source-map",\n "directory",\n "file",\n "unknown",\n "mach-o-universal",\n "javascript-bundle",\n "entitlements"\n ],\n "type": "string"\n },\n "local_path": {\n "type": "string"\n },\n "name": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "name",\n "digest",\n "format",\n "architecture",\n "local_path"\n ],\n "type": "object"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "evidence_id",\n "subject",\n "provider",\n "predicate_type",\n "operation",\n "parameters",\n "raw_result",\n "normalized_result",\n "confidence",\n "authority",\n "environment",\n "limitations",\n "locations",\n "evidence_links"\n ],\n "type": "object"\n },\n "evidence_id": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "result": {\n "items": {\n "additionalProperties": false,\n "properties": {\n "address": {\n "type": "string"\n },\n "value": {\n "type": "string"\n }\n },\n "required": [\n "address",\n "value"\n ],\n "type": "object"\n },\n "type": "array"\n }\n },\n "required": [\n "result",\n "evidence_id",\n "evidence"\n ],\n "type": "object"\n },\n "requiresSession": false,\n "title": "Search Procedures"\n },\n {\n "analysisOperation": "search_strings",\n "annotations": {\n "destructiveHint": false,\n "idempotentHint": true,\n "openWorldHint": false,\n "readOnlyHint": false\n },\n "description": "Search every analyzed string using literal matching by default or regex when requested. Results are deterministic and complete.",\n "effects": {\n "accessesNetwork": false,\n "changesUiState": false,\n "idempotent": true,\n "launchesProcess": false,\n "mayDiscardData": false,\n "mutatesSession": true,\n "mutatesTarget": false,\n "writesFilesystem": false\n },\n "inputSchema": {\n "$schema": "https://json-schema.org/draft/2020-12/schema",\n "examples": [\n {\n "case_sensitive": false,\n "mode": "literal",\n "pattern": "authorization failed"\n }\n ],\n "properties": {\n "case_sensitive": {\n "default": false,\n "description": "Whether to match case",\n "type": "boolean"\n },\n "document": {\n "description": "The document name",\n "type": "string"\n },\n "mode": {\n "default": "literal",\n "description": "Operation mode that selects the requested behavior.",\n "enum": [\n "literal",\n "regex"\n ],\n "type": "string"\n },\n "pattern": {\n "description": "The literal text or regex pattern to search for",\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "pattern"\n ],\n "type": "object"\n },\n "kind": "official-proxy",\n "name": "search_strings",\n "outputSchema": {\n "$defs": {\n "__schema0": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "number"\n },\n {\n "type": "boolean"\n },\n {\n "type": "null"\n },\n {\n "items": {\n "$ref": "#/$defs/__schema0"\n },\n "type": "array"\n },\n {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n }\n ]\n }\n },\n "$schema": "https://json-schema.org/draft/2020-12/schema",\n "additionalProperties": false,\n "properties": {\n "evidence": {\n "additionalProperties": false,\n "properties": {\n "analysis_profile": {\n "additionalProperties": false,\n "properties": {\n "digest": {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n },\n "parameters": {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n },\n "provider": {\n "additionalProperties": false,\n "properties": {\n "id": {\n "minLength": 1,\n "type": "string"\n },\n "name": {\n "minLength": 1,\n "type": "string"\n },\n "version": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "id",\n "name",\n "version"\n ],\n "type": "object"\n }\n },\n "required": [\n "provider",\n "parameters",\n "digest"\n ],\n "type": "object"\n },\n "authority": {\n "enum": [\n "shipped-artifact",\n "controlled-replay",\n "historical-reference",\n "external-service",\n "analyst-inference"\n ],\n "type": "string"\n },\n "confidence": {\n "enum": [\n "observed",\n "derived",\n "inferred"\n ],\n "type": "string"\n },\n "environment": {\n "anyOf": [\n {\n "additionalProperties": false,\n "properties": {\n "architecture": {\n "minLength": 1,\n "type": "string"\n },\n "id": {\n "minLength": 1,\n "type": "string"\n },\n "isolation": {\n "enum": [\n "none",\n "process",\n "container",\n "virtual-machine"\n ],\n "type": "string"\n },\n "platform": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "id",\n "platform",\n "architecture",\n "isolation"\n ],\n "type": "object"\n },\n {\n "type": "null"\n }\n ]\n },\n "evidence_id": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "evidence_links": {\n "items": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "type": "array"\n },\n "limitations": {\n "items": {\n "type": "string"\n },\n "type": "array"\n },\n "locations": {\n "items": {\n "oneOf": [\n {\n "additionalProperties": false,\n "properties": {\n "address": {\n "minLength": 1,\n "type": "string"\n },\n "kind": {\n "const": "address",\n "type": "string"\n }\n },\n "required": [\n "kind",\n "address"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "end": {\n "minLength": 1,\n "type": "string"\n },\n "kind": {\n "const": "address-range",\n "type": "string"\n },\n "start": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "kind",\n "start",\n "end"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "kind": {\n "const": "artifact-path",\n "type": "string"\n },\n "path": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "kind",\n "path"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "kind": {\n "const": "file-offset",\n "type": "string"\n },\n "offset": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "kind",\n "offset"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "end": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "kind": {\n "const": "file-offset-range",\n "type": "string"\n },\n "start": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "kind",\n "start",\n "end"\n ],\n "type": "object"\n }\n ]\n },\n "type": "array"\n },\n "normalized_result": {\n "$ref": "#/$defs/__schema0"\n },\n "operation": {\n "minLength": 1,\n "type": "string"\n },\n "parameters": {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n },\n "predicate_type": {\n "minLength": 1,\n "type": "string"\n },\n "provider": {\n "additionalProperties": false,\n "properties": {\n "id": {\n "minLength": 1,\n "type": "string"\n },\n "name": {\n "minLength": 1,\n "type": "string"\n },\n "version": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "id",\n "name",\n "version"\n ],\n "type": "object"\n },\n "raw_result": {\n "anyOf": [\n {\n "$ref": "#/$defs/__schema0"\n },\n {\n "type": "null"\n }\n ]\n },\n "subject": {\n "anyOf": [\n {\n "additionalProperties": false,\n "properties": {\n "architecture": {\n "anyOf": [\n {\n "enum": [\n "x86",\n "x86_64",\n "arm",\n "arm64"\n ],\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "digest": {\n "additionalProperties": false,\n "properties": {\n "sha256": {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n }\n },\n "required": [\n "sha256"\n ],\n "type": "object"\n },\n "format": {\n "enum": [\n "hopper",\n "analysis-database",\n "mach-o",\n "elf",\n "pe",\n "dos-mz",\n "dos-com",\n "zip",\n "ipa",\n "apk",\n "msix",\n "appx",\n "asar",\n "dmg",\n "pkg",\n "plist",\n "javascript",\n "source-map",\n "directory",\n "file",\n "unknown",\n "mach-o-universal",\n "javascript-bundle",\n "entitlements"\n ],\n "type": "string"\n },\n "local_path": {\n "type": "string"\n },\n "name": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "name",\n "digest",\n "format",\n "architecture",\n "local_path"\n ],\n "type": "object"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "evidence_id",\n "subject",\n "provider",\n "predicate_type",\n "operation",\n "parameters",\n "raw_result",\n "normalized_result",\n "confidence",\n "authority",\n "environment",\n "limitations",\n "locations",\n "evidence_links"\n ],\n "type": "object"\n },\n "evidence_id": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "result": {\n "items": {\n "additionalProperties": false,\n "properties": {\n "address": {\n "type": "string"\n },\n "value": {\n "type": "string"\n }\n },\n "required": [\n "address",\n "value"\n ],\n "type": "object"\n },\n "type": "array"\n }\n },\n "required": [\n "result",\n "evidence_id",\n "evidence"\n ],\n "type": "object"\n },\n "requiresSession": false,\n "title": "Search Strings"\n },\n {\n "analysisOperation": "set_address_name",\n "annotations": {\n "destructiveHint": false,\n "idempotentHint": true,\n "openWorldHint": false,\n "readOnlyHint": false\n },\n "description": "Assign an analyst name to one hexadecimal address and report Hopper\'s boolean result. This mutates analysis metadata.",\n "effects": {\n "accessesNetwork": false,\n "changesUiState": false,\n "idempotent": true,\n "launchesProcess": false,\n "mayDiscardData": false,\n "mutatesSession": true,\n "mutatesTarget": true,\n "writesFilesystem": false\n },\n "inputSchema": {\n "$schema": "https://json-schema.org/draft/2020-12/schema",\n "examples": [\n {\n "address": "0x1000",\n "name": "entry"\n }\n ],\n "properties": {\n "address": {\n "description": "A provider-normalized address; default memory uses 0x-prefixed hexadecimal",\n "type": "string"\n },\n "document": {\n "description": "The document name",\n "type": "string"\n },\n "name": {\n "description": "Exact name used by this operation.",\n "type": "string"\n }\n },\n "required": [\n "address",\n "name"\n ],\n "type": "object"\n },\n "kind": "official-proxy",\n "name": "set_address_name",\n "outputSchema": {\n "$defs": {\n "__schema0": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "number"\n },\n {\n "type": "boolean"\n },\n {\n "type": "null"\n },\n {\n "items": {\n "$ref": "#/$defs/__schema0"\n },\n "type": "array"\n },\n {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n }\n ]\n }\n },\n "$schema": "https://json-schema.org/draft/2020-12/schema",\n "additionalProperties": false,\n "properties": {\n "evidence": {\n "additionalProperties": false,\n "properties": {\n "analysis_profile": {\n "additionalProperties": false,\n "properties": {\n "digest": {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n },\n "parameters": {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n },\n "provider": {\n "additionalProperties": false,\n "properties": {\n "id": {\n "minLength": 1,\n "type": "string"\n },\n "name": {\n "minLength": 1,\n "type": "string"\n },\n "version": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "id",\n "name",\n "version"\n ],\n "type": "object"\n }\n },\n "required": [\n "provider",\n "parameters",\n "digest"\n ],\n "type": "object"\n },\n "authority": {\n "enum": [\n "shipped-artifact",\n "controlled-replay",\n "historical-reference",\n "external-service",\n "analyst-inference"\n ],\n "type": "string"\n },\n "confidence": {\n "enum": [\n "observed",\n "derived",\n "inferred"\n ],\n "type": "string"\n },\n "environment": {\n "anyOf": [\n {\n "additionalProperties": false,\n "properties": {\n "architecture": {\n "minLength": 1,\n "type": "string"\n },\n "id": {\n "minLength": 1,\n "type": "string"\n },\n "isolation": {\n "enum": [\n "none",\n "process",\n "container",\n "virtual-machine"\n ],\n "type": "string"\n },\n "platform": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "id",\n "platform",\n "architecture",\n "isolation"\n ],\n "type": "object"\n },\n {\n "type": "null"\n }\n ]\n },\n "evidence_id": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "evidence_links": {\n "items": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "type": "array"\n },\n "limitations": {\n "items": {\n "type": "string"\n },\n "type": "array"\n },\n "locations": {\n "items": {\n "oneOf": [\n {\n "additionalProperties": false,\n "properties": {\n "address": {\n "minLength": 1,\n "type": "string"\n },\n "kind": {\n "const": "address",\n "type": "string"\n }\n },\n "required": [\n "kind",\n "address"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "end": {\n "minLength": 1,\n "type": "string"\n },\n "kind": {\n "const": "address-range",\n "type": "string"\n },\n "start": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "kind",\n "start",\n "end"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "kind": {\n "const": "artifact-path",\n "type": "string"\n },\n "path": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "kind",\n "path"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "kind": {\n "const": "file-offset",\n "type": "string"\n },\n "offset": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "kind",\n "offset"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "end": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "kind": {\n "const": "file-offset-range",\n "type": "string"\n },\n "start": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "kind",\n "start",\n "end"\n ],\n "type": "object"\n }\n ]\n },\n "type": "array"\n },\n "normalized_result": {\n "$ref": "#/$defs/__schema0"\n },\n "operation": {\n "minLength": 1,\n "type": "string"\n },\n "parameters": {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n },\n "predicate_type": {\n "minLength": 1,\n "type": "string"\n },\n "provider": {\n "additionalProperties": false,\n "properties": {\n "id": {\n "minLength": 1,\n "type": "string"\n },\n "name": {\n "minLength": 1,\n "type": "string"\n },\n "version": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "id",\n "name",\n "version"\n ],\n "type": "object"\n },\n "raw_result": {\n "anyOf": [\n {\n "$ref": "#/$defs/__schema0"\n },\n {\n "type": "null"\n }\n ]\n },\n "subject": {\n "anyOf": [\n {\n "additionalProperties": false,\n "properties": {\n "architecture": {\n "anyOf": [\n {\n "enum": [\n "x86",\n "x86_64",\n "arm",\n "arm64"\n ],\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "digest": {\n "additionalProperties": false,\n "properties": {\n "sha256": {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n }\n },\n "required": [\n "sha256"\n ],\n "type": "object"\n },\n "format": {\n "enum": [\n "hopper",\n "analysis-database",\n "mach-o",\n "elf",\n "pe",\n "dos-mz",\n "dos-com",\n "zip",\n "ipa",\n "apk",\n "msix",\n "appx",\n "asar",\n "dmg",\n "pkg",\n "plist",\n "javascript",\n "source-map",\n "directory",\n "file",\n "unknown",\n "mach-o-universal",\n "javascript-bundle",\n "entitlements"\n ],\n "type": "string"\n },\n "local_path": {\n "type": "string"\n },\n "name": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "name",\n "digest",\n "format",\n "architecture",\n "local_path"\n ],\n "type": "object"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "evidence_id",\n "subject",\n "provider",\n "predicate_type",\n "operation",\n "parameters",\n "raw_result",\n "normalized_result",\n "confidence",\n "authority",\n "environment",\n "limitations",\n "locations",\n "evidence_links"\n ],\n "type": "object"\n },\n "evidence_id": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "result": {\n "type": "boolean"\n }\n },\n "required": [\n "result",\n "evidence_id",\n "evidence"\n ],\n "type": "object"\n },\n "requiresSession": false,\n "title": "Set Address Name"\n },\n {\n "analysisOperation": "set_addresses_names",\n "annotations": {\n "destructiveHint": false,\n "idempotentHint": true,\n "openWorldHint": false,\n "readOnlyHint": false\n },\n "description": "Assign analyst names to multiple addresses in one call and return per-address success booleans. This mutates analysis metadata; verify failures individually.",\n "effects": {\n "accessesNetwork": false,\n "changesUiState": false,\n "idempotent": true,\n "launchesProcess": false,\n "mayDiscardData": false,\n "mutatesSession": true,\n "mutatesTarget": true,\n "writesFilesystem": false\n },\n "inputSchema": {\n "$schema": "https://json-schema.org/draft/2020-12/schema",\n "examples": [\n {\n "names": {\n "0x1000": "entry"\n }\n }\n ],\n "properties": {\n "document": {\n "description": "The document name",\n "type": "string"\n },\n "names": {\n "additionalProperties": {\n "type": "string"\n },\n "description": "Value for names.",\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n }\n },\n "required": [\n "names"\n ],\n "type": "object"\n },\n "kind": "official-proxy",\n "name": "set_addresses_names",\n "outputSchema": {\n "$defs": {\n "__schema0": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "number"\n },\n {\n "type": "boolean"\n },\n {\n "type": "null"\n },\n {\n "items": {\n "$ref": "#/$defs/__schema0"\n },\n "type": "array"\n },\n {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n }\n ]\n }\n },\n "$schema": "https://json-schema.org/draft/2020-12/schema",\n "additionalProperties": false,\n "properties": {\n "evidence": {\n "additionalProperties": false,\n "properties": {\n "analysis_profile": {\n "additionalProperties": false,\n "properties": {\n "digest": {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n },\n "parameters": {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n },\n "provider": {\n "additionalProperties": false,\n "properties": {\n "id": {\n "minLength": 1,\n "type": "string"\n },\n "name": {\n "minLength": 1,\n "type": "string"\n },\n "version": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "id",\n "name",\n "version"\n ],\n "type": "object"\n }\n },\n "required": [\n "provider",\n "parameters",\n "digest"\n ],\n "type": "object"\n },\n "authority": {\n "enum": [\n "shipped-artifact",\n "controlled-replay",\n "historical-reference",\n "external-service",\n "analyst-inference"\n ],\n "type": "string"\n },\n "confidence": {\n "enum": [\n "observed",\n "derived",\n "inferred"\n ],\n "type": "string"\n },\n "environment": {\n "anyOf": [\n {\n "additionalProperties": false,\n "properties": {\n "architecture": {\n "minLength": 1,\n "type": "string"\n },\n "id": {\n "minLength": 1,\n "type": "string"\n },\n "isolation": {\n "enum": [\n "none",\n "process",\n "container",\n "virtual-machine"\n ],\n "type": "string"\n },\n "platform": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "id",\n "platform",\n "architecture",\n "isolation"\n ],\n "type": "object"\n },\n {\n "type": "null"\n }\n ]\n },\n "evidence_id": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "evidence_links": {\n "items": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "type": "array"\n },\n "limitations": {\n "items": {\n "type": "string"\n },\n "type": "array"\n },\n "locations": {\n "items": {\n "oneOf": [\n {\n "additionalProperties": false,\n "properties": {\n "address": {\n "minLength": 1,\n "type": "string"\n },\n "kind": {\n "const": "address",\n "type": "string"\n }\n },\n "required": [\n "kind",\n "address"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "end": {\n "minLength": 1,\n "type": "string"\n },\n "kind": {\n "const": "address-range",\n "type": "string"\n },\n "start": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "kind",\n "start",\n "end"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "kind": {\n "const": "artifact-path",\n "type": "string"\n },\n "path": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "kind",\n "path"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "kind": {\n "const": "file-offset",\n "type": "string"\n },\n "offset": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "kind",\n "offset"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "end": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "kind": {\n "const": "file-offset-range",\n "type": "string"\n },\n "start": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "kind",\n "start",\n "end"\n ],\n "type": "object"\n }\n ]\n },\n "type": "array"\n },\n "normalized_result": {\n "$ref": "#/$defs/__schema0"\n },\n "operation": {\n "minLength": 1,\n "type": "string"\n },\n "parameters": {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n },\n "predicate_type": {\n "minLength": 1,\n "type": "string"\n },\n "provider": {\n "additionalProperties": false,\n "properties": {\n "id": {\n "minLength": 1,\n "type": "string"\n },\n "name": {\n "minLength": 1,\n "type": "string"\n },\n "version": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "id",\n "name",\n "version"\n ],\n "type": "object"\n },\n "raw_result": {\n "anyOf": [\n {\n "$ref": "#/$defs/__schema0"\n },\n {\n "type": "null"\n }\n ]\n },\n "subject": {\n "anyOf": [\n {\n "additionalProperties": false,\n "properties": {\n "architecture": {\n "anyOf": [\n {\n "enum": [\n "x86",\n "x86_64",\n "arm",\n "arm64"\n ],\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "digest": {\n "additionalProperties": false,\n "properties": {\n "sha256": {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n }\n },\n "required": [\n "sha256"\n ],\n "type": "object"\n },\n "format": {\n "enum": [\n "hopper",\n "analysis-database",\n "mach-o",\n "elf",\n "pe",\n "dos-mz",\n "dos-com",\n "zip",\n "ipa",\n "apk",\n "msix",\n "appx",\n "asar",\n "dmg",\n "pkg",\n "plist",\n "javascript",\n "source-map",\n "directory",\n "file",\n "unknown",\n "mach-o-universal",\n "javascript-bundle",\n "entitlements"\n ],\n "type": "string"\n },\n "local_path": {\n "type": "string"\n },\n "name": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "name",\n "digest",\n "format",\n "architecture",\n "local_path"\n ],\n "type": "object"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "evidence_id",\n "subject",\n "provider",\n "predicate_type",\n "operation",\n "parameters",\n "raw_result",\n "normalized_result",\n "confidence",\n "authority",\n "environment",\n "limitations",\n "locations",\n "evidence_links"\n ],\n "type": "object"\n },\n "evidence_id": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "result": {\n "additionalProperties": {\n "type": "boolean"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n }\n },\n "required": [\n "result",\n "evidence_id",\n "evidence"\n ],\n "type": "object"\n },\n "requiresSession": false,\n "title": "Set Addresses Names"\n },\n {\n "analysisOperation": "set_bookmark",\n "annotations": {\n "destructiveHint": false,\n "idempotentHint": true,\n "openWorldHint": false,\n "readOnlyHint": false\n },\n "description": "Create or replace a bookmark at a hexadecimal address and report success. This mutates navigation metadata; bookmarks are analyst-authored navigation aids, not binary evidence.",\n "effects": {\n "accessesNetwork": false,\n "changesUiState": false,\n "idempotent": true,\n "launchesProcess": false,\n "mayDiscardData": false,\n "mutatesSession": true,\n "mutatesTarget": true,\n "writesFilesystem": false\n },\n "inputSchema": {\n "$schema": "https://json-schema.org/draft/2020-12/schema",\n "examples": [\n {\n "address": "0x1000"\n }\n ],\n "properties": {\n "address": {\n "description": "A provider-normalized address; default memory uses 0x-prefixed hexadecimal",\n "type": "string"\n },\n "document": {\n "description": "The document name",\n "type": "string"\n },\n "name": {\n "description": "Exact name used by this operation.",\n "type": "string"\n }\n },\n "required": [\n "address"\n ],\n "type": "object"\n },\n "kind": "official-proxy",\n "name": "set_bookmark",\n "outputSchema": {\n "$defs": {\n "__schema0": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "number"\n },\n {\n "type": "boolean"\n },\n {\n "type": "null"\n },\n {\n "items": {\n "$ref": "#/$defs/__schema0"\n },\n "type": "array"\n },\n {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n }\n ]\n }\n },\n "$schema": "https://json-schema.org/draft/2020-12/schema",\n "additionalProperties": false,\n "properties": {\n "evidence": {\n "additionalProperties": false,\n "properties": {\n "analysis_profile": {\n "additionalProperties": false,\n "properties": {\n "digest": {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n },\n "parameters": {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n },\n "provider": {\n "additionalProperties": false,\n "properties": {\n "id": {\n "minLength": 1,\n "type": "string"\n },\n "name": {\n "minLength": 1,\n "type": "string"\n },\n "version": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "id",\n "name",\n "version"\n ],\n "type": "object"\n }\n },\n "required": [\n "provider",\n "parameters",\n "digest"\n ],\n "type": "object"\n },\n "authority": {\n "enum": [\n "shipped-artifact",\n "controlled-replay",\n "historical-reference",\n "external-service",\n "analyst-inference"\n ],\n "type": "string"\n },\n "confidence": {\n "enum": [\n "observed",\n "derived",\n "inferred"\n ],\n "type": "string"\n },\n "environment": {\n "anyOf": [\n {\n "additionalProperties": false,\n "properties": {\n "architecture": {\n "minLength": 1,\n "type": "string"\n },\n "id": {\n "minLength": 1,\n "type": "string"\n },\n "isolation": {\n "enum": [\n "none",\n "process",\n "container",\n "virtual-machine"\n ],\n "type": "string"\n },\n "platform": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "id",\n "platform",\n "architecture",\n "isolation"\n ],\n "type": "object"\n },\n {\n "type": "null"\n }\n ]\n },\n "evidence_id": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "evidence_links": {\n "items": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "type": "array"\n },\n "limitations": {\n "items": {\n "type": "string"\n },\n "type": "array"\n },\n "locations": {\n "items": {\n "oneOf": [\n {\n "additionalProperties": false,\n "properties": {\n "address": {\n "minLength": 1,\n "type": "string"\n },\n "kind": {\n "const": "address",\n "type": "string"\n }\n },\n "required": [\n "kind",\n "address"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "end": {\n "minLength": 1,\n "type": "string"\n },\n "kind": {\n "const": "address-range",\n "type": "string"\n },\n "start": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "kind",\n "start",\n "end"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "kind": {\n "const": "artifact-path",\n "type": "string"\n },\n "path": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "kind",\n "path"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "kind": {\n "const": "file-offset",\n "type": "string"\n },\n "offset": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "kind",\n "offset"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "end": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "kind": {\n "const": "file-offset-range",\n "type": "string"\n },\n "start": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "kind",\n "start",\n "end"\n ],\n "type": "object"\n }\n ]\n },\n "type": "array"\n },\n "normalized_result": {\n "$ref": "#/$defs/__schema0"\n },\n "operation": {\n "minLength": 1,\n "type": "string"\n },\n "parameters": {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n },\n "predicate_type": {\n "minLength": 1,\n "type": "string"\n },\n "provider": {\n "additionalProperties": false,\n "properties": {\n "id": {\n "minLength": 1,\n "type": "string"\n },\n "name": {\n "minLength": 1,\n "type": "string"\n },\n "version": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "id",\n "name",\n "version"\n ],\n "type": "object"\n },\n "raw_result": {\n "anyOf": [\n {\n "$ref": "#/$defs/__schema0"\n },\n {\n "type": "null"\n }\n ]\n },\n "subject": {\n "anyOf": [\n {\n "additionalProperties": false,\n "properties": {\n "architecture": {\n "anyOf": [\n {\n "enum": [\n "x86",\n "x86_64",\n "arm",\n "arm64"\n ],\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "digest": {\n "additionalProperties": false,\n "properties": {\n "sha256": {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n }\n },\n "required": [\n "sha256"\n ],\n "type": "object"\n },\n "format": {\n "enum": [\n "hopper",\n "analysis-database",\n "mach-o",\n "elf",\n "pe",\n "dos-mz",\n "dos-com",\n "zip",\n "ipa",\n "apk",\n "msix",\n "appx",\n "asar",\n "dmg",\n "pkg",\n "plist",\n "javascript",\n "source-map",\n "directory",\n "file",\n "unknown",\n "mach-o-universal",\n "javascript-bundle",\n "entitlements"\n ],\n "type": "string"\n },\n "local_path": {\n "type": "string"\n },\n "name": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "name",\n "digest",\n "format",\n "architecture",\n "local_path"\n ],\n "type": "object"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "evidence_id",\n "subject",\n "provider",\n "predicate_type",\n "operation",\n "parameters",\n "raw_result",\n "normalized_result",\n "confidence",\n "authority",\n "environment",\n "limitations",\n "locations",\n "evidence_links"\n ],\n "type": "object"\n },\n "evidence_id": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "result": {\n "type": "boolean"\n }\n },\n "required": [\n "result",\n "evidence_id",\n "evidence"\n ],\n "type": "object"\n },\n "requiresSession": false,\n "title": "Set Bookmark"\n },\n {\n "analysisOperation": "set_comment",\n "annotations": {\n "destructiveHint": false,\n "idempotentHint": true,\n "openWorldHint": false,\n "readOnlyHint": false\n },\n "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.",\n "effects": {\n "accessesNetwork": false,\n "changesUiState": false,\n "idempotent": true,\n "launchesProcess": false,\n "mayDiscardData": false,\n "mutatesSession": true,\n "mutatesTarget": true,\n "writesFilesystem": false\n },\n "inputSchema": {\n "$schema": "https://json-schema.org/draft/2020-12/schema",\n "examples": [\n {\n "address": "0x1000",\n "comment": "validated entry point"\n }\n ],\n "properties": {\n "address": {\n "description": "A provider-normalized address; default memory uses 0x-prefixed hexadecimal",\n "type": "string"\n },\n "comment": {\n "description": "Exact analyst comment text to write.",\n "type": "string"\n },\n "document": {\n "description": "The document name",\n "type": "string"\n }\n },\n "required": [\n "address",\n "comment"\n ],\n "type": "object"\n },\n "kind": "official-proxy",\n "name": "set_comment",\n "outputSchema": {\n "$defs": {\n "__schema0": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "number"\n },\n {\n "type": "boolean"\n },\n {\n "type": "null"\n },\n {\n "items": {\n "$ref": "#/$defs/__schema0"\n },\n "type": "array"\n },\n {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n }\n ]\n }\n },\n "$schema": "https://json-schema.org/draft/2020-12/schema",\n "additionalProperties": false,\n "properties": {\n "evidence": {\n "additionalProperties": false,\n "properties": {\n "analysis_profile": {\n "additionalProperties": false,\n "properties": {\n "digest": {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n },\n "parameters": {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n },\n "provider": {\n "additionalProperties": false,\n "properties": {\n "id": {\n "minLength": 1,\n "type": "string"\n },\n "name": {\n "minLength": 1,\n "type": "string"\n },\n "version": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "id",\n "name",\n "version"\n ],\n "type": "object"\n }\n },\n "required": [\n "provider",\n "parameters",\n "digest"\n ],\n "type": "object"\n },\n "authority": {\n "enum": [\n "shipped-artifact",\n "controlled-replay",\n "historical-reference",\n "external-service",\n "analyst-inference"\n ],\n "type": "string"\n },\n "confidence": {\n "enum": [\n "observed",\n "derived",\n "inferred"\n ],\n "type": "string"\n },\n "environment": {\n "anyOf": [\n {\n "additionalProperties": false,\n "properties": {\n "architecture": {\n "minLength": 1,\n "type": "string"\n },\n "id": {\n "minLength": 1,\n "type": "string"\n },\n "isolation": {\n "enum": [\n "none",\n "process",\n "container",\n "virtual-machine"\n ],\n "type": "string"\n },\n "platform": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "id",\n "platform",\n "architecture",\n "isolation"\n ],\n "type": "object"\n },\n {\n "type": "null"\n }\n ]\n },\n "evidence_id": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "evidence_links": {\n "items": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "type": "array"\n },\n "limitations": {\n "items": {\n "type": "string"\n },\n "type": "array"\n },\n "locations": {\n "items": {\n "oneOf": [\n {\n "additionalProperties": false,\n "properties": {\n "address": {\n "minLength": 1,\n "type": "string"\n },\n "kind": {\n "const": "address",\n "type": "string"\n }\n },\n "required": [\n "kind",\n "address"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "end": {\n "minLength": 1,\n "type": "string"\n },\n "kind": {\n "const": "address-range",\n "type": "string"\n },\n "start": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "kind",\n "start",\n "end"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "kind": {\n "const": "artifact-path",\n "type": "string"\n },\n "path": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "kind",\n "path"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "kind": {\n "const": "file-offset",\n "type": "string"\n },\n "offset": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "kind",\n "offset"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "end": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "kind": {\n "const": "file-offset-range",\n "type": "string"\n },\n "start": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "kind",\n "start",\n "end"\n ],\n "type": "object"\n }\n ]\n },\n "type": "array"\n },\n "normalized_result": {\n "$ref": "#/$defs/__schema0"\n },\n "operation": {\n "minLength": 1,\n "type": "string"\n },\n "parameters": {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n },\n "predicate_type": {\n "minLength": 1,\n "type": "string"\n },\n "provider": {\n "additionalProperties": false,\n "properties": {\n "id": {\n "minLength": 1,\n "type": "string"\n },\n "name": {\n "minLength": 1,\n "type": "string"\n },\n "version": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "id",\n "name",\n "version"\n ],\n "type": "object"\n },\n "raw_result": {\n "anyOf": [\n {\n "$ref": "#/$defs/__schema0"\n },\n {\n "type": "null"\n }\n ]\n },\n "subject": {\n "anyOf": [\n {\n "additionalProperties": false,\n "properties": {\n "architecture": {\n "anyOf": [\n {\n "enum": [\n "x86",\n "x86_64",\n "arm",\n "arm64"\n ],\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "digest": {\n "additionalProperties": false,\n "properties": {\n "sha256": {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n }\n },\n "required": [\n "sha256"\n ],\n "type": "object"\n },\n "format": {\n "enum": [\n "hopper",\n "analysis-database",\n "mach-o",\n "elf",\n "pe",\n "dos-mz",\n "dos-com",\n "zip",\n "ipa",\n "apk",\n "msix",\n "appx",\n "asar",\n "dmg",\n "pkg",\n "plist",\n "javascript",\n "source-map",\n "directory",\n "file",\n "unknown",\n "mach-o-universal",\n "javascript-bundle",\n "entitlements"\n ],\n "type": "string"\n },\n "local_path": {\n "type": "string"\n },\n "name": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "name",\n "digest",\n "format",\n "architecture",\n "local_path"\n ],\n "type": "object"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "evidence_id",\n "subject",\n "provider",\n "predicate_type",\n "operation",\n "parameters",\n "raw_result",\n "normalized_result",\n "confidence",\n "authority",\n "environment",\n "limitations",\n "locations",\n "evidence_links"\n ],\n "type": "object"\n },\n "evidence_id": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "result": {\n "type": "boolean"\n }\n },\n "required": [\n "result",\n "evidence_id",\n "evidence"\n ],\n "type": "object"\n },\n "requiresSession": false,\n "title": "Set Comment"\n },\n {\n "analysisOperation": "set_current_document",\n "annotations": {\n "destructiveHint": false,\n "idempotentHint": true,\n "openWorldHint": false,\n "readOnlyHint": false\n },\n "description": "Select an already-open Hopper document by exact document name. This changes subsequent default-document routing; list_documents can supply names when needed, while explicit document inputs keep calls reproducible.",\n "effects": {\n "accessesNetwork": false,\n "changesUiState": true,\n "idempotent": true,\n "launchesProcess": false,\n "mayDiscardData": false,\n "mutatesSession": true,\n "mutatesTarget": false,\n "writesFilesystem": false\n },\n "inputSchema": {\n "$schema": "https://json-schema.org/draft/2020-12/schema",\n "examples": [\n {\n "document": "fixture"\n }\n ],\n "properties": {\n "document": {\n "description": "Exact provider document or program identity.",\n "type": "string"\n }\n },\n "required": [\n "document"\n ],\n "type": "object"\n },\n "kind": "official-proxy",\n "name": "set_current_document",\n "outputSchema": {\n "$defs": {\n "__schema0": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "number"\n },\n {\n "type": "boolean"\n },\n {\n "type": "null"\n },\n {\n "items": {\n "$ref": "#/$defs/__schema0"\n },\n "type": "array"\n },\n {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n }\n ]\n }\n },\n "$schema": "https://json-schema.org/draft/2020-12/schema",\n "additionalProperties": false,\n "properties": {\n "evidence": {\n "additionalProperties": false,\n "properties": {\n "analysis_profile": {\n "additionalProperties": false,\n "properties": {\n "digest": {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n },\n "parameters": {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n },\n "provider": {\n "additionalProperties": false,\n "properties": {\n "id": {\n "minLength": 1,\n "type": "string"\n },\n "name": {\n "minLength": 1,\n "type": "string"\n },\n "version": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "id",\n "name",\n "version"\n ],\n "type": "object"\n }\n },\n "required": [\n "provider",\n "parameters",\n "digest"\n ],\n "type": "object"\n },\n "authority": {\n "enum": [\n "shipped-artifact",\n "controlled-replay",\n "historical-reference",\n "external-service",\n "analyst-inference"\n ],\n "type": "string"\n },\n "confidence": {\n "enum": [\n "observed",\n "derived",\n "inferred"\n ],\n "type": "string"\n },\n "environment": {\n "anyOf": [\n {\n "additionalProperties": false,\n "properties": {\n "architecture": {\n "minLength": 1,\n "type": "string"\n },\n "id": {\n "minLength": 1,\n "type": "string"\n },\n "isolation": {\n "enum": [\n "none",\n "process",\n "container",\n "virtual-machine"\n ],\n "type": "string"\n },\n "platform": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "id",\n "platform",\n "architecture",\n "isolation"\n ],\n "type": "object"\n },\n {\n "type": "null"\n }\n ]\n },\n "evidence_id": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "evidence_links": {\n "items": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "type": "array"\n },\n "limitations": {\n "items": {\n "type": "string"\n },\n "type": "array"\n },\n "locations": {\n "items": {\n "oneOf": [\n {\n "additionalProperties": false,\n "properties": {\n "address": {\n "minLength": 1,\n "type": "string"\n },\n "kind": {\n "const": "address",\n "type": "string"\n }\n },\n "required": [\n "kind",\n "address"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "end": {\n "minLength": 1,\n "type": "string"\n },\n "kind": {\n "const": "address-range",\n "type": "string"\n },\n "start": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "kind",\n "start",\n "end"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "kind": {\n "const": "artifact-path",\n "type": "string"\n },\n "path": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "kind",\n "path"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "kind": {\n "const": "file-offset",\n "type": "string"\n },\n "offset": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "kind",\n "offset"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "end": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "kind": {\n "const": "file-offset-range",\n "type": "string"\n },\n "start": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "kind",\n "start",\n "end"\n ],\n "type": "object"\n }\n ]\n },\n "type": "array"\n },\n "normalized_result": {\n "$ref": "#/$defs/__schema0"\n },\n "operation": {\n "minLength": 1,\n "type": "string"\n },\n "parameters": {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n },\n "predicate_type": {\n "minLength": 1,\n "type": "string"\n },\n "provider": {\n "additionalProperties": false,\n "properties": {\n "id": {\n "minLength": 1,\n "type": "string"\n },\n "name": {\n "minLength": 1,\n "type": "string"\n },\n "version": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "id",\n "name",\n "version"\n ],\n "type": "object"\n },\n "raw_result": {\n "anyOf": [\n {\n "$ref": "#/$defs/__schema0"\n },\n {\n "type": "null"\n }\n ]\n },\n "subject": {\n "anyOf": [\n {\n "additionalProperties": false,\n "properties": {\n "architecture": {\n "anyOf": [\n {\n "enum": [\n "x86",\n "x86_64",\n "arm",\n "arm64"\n ],\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "digest": {\n "additionalProperties": false,\n "properties": {\n "sha256": {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n }\n },\n "required": [\n "sha256"\n ],\n "type": "object"\n },\n "format": {\n "enum": [\n "hopper",\n "analysis-database",\n "mach-o",\n "elf",\n "pe",\n "dos-mz",\n "dos-com",\n "zip",\n "ipa",\n "apk",\n "msix",\n "appx",\n "asar",\n "dmg",\n "pkg",\n "plist",\n "javascript",\n "source-map",\n "directory",\n "file",\n "unknown",\n "mach-o-universal",\n "javascript-bundle",\n "entitlements"\n ],\n "type": "string"\n },\n "local_path": {\n "type": "string"\n },\n "name": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "name",\n "digest",\n "format",\n "architecture",\n "local_path"\n ],\n "type": "object"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "evidence_id",\n "subject",\n "provider",\n "predicate_type",\n "operation",\n "parameters",\n "raw_result",\n "normalized_result",\n "confidence",\n "authority",\n "environment",\n "limitations",\n "locations",\n "evidence_links"\n ],\n "type": "object"\n },\n "evidence_id": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "result": {\n "type": "string"\n }\n },\n "required": [\n "result",\n "evidence_id",\n "evidence"\n ],\n "type": "object"\n },\n "requiresSession": false,\n "title": "Set Current Document"\n },\n {\n "analysisOperation": "set_inline_comment",\n "annotations": {\n "destructiveHint": false,\n "idempotentHint": true,\n "openWorldHint": false,\n "readOnlyHint": false\n },\n "description": "Write an inline instruction comment at a hexadecimal address and return whether readback matched. This mutates analysis metadata.",\n "effects": {\n "accessesNetwork": false,\n "changesUiState": false,\n "idempotent": true,\n "launchesProcess": false,\n "mayDiscardData": false,\n "mutatesSession": true,\n "mutatesTarget": true,\n "writesFilesystem": false\n },\n "inputSchema": {\n "$schema": "https://json-schema.org/draft/2020-12/schema",\n "examples": [\n {\n "address": "0x1000",\n "comment": "calls parser"\n }\n ],\n "properties": {\n "address": {\n "description": "A provider-normalized address; default memory uses 0x-prefixed hexadecimal",\n "type": "string"\n },\n "comment": {\n "description": "Exact analyst comment text to write.",\n "type": "string"\n },\n "document": {\n "description": "The document name",\n "type": "string"\n }\n },\n "required": [\n "address",\n "comment"\n ],\n "type": "object"\n },\n "kind": "official-proxy",\n "name": "set_inline_comment",\n "outputSchema": {\n "$defs": {\n "__schema0": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "number"\n },\n {\n "type": "boolean"\n },\n {\n "type": "null"\n },\n {\n "items": {\n "$ref": "#/$defs/__schema0"\n },\n "type": "array"\n },\n {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n }\n ]\n }\n },\n "$schema": "https://json-schema.org/draft/2020-12/schema",\n "additionalProperties": false,\n "properties": {\n "evidence": {\n "additionalProperties": false,\n "properties": {\n "analysis_profile": {\n "additionalProperties": false,\n "properties": {\n "digest": {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n },\n "parameters": {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n },\n "provider": {\n "additionalProperties": false,\n "properties": {\n "id": {\n "minLength": 1,\n "type": "string"\n },\n "name": {\n "minLength": 1,\n "type": "string"\n },\n "version": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "id",\n "name",\n "version"\n ],\n "type": "object"\n }\n },\n "required": [\n "provider",\n "parameters",\n "digest"\n ],\n "type": "object"\n },\n "authority": {\n "enum": [\n "shipped-artifact",\n "controlled-replay",\n "historical-reference",\n "external-service",\n "analyst-inference"\n ],\n "type": "string"\n },\n "confidence": {\n "enum": [\n "observed",\n "derived",\n "inferred"\n ],\n "type": "string"\n },\n "environment": {\n "anyOf": [\n {\n "additionalProperties": false,\n "properties": {\n "architecture": {\n "minLength": 1,\n "type": "string"\n },\n "id": {\n "minLength": 1,\n "type": "string"\n },\n "isolation": {\n "enum": [\n "none",\n "process",\n "container",\n "virtual-machine"\n ],\n "type": "string"\n },\n "platform": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "id",\n "platform",\n "architecture",\n "isolation"\n ],\n "type": "object"\n },\n {\n "type": "null"\n }\n ]\n },\n "evidence_id": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "evidence_links": {\n "items": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "type": "array"\n },\n "limitations": {\n "items": {\n "type": "string"\n },\n "type": "array"\n },\n "locations": {\n "items": {\n "oneOf": [\n {\n "additionalProperties": false,\n "properties": {\n "address": {\n "minLength": 1,\n "type": "string"\n },\n "kind": {\n "const": "address",\n "type": "string"\n }\n },\n "required": [\n "kind",\n "address"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "end": {\n "minLength": 1,\n "type": "string"\n },\n "kind": {\n "const": "address-range",\n "type": "string"\n },\n "start": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "kind",\n "start",\n "end"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "kind": {\n "const": "artifact-path",\n "type": "string"\n },\n "path": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "kind",\n "path"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "kind": {\n "const": "file-offset",\n "type": "string"\n },\n "offset": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "kind",\n "offset"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "end": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "kind": {\n "const": "file-offset-range",\n "type": "string"\n },\n "start": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "kind",\n "start",\n "end"\n ],\n "type": "object"\n }\n ]\n },\n "type": "array"\n },\n "normalized_result": {\n "$ref": "#/$defs/__schema0"\n },\n "operation": {\n "minLength": 1,\n "type": "string"\n },\n "parameters": {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n },\n "predicate_type": {\n "minLength": 1,\n "type": "string"\n },\n "provider": {\n "additionalProperties": false,\n "properties": {\n "id": {\n "minLength": 1,\n "type": "string"\n },\n "name": {\n "minLength": 1,\n "type": "string"\n },\n "version": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "id",\n "name",\n "version"\n ],\n "type": "object"\n },\n "raw_result": {\n "anyOf": [\n {\n "$ref": "#/$defs/__schema0"\n },\n {\n "type": "null"\n }\n ]\n },\n "subject": {\n "anyOf": [\n {\n "additionalProperties": false,\n "properties": {\n "architecture": {\n "anyOf": [\n {\n "enum": [\n "x86",\n "x86_64",\n "arm",\n "arm64"\n ],\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "digest": {\n "additionalProperties": false,\n "properties": {\n "sha256": {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n }\n },\n "required": [\n "sha256"\n ],\n "type": "object"\n },\n "format": {\n "enum": [\n "hopper",\n "analysis-database",\n "mach-o",\n "elf",\n "pe",\n "dos-mz",\n "dos-com",\n "zip",\n "ipa",\n "apk",\n "msix",\n "appx",\n "asar",\n "dmg",\n "pkg",\n "plist",\n "javascript",\n "source-map",\n "directory",\n "file",\n "unknown",\n "mach-o-universal",\n "javascript-bundle",\n "entitlements"\n ],\n "type": "string"\n },\n "local_path": {\n "type": "string"\n },\n "name": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "name",\n "digest",\n "format",\n "architecture",\n "local_path"\n ],\n "type": "object"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "evidence_id",\n "subject",\n "provider",\n "predicate_type",\n "operation",\n "parameters",\n "raw_result",\n "normalized_result",\n "confidence",\n "authority",\n "environment",\n "limitations",\n "locations",\n "evidence_links"\n ],\n "type": "object"\n },\n "evidence_id": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "result": {\n "type": "boolean"\n }\n },\n "required": [\n "result",\n "evidence_id",\n "evidence"\n ],\n "type": "object"\n },\n "requiresSession": false,\n "title": "Set Inline Comment"\n },\n {\n "analysisOperation": "unset_bookmark",\n "annotations": {\n "destructiveHint": true,\n "idempotentHint": true,\n "openWorldHint": false,\n "readOnlyHint": false\n },\n "description": "Remove the bookmark at a hexadecimal address and return whether it is absent. This mutates navigation metadata and does not alter binary bytes.",\n "effects": {\n "accessesNetwork": false,\n "changesUiState": false,\n "idempotent": true,\n "launchesProcess": false,\n "mayDiscardData": true,\n "mutatesSession": true,\n "mutatesTarget": true,\n "writesFilesystem": false\n },\n "inputSchema": {\n "$schema": "https://json-schema.org/draft/2020-12/schema",\n "examples": [\n {\n "address": "0x1000"\n }\n ],\n "properties": {\n "address": {\n "description": "A provider-normalized address; default memory uses 0x-prefixed hexadecimal",\n "type": "string"\n },\n "document": {\n "description": "The document name",\n "type": "string"\n }\n },\n "required": [\n "address"\n ],\n "type": "object"\n },\n "kind": "official-proxy",\n "name": "unset_bookmark",\n "outputSchema": {\n "$defs": {\n "__schema0": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "number"\n },\n {\n "type": "boolean"\n },\n {\n "type": "null"\n },\n {\n "items": {\n "$ref": "#/$defs/__schema0"\n },\n "type": "array"\n },\n {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n }\n ]\n }\n },\n "$schema": "https://json-schema.org/draft/2020-12/schema",\n "additionalProperties": false,\n "properties": {\n "evidence": {\n "additionalProperties": false,\n "properties": {\n "analysis_profile": {\n "additionalProperties": false,\n "properties": {\n "digest": {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n },\n "parameters": {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n },\n "provider": {\n "additionalProperties": false,\n "properties": {\n "id": {\n "minLength": 1,\n "type": "string"\n },\n "name": {\n "minLength": 1,\n "type": "string"\n },\n "version": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "id",\n "name",\n "version"\n ],\n "type": "object"\n }\n },\n "required": [\n "provider",\n "parameters",\n "digest"\n ],\n "type": "object"\n },\n "authority": {\n "enum": [\n "shipped-artifact",\n "controlled-replay",\n "historical-reference",\n "external-service",\n "analyst-inference"\n ],\n "type": "string"\n },\n "confidence": {\n "enum": [\n "observed",\n "derived",\n "inferred"\n ],\n "type": "string"\n },\n "environment": {\n "anyOf": [\n {\n "additionalProperties": false,\n "properties": {\n "architecture": {\n "minLength": 1,\n "type": "string"\n },\n "id": {\n "minLength": 1,\n "type": "string"\n },\n "isolation": {\n "enum": [\n "none",\n "process",\n "container",\n "virtual-machine"\n ],\n "type": "string"\n },\n "platform": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "id",\n "platform",\n "architecture",\n "isolation"\n ],\n "type": "object"\n },\n {\n "type": "null"\n }\n ]\n },\n "evidence_id": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "evidence_links": {\n "items": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "type": "array"\n },\n "limitations": {\n "items": {\n "type": "string"\n },\n "type": "array"\n },\n "locations": {\n "items": {\n "oneOf": [\n {\n "additionalProperties": false,\n "properties": {\n "address": {\n "minLength": 1,\n "type": "string"\n },\n "kind": {\n "const": "address",\n "type": "string"\n }\n },\n "required": [\n "kind",\n "address"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "end": {\n "minLength": 1,\n "type": "string"\n },\n "kind": {\n "const": "address-range",\n "type": "string"\n },\n "start": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "kind",\n "start",\n "end"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "kind": {\n "const": "artifact-path",\n "type": "string"\n },\n "path": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "kind",\n "path"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "kind": {\n "const": "file-offset",\n "type": "string"\n },\n "offset": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "kind",\n "offset"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "end": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "kind": {\n "const": "file-offset-range",\n "type": "string"\n },\n "start": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "kind",\n "start",\n "end"\n ],\n "type": "object"\n }\n ]\n },\n "type": "array"\n },\n "normalized_result": {\n "$ref": "#/$defs/__schema0"\n },\n "operation": {\n "minLength": 1,\n "type": "string"\n },\n "parameters": {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n },\n "predicate_type": {\n "minLength": 1,\n "type": "string"\n },\n "provider": {\n "additionalProperties": false,\n "properties": {\n "id": {\n "minLength": 1,\n "type": "string"\n },\n "name": {\n "minLength": 1,\n "type": "string"\n },\n "version": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "id",\n "name",\n "version"\n ],\n "type": "object"\n },\n "raw_result": {\n "anyOf": [\n {\n "$ref": "#/$defs/__schema0"\n },\n {\n "type": "null"\n }\n ]\n },\n "subject": {\n "anyOf": [\n {\n "additionalProperties": false,\n "properties": {\n "architecture": {\n "anyOf": [\n {\n "enum": [\n "x86",\n "x86_64",\n "arm",\n "arm64"\n ],\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "digest": {\n "additionalProperties": false,\n "properties": {\n "sha256": {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n }\n },\n "required": [\n "sha256"\n ],\n "type": "object"\n },\n "format": {\n "enum": [\n "hopper",\n "analysis-database",\n "mach-o",\n "elf",\n "pe",\n "dos-mz",\n "dos-com",\n "zip",\n "ipa",\n "apk",\n "msix",\n "appx",\n "asar",\n "dmg",\n "pkg",\n "plist",\n "javascript",\n "source-map",\n "directory",\n "file",\n "unknown",\n "mach-o-universal",\n "javascript-bundle",\n "entitlements"\n ],\n "type": "string"\n },\n "local_path": {\n "type": "string"\n },\n "name": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "name",\n "digest",\n "format",\n "architecture",\n "local_path"\n ],\n "type": "object"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "evidence_id",\n "subject",\n "provider",\n "predicate_type",\n "operation",\n "parameters",\n "raw_result",\n "normalized_result",\n "confidence",\n "authority",\n "environment",\n "limitations",\n "locations",\n "evidence_links"\n ],\n "type": "object"\n },\n "evidence_id": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "result": {\n "type": "boolean"\n }\n },\n "required": [\n "result",\n "evidence_id",\n "evidence"\n ],\n "type": "object"\n },\n "requiresSession": false,\n "title": "Unset Bookmark"\n },\n {\n "analysisOperation": "xrefs",\n "annotations": {\n "destructiveHint": false,\n "idempotentHint": true,\n "openWorldHint": false,\n "readOnlyHint": false\n },\n "description": "Return analyzed references to a code or data address. Hopper may default to its current cursor; headless providers such as Ghidra require an explicit address. Use to connect strings, globals, selectors, and functions; bare addresses are untyped and indirect references may be incomplete.",\n "effects": {\n "accessesNetwork": false,\n "changesUiState": false,\n "idempotent": true,\n "launchesProcess": false,\n "mayDiscardData": false,\n "mutatesSession": true,\n "mutatesTarget": false,\n "writesFilesystem": false\n },\n "inputSchema": {\n "$schema": "https://json-schema.org/draft/2020-12/schema",\n "examples": [\n {}\n ],\n "properties": {\n "address": {\n "description": "A provider-normalized address; default memory uses 0x-prefixed hexadecimal",\n "type": "string"\n },\n "document": {\n "description": "The document name",\n "type": "string"\n }\n },\n "type": "object"\n },\n "kind": "official-proxy",\n "name": "xrefs",\n "outputSchema": {\n "$defs": {\n "__schema0": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "number"\n },\n {\n "type": "boolean"\n },\n {\n "type": "null"\n },\n {\n "items": {\n "$ref": "#/$defs/__schema0"\n },\n "type": "array"\n },\n {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n }\n ]\n }\n },\n "$schema": "https://json-schema.org/draft/2020-12/schema",\n "additionalProperties": false,\n "properties": {\n "evidence": {\n "additionalProperties": false,\n "properties": {\n "analysis_profile": {\n "additionalProperties": false,\n "properties": {\n "digest": {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n },\n "parameters": {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n },\n "provider": {\n "additionalProperties": false,\n "properties": {\n "id": {\n "minLength": 1,\n "type": "string"\n },\n "name": {\n "minLength": 1,\n "type": "string"\n },\n "version": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "id",\n "name",\n "version"\n ],\n "type": "object"\n }\n },\n "required": [\n "provider",\n "parameters",\n "digest"\n ],\n "type": "object"\n },\n "authority": {\n "enum": [\n "shipped-artifact",\n "controlled-replay",\n "historical-reference",\n "external-service",\n "analyst-inference"\n ],\n "type": "string"\n },\n "confidence": {\n "enum": [\n "observed",\n "derived",\n "inferred"\n ],\n "type": "string"\n },\n "environment": {\n "anyOf": [\n {\n "additionalProperties": false,\n "properties": {\n "architecture": {\n "minLength": 1,\n "type": "string"\n },\n "id": {\n "minLength": 1,\n "type": "string"\n },\n "isolation": {\n "enum": [\n "none",\n "process",\n "container",\n "virtual-machine"\n ],\n "type": "string"\n },\n "platform": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "id",\n "platform",\n "architecture",\n "isolation"\n ],\n "type": "object"\n },\n {\n "type": "null"\n }\n ]\n },\n "evidence_id": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "evidence_links": {\n "items": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "type": "array"\n },\n "limitations": {\n "items": {\n "type": "string"\n },\n "type": "array"\n },\n "locations": {\n "items": {\n "oneOf": [\n {\n "additionalProperties": false,\n "properties": {\n "address": {\n "minLength": 1,\n "type": "string"\n },\n "kind": {\n "const": "address",\n "type": "string"\n }\n },\n "required": [\n "kind",\n "address"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "end": {\n "minLength": 1,\n "type": "string"\n },\n "kind": {\n "const": "address-range",\n "type": "string"\n },\n "start": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "kind",\n "start",\n "end"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "kind": {\n "const": "artifact-path",\n "type": "string"\n },\n "path": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "kind",\n "path"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "kind": {\n "const": "file-offset",\n "type": "string"\n },\n "offset": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "kind",\n "offset"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "end": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "kind": {\n "const": "file-offset-range",\n "type": "string"\n },\n "start": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "kind",\n "start",\n "end"\n ],\n "type": "object"\n }\n ]\n },\n "type": "array"\n },\n "normalized_result": {\n "$ref": "#/$defs/__schema0"\n },\n "operation": {\n "minLength": 1,\n "type": "string"\n },\n "parameters": {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n },\n "predicate_type": {\n "minLength": 1,\n "type": "string"\n },\n "provider": {\n "additionalProperties": false,\n "properties": {\n "id": {\n "minLength": 1,\n "type": "string"\n },\n "name": {\n "minLength": 1,\n "type": "string"\n },\n "version": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "id",\n "name",\n "version"\n ],\n "type": "object"\n },\n "raw_result": {\n "anyOf": [\n {\n "$ref": "#/$defs/__schema0"\n },\n {\n "type": "null"\n }\n ]\n },\n "subject": {\n "anyOf": [\n {\n "additionalProperties": false,\n "properties": {\n "architecture": {\n "anyOf": [\n {\n "enum": [\n "x86",\n "x86_64",\n "arm",\n "arm64"\n ],\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "digest": {\n "additionalProperties": false,\n "properties": {\n "sha256": {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n }\n },\n "required": [\n "sha256"\n ],\n "type": "object"\n },\n "format": {\n "enum": [\n "hopper",\n "analysis-database",\n "mach-o",\n "elf",\n "pe",\n "dos-mz",\n "dos-com",\n "zip",\n "ipa",\n "apk",\n "msix",\n "appx",\n "asar",\n "dmg",\n "pkg",\n "plist",\n "javascript",\n "source-map",\n "directory",\n "file",\n "unknown",\n "mach-o-universal",\n "javascript-bundle",\n "entitlements"\n ],\n "type": "string"\n },\n "local_path": {\n "type": "string"\n },\n "name": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "name",\n "digest",\n "format",\n "architecture",\n "local_path"\n ],\n "type": "object"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "evidence_id",\n "subject",\n "provider",\n "predicate_type",\n "operation",\n "parameters",\n "raw_result",\n "normalized_result",\n "confidence",\n "authority",\n "environment",\n "limitations",\n "locations",\n "evidence_links"\n ],\n "type": "object"\n },\n "evidence_id": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "result": {\n "items": {\n "type": "string"\n },\n "type": "array"\n }\n },\n "required": [\n "result",\n "evidence_id",\n "evidence"\n ],\n "type": "object"\n },\n "requiresSession": false,\n "title": "Xrefs"\n },\n {\n "analysisOperation": "inspect_native_dispatch_metadata",\n "annotations": {\n "destructiveHint": false,\n "idempotentHint": true,\n "openWorldHint": false,\n "readOnlyHint": false\n },\n "description": "Inspect the bound provider\'s name inventory for Objective-C class/method symbols and Swift mangled symbols, returning at most max_records decoded names. Includes target SHA-256 when available, provider identity/version, analysis-profile digest, facet coverage, and per-record Evidence. This is symbol-level evidence, not runtime metadata: ivar layouts, protocol conformances, witness/class tables, and relative pointers are explicitly marked unsupported unless a provider supplies those decoders. The provider controls how its name inventory is acquired.",\n "effects": {\n "accessesNetwork": false,\n "changesUiState": false,\n "idempotent": true,\n "launchesProcess": false,\n "mayDiscardData": false,\n "mutatesSession": true,\n "mutatesTarget": false,\n "writesFilesystem": false\n },\n "inputSchema": {\n "$schema": "https://json-schema.org/draft/2020-12/schema",\n "additionalProperties": false,\n "examples": [\n {\n "max_records": 5000\n }\n ],\n "properties": {\n "max_records": {\n "default": 5000,\n "description": "Maximum permitted records for this operation.",\n "maximum": 20000,\n "minimum": 1,\n "type": "integer"\n }\n },\n "type": "object"\n },\n "kind": "enhanced",\n "name": "inspect_native_dispatch_metadata",\n "outputSchema": {\n "$defs": {\n "__schema0": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "number"\n },\n {\n "type": "boolean"\n },\n {\n "type": "null"\n },\n {\n "items": {\n "$ref": "#/$defs/__schema0"\n },\n "type": "array"\n },\n {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n }\n ]\n }\n },\n "$schema": "https://json-schema.org/draft/2020-12/schema",\n "additionalProperties": false,\n "properties": {\n "evidence": {\n "additionalProperties": false,\n "properties": {\n "analysis_profile": {\n "additionalProperties": false,\n "properties": {\n "digest": {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n },\n "parameters": {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n },\n "provider": {\n "additionalProperties": false,\n "properties": {\n "id": {\n "minLength": 1,\n "type": "string"\n },\n "name": {\n "minLength": 1,\n "type": "string"\n },\n "version": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "id",\n "name",\n "version"\n ],\n "type": "object"\n }\n },\n "required": [\n "provider",\n "parameters",\n "digest"\n ],\n "type": "object"\n },\n "authority": {\n "enum": [\n "shipped-artifact",\n "controlled-replay",\n "historical-reference",\n "external-service",\n "analyst-inference"\n ],\n "type": "string"\n },\n "confidence": {\n "enum": [\n "observed",\n "derived",\n "inferred"\n ],\n "type": "string"\n },\n "environment": {\n "anyOf": [\n {\n "additionalProperties": false,\n "properties": {\n "architecture": {\n "minLength": 1,\n "type": "string"\n },\n "id": {\n "minLength": 1,\n "type": "string"\n },\n "isolation": {\n "enum": [\n "none",\n "process",\n "container",\n "virtual-machine"\n ],\n "type": "string"\n },\n "platform": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "id",\n "platform",\n "architecture",\n "isolation"\n ],\n "type": "object"\n },\n {\n "type": "null"\n }\n ]\n },\n "evidence_id": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "evidence_links": {\n "items": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "type": "array"\n },\n "limitations": {\n "items": {\n "type": "string"\n },\n "type": "array"\n },\n "locations": {\n "items": {\n "oneOf": [\n {\n "additionalProperties": false,\n "properties": {\n "address": {\n "minLength": 1,\n "type": "string"\n },\n "kind": {\n "const": "address",\n "type": "string"\n }\n },\n "required": [\n "kind",\n "address"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "end": {\n "minLength": 1,\n "type": "string"\n },\n "kind": {\n "const": "address-range",\n "type": "string"\n },\n "start": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "kind",\n "start",\n "end"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "kind": {\n "const": "artifact-path",\n "type": "string"\n },\n "path": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "kind",\n "path"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "kind": {\n "const": "file-offset",\n "type": "string"\n },\n "offset": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "kind",\n "offset"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "end": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "kind": {\n "const": "file-offset-range",\n "type": "string"\n },\n "start": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "kind",\n "start",\n "end"\n ],\n "type": "object"\n }\n ]\n },\n "type": "array"\n },\n "normalized_result": {\n "$ref": "#/$defs/__schema0"\n },\n "operation": {\n "minLength": 1,\n "type": "string"\n },\n "parameters": {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n },\n "predicate_type": {\n "minLength": 1,\n "type": "string"\n },\n "provider": {\n "additionalProperties": false,\n "properties": {\n "id": {\n "minLength": 1,\n "type": "string"\n },\n "name": {\n "minLength": 1,\n "type": "string"\n },\n "version": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "id",\n "name",\n "version"\n ],\n "type": "object"\n },\n "raw_result": {\n "anyOf": [\n {\n "$ref": "#/$defs/__schema0"\n },\n {\n "type": "null"\n }\n ]\n },\n "subject": {\n "anyOf": [\n {\n "additionalProperties": false,\n "properties": {\n "architecture": {\n "anyOf": [\n {\n "enum": [\n "x86",\n "x86_64",\n "arm",\n "arm64"\n ],\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "digest": {\n "additionalProperties": false,\n "properties": {\n "sha256": {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n }\n },\n "required": [\n "sha256"\n ],\n "type": "object"\n },\n "format": {\n "enum": [\n "hopper",\n "analysis-database",\n "mach-o",\n "elf",\n "pe",\n "dos-mz",\n "dos-com",\n "zip",\n "ipa",\n "apk",\n "msix",\n "appx",\n "asar",\n "dmg",\n "pkg",\n "plist",\n "javascript",\n "source-map",\n "directory",\n "file",\n "unknown",\n "mach-o-universal",\n "javascript-bundle",\n "entitlements"\n ],\n "type": "string"\n },\n "local_path": {\n "type": "string"\n },\n "name": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "name",\n "digest",\n "format",\n "architecture",\n "local_path"\n ],\n "type": "object"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "evidence_id",\n "subject",\n "provider",\n "predicate_type",\n "operation",\n "parameters",\n "raw_result",\n "normalized_result",\n "confidence",\n "authority",\n "environment",\n "limitations",\n "locations",\n "evidence_links"\n ],\n "type": "object"\n },\n "evidence_id": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "result": {\n "additionalProperties": false,\n "properties": {\n "analysis_profile_digest": {\n "anyOf": [\n {\n "minLength": 1,\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "provider": {\n "additionalProperties": false,\n "properties": {\n "id": {\n "minLength": 1,\n "type": "string"\n },\n "name": {\n "minLength": 1,\n "type": "string"\n },\n "version": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "id",\n "name",\n "version"\n ],\n "type": "object"\n },\n "result": {\n "additionalProperties": false,\n "properties": {\n "coverage": {\n "default": [],\n "items": {\n "additionalProperties": false,\n "properties": {\n "decoded": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "examined": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "facet": {\n "minLength": 1,\n "type": "string"\n },\n "reason": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "status": {\n "enum": [\n "complete",\n "partial",\n "unsupported",\n "not_requested"\n ],\n "type": "string"\n }\n },\n "required": [\n "facet",\n "status",\n "reason",\n "examined",\n "decoded"\n ],\n "type": "object"\n },\n "type": "array"\n },\n "db_save_result": {\n "anyOf": [\n {\n "additionalProperties": false,\n "properties": {\n "database_path": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "error": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "operation": {\n "enum": [\n "save",\n "readback",\n "open_database",\n "close_database",\n "export",\n "import"\n ],\n "type": "string"\n },\n "preserved_bookmarks": {\n "default": 0,\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "preserved_comments": {\n "default": 0,\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "preserved_names": {\n "default": 0,\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "succeeded": {\n "type": "boolean"\n }\n },\n "required": [\n "operation",\n "succeeded",\n "preserved_names",\n "preserved_comments",\n "preserved_bookmarks",\n "database_path",\n "error"\n ],\n "type": "object"\n },\n {\n "type": "null"\n }\n ]\n },\n "objc_categories": {\n "default": [],\n "items": {\n "additionalProperties": false,\n "properties": {\n "class_methods": {\n "items": {\n "type": "string"\n },\n "type": "array"\n },\n "class_name": {\n "anyOf": [\n {\n "minLength": 1,\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "class_source": {\n "enum": [\n "local",\n "external",\n "unresolved"\n ],\n "type": "string"\n },\n "decode": {\n "additionalProperties": false,\n "properties": {\n "reason": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "status": {\n "enum": [\n "decoded",\n "partial",\n "unsupported",\n "invalid"\n ],\n "type": "string"\n }\n },\n "required": [\n "status",\n "reason"\n ],\n "type": "object"\n },\n "evidence": {\n "items": {\n "additionalProperties": false,\n "properties": {\n "artifact_path": {\n "anyOf": [\n {\n "minLength": 1,\n "type": "string"\n },\n {\n "type": "null"\n }\n ],\n "default": null\n },\n "artifact_sha256": {\n "anyOf": [\n {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n },\n {\n "type": "null"\n }\n ],\n "default": null\n },\n "description": {\n "minLength": 1,\n "type": "string"\n },\n "kind": {\n "enum": [\n "binary_metadata",\n "interface_builder_resource",\n "symbol",\n "reference",\n "decompiler"\n ],\n "type": "string"\n },\n "location": {\n "additionalProperties": false,\n "properties": {\n "address": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "file_offset": {\n "anyOf": [\n {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "address",\n "file_offset"\n ],\n "type": "object"\n }\n },\n "required": [\n "kind",\n "description",\n "location",\n "artifact_path",\n "artifact_sha256"\n ],\n "type": "object"\n },\n "minItems": 1,\n "type": "array"\n },\n "instance_methods": {\n "items": {\n "type": "string"\n },\n "type": "array"\n },\n "location": {\n "additionalProperties": false,\n "properties": {\n "address": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "file_offset": {\n "anyOf": [\n {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "address",\n "file_offset"\n ],\n "type": "object"\n },\n "name": {\n "minLength": 1,\n "type": "string"\n },\n "properties": {\n "items": {\n "additionalProperties": false,\n "properties": {\n "attributes": {\n "default": [],\n "items": {\n "additionalProperties": false,\n "properties": {\n "is_atomic": {\n "default": false,\n "type": "boolean"\n },\n "is_copy": {\n "default": false,\n "type": "boolean"\n },\n "is_strong": {\n "default": false,\n "type": "boolean"\n },\n "is_weak": {\n "default": false,\n "type": "boolean"\n },\n "name": {\n "minLength": 1,\n "type": "string"\n },\n "value": {\n "type": "string"\n }\n },\n "required": [\n "name",\n "value",\n "is_weak",\n "is_atomic",\n "is_copy",\n "is_strong"\n ],\n "type": "object"\n },\n "type": "array"\n },\n "getter": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "is_readonly": {\n "default": false,\n "type": "boolean"\n },\n "name": {\n "minLength": 1,\n "type": "string"\n },\n "setter": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "type_encoding": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "name",\n "type_encoding",\n "attributes",\n "is_readonly",\n "getter",\n "setter"\n ],\n "type": "object"\n },\n "type": "array"\n },\n "protocols": {\n "items": {\n "type": "string"\n },\n "type": "array"\n }\n },\n "required": [\n "name",\n "class_name",\n "class_source",\n "instance_methods",\n "class_methods",\n "protocols",\n "properties",\n "location",\n "decode",\n "evidence"\n ],\n "type": "object"\n },\n "type": "array"\n },\n "objc_classes": {\n "default": [],\n "items": {\n "additionalProperties": false,\n "properties": {\n "decode": {\n "additionalProperties": false,\n "properties": {\n "reason": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "status": {\n "enum": [\n "decoded",\n "partial",\n "unsupported",\n "invalid"\n ],\n "type": "string"\n }\n },\n "required": [\n "status",\n "reason"\n ],\n "type": "object"\n },\n "evidence": {\n "items": {\n "additionalProperties": false,\n "properties": {\n "artifact_path": {\n "type": "string"\n },\n "artifact_sha256": {\n "type": "string"\n },\n "description": {\n "type": "string"\n },\n "kind": {\n "const": "binary_metadata",\n "type": "string"\n },\n "location": {\n "additionalProperties": false,\n "properties": {\n "address": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "file_offset": {\n "anyOf": [\n {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "address",\n "file_offset"\n ],\n "type": "object"\n }\n },\n "required": [\n "kind",\n "description",\n "location",\n "artifact_path",\n "artifact_sha256"\n ],\n "type": "object"\n },\n "type": "array"\n },\n "instance_size": {\n "anyOf": [\n {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n {\n "type": "null"\n }\n ]\n },\n "is_meta_class": {\n "default": false,\n "type": "boolean"\n },\n "is_root_class": {\n "default": false,\n "type": "boolean"\n },\n "ivar_count": {\n "default": 0,\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "location": {\n "additionalProperties": false,\n "properties": {\n "address": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "file_offset": {\n "anyOf": [\n {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "address",\n "file_offset"\n ],\n "type": "object"\n },\n "metaclass_address": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "methods": {\n "default": [],\n "items": {\n "additionalProperties": false,\n "properties": {\n "address": {\n "anyOf": [\n {\n "maximum": 9007199254740991,\n "minimum": -9007199254740991,\n "type": "integer"\n },\n {\n "type": "null"\n }\n ]\n },\n "is_optional": {\n "default": false,\n "type": "boolean"\n },\n "is_required": {\n "default": false,\n "type": "boolean"\n },\n "method_type": {\n "enum": [\n "instance",\n "class",\n "ivar_getter",\n "ivar_setter"\n ],\n "type": "string"\n },\n "selector": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "selector",\n "method_type",\n "address",\n "is_required",\n "is_optional"\n ],\n "type": "object"\n },\n "type": "array"\n },\n "name": {\n "minLength": 1,\n "type": "string"\n },\n "properties": {\n "default": [],\n "items": {\n "additionalProperties": false,\n "properties": {\n "attributes": {\n "default": [],\n "items": {\n "additionalProperties": false,\n "properties": {\n "is_atomic": {\n "default": false,\n "type": "boolean"\n },\n "is_copy": {\n "default": false,\n "type": "boolean"\n },\n "is_strong": {\n "default": false,\n "type": "boolean"\n },\n "is_weak": {\n "default": false,\n "type": "boolean"\n },\n "name": {\n "minLength": 1,\n "type": "string"\n },\n "value": {\n "type": "string"\n }\n },\n "required": [\n "name",\n "value",\n "is_weak",\n "is_atomic",\n "is_copy",\n "is_strong"\n ],\n "type": "object"\n },\n "type": "array"\n },\n "getter": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "is_readonly": {\n "default": false,\n "type": "boolean"\n },\n "name": {\n "minLength": 1,\n "type": "string"\n },\n "setter": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "type_encoding": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "name",\n "type_encoding",\n "attributes",\n "is_readonly",\n "getter",\n "setter"\n ],\n "type": "object"\n },\n "type": "array"\n },\n "protocols": {\n "default": [],\n "items": {\n "type": "string"\n },\n "type": "array"\n },\n "super_class": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "superclass_address": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "name",\n "super_class",\n "is_meta_class",\n "is_root_class",\n "methods",\n "properties",\n "protocols",\n "ivar_count",\n "instance_size"\n ],\n "type": "object"\n },\n "type": "array"\n },\n "objc_dispatch_implementations": {\n "default": [],\n "items": {\n "additionalProperties": false,\n "properties": {\n "category": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "class_name": {\n "minLength": 1,\n "type": "string"\n },\n "decode": {\n "additionalProperties": false,\n "properties": {\n "reason": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "status": {\n "enum": [\n "decoded",\n "partial",\n "unsupported",\n "invalid"\n ],\n "type": "string"\n }\n },\n "required": [\n "status",\n "reason"\n ],\n "type": "object"\n },\n "evidence": {\n "items": {\n "additionalProperties": false,\n "properties": {\n "artifact_path": {\n "anyOf": [\n {\n "minLength": 1,\n "type": "string"\n },\n {\n "type": "null"\n }\n ],\n "default": null\n },\n "artifact_sha256": {\n "anyOf": [\n {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n },\n {\n "type": "null"\n }\n ],\n "default": null\n },\n "description": {\n "minLength": 1,\n "type": "string"\n },\n "kind": {\n "enum": [\n "binary_metadata",\n "interface_builder_resource",\n "symbol",\n "reference",\n "decompiler"\n ],\n "type": "string"\n },\n "location": {\n "additionalProperties": false,\n "properties": {\n "address": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "file_offset": {\n "anyOf": [\n {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "address",\n "file_offset"\n ],\n "type": "object"\n }\n },\n "required": [\n "kind",\n "description",\n "location",\n "artifact_path",\n "artifact_sha256"\n ],\n "type": "object"\n },\n "minItems": 1,\n "type": "array"\n },\n "implementation_address": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "location": {\n "additionalProperties": false,\n "properties": {\n "address": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "file_offset": {\n "anyOf": [\n {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "address",\n "file_offset"\n ],\n "type": "object"\n },\n "method_type": {\n "enum": [\n "instance",\n "class"\n ],\n "type": "string"\n },\n "selector": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "class_name",\n "selector",\n "method_type",\n "implementation_address",\n "location",\n "decode",\n "evidence"\n ],\n "type": "object"\n },\n "type": "array"\n },\n "objc_ivars": {\n "default": [],\n "items": {\n "additionalProperties": false,\n "properties": {\n "alignment": {\n "anyOf": [\n {\n "exclusiveMinimum": 0,\n "maximum": 9007199254740991,\n "type": "integer"\n },\n {\n "type": "null"\n }\n ],\n "default": null\n },\n "class_name": {\n "minLength": 1,\n "type": "string"\n },\n "decode": {\n "additionalProperties": false,\n "properties": {\n "reason": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "status": {\n "enum": [\n "decoded",\n "partial",\n "unsupported",\n "invalid"\n ],\n "type": "string"\n }\n },\n "required": [\n "status",\n "reason"\n ],\n "type": "object"\n },\n "evidence": {\n "items": {\n "additionalProperties": false,\n "properties": {\n "artifact_path": {\n "anyOf": [\n {\n "minLength": 1,\n "type": "string"\n },\n {\n "type": "null"\n }\n ],\n "default": null\n },\n "artifact_sha256": {\n "anyOf": [\n {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n },\n {\n "type": "null"\n }\n ],\n "default": null\n },\n "description": {\n "minLength": 1,\n "type": "string"\n },\n "kind": {\n "enum": [\n "binary_metadata",\n "interface_builder_resource",\n "symbol",\n "reference",\n "decompiler"\n ],\n "type": "string"\n },\n "location": {\n "additionalProperties": false,\n "properties": {\n "address": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "file_offset": {\n "anyOf": [\n {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "address",\n "file_offset"\n ],\n "type": "object"\n }\n },\n "required": [\n "kind",\n "description",\n "location",\n "artifact_path",\n "artifact_sha256"\n ],\n "type": "object"\n },\n "minItems": 1,\n "type": "array"\n },\n "location": {\n "additionalProperties": false,\n "properties": {\n "address": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "file_offset": {\n "anyOf": [\n {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "address",\n "file_offset"\n ],\n "type": "object"\n },\n "name": {\n "minLength": 1,\n "type": "string"\n },\n "offset": {\n "anyOf": [\n {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n {\n "type": "null"\n }\n ]\n },\n "size": {\n "anyOf": [\n {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n {\n "type": "null"\n }\n ],\n "default": null\n },\n "type_encoding": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "class_name",\n "name",\n "type_encoding",\n "offset",\n "size",\n "alignment",\n "location",\n "decode",\n "evidence"\n ],\n "type": "object"\n },\n "type": "array"\n },\n "objc_protocol_records": {\n "default": [],\n "items": {\n "additionalProperties": false,\n "properties": {\n "adopted_protocols": {\n "items": {\n "type": "string"\n },\n "type": "array"\n },\n "decode": {\n "additionalProperties": false,\n "properties": {\n "reason": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "status": {\n "enum": [\n "decoded",\n "partial",\n "unsupported",\n "invalid"\n ],\n "type": "string"\n }\n },\n "required": [\n "status",\n "reason"\n ],\n "type": "object"\n },\n "evidence": {\n "items": {\n "additionalProperties": false,\n "properties": {\n "artifact_path": {\n "anyOf": [\n {\n "minLength": 1,\n "type": "string"\n },\n {\n "type": "null"\n }\n ],\n "default": null\n },\n "artifact_sha256": {\n "anyOf": [\n {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n },\n {\n "type": "null"\n }\n ],\n "default": null\n },\n "description": {\n "minLength": 1,\n "type": "string"\n },\n "kind": {\n "enum": [\n "binary_metadata",\n "interface_builder_resource",\n "symbol",\n "reference",\n "decompiler"\n ],\n "type": "string"\n },\n "location": {\n "additionalProperties": false,\n "properties": {\n "address": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "file_offset": {\n "anyOf": [\n {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "address",\n "file_offset"\n ],\n "type": "object"\n }\n },\n "required": [\n "kind",\n "description",\n "location",\n "artifact_path",\n "artifact_sha256"\n ],\n "type": "object"\n },\n "minItems": 1,\n "type": "array"\n },\n "location": {\n "additionalProperties": false,\n "properties": {\n "address": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "file_offset": {\n "anyOf": [\n {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "address",\n "file_offset"\n ],\n "type": "object"\n },\n "methods": {\n "items": {\n "additionalProperties": false,\n "properties": {\n "address": {\n "anyOf": [\n {\n "maximum": 9007199254740991,\n "minimum": -9007199254740991,\n "type": "integer"\n },\n {\n "type": "null"\n }\n ]\n },\n "is_optional": {\n "default": false,\n "type": "boolean"\n },\n "is_required": {\n "default": false,\n "type": "boolean"\n },\n "method_type": {\n "enum": [\n "instance",\n "class",\n "ivar_getter",\n "ivar_setter"\n ],\n "type": "string"\n },\n "selector": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "selector",\n "method_type",\n "address",\n "is_required",\n "is_optional"\n ],\n "type": "object"\n },\n "type": "array"\n },\n "name": {\n "type": "string"\n },\n "optional_methods": {\n "items": {\n "additionalProperties": false,\n "properties": {\n "address": {\n "anyOf": [\n {\n "maximum": 9007199254740991,\n "minimum": -9007199254740991,\n "type": "integer"\n },\n {\n "type": "null"\n }\n ]\n },\n "is_optional": {\n "default": false,\n "type": "boolean"\n },\n "is_required": {\n "default": false,\n "type": "boolean"\n },\n "method_type": {\n "enum": [\n "instance",\n "class",\n "ivar_getter",\n "ivar_setter"\n ],\n "type": "string"\n },\n "selector": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "selector",\n "method_type",\n "address",\n "is_required",\n "is_optional"\n ],\n "type": "object"\n },\n "type": "array"\n }\n },\n "required": [\n "name",\n "adopted_protocols",\n "methods",\n "optional_methods",\n "location",\n "decode",\n "evidence"\n ],\n "type": "object"\n },\n "type": "array"\n },\n "objc_protocols": {\n "default": [],\n "items": {\n "additionalProperties": false,\n "properties": {\n "methods": {\n "default": [],\n "items": {\n "additionalProperties": false,\n "properties": {\n "address": {\n "anyOf": [\n {\n "maximum": 9007199254740991,\n "minimum": -9007199254740991,\n "type": "integer"\n },\n {\n "type": "null"\n }\n ]\n },\n "is_optional": {\n "default": false,\n "type": "boolean"\n },\n "is_required": {\n "default": false,\n "type": "boolean"\n },\n "method_type": {\n "enum": [\n "instance",\n "class",\n "ivar_getter",\n "ivar_setter"\n ],\n "type": "string"\n },\n "selector": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "selector",\n "method_type",\n "address",\n "is_required",\n "is_optional"\n ],\n "type": "object"\n },\n "type": "array"\n },\n "name": {\n "minLength": 1,\n "type": "string"\n },\n "optional_methods": {\n "default": [],\n "items": {\n "additionalProperties": false,\n "properties": {\n "address": {\n "anyOf": [\n {\n "maximum": 9007199254740991,\n "minimum": -9007199254740991,\n "type": "integer"\n },\n {\n "type": "null"\n }\n ]\n },\n "is_optional": {\n "default": false,\n "type": "boolean"\n },\n "is_required": {\n "default": false,\n "type": "boolean"\n },\n "method_type": {\n "enum": [\n "instance",\n "class",\n "ivar_getter",\n "ivar_setter"\n ],\n "type": "string"\n },\n "selector": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "selector",\n "method_type",\n "address",\n "is_required",\n "is_optional"\n ],\n "type": "object"\n },\n "type": "array"\n },\n "properties": {\n "default": [],\n "items": {\n "additionalProperties": false,\n "properties": {\n "attributes": {\n "default": [],\n "items": {\n "additionalProperties": false,\n "properties": {\n "is_atomic": {\n "default": false,\n "type": "boolean"\n },\n "is_copy": {\n "default": false,\n "type": "boolean"\n },\n "is_strong": {\n "default": false,\n "type": "boolean"\n },\n "is_weak": {\n "default": false,\n "type": "boolean"\n },\n "name": {\n "minLength": 1,\n "type": "string"\n },\n "value": {\n "type": "string"\n }\n },\n "required": [\n "name",\n "value",\n "is_weak",\n "is_atomic",\n "is_copy",\n "is_strong"\n ],\n "type": "object"\n },\n "type": "array"\n },\n "getter": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "is_readonly": {\n "default": false,\n "type": "boolean"\n },\n "name": {\n "minLength": 1,\n "type": "string"\n },\n "setter": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "type_encoding": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "name",\n "type_encoding",\n "attributes",\n "is_readonly",\n "getter",\n "setter"\n ],\n "type": "object"\n },\n "type": "array"\n }\n },\n "required": [\n "name",\n "methods",\n "optional_methods",\n "properties"\n ],\n "type": "object"\n },\n "type": "array"\n },\n "relative_pointers": {\n "default": [],\n "items": {\n "additionalProperties": false,\n "properties": {\n "decode": {\n "additionalProperties": false,\n "properties": {\n "reason": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "status": {\n "enum": [\n "decoded",\n "partial",\n "unsupported",\n "invalid"\n ],\n "type": "string"\n }\n },\n "required": [\n "status",\n "reason"\n ],\n "type": "object"\n },\n "displacement": {\n "maximum": 9007199254740991,\n "minimum": -9007199254740991,\n "type": "integer"\n },\n "evidence": {\n "items": {\n "additionalProperties": false,\n "properties": {\n "artifact_path": {\n "anyOf": [\n {\n "minLength": 1,\n "type": "string"\n },\n {\n "type": "null"\n }\n ],\n "default": null\n },\n "artifact_sha256": {\n "anyOf": [\n {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n },\n {\n "type": "null"\n }\n ],\n "default": null\n },\n "description": {\n "minLength": 1,\n "type": "string"\n },\n "kind": {\n "enum": [\n "binary_metadata",\n "interface_builder_resource",\n "symbol",\n "reference",\n "decompiler"\n ],\n "type": "string"\n },\n "location": {\n "additionalProperties": false,\n "properties": {\n "address": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "file_offset": {\n "anyOf": [\n {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "address",\n "file_offset"\n ],\n "type": "object"\n }\n },\n "required": [\n "kind",\n "description",\n "location",\n "artifact_path",\n "artifact_sha256"\n ],\n "type": "object"\n },\n "minItems": 1,\n "type": "array"\n },\n "field": {\n "additionalProperties": false,\n "properties": {\n "address": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "file_offset": {\n "anyOf": [\n {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "address",\n "file_offset"\n ],\n "type": "object"\n },\n "indirect": {\n "anyOf": [\n {\n "type": "boolean"\n },\n {\n "type": "null"\n }\n ]\n },\n "indirectable": {\n "type": "boolean"\n },\n "target": {\n "additionalProperties": false,\n "properties": {\n "address": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "file_offset": {\n "anyOf": [\n {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "address",\n "file_offset"\n ],\n "type": "object"\n }\n },\n "required": [\n "field",\n "target",\n "displacement",\n "indirectable",\n "indirect",\n "decode",\n "evidence"\n ],\n "type": "object"\n },\n "type": "array"\n },\n "swift_conformances": {\n "default": [],\n "items": {\n "additionalProperties": false,\n "properties": {\n "decode": {\n "additionalProperties": false,\n "properties": {\n "reason": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "status": {\n "enum": [\n "decoded",\n "partial",\n "unsupported",\n "invalid"\n ],\n "type": "string"\n }\n },\n "required": [\n "status",\n "reason"\n ],\n "type": "object"\n },\n "evidence": {\n "items": {\n "additionalProperties": false,\n "properties": {\n "artifact_path": {\n "anyOf": [\n {\n "minLength": 1,\n "type": "string"\n },\n {\n "type": "null"\n }\n ],\n "default": null\n },\n "artifact_sha256": {\n "anyOf": [\n {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n },\n {\n "type": "null"\n }\n ],\n "default": null\n },\n "description": {\n "minLength": 1,\n "type": "string"\n },\n "kind": {\n "enum": [\n "binary_metadata",\n "interface_builder_resource",\n "symbol",\n "reference",\n "decompiler"\n ],\n "type": "string"\n },\n "location": {\n "additionalProperties": false,\n "properties": {\n "address": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "file_offset": {\n "anyOf": [\n {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "address",\n "file_offset"\n ],\n "type": "object"\n }\n },\n "required": [\n "kind",\n "description",\n "location",\n "artifact_path",\n "artifact_sha256"\n ],\n "type": "object"\n },\n "minItems": 1,\n "type": "array"\n },\n "location": {\n "additionalProperties": false,\n "properties": {\n "address": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "file_offset": {\n "anyOf": [\n {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "address",\n "file_offset"\n ],\n "type": "object"\n },\n "module": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "protocol_name": {\n "minLength": 1,\n "type": "string"\n },\n "type_name": {\n "minLength": 1,\n "type": "string"\n },\n "witness_table": {\n "additionalProperties": false,\n "properties": {\n "address": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "file_offset": {\n "anyOf": [\n {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "address",\n "file_offset"\n ],\n "type": "object"\n }\n },\n "required": [\n "type_name",\n "protocol_name",\n "module",\n "witness_table",\n "location",\n "decode",\n "evidence"\n ],\n "type": "object"\n },\n "type": "array"\n },\n "swift_decls": {\n "default": [],\n "items": {\n "additionalProperties": false,\n "properties": {\n "access_level": {\n "default": "internal",\n "enum": [\n "private",\n "fileprivate",\n "internal",\n "public",\n "open"\n ],\n "type": "string"\n },\n "is_convenience_init": {\n "default": false,\n "type": "boolean"\n },\n "is_final": {\n "default": false,\n "type": "boolean"\n },\n "is_override": {\n "default": false,\n "type": "boolean"\n },\n "is_required": {\n "default": false,\n "type": "boolean"\n },\n "kind": {\n "enum": [\n "class",\n "struct",\n "enum",\n "protocol",\n "extension",\n "actor",\n "global_var",\n "global_func"\n ],\n "type": "string"\n },\n "module": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "name": {\n "minLength": 1,\n "type": "string"\n },\n "protocols": {\n "default": [],\n "items": {\n "type": "string"\n },\n "type": "array"\n },\n "super_class": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "kind",\n "name",\n "module",\n "access_level",\n "super_class",\n "protocols",\n "is_final",\n "is_required",\n "is_convenience_init",\n "is_override"\n ],\n "type": "object"\n },\n "type": "array"\n },\n "swift_dispatch_slots": {\n "default": [],\n "items": {\n "additionalProperties": false,\n "properties": {\n "decode": {\n "additionalProperties": false,\n "properties": {\n "reason": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "status": {\n "enum": [\n "decoded",\n "partial",\n "unsupported",\n "invalid"\n ],\n "type": "string"\n }\n },\n "required": [\n "status",\n "reason"\n ],\n "type": "object"\n },\n "evidence": {\n "items": {\n "additionalProperties": false,\n "properties": {\n "artifact_path": {\n "anyOf": [\n {\n "minLength": 1,\n "type": "string"\n },\n {\n "type": "null"\n }\n ],\n "default": null\n },\n "artifact_sha256": {\n "anyOf": [\n {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n },\n {\n "type": "null"\n }\n ],\n "default": null\n },\n "description": {\n "minLength": 1,\n "type": "string"\n },\n "kind": {\n "enum": [\n "binary_metadata",\n "interface_builder_resource",\n "symbol",\n "reference",\n "decompiler"\n ],\n "type": "string"\n },\n "location": {\n "additionalProperties": false,\n "properties": {\n "address": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "file_offset": {\n "anyOf": [\n {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "address",\n "file_offset"\n ],\n "type": "object"\n }\n },\n "required": [\n "kind",\n "description",\n "location",\n "artifact_path",\n "artifact_sha256"\n ],\n "type": "object"\n },\n "minItems": 1,\n "type": "array"\n },\n "implementation": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "implementation_address": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "location": {\n "additionalProperties": false,\n "properties": {\n "address": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "file_offset": {\n "anyOf": [\n {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "address",\n "file_offset"\n ],\n "type": "object"\n },\n "owner": {\n "minLength": 1,\n "type": "string"\n },\n "requirement": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "slot_index": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "table_kind": {\n "enum": [\n "witness_table",\n "class_vtable"\n ],\n "type": "string"\n },\n "thunk_address": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "owner",\n "table_kind",\n "slot_index",\n "requirement",\n "implementation",\n "implementation_address",\n "thunk_address",\n "location",\n "decode",\n "evidence"\n ],\n "type": "object"\n },\n "type": "array"\n },\n "swift_symbols": {\n "default": [],\n "items": {\n "additionalProperties": false,\n "properties": {\n "address": {\n "minLength": 1,\n "type": "string"\n },\n "decode": {\n "additionalProperties": false,\n "properties": {\n "reason": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "status": {\n "enum": [\n "decoded",\n "partial",\n "unsupported",\n "invalid"\n ],\n "type": "string"\n }\n },\n "required": [\n "status",\n "reason"\n ],\n "type": "object"\n },\n "evidence": {\n "items": {\n "additionalProperties": false,\n "properties": {\n "artifact_path": {\n "anyOf": [\n {\n "minLength": 1,\n "type": "string"\n },\n {\n "type": "null"\n }\n ],\n "default": null\n },\n "artifact_sha256": {\n "anyOf": [\n {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n },\n {\n "type": "null"\n }\n ],\n "default": null\n },\n "description": {\n "minLength": 1,\n "type": "string"\n },\n "kind": {\n "enum": [\n "binary_metadata",\n "interface_builder_resource",\n "symbol",\n "reference",\n "decompiler"\n ],\n "type": "string"\n },\n "location": {\n "additionalProperties": false,\n "properties": {\n "address": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "file_offset": {\n "anyOf": [\n {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "address",\n "file_offset"\n ],\n "type": "object"\n }\n },\n "required": [\n "kind",\n "description",\n "location",\n "artifact_path",\n "artifact_sha256"\n ],\n "type": "object"\n },\n "minItems": 1,\n "type": "array"\n },\n "mangled_name": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "mangled_name",\n "address",\n "decode",\n "evidence"\n ],\n "type": "object"\n },\n "type": "array"\n }\n },\n "required": [\n "objc_classes",\n "objc_protocols",\n "objc_categories",\n "swift_decls",\n "objc_ivars",\n "objc_protocol_records",\n "objc_dispatch_implementations",\n "swift_conformances",\n "swift_dispatch_slots",\n "swift_symbols",\n "relative_pointers",\n "coverage",\n "db_save_result"\n ],\n "type": "object"\n },\n "target_sha256": {\n "anyOf": [\n {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "target_sha256",\n "provider",\n "analysis_profile_digest",\n "result"\n ],\n "type": "object"\n }\n },\n "required": [\n "result",\n "evidence_id",\n "evidence"\n ],\n "type": "object"\n },\n "requiresSession": false,\n "title": "Inspect Native Dispatch Metadata"\n },\n {\n "analysisOperation": "get_objc_classes",\n "annotations": {\n "destructiveHint": false,\n "idempotentHint": true,\n "openWorldHint": false,\n "readOnlyHint": false\n },\n "description": "Discover and deduplicate Objective-C class labels, optionally filtering by literal substring.",\n "effects": {\n "accessesNetwork": false,\n "changesUiState": false,\n "idempotent": true,\n "launchesProcess": false,\n "mayDiscardData": false,\n "mutatesSession": true,\n "mutatesTarget": false,\n "writesFilesystem": false\n },\n "inputSchema": {\n "$schema": "https://json-schema.org/draft/2020-12/schema",\n "additionalProperties": false,\n "examples": [\n {\n "pattern": ""\n }\n ],\n "properties": {\n "pattern": {\n "default": "",\n "description": "Literal text or regular expression used to filter matching results.",\n "type": "string"\n }\n },\n "type": "object"\n },\n "kind": "enhanced",\n "name": "get_objc_classes",\n "outputSchema": {\n "$defs": {\n "__schema0": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "number"\n },\n {\n "type": "boolean"\n },\n {\n "type": "null"\n },\n {\n "items": {\n "$ref": "#/$defs/__schema0"\n },\n "type": "array"\n },\n {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n }\n ]\n }\n },\n "$schema": "https://json-schema.org/draft/2020-12/schema",\n "additionalProperties": false,\n "properties": {\n "evidence": {\n "additionalProperties": false,\n "properties": {\n "analysis_profile": {\n "additionalProperties": false,\n "properties": {\n "digest": {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n },\n "parameters": {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n },\n "provider": {\n "additionalProperties": false,\n "properties": {\n "id": {\n "minLength": 1,\n "type": "string"\n },\n "name": {\n "minLength": 1,\n "type": "string"\n },\n "version": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "id",\n "name",\n "version"\n ],\n "type": "object"\n }\n },\n "required": [\n "provider",\n "parameters",\n "digest"\n ],\n "type": "object"\n },\n "authority": {\n "enum": [\n "shipped-artifact",\n "controlled-replay",\n "historical-reference",\n "external-service",\n "analyst-inference"\n ],\n "type": "string"\n },\n "confidence": {\n "enum": [\n "observed",\n "derived",\n "inferred"\n ],\n "type": "string"\n },\n "environment": {\n "anyOf": [\n {\n "additionalProperties": false,\n "properties": {\n "architecture": {\n "minLength": 1,\n "type": "string"\n },\n "id": {\n "minLength": 1,\n "type": "string"\n },\n "isolation": {\n "enum": [\n "none",\n "process",\n "container",\n "virtual-machine"\n ],\n "type": "string"\n },\n "platform": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "id",\n "platform",\n "architecture",\n "isolation"\n ],\n "type": "object"\n },\n {\n "type": "null"\n }\n ]\n },\n "evidence_id": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "evidence_links": {\n "items": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "type": "array"\n },\n "limitations": {\n "items": {\n "type": "string"\n },\n "type": "array"\n },\n "locations": {\n "items": {\n "oneOf": [\n {\n "additionalProperties": false,\n "properties": {\n "address": {\n "minLength": 1,\n "type": "string"\n },\n "kind": {\n "const": "address",\n "type": "string"\n }\n },\n "required": [\n "kind",\n "address"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "end": {\n "minLength": 1,\n "type": "string"\n },\n "kind": {\n "const": "address-range",\n "type": "string"\n },\n "start": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "kind",\n "start",\n "end"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "kind": {\n "const": "artifact-path",\n "type": "string"\n },\n "path": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "kind",\n "path"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "kind": {\n "const": "file-offset",\n "type": "string"\n },\n "offset": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "kind",\n "offset"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "end": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "kind": {\n "const": "file-offset-range",\n "type": "string"\n },\n "start": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "kind",\n "start",\n "end"\n ],\n "type": "object"\n }\n ]\n },\n "type": "array"\n },\n "normalized_result": {\n "$ref": "#/$defs/__schema0"\n },\n "operation": {\n "minLength": 1,\n "type": "string"\n },\n "parameters": {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n },\n "predicate_type": {\n "minLength": 1,\n "type": "string"\n },\n "provider": {\n "additionalProperties": false,\n "properties": {\n "id": {\n "minLength": 1,\n "type": "string"\n },\n "name": {\n "minLength": 1,\n "type": "string"\n },\n "version": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "id",\n "name",\n "version"\n ],\n "type": "object"\n },\n "raw_result": {\n "anyOf": [\n {\n "$ref": "#/$defs/__schema0"\n },\n {\n "type": "null"\n }\n ]\n },\n "subject": {\n "anyOf": [\n {\n "additionalProperties": false,\n "properties": {\n "architecture": {\n "anyOf": [\n {\n "enum": [\n "x86",\n "x86_64",\n "arm",\n "arm64"\n ],\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "digest": {\n "additionalProperties": false,\n "properties": {\n "sha256": {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n }\n },\n "required": [\n "sha256"\n ],\n "type": "object"\n },\n "format": {\n "enum": [\n "hopper",\n "analysis-database",\n "mach-o",\n "elf",\n "pe",\n "dos-mz",\n "dos-com",\n "zip",\n "ipa",\n "apk",\n "msix",\n "appx",\n "asar",\n "dmg",\n "pkg",\n "plist",\n "javascript",\n "source-map",\n "directory",\n "file",\n "unknown",\n "mach-o-universal",\n "javascript-bundle",\n "entitlements"\n ],\n "type": "string"\n },\n "local_path": {\n "type": "string"\n },\n "name": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "name",\n "digest",\n "format",\n "architecture",\n "local_path"\n ],\n "type": "object"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "evidence_id",\n "subject",\n "provider",\n "predicate_type",\n "operation",\n "parameters",\n "raw_result",\n "normalized_result",\n "confidence",\n "authority",\n "environment",\n "limitations",\n "locations",\n "evidence_links"\n ],\n "type": "object"\n },\n "evidence_id": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "result": {\n "additionalProperties": false,\n "properties": {\n "classes": {\n "items": {\n "additionalProperties": false,\n "properties": {\n "address": {\n "type": "string"\n },\n "name": {\n "type": "string"\n }\n },\n "required": [\n "address",\n "name"\n ],\n "type": "object"\n },\n "type": "array"\n },\n "count": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "count",\n "classes"\n ],\n "type": "object"\n }\n },\n "required": [\n "result",\n "evidence_id",\n "evidence"\n ],\n "type": "object"\n },\n "requiresSession": false,\n "title": "Get Objc Classes"\n },\n {\n "analysisOperation": "get_objc_protocols",\n "annotations": {\n "destructiveHint": false,\n "idempotentHint": true,\n "openWorldHint": false,\n "readOnlyHint": false\n },\n "description": "Discover and deduplicate Objective-C and Swift protocol labels.",\n "effects": {\n "accessesNetwork": false,\n "changesUiState": false,\n "idempotent": true,\n "launchesProcess": false,\n "mayDiscardData": false,\n "mutatesSession": true,\n "mutatesTarget": false,\n "writesFilesystem": false\n },\n "inputSchema": {\n "$schema": "https://json-schema.org/draft/2020-12/schema",\n "additionalProperties": false,\n "examples": [\n {}\n ],\n "properties": {},\n "type": "object"\n },\n "kind": "enhanced",\n "name": "get_objc_protocols",\n "outputSchema": {\n "$defs": {\n "__schema0": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "number"\n },\n {\n "type": "boolean"\n },\n {\n "type": "null"\n },\n {\n "items": {\n "$ref": "#/$defs/__schema0"\n },\n "type": "array"\n },\n {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n }\n ]\n }\n },\n "$schema": "https://json-schema.org/draft/2020-12/schema",\n "additionalProperties": false,\n "properties": {\n "evidence": {\n "additionalProperties": false,\n "properties": {\n "analysis_profile": {\n "additionalProperties": false,\n "properties": {\n "digest": {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n },\n "parameters": {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n },\n "provider": {\n "additionalProperties": false,\n "properties": {\n "id": {\n "minLength": 1,\n "type": "string"\n },\n "name": {\n "minLength": 1,\n "type": "string"\n },\n "version": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "id",\n "name",\n "version"\n ],\n "type": "object"\n }\n },\n "required": [\n "provider",\n "parameters",\n "digest"\n ],\n "type": "object"\n },\n "authority": {\n "enum": [\n "shipped-artifact",\n "controlled-replay",\n "historical-reference",\n "external-service",\n "analyst-inference"\n ],\n "type": "string"\n },\n "confidence": {\n "enum": [\n "observed",\n "derived",\n "inferred"\n ],\n "type": "string"\n },\n "environment": {\n "anyOf": [\n {\n "additionalProperties": false,\n "properties": {\n "architecture": {\n "minLength": 1,\n "type": "string"\n },\n "id": {\n "minLength": 1,\n "type": "string"\n },\n "isolation": {\n "enum": [\n "none",\n "process",\n "container",\n "virtual-machine"\n ],\n "type": "string"\n },\n "platform": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "id",\n "platform",\n "architecture",\n "isolation"\n ],\n "type": "object"\n },\n {\n "type": "null"\n }\n ]\n },\n "evidence_id": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "evidence_links": {\n "items": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "type": "array"\n },\n "limitations": {\n "items": {\n "type": "string"\n },\n "type": "array"\n },\n "locations": {\n "items": {\n "oneOf": [\n {\n "additionalProperties": false,\n "properties": {\n "address": {\n "minLength": 1,\n "type": "string"\n },\n "kind": {\n "const": "address",\n "type": "string"\n }\n },\n "required": [\n "kind",\n "address"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "end": {\n "minLength": 1,\n "type": "string"\n },\n "kind": {\n "const": "address-range",\n "type": "string"\n },\n "start": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "kind",\n "start",\n "end"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "kind": {\n "const": "artifact-path",\n "type": "string"\n },\n "path": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "kind",\n "path"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "kind": {\n "const": "file-offset",\n "type": "string"\n },\n "offset": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "kind",\n "offset"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "end": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "kind": {\n "const": "file-offset-range",\n "type": "string"\n },\n "start": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "kind",\n "start",\n "end"\n ],\n "type": "object"\n }\n ]\n },\n "type": "array"\n },\n "normalized_result": {\n "$ref": "#/$defs/__schema0"\n },\n "operation": {\n "minLength": 1,\n "type": "string"\n },\n "parameters": {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n },\n "predicate_type": {\n "minLength": 1,\n "type": "string"\n },\n "provider": {\n "additionalProperties": false,\n "properties": {\n "id": {\n "minLength": 1,\n "type": "string"\n },\n "name": {\n "minLength": 1,\n "type": "string"\n },\n "version": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "id",\n "name",\n "version"\n ],\n "type": "object"\n },\n "raw_result": {\n "anyOf": [\n {\n "$ref": "#/$defs/__schema0"\n },\n {\n "type": "null"\n }\n ]\n },\n "subject": {\n "anyOf": [\n {\n "additionalProperties": false,\n "properties": {\n "architecture": {\n "anyOf": [\n {\n "enum": [\n "x86",\n "x86_64",\n "arm",\n "arm64"\n ],\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "digest": {\n "additionalProperties": false,\n "properties": {\n "sha256": {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n }\n },\n "required": [\n "sha256"\n ],\n "type": "object"\n },\n "format": {\n "enum": [\n "hopper",\n "analysis-database",\n "mach-o",\n "elf",\n "pe",\n "dos-mz",\n "dos-com",\n "zip",\n "ipa",\n "apk",\n "msix",\n "appx",\n "asar",\n "dmg",\n "pkg",\n "plist",\n "javascript",\n "source-map",\n "directory",\n "file",\n "unknown",\n "mach-o-universal",\n "javascript-bundle",\n "entitlements"\n ],\n "type": "string"\n },\n "local_path": {\n "type": "string"\n },\n "name": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "name",\n "digest",\n "format",\n "architecture",\n "local_path"\n ],\n "type": "object"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "evidence_id",\n "subject",\n "provider",\n "predicate_type",\n "operation",\n "parameters",\n "raw_result",\n "normalized_result",\n "confidence",\n "authority",\n "environment",\n "limitations",\n "locations",\n "evidence_links"\n ],\n "type": "object"\n },\n "evidence_id": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "result": {\n "additionalProperties": false,\n "properties": {\n "count": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "protocols": {\n "items": {\n "additionalProperties": false,\n "properties": {\n "address": {\n "type": "string"\n },\n "name": {\n "type": "string"\n }\n },\n "required": [\n "address",\n "name"\n ],\n "type": "object"\n },\n "type": "array"\n }\n },\n "required": [\n "count",\n "protocols"\n ],\n "type": "object"\n }\n },\n "required": [\n "result",\n "evidence_id",\n "evidence"\n ],\n "type": "object"\n },\n "requiresSession": false,\n "title": "Get Objc Protocols"\n },\n {\n "analysisOperation": "batch_decompile",\n "annotations": {\n "destructiveHint": false,\n "idempotentHint": true,\n "openWorldHint": false,\n "readOnlyHint": false\n },\n "description": "Decompile each explicit procedure symbol or address concurrently. Returns ordered per-item success or error results and aggregate counts.",\n "effects": {\n "accessesNetwork": false,\n "changesUiState": false,\n "idempotent": true,\n "launchesProcess": false,\n "mayDiscardData": false,\n "mutatesSession": true,\n "mutatesTarget": false,\n "writesFilesystem": false\n },\n "inputSchema": {\n "$schema": "https://json-schema.org/draft/2020-12/schema",\n "additionalProperties": false,\n "examples": [\n {\n "addresses": []\n }\n ],\n "properties": {\n "addresses": {\n "default": [],\n "description": "Ordered provider-normalized procedure addresses to analyze.",\n "items": {\n "description": "A provider-normalized procedure address",\n "type": "string"\n },\n "type": "array"\n }\n },\n "type": "object"\n },\n "kind": "enhanced",\n "name": "batch_decompile",\n "outputSchema": {\n "$defs": {\n "__schema0": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "number"\n },\n {\n "type": "boolean"\n },\n {\n "type": "null"\n },\n {\n "items": {\n "$ref": "#/$defs/__schema0"\n },\n "type": "array"\n },\n {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n }\n ]\n },\n "__schema1": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "number"\n },\n {\n "type": "boolean"\n },\n {\n "type": "null"\n },\n {\n "items": {\n "$ref": "#/$defs/__schema1"\n },\n "type": "array"\n },\n {\n "additionalProperties": {\n "$ref": "#/$defs/__schema1"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n }\n ]\n }\n },\n "$schema": "https://json-schema.org/draft/2020-12/schema",\n "additionalProperties": false,\n "properties": {\n "evidence": {\n "additionalProperties": false,\n "properties": {\n "analysis_profile": {\n "additionalProperties": false,\n "properties": {\n "digest": {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n },\n "parameters": {\n "additionalProperties": {\n "$ref": "#/$defs/__schema1"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n },\n "provider": {\n "additionalProperties": false,\n "properties": {\n "id": {\n "minLength": 1,\n "type": "string"\n },\n "name": {\n "minLength": 1,\n "type": "string"\n },\n "version": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "id",\n "name",\n "version"\n ],\n "type": "object"\n }\n },\n "required": [\n "provider",\n "parameters",\n "digest"\n ],\n "type": "object"\n },\n "authority": {\n "enum": [\n "shipped-artifact",\n "controlled-replay",\n "historical-reference",\n "external-service",\n "analyst-inference"\n ],\n "type": "string"\n },\n "confidence": {\n "enum": [\n "observed",\n "derived",\n "inferred"\n ],\n "type": "string"\n },\n "environment": {\n "anyOf": [\n {\n "additionalProperties": false,\n "properties": {\n "architecture": {\n "minLength": 1,\n "type": "string"\n },\n "id": {\n "minLength": 1,\n "type": "string"\n },\n "isolation": {\n "enum": [\n "none",\n "process",\n "container",\n "virtual-machine"\n ],\n "type": "string"\n },\n "platform": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "id",\n "platform",\n "architecture",\n "isolation"\n ],\n "type": "object"\n },\n {\n "type": "null"\n }\n ]\n },\n "evidence_id": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "evidence_links": {\n "items": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "type": "array"\n },\n "limitations": {\n "items": {\n "type": "string"\n },\n "type": "array"\n },\n "locations": {\n "items": {\n "oneOf": [\n {\n "additionalProperties": false,\n "properties": {\n "address": {\n "minLength": 1,\n "type": "string"\n },\n "kind": {\n "const": "address",\n "type": "string"\n }\n },\n "required": [\n "kind",\n "address"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "end": {\n "minLength": 1,\n "type": "string"\n },\n "kind": {\n "const": "address-range",\n "type": "string"\n },\n "start": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "kind",\n "start",\n "end"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "kind": {\n "const": "artifact-path",\n "type": "string"\n },\n "path": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "kind",\n "path"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "kind": {\n "const": "file-offset",\n "type": "string"\n },\n "offset": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "kind",\n "offset"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "end": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "kind": {\n "const": "file-offset-range",\n "type": "string"\n },\n "start": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "kind",\n "start",\n "end"\n ],\n "type": "object"\n }\n ]\n },\n "type": "array"\n },\n "normalized_result": {\n "$ref": "#/$defs/__schema1"\n },\n "operation": {\n "minLength": 1,\n "type": "string"\n },\n "parameters": {\n "additionalProperties": {\n "$ref": "#/$defs/__schema1"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n },\n "predicate_type": {\n "minLength": 1,\n "type": "string"\n },\n "provider": {\n "additionalProperties": false,\n "properties": {\n "id": {\n "minLength": 1,\n "type": "string"\n },\n "name": {\n "minLength": 1,\n "type": "string"\n },\n "version": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "id",\n "name",\n "version"\n ],\n "type": "object"\n },\n "raw_result": {\n "anyOf": [\n {\n "$ref": "#/$defs/__schema1"\n },\n {\n "type": "null"\n }\n ]\n },\n "subject": {\n "anyOf": [\n {\n "additionalProperties": false,\n "properties": {\n "architecture": {\n "anyOf": [\n {\n "enum": [\n "x86",\n "x86_64",\n "arm",\n "arm64"\n ],\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "digest": {\n "additionalProperties": false,\n "properties": {\n "sha256": {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n }\n },\n "required": [\n "sha256"\n ],\n "type": "object"\n },\n "format": {\n "enum": [\n "hopper",\n "analysis-database",\n "mach-o",\n "elf",\n "pe",\n "dos-mz",\n "dos-com",\n "zip",\n "ipa",\n "apk",\n "msix",\n "appx",\n "asar",\n "dmg",\n "pkg",\n "plist",\n "javascript",\n "source-map",\n "directory",\n "file",\n "unknown",\n "mach-o-universal",\n "javascript-bundle",\n "entitlements"\n ],\n "type": "string"\n },\n "local_path": {\n "type": "string"\n },\n "name": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "name",\n "digest",\n "format",\n "architecture",\n "local_path"\n ],\n "type": "object"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "evidence_id",\n "subject",\n "provider",\n "predicate_type",\n "operation",\n "parameters",\n "raw_result",\n "normalized_result",\n "confidence",\n "authority",\n "environment",\n "limitations",\n "locations",\n "evidence_links"\n ],\n "type": "object"\n },\n "evidence_id": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "result": {\n "additionalProperties": false,\n "properties": {\n "failed": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "items": {\n "items": {\n "oneOf": [\n {\n "additionalProperties": false,\n "properties": {\n "address": {\n "type": "string"\n },\n "pseudocode": {\n "minLength": 1,\n "type": "string"\n },\n "status": {\n "const": "ok",\n "type": "string"\n }\n },\n "required": [\n "address",\n "status",\n "pseudocode"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "address": {\n "type": "string"\n },\n "error": {\n "oneOf": [\n {\n "additionalProperties": false,\n "properties": {\n "category": {\n "enum": [\n "invalid_input",\n "unsupported_provider",\n "integrity_mismatch",\n "truncated",\n "cancelled",\n "timeout",\n "unavailable",\n "execution_failure"\n ],\n "type": "string"\n },\n "code": {\n "const": "invalid_request",\n "type": "string"\n },\n "details": {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n },\n "message": {\n "minLength": 1,\n "type": "string"\n },\n "remediation": {\n "additionalProperties": false,\n "properties": {\n "action": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "action"\n ],\n "type": "object"\n },\n "retryable": {\n "type": "boolean"\n }\n },\n "required": [\n "code",\n "category",\n "message",\n "retryable",\n "remediation"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "category": {\n "enum": [\n "invalid_input",\n "unsupported_provider",\n "integrity_mismatch",\n "truncated",\n "cancelled",\n "timeout",\n "unavailable",\n "execution_failure"\n ],\n "type": "string"\n },\n "code": {\n "const": "unreadable_output",\n "type": "string"\n },\n "details": {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n },\n "message": {\n "minLength": 1,\n "type": "string"\n },\n "remediation": {\n "additionalProperties": false,\n "properties": {\n "action": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "action"\n ],\n "type": "object"\n },\n "retryable": {\n "type": "boolean"\n }\n },\n "required": [\n "code",\n "category",\n "message",\n "retryable",\n "remediation"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "category": {\n "enum": [\n "invalid_input",\n "unsupported_provider",\n "integrity_mismatch",\n "truncated",\n "cancelled",\n "timeout",\n "unavailable",\n "execution_failure"\n ],\n "type": "string"\n },\n "code": {\n "const": "capability_unavailable",\n "type": "string"\n },\n "details": {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n },\n "message": {\n "minLength": 1,\n "type": "string"\n },\n "remediation": {\n "additionalProperties": false,\n "properties": {\n "action": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "action"\n ],\n "type": "object"\n },\n "retryable": {\n "type": "boolean"\n }\n },\n "required": [\n "code",\n "category",\n "message",\n "retryable",\n "remediation"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "category": {\n "enum": [\n "invalid_input",\n "unsupported_provider",\n "integrity_mismatch",\n "truncated",\n "cancelled",\n "timeout",\n "unavailable",\n "execution_failure"\n ],\n "type": "string"\n },\n "code": {\n "const": "provider_unavailable",\n "type": "string"\n },\n "details": {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n },\n "message": {\n "minLength": 1,\n "type": "string"\n },\n "remediation": {\n "additionalProperties": false,\n "properties": {\n "action": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "action"\n ],\n "type": "object"\n },\n "retryable": {\n "type": "boolean"\n }\n },\n "required": [\n "code",\n "category",\n "message",\n "retryable",\n "remediation"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "category": {\n "enum": [\n "invalid_input",\n "unsupported_provider",\n "integrity_mismatch",\n "truncated",\n "cancelled",\n "timeout",\n "unavailable",\n "execution_failure"\n ],\n "type": "string"\n },\n "code": {\n "const": "provider_timeout",\n "type": "string"\n },\n "details": {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n },\n "message": {\n "minLength": 1,\n "type": "string"\n },\n "remediation": {\n "additionalProperties": false,\n "properties": {\n "action": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "action"\n ],\n "type": "object"\n },\n "retryable": {\n "type": "boolean"\n }\n },\n "required": [\n "code",\n "category",\n "message",\n "retryable",\n "remediation"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "category": {\n "enum": [\n "invalid_input",\n "unsupported_provider",\n "integrity_mismatch",\n "truncated",\n "cancelled",\n "timeout",\n "unavailable",\n "execution_failure"\n ],\n "type": "string"\n },\n "code": {\n "const": "cancelled",\n "type": "string"\n },\n "details": {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n },\n "message": {\n "minLength": 1,\n "type": "string"\n },\n "remediation": {\n "additionalProperties": false,\n "properties": {\n "action": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "action"\n ],\n "type": "object"\n },\n "retryable": {\n "type": "boolean"\n }\n },\n "required": [\n "code",\n "category",\n "message",\n "retryable",\n "remediation"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "category": {\n "enum": [\n "invalid_input",\n "unsupported_provider",\n "integrity_mismatch",\n "truncated",\n "cancelled",\n "timeout",\n "unavailable",\n "execution_failure"\n ],\n "type": "string"\n },\n "code": {\n "const": "artifact_integrity_mismatch",\n "type": "string"\n },\n "details": {\n "additionalProperties": false,\n "properties": {\n "calculated_sha256": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "declared_sha256": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "logical_path": {\n "type": "string"\n },\n "unpacked": {\n "type": "boolean"\n }\n },\n "required": [\n "logical_path",\n "declared_sha256",\n "calculated_sha256",\n "unpacked"\n ],\n "type": "object"\n },\n "message": {\n "minLength": 1,\n "type": "string"\n },\n "remediation": {\n "additionalProperties": false,\n "properties": {\n "action": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "action"\n ],\n "type": "object"\n },\n "retryable": {\n "type": "boolean"\n }\n },\n "required": [\n "code",\n "category",\n "message",\n "retryable",\n "remediation",\n "details"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "category": {\n "enum": [\n "invalid_input",\n "unsupported_provider",\n "integrity_mismatch",\n "truncated",\n "cancelled",\n "timeout",\n "unavailable",\n "execution_failure"\n ],\n "type": "string"\n },\n "code": {\n "const": "artifact_operation_failed",\n "type": "string"\n },\n "details": {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n },\n "message": {\n "minLength": 1,\n "type": "string"\n },\n "remediation": {\n "additionalProperties": false,\n "properties": {\n "action": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "action"\n ],\n "type": "object"\n },\n "retryable": {\n "type": "boolean"\n }\n },\n "required": [\n "code",\n "category",\n "message",\n "retryable",\n "remediation"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "category": {\n "enum": [\n "invalid_input",\n "unsupported_provider",\n "integrity_mismatch",\n "truncated",\n "cancelled",\n "timeout",\n "unavailable",\n "execution_failure"\n ],\n "type": "string"\n },\n "code": {\n "const": "evidence_integrity_mismatch",\n "type": "string"\n },\n "details": {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n },\n "message": {\n "minLength": 1,\n "type": "string"\n },\n "remediation": {\n "additionalProperties": false,\n "properties": {\n "action": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "action"\n ],\n "type": "object"\n },\n "retryable": {\n "type": "boolean"\n }\n },\n "required": [\n "code",\n "category",\n "message",\n "retryable",\n "remediation"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "category": {\n "enum": [\n "invalid_input",\n "unsupported_provider",\n "integrity_mismatch",\n "truncated",\n "cancelled",\n "timeout",\n "unavailable",\n "execution_failure"\n ],\n "type": "string"\n },\n "code": {\n "const": "truncated",\n "type": "string"\n },\n "details": {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n },\n "message": {\n "minLength": 1,\n "type": "string"\n },\n "remediation": {\n "additionalProperties": false,\n "properties": {\n "action": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "action"\n ],\n "type": "object"\n },\n "retryable": {\n "type": "boolean"\n }\n },\n "required": [\n "code",\n "category",\n "message",\n "retryable",\n "remediation"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "category": {\n "enum": [\n "invalid_input",\n "unsupported_provider",\n "integrity_mismatch",\n "truncated",\n "cancelled",\n "timeout",\n "unavailable",\n "execution_failure"\n ],\n "type": "string"\n },\n "code": {\n "const": "process_capture_failed",\n "type": "string"\n },\n "details": {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n },\n "message": {\n "minLength": 1,\n "type": "string"\n },\n "remediation": {\n "additionalProperties": false,\n "properties": {\n "action": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "action"\n ],\n "type": "object"\n },\n "retryable": {\n "type": "boolean"\n }\n },\n "required": [\n "code",\n "category",\n "message",\n "retryable",\n "remediation"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "category": {\n "enum": [\n "invalid_input",\n "unsupported_provider",\n "integrity_mismatch",\n "truncated",\n "cancelled",\n "timeout",\n "unavailable",\n "execution_failure"\n ],\n "type": "string"\n },\n "code": {\n "const": "cleanup_incomplete",\n "type": "string"\n },\n "details": {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n },\n "message": {\n "minLength": 1,\n "type": "string"\n },\n "remediation": {\n "additionalProperties": false,\n "properties": {\n "action": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "action"\n ],\n "type": "object"\n },\n "retryable": {\n "type": "boolean"\n }\n },\n "required": [\n "code",\n "category",\n "message",\n "retryable",\n "remediation"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "category": {\n "enum": [\n "invalid_input",\n "unsupported_provider",\n "integrity_mismatch",\n "truncated",\n "cancelled",\n "timeout",\n "unavailable",\n "execution_failure"\n ],\n "type": "string"\n },\n "code": {\n "const": "revision_conflict",\n "type": "string"\n },\n "details": {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n },\n "message": {\n "minLength": 1,\n "type": "string"\n },\n "remediation": {\n "additionalProperties": false,\n "properties": {\n "action": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "action"\n ],\n "type": "object"\n },\n "retryable": {\n "type": "boolean"\n }\n },\n "required": [\n "code",\n "category",\n "message",\n "retryable",\n "remediation"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "category": {\n "enum": [\n "invalid_input",\n "unsupported_provider",\n "integrity_mismatch",\n "truncated",\n "cancelled",\n "timeout",\n "unavailable",\n "execution_failure"\n ],\n "type": "string"\n },\n "code": {\n "const": "configuration_invalid",\n "type": "string"\n },\n "details": {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n },\n "message": {\n "minLength": 1,\n "type": "string"\n },\n "remediation": {\n "additionalProperties": false,\n "properties": {\n "action": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "action"\n ],\n "type": "object"\n },\n "retryable": {\n "type": "boolean"\n }\n },\n "required": [\n "code",\n "category",\n "message",\n "retryable",\n "remediation"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "category": {\n "enum": [\n "invalid_input",\n "unsupported_provider",\n "integrity_mismatch",\n "truncated",\n "cancelled",\n "timeout",\n "unavailable",\n "execution_failure"\n ],\n "type": "string"\n },\n "code": {\n "const": "target_unavailable",\n "type": "string"\n },\n "details": {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n },\n "message": {\n "minLength": 1,\n "type": "string"\n },\n "remediation": {\n "additionalProperties": false,\n "properties": {\n "action": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "action"\n ],\n "type": "object"\n },\n "retryable": {\n "type": "boolean"\n }\n },\n "required": [\n "code",\n "category",\n "message",\n "retryable",\n "remediation"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "category": {\n "enum": [\n "invalid_input",\n "unsupported_provider",\n "integrity_mismatch",\n "truncated",\n "cancelled",\n "timeout",\n "unavailable",\n "execution_failure"\n ],\n "type": "string"\n },\n "code": {\n "const": "execution_failure",\n "type": "string"\n },\n "details": {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n },\n "message": {\n "minLength": 1,\n "type": "string"\n },\n "remediation": {\n "additionalProperties": false,\n "properties": {\n "action": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "action"\n ],\n "type": "object"\n },\n "retryable": {\n "type": "boolean"\n }\n },\n "required": [\n "code",\n "category",\n "message",\n "retryable",\n "remediation"\n ],\n "type": "object"\n }\n ]\n },\n "status": {\n "const": "error",\n "type": "string"\n }\n },\n "required": [\n "address",\n "status",\n "error"\n ],\n "type": "object"\n }\n ]\n },\n "type": "array"\n },\n "succeeded": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "total": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "items",\n "total",\n "succeeded",\n "failed"\n ],\n "type": "object"\n }\n },\n "required": [\n "result",\n "evidence_id",\n "evidence"\n ],\n "type": "object"\n },\n "requiresSession": false,\n "title": "Batch Decompile"\n },\n {\n "analysisOperation": "get_call_graph",\n "annotations": {\n "destructiveHint": false,\n "idempotentHint": true,\n "openWorldHint": false,\n "readOnlyHint": false\n },\n "description": "Traverse the bound provider\'s caller or callee relationships from one symbol or address until the reachable graph is exhausted. 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.",\n "effects": {\n "accessesNetwork": false,\n "changesUiState": false,\n "idempotent": true,\n "launchesProcess": false,\n "mayDiscardData": false,\n "mutatesSession": true,\n "mutatesTarget": false,\n "writesFilesystem": false\n },\n "inputSchema": {\n "$schema": "https://json-schema.org/draft/2020-12/schema",\n "additionalProperties": false,\n "examples": [\n {\n "address": "0x1000",\n "direction": "forward"\n }\n ],\n "properties": {\n "address": {\n "description": "A provider-normalized procedure address",\n "type": "string"\n },\n "direction": {\n "default": "forward",\n "description": "Direction in which to traverse or compare relationships.",\n "enum": [\n "forward",\n "backward"\n ],\n "type": "string"\n }\n },\n "required": [\n "address"\n ],\n "type": "object"\n },\n "kind": "enhanced",\n "name": "get_call_graph",\n "outputSchema": {\n "$defs": {\n "__schema0": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "number"\n },\n {\n "type": "boolean"\n },\n {\n "type": "null"\n },\n {\n "items": {\n "$ref": "#/$defs/__schema0"\n },\n "type": "array"\n },\n {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n }\n ]\n },\n "__schema1": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "number"\n },\n {\n "type": "boolean"\n },\n {\n "type": "null"\n },\n {\n "items": {\n "$ref": "#/$defs/__schema1"\n },\n "type": "array"\n },\n {\n "additionalProperties": {\n "$ref": "#/$defs/__schema1"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n }\n ]\n }\n },\n "$schema": "https://json-schema.org/draft/2020-12/schema",\n "additionalProperties": false,\n "properties": {\n "evidence": {\n "additionalProperties": false,\n "properties": {\n "analysis_profile": {\n "additionalProperties": false,\n "properties": {\n "digest": {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n },\n "parameters": {\n "additionalProperties": {\n "$ref": "#/$defs/__schema1"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n },\n "provider": {\n "additionalProperties": false,\n "properties": {\n "id": {\n "minLength": 1,\n "type": "string"\n },\n "name": {\n "minLength": 1,\n "type": "string"\n },\n "version": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "id",\n "name",\n "version"\n ],\n "type": "object"\n }\n },\n "required": [\n "provider",\n "parameters",\n "digest"\n ],\n "type": "object"\n },\n "authority": {\n "enum": [\n "shipped-artifact",\n "controlled-replay",\n "historical-reference",\n "external-service",\n "analyst-inference"\n ],\n "type": "string"\n },\n "confidence": {\n "enum": [\n "observed",\n "derived",\n "inferred"\n ],\n "type": "string"\n },\n "environment": {\n "anyOf": [\n {\n "additionalProperties": false,\n "properties": {\n "architecture": {\n "minLength": 1,\n "type": "string"\n },\n "id": {\n "minLength": 1,\n "type": "string"\n },\n "isolation": {\n "enum": [\n "none",\n "process",\n "container",\n "virtual-machine"\n ],\n "type": "string"\n },\n "platform": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "id",\n "platform",\n "architecture",\n "isolation"\n ],\n "type": "object"\n },\n {\n "type": "null"\n }\n ]\n },\n "evidence_id": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "evidence_links": {\n "items": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "type": "array"\n },\n "limitations": {\n "items": {\n "type": "string"\n },\n "type": "array"\n },\n "locations": {\n "items": {\n "oneOf": [\n {\n "additionalProperties": false,\n "properties": {\n "address": {\n "minLength": 1,\n "type": "string"\n },\n "kind": {\n "const": "address",\n "type": "string"\n }\n },\n "required": [\n "kind",\n "address"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "end": {\n "minLength": 1,\n "type": "string"\n },\n "kind": {\n "const": "address-range",\n "type": "string"\n },\n "start": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "kind",\n "start",\n "end"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "kind": {\n "const": "artifact-path",\n "type": "string"\n },\n "path": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "kind",\n "path"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "kind": {\n "const": "file-offset",\n "type": "string"\n },\n "offset": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "kind",\n "offset"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "end": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "kind": {\n "const": "file-offset-range",\n "type": "string"\n },\n "start": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "kind",\n "start",\n "end"\n ],\n "type": "object"\n }\n ]\n },\n "type": "array"\n },\n "normalized_result": {\n "$ref": "#/$defs/__schema1"\n },\n "operation": {\n "minLength": 1,\n "type": "string"\n },\n "parameters": {\n "additionalProperties": {\n "$ref": "#/$defs/__schema1"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n },\n "predicate_type": {\n "minLength": 1,\n "type": "string"\n },\n "provider": {\n "additionalProperties": false,\n "properties": {\n "id": {\n "minLength": 1,\n "type": "string"\n },\n "name": {\n "minLength": 1,\n "type": "string"\n },\n "version": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "id",\n "name",\n "version"\n ],\n "type": "object"\n },\n "raw_result": {\n "anyOf": [\n {\n "$ref": "#/$defs/__schema1"\n },\n {\n "type": "null"\n }\n ]\n },\n "subject": {\n "anyOf": [\n {\n "additionalProperties": false,\n "properties": {\n "architecture": {\n "anyOf": [\n {\n "enum": [\n "x86",\n "x86_64",\n "arm",\n "arm64"\n ],\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "digest": {\n "additionalProperties": false,\n "properties": {\n "sha256": {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n }\n },\n "required": [\n "sha256"\n ],\n "type": "object"\n },\n "format": {\n "enum": [\n "hopper",\n "analysis-database",\n "mach-o",\n "elf",\n "pe",\n "dos-mz",\n "dos-com",\n "zip",\n "ipa",\n "apk",\n "msix",\n "appx",\n "asar",\n "dmg",\n "pkg",\n "plist",\n "javascript",\n "source-map",\n "directory",\n "file",\n "unknown",\n "mach-o-universal",\n "javascript-bundle",\n "entitlements"\n ],\n "type": "string"\n },\n "local_path": {\n "type": "string"\n },\n "name": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "name",\n "digest",\n "format",\n "architecture",\n "local_path"\n ],\n "type": "object"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "evidence_id",\n "subject",\n "provider",\n "predicate_type",\n "operation",\n "parameters",\n "raw_result",\n "normalized_result",\n "confidence",\n "authority",\n "environment",\n "limitations",\n "locations",\n "evidence_links"\n ],\n "type": "object"\n },\n "evidence_id": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "result": {\n "additionalProperties": {\n "items": {\n "oneOf": [\n {\n "additionalProperties": false,\n "properties": {\n "address": {\n "type": "string"\n },\n "calls": {\n "items": {\n "type": "string"\n },\n "type": "array"\n },\n "status": {\n "const": "ok",\n "type": "string"\n }\n },\n "required": [\n "address",\n "status",\n "calls"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "address": {\n "type": "string"\n },\n "error": {\n "oneOf": [\n {\n "additionalProperties": false,\n "properties": {\n "category": {\n "enum": [\n "invalid_input",\n "unsupported_provider",\n "integrity_mismatch",\n "truncated",\n "cancelled",\n "timeout",\n "unavailable",\n "execution_failure"\n ],\n "type": "string"\n },\n "code": {\n "const": "invalid_request",\n "type": "string"\n },\n "details": {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n },\n "message": {\n "minLength": 1,\n "type": "string"\n },\n "remediation": {\n "additionalProperties": false,\n "properties": {\n "action": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "action"\n ],\n "type": "object"\n },\n "retryable": {\n "type": "boolean"\n }\n },\n "required": [\n "code",\n "category",\n "message",\n "retryable",\n "remediation"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "category": {\n "enum": [\n "invalid_input",\n "unsupported_provider",\n "integrity_mismatch",\n "truncated",\n "cancelled",\n "timeout",\n "unavailable",\n "execution_failure"\n ],\n "type": "string"\n },\n "code": {\n "const": "unreadable_output",\n "type": "string"\n },\n "details": {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n },\n "message": {\n "minLength": 1,\n "type": "string"\n },\n "remediation": {\n "additionalProperties": false,\n "properties": {\n "action": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "action"\n ],\n "type": "object"\n },\n "retryable": {\n "type": "boolean"\n }\n },\n "required": [\n "code",\n "category",\n "message",\n "retryable",\n "remediation"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "category": {\n "enum": [\n "invalid_input",\n "unsupported_provider",\n "integrity_mismatch",\n "truncated",\n "cancelled",\n "timeout",\n "unavailable",\n "execution_failure"\n ],\n "type": "string"\n },\n "code": {\n "const": "capability_unavailable",\n "type": "string"\n },\n "details": {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n },\n "message": {\n "minLength": 1,\n "type": "string"\n },\n "remediation": {\n "additionalProperties": false,\n "properties": {\n "action": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "action"\n ],\n "type": "object"\n },\n "retryable": {\n "type": "boolean"\n }\n },\n "required": [\n "code",\n "category",\n "message",\n "retryable",\n "remediation"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "category": {\n "enum": [\n "invalid_input",\n "unsupported_provider",\n "integrity_mismatch",\n "truncated",\n "cancelled",\n "timeout",\n "unavailable",\n "execution_failure"\n ],\n "type": "string"\n },\n "code": {\n "const": "provider_unavailable",\n "type": "string"\n },\n "details": {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n },\n "message": {\n "minLength": 1,\n "type": "string"\n },\n "remediation": {\n "additionalProperties": false,\n "properties": {\n "action": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "action"\n ],\n "type": "object"\n },\n "retryable": {\n "type": "boolean"\n }\n },\n "required": [\n "code",\n "category",\n "message",\n "retryable",\n "remediation"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "category": {\n "enum": [\n "invalid_input",\n "unsupported_provider",\n "integrity_mismatch",\n "truncated",\n "cancelled",\n "timeout",\n "unavailable",\n "execution_failure"\n ],\n "type": "string"\n },\n "code": {\n "const": "provider_timeout",\n "type": "string"\n },\n "details": {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n },\n "message": {\n "minLength": 1,\n "type": "string"\n },\n "remediation": {\n "additionalProperties": false,\n "properties": {\n "action": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "action"\n ],\n "type": "object"\n },\n "retryable": {\n "type": "boolean"\n }\n },\n "required": [\n "code",\n "category",\n "message",\n "retryable",\n "remediation"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "category": {\n "enum": [\n "invalid_input",\n "unsupported_provider",\n "integrity_mismatch",\n "truncated",\n "cancelled",\n "timeout",\n "unavailable",\n "execution_failure"\n ],\n "type": "string"\n },\n "code": {\n "const": "cancelled",\n "type": "string"\n },\n "details": {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n },\n "message": {\n "minLength": 1,\n "type": "string"\n },\n "remediation": {\n "additionalProperties": false,\n "properties": {\n "action": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "action"\n ],\n "type": "object"\n },\n "retryable": {\n "type": "boolean"\n }\n },\n "required": [\n "code",\n "category",\n "message",\n "retryable",\n "remediation"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "category": {\n "enum": [\n "invalid_input",\n "unsupported_provider",\n "integrity_mismatch",\n "truncated",\n "cancelled",\n "timeout",\n "unavailable",\n "execution_failure"\n ],\n "type": "string"\n },\n "code": {\n "const": "artifact_integrity_mismatch",\n "type": "string"\n },\n "details": {\n "additionalProperties": false,\n "properties": {\n "calculated_sha256": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "declared_sha256": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "logical_path": {\n "type": "string"\n },\n "unpacked": {\n "type": "boolean"\n }\n },\n "required": [\n "logical_path",\n "declared_sha256",\n "calculated_sha256",\n "unpacked"\n ],\n "type": "object"\n },\n "message": {\n "minLength": 1,\n "type": "string"\n },\n "remediation": {\n "additionalProperties": false,\n "properties": {\n "action": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "action"\n ],\n "type": "object"\n },\n "retryable": {\n "type": "boolean"\n }\n },\n "required": [\n "code",\n "category",\n "message",\n "retryable",\n "remediation",\n "details"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "category": {\n "enum": [\n "invalid_input",\n "unsupported_provider",\n "integrity_mismatch",\n "truncated",\n "cancelled",\n "timeout",\n "unavailable",\n "execution_failure"\n ],\n "type": "string"\n },\n "code": {\n "const": "artifact_operation_failed",\n "type": "string"\n },\n "details": {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n },\n "message": {\n "minLength": 1,\n "type": "string"\n },\n "remediation": {\n "additionalProperties": false,\n "properties": {\n "action": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "action"\n ],\n "type": "object"\n },\n "retryable": {\n "type": "boolean"\n }\n },\n "required": [\n "code",\n "category",\n "message",\n "retryable",\n "remediation"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "category": {\n "enum": [\n "invalid_input",\n "unsupported_provider",\n "integrity_mismatch",\n "truncated",\n "cancelled",\n "timeout",\n "unavailable",\n "execution_failure"\n ],\n "type": "string"\n },\n "code": {\n "const": "evidence_integrity_mismatch",\n "type": "string"\n },\n "details": {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n },\n "message": {\n "minLength": 1,\n "type": "string"\n },\n "remediation": {\n "additionalProperties": false,\n "properties": {\n "action": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "action"\n ],\n "type": "object"\n },\n "retryable": {\n "type": "boolean"\n }\n },\n "required": [\n "code",\n "category",\n "message",\n "retryable",\n "remediation"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "category": {\n "enum": [\n "invalid_input",\n "unsupported_provider",\n "integrity_mismatch",\n "truncated",\n "cancelled",\n "timeout",\n "unavailable",\n "execution_failure"\n ],\n "type": "string"\n },\n "code": {\n "const": "truncated",\n "type": "string"\n },\n "details": {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n },\n "message": {\n "minLength": 1,\n "type": "string"\n },\n "remediation": {\n "additionalProperties": false,\n "properties": {\n "action": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "action"\n ],\n "type": "object"\n },\n "retryable": {\n "type": "boolean"\n }\n },\n "required": [\n "code",\n "category",\n "message",\n "retryable",\n "remediation"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "category": {\n "enum": [\n "invalid_input",\n "unsupported_provider",\n "integrity_mismatch",\n "truncated",\n "cancelled",\n "timeout",\n "unavailable",\n "execution_failure"\n ],\n "type": "string"\n },\n "code": {\n "const": "process_capture_failed",\n "type": "string"\n },\n "details": {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n },\n "message": {\n "minLength": 1,\n "type": "string"\n },\n "remediation": {\n "additionalProperties": false,\n "properties": {\n "action": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "action"\n ],\n "type": "object"\n },\n "retryable": {\n "type": "boolean"\n }\n },\n "required": [\n "code",\n "category",\n "message",\n "retryable",\n "remediation"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "category": {\n "enum": [\n "invalid_input",\n "unsupported_provider",\n "integrity_mismatch",\n "truncated",\n "cancelled",\n "timeout",\n "unavailable",\n "execution_failure"\n ],\n "type": "string"\n },\n "code": {\n "const": "cleanup_incomplete",\n "type": "string"\n },\n "details": {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n },\n "message": {\n "minLength": 1,\n "type": "string"\n },\n "remediation": {\n "additionalProperties": false,\n "properties": {\n "action": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "action"\n ],\n "type": "object"\n },\n "retryable": {\n "type": "boolean"\n }\n },\n "required": [\n "code",\n "category",\n "message",\n "retryable",\n "remediation"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "category": {\n "enum": [\n "invalid_input",\n "unsupported_provider",\n "integrity_mismatch",\n "truncated",\n "cancelled",\n "timeout",\n "unavailable",\n "execution_failure"\n ],\n "type": "string"\n },\n "code": {\n "const": "revision_conflict",\n "type": "string"\n },\n "details": {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n },\n "message": {\n "minLength": 1,\n "type": "string"\n },\n "remediation": {\n "additionalProperties": false,\n "properties": {\n "action": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "action"\n ],\n "type": "object"\n },\n "retryable": {\n "type": "boolean"\n }\n },\n "required": [\n "code",\n "category",\n "message",\n "retryable",\n "remediation"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "category": {\n "enum": [\n "invalid_input",\n "unsupported_provider",\n "integrity_mismatch",\n "truncated",\n "cancelled",\n "timeout",\n "unavailable",\n "execution_failure"\n ],\n "type": "string"\n },\n "code": {\n "const": "configuration_invalid",\n "type": "string"\n },\n "details": {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n },\n "message": {\n "minLength": 1,\n "type": "string"\n },\n "remediation": {\n "additionalProperties": false,\n "properties": {\n "action": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "action"\n ],\n "type": "object"\n },\n "retryable": {\n "type": "boolean"\n }\n },\n "required": [\n "code",\n "category",\n "message",\n "retryable",\n "remediation"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "category": {\n "enum": [\n "invalid_input",\n "unsupported_provider",\n "integrity_mismatch",\n "truncated",\n "cancelled",\n "timeout",\n "unavailable",\n "execution_failure"\n ],\n "type": "string"\n },\n "code": {\n "const": "target_unavailable",\n "type": "string"\n },\n "details": {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n },\n "message": {\n "minLength": 1,\n "type": "string"\n },\n "remediation": {\n "additionalProperties": false,\n "properties": {\n "action": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "action"\n ],\n "type": "object"\n },\n "retryable": {\n "type": "boolean"\n }\n },\n "required": [\n "code",\n "category",\n "message",\n "retryable",\n "remediation"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "category": {\n "enum": [\n "invalid_input",\n "unsupported_provider",\n "integrity_mismatch",\n "truncated",\n "cancelled",\n "timeout",\n "unavailable",\n "execution_failure"\n ],\n "type": "string"\n },\n "code": {\n "const": "execution_failure",\n "type": "string"\n },\n "details": {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n },\n "message": {\n "minLength": 1,\n "type": "string"\n },\n "remediation": {\n "additionalProperties": false,\n "properties": {\n "action": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "action"\n ],\n "type": "object"\n },\n "retryable": {\n "type": "boolean"\n }\n },\n "required": [\n "code",\n "category",\n "message",\n "retryable",\n "remediation"\n ],\n "type": "object"\n }\n ]\n },\n "status": {\n "const": "error",\n "type": "string"\n }\n },\n "required": [\n "address",\n "status",\n "error"\n ],\n "type": "object"\n }\n ]\n },\n "type": "array"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n }\n },\n "required": [\n "result",\n "evidence_id",\n "evidence"\n ],\n "type": "object"\n },\n "requiresSession": false,\n "title": "Get Call Graph"\n },\n {\n "analysisOperation": "analyze_swift_types",\n "annotations": {\n "destructiveHint": false,\n "idempotentHint": true,\n "openWorldHint": false,\n "readOnlyHint": false\n },\n "description": "Categorize analyzed procedure names into Swift classes, structs, enums, protocols, extensions, and other symbols. Returns deduplicated names grouped with counts. Optionally select one category and/or apply a case-sensitive literal name filter; for example, use {category: \\"classes\\", pattern: \\"Account\\"} to find matching class symbols.",\n "effects": {\n "accessesNetwork": false,\n "changesUiState": false,\n "idempotent": true,\n "launchesProcess": false,\n "mayDiscardData": false,\n "mutatesSession": true,\n "mutatesTarget": false,\n "writesFilesystem": false\n },\n "inputSchema": {\n "$schema": "https://json-schema.org/draft/2020-12/schema",\n "additionalProperties": false,\n "examples": [\n {\n "category": "classes",\n "pattern": "Account"\n }\n ],\n "properties": {\n "category": {\n "description": "Limit results to one Swift symbol category.",\n "enum": [\n "classes",\n "structs",\n "enums",\n "protocols",\n "extensions",\n "other"\n ],\n "type": "string"\n },\n "pattern": {\n "description": "Case-sensitive literal filter applied to mangled symbol names.",\n "type": "string"\n }\n },\n "type": "object"\n },\n "kind": "enhanced",\n "name": "analyze_swift_types",\n "outputSchema": {\n "$defs": {\n "__schema0": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "number"\n },\n {\n "type": "boolean"\n },\n {\n "type": "null"\n },\n {\n "items": {\n "$ref": "#/$defs/__schema0"\n },\n "type": "array"\n },\n {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n }\n ]\n }\n },\n "$schema": "https://json-schema.org/draft/2020-12/schema",\n "additionalProperties": false,\n "properties": {\n "evidence": {\n "additionalProperties": false,\n "properties": {\n "analysis_profile": {\n "additionalProperties": false,\n "properties": {\n "digest": {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n },\n "parameters": {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n },\n "provider": {\n "additionalProperties": false,\n "properties": {\n "id": {\n "minLength": 1,\n "type": "string"\n },\n "name": {\n "minLength": 1,\n "type": "string"\n },\n "version": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "id",\n "name",\n "version"\n ],\n "type": "object"\n }\n },\n "required": [\n "provider",\n "parameters",\n "digest"\n ],\n "type": "object"\n },\n "authority": {\n "enum": [\n "shipped-artifact",\n "controlled-replay",\n "historical-reference",\n "external-service",\n "analyst-inference"\n ],\n "type": "string"\n },\n "confidence": {\n "enum": [\n "observed",\n "derived",\n "inferred"\n ],\n "type": "string"\n },\n "environment": {\n "anyOf": [\n {\n "additionalProperties": false,\n "properties": {\n "architecture": {\n "minLength": 1,\n "type": "string"\n },\n "id": {\n "minLength": 1,\n "type": "string"\n },\n "isolation": {\n "enum": [\n "none",\n "process",\n "container",\n "virtual-machine"\n ],\n "type": "string"\n },\n "platform": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "id",\n "platform",\n "architecture",\n "isolation"\n ],\n "type": "object"\n },\n {\n "type": "null"\n }\n ]\n },\n "evidence_id": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "evidence_links": {\n "items": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "type": "array"\n },\n "limitations": {\n "items": {\n "type": "string"\n },\n "type": "array"\n },\n "locations": {\n "items": {\n "oneOf": [\n {\n "additionalProperties": false,\n "properties": {\n "address": {\n "minLength": 1,\n "type": "string"\n },\n "kind": {\n "const": "address",\n "type": "string"\n }\n },\n "required": [\n "kind",\n "address"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "end": {\n "minLength": 1,\n "type": "string"\n },\n "kind": {\n "const": "address-range",\n "type": "string"\n },\n "start": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "kind",\n "start",\n "end"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "kind": {\n "const": "artifact-path",\n "type": "string"\n },\n "path": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "kind",\n "path"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "kind": {\n "const": "file-offset",\n "type": "string"\n },\n "offset": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "kind",\n "offset"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "end": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "kind": {\n "const": "file-offset-range",\n "type": "string"\n },\n "start": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "kind",\n "start",\n "end"\n ],\n "type": "object"\n }\n ]\n },\n "type": "array"\n },\n "normalized_result": {\n "$ref": "#/$defs/__schema0"\n },\n "operation": {\n "minLength": 1,\n "type": "string"\n },\n "parameters": {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n },\n "predicate_type": {\n "minLength": 1,\n "type": "string"\n },\n "provider": {\n "additionalProperties": false,\n "properties": {\n "id": {\n "minLength": 1,\n "type": "string"\n },\n "name": {\n "minLength": 1,\n "type": "string"\n },\n "version": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "id",\n "name",\n "version"\n ],\n "type": "object"\n },\n "raw_result": {\n "anyOf": [\n {\n "$ref": "#/$defs/__schema0"\n },\n {\n "type": "null"\n }\n ]\n },\n "subject": {\n "anyOf": [\n {\n "additionalProperties": false,\n "properties": {\n "architecture": {\n "anyOf": [\n {\n "enum": [\n "x86",\n "x86_64",\n "arm",\n "arm64"\n ],\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "digest": {\n "additionalProperties": false,\n "properties": {\n "sha256": {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n }\n },\n "required": [\n "sha256"\n ],\n "type": "object"\n },\n "format": {\n "enum": [\n "hopper",\n "analysis-database",\n "mach-o",\n "elf",\n "pe",\n "dos-mz",\n "dos-com",\n "zip",\n "ipa",\n "apk",\n "msix",\n "appx",\n "asar",\n "dmg",\n "pkg",\n "plist",\n "javascript",\n "source-map",\n "directory",\n "file",\n "unknown",\n "mach-o-universal",\n "javascript-bundle",\n "entitlements"\n ],\n "type": "string"\n },\n "local_path": {\n "type": "string"\n },\n "name": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "name",\n "digest",\n "format",\n "architecture",\n "local_path"\n ],\n "type": "object"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "evidence_id",\n "subject",\n "provider",\n "predicate_type",\n "operation",\n "parameters",\n "raw_result",\n "normalized_result",\n "confidence",\n "authority",\n "environment",\n "limitations",\n "locations",\n "evidence_links"\n ],\n "type": "object"\n },\n "evidence_id": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "result": {\n "additionalProperties": false,\n "properties": {\n "categories": {\n "additionalProperties": {\n "additionalProperties": false,\n "properties": {\n "count": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "items": {\n "items": {\n "additionalProperties": false,\n "properties": {\n "address": {\n "type": "string"\n },\n "name": {\n "type": "string"\n }\n },\n "required": [\n "address",\n "name"\n ],\n "type": "object"\n },\n "type": "array"\n }\n },\n "required": [\n "count",\n "items"\n ],\n "type": "object"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n },\n "total": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "total",\n "categories"\n ],\n "type": "object"\n }\n },\n "required": [\n "result",\n "evidence_id",\n "evidence"\n ],\n "type": "object"\n },\n "requiresSession": false,\n "title": "Analyze Swift Types"\n },\n {\n "analysisOperation": "find_xrefs_to_name",\n "annotations": {\n "destructiveHint": false,\n "idempotentHint": true,\n "openWorldHint": false,\n "readOnlyHint": false\n },\n "description": "Resolve an exact name against the bound provider\'s name inventory and return a resolved or unresolved result. Unresolved names use the stable name_not_found reason; this xref workflow returns address-only projections.",\n "effects": {\n "accessesNetwork": false,\n "changesUiState": false,\n "idempotent": true,\n "launchesProcess": false,\n "mayDiscardData": false,\n "mutatesSession": true,\n "mutatesTarget": false,\n "writesFilesystem": false\n },\n "inputSchema": {\n "$schema": "https://json-schema.org/draft/2020-12/schema",\n "additionalProperties": false,\n "examples": [\n {\n "name": "malloc"\n }\n ],\n "properties": {\n "name": {\n "description": "Exact name used by this operation.",\n "type": "string"\n }\n },\n "required": [\n "name"\n ],\n "type": "object"\n },\n "kind": "enhanced",\n "name": "find_xrefs_to_name",\n "outputSchema": {\n "$defs": {\n "__schema0": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "number"\n },\n {\n "type": "boolean"\n },\n {\n "type": "null"\n },\n {\n "items": {\n "$ref": "#/$defs/__schema0"\n },\n "type": "array"\n },\n {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n }\n ]\n }\n },\n "$schema": "https://json-schema.org/draft/2020-12/schema",\n "additionalProperties": false,\n "properties": {\n "evidence": {\n "additionalProperties": false,\n "properties": {\n "analysis_profile": {\n "additionalProperties": false,\n "properties": {\n "digest": {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n },\n "parameters": {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n },\n "provider": {\n "additionalProperties": false,\n "properties": {\n "id": {\n "minLength": 1,\n "type": "string"\n },\n "name": {\n "minLength": 1,\n "type": "string"\n },\n "version": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "id",\n "name",\n "version"\n ],\n "type": "object"\n }\n },\n "required": [\n "provider",\n "parameters",\n "digest"\n ],\n "type": "object"\n },\n "authority": {\n "enum": [\n "shipped-artifact",\n "controlled-replay",\n "historical-reference",\n "external-service",\n "analyst-inference"\n ],\n "type": "string"\n },\n "confidence": {\n "enum": [\n "observed",\n "derived",\n "inferred"\n ],\n "type": "string"\n },\n "environment": {\n "anyOf": [\n {\n "additionalProperties": false,\n "properties": {\n "architecture": {\n "minLength": 1,\n "type": "string"\n },\n "id": {\n "minLength": 1,\n "type": "string"\n },\n "isolation": {\n "enum": [\n "none",\n "process",\n "container",\n "virtual-machine"\n ],\n "type": "string"\n },\n "platform": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "id",\n "platform",\n "architecture",\n "isolation"\n ],\n "type": "object"\n },\n {\n "type": "null"\n }\n ]\n },\n "evidence_id": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "evidence_links": {\n "items": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "type": "array"\n },\n "limitations": {\n "items": {\n "type": "string"\n },\n "type": "array"\n },\n "locations": {\n "items": {\n "oneOf": [\n {\n "additionalProperties": false,\n "properties": {\n "address": {\n "minLength": 1,\n "type": "string"\n },\n "kind": {\n "const": "address",\n "type": "string"\n }\n },\n "required": [\n "kind",\n "address"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "end": {\n "minLength": 1,\n "type": "string"\n },\n "kind": {\n "const": "address-range",\n "type": "string"\n },\n "start": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "kind",\n "start",\n "end"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "kind": {\n "const": "artifact-path",\n "type": "string"\n },\n "path": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "kind",\n "path"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "kind": {\n "const": "file-offset",\n "type": "string"\n },\n "offset": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "kind",\n "offset"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "end": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "kind": {\n "const": "file-offset-range",\n "type": "string"\n },\n "start": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "kind",\n "start",\n "end"\n ],\n "type": "object"\n }\n ]\n },\n "type": "array"\n },\n "normalized_result": {\n "$ref": "#/$defs/__schema0"\n },\n "operation": {\n "minLength": 1,\n "type": "string"\n },\n "parameters": {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n },\n "predicate_type": {\n "minLength": 1,\n "type": "string"\n },\n "provider": {\n "additionalProperties": false,\n "properties": {\n "id": {\n "minLength": 1,\n "type": "string"\n },\n "name": {\n "minLength": 1,\n "type": "string"\n },\n "version": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "id",\n "name",\n "version"\n ],\n "type": "object"\n },\n "raw_result": {\n "anyOf": [\n {\n "$ref": "#/$defs/__schema0"\n },\n {\n "type": "null"\n }\n ]\n },\n "subject": {\n "anyOf": [\n {\n "additionalProperties": false,\n "properties": {\n "architecture": {\n "anyOf": [\n {\n "enum": [\n "x86",\n "x86_64",\n "arm",\n "arm64"\n ],\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "digest": {\n "additionalProperties": false,\n "properties": {\n "sha256": {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n }\n },\n "required": [\n "sha256"\n ],\n "type": "object"\n },\n "format": {\n "enum": [\n "hopper",\n "analysis-database",\n "mach-o",\n "elf",\n "pe",\n "dos-mz",\n "dos-com",\n "zip",\n "ipa",\n "apk",\n "msix",\n "appx",\n "asar",\n "dmg",\n "pkg",\n "plist",\n "javascript",\n "source-map",\n "directory",\n "file",\n "unknown",\n "mach-o-universal",\n "javascript-bundle",\n "entitlements"\n ],\n "type": "string"\n },\n "local_path": {\n "type": "string"\n },\n "name": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "name",\n "digest",\n "format",\n "architecture",\n "local_path"\n ],\n "type": "object"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "evidence_id",\n "subject",\n "provider",\n "predicate_type",\n "operation",\n "parameters",\n "raw_result",\n "normalized_result",\n "confidence",\n "authority",\n "environment",\n "limitations",\n "locations",\n "evidence_links"\n ],\n "type": "object"\n },\n "evidence_id": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "result": {\n "oneOf": [\n {\n "additionalProperties": false,\n "properties": {\n "address": {\n "type": "string"\n },\n "name": {\n "type": "string"\n },\n "status": {\n "const": "resolved",\n "type": "string"\n },\n "xrefs": {\n "items": {\n "type": "string"\n },\n "type": "array"\n }\n },\n "required": [\n "status",\n "name",\n "address",\n "xrefs"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "name": {\n "type": "string"\n },\n "reason": {\n "const": "name_not_found",\n "type": "string"\n },\n "status": {\n "const": "unresolved",\n "type": "string"\n }\n },\n "required": [\n "status",\n "name",\n "reason"\n ],\n "type": "object"\n }\n ]\n }\n },\n "required": [\n "result",\n "evidence_id",\n "evidence"\n ],\n "type": "object"\n },\n "requiresSession": false,\n "title": "Find Xrefs To Name"\n },\n {\n "analysisOperation": "binary_overview",\n "annotations": {\n "destructiveHint": false,\n "idempotentHint": true,\n "openWorldHint": false,\n "readOnlyHint": false\n },\n "description": "Return native-binary metadata, every segment with its length, and exhaustive procedure/string counts. Use search_procedures, list_procedures, or analyze_function directly when you already know which procedure to inspect.",\n "effects": {\n "accessesNetwork": false,\n "changesUiState": false,\n "idempotent": true,\n "launchesProcess": false,\n "mayDiscardData": false,\n "mutatesSession": true,\n "mutatesTarget": false,\n "writesFilesystem": false\n },\n "inputSchema": {\n "$schema": "https://json-schema.org/draft/2020-12/schema",\n "additionalProperties": false,\n "examples": [\n {}\n ],\n "properties": {},\n "type": "object"\n },\n "kind": "enhanced",\n "name": "binary_overview",\n "outputSchema": {\n "$defs": {\n "__schema0": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "number"\n },\n {\n "type": "boolean"\n },\n {\n "type": "null"\n },\n {\n "items": {\n "$ref": "#/$defs/__schema0"\n },\n "type": "array"\n },\n {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n }\n ]\n }\n },\n "$schema": "https://json-schema.org/draft/2020-12/schema",\n "additionalProperties": false,\n "properties": {\n "evidence": {\n "additionalProperties": false,\n "properties": {\n "analysis_profile": {\n "additionalProperties": false,\n "properties": {\n "digest": {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n },\n "parameters": {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n },\n "provider": {\n "additionalProperties": false,\n "properties": {\n "id": {\n "minLength": 1,\n "type": "string"\n },\n "name": {\n "minLength": 1,\n "type": "string"\n },\n "version": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "id",\n "name",\n "version"\n ],\n "type": "object"\n }\n },\n "required": [\n "provider",\n "parameters",\n "digest"\n ],\n "type": "object"\n },\n "authority": {\n "enum": [\n "shipped-artifact",\n "controlled-replay",\n "historical-reference",\n "external-service",\n "analyst-inference"\n ],\n "type": "string"\n },\n "confidence": {\n "enum": [\n "observed",\n "derived",\n "inferred"\n ],\n "type": "string"\n },\n "environment": {\n "anyOf": [\n {\n "additionalProperties": false,\n "properties": {\n "architecture": {\n "minLength": 1,\n "type": "string"\n },\n "id": {\n "minLength": 1,\n "type": "string"\n },\n "isolation": {\n "enum": [\n "none",\n "process",\n "container",\n "virtual-machine"\n ],\n "type": "string"\n },\n "platform": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "id",\n "platform",\n "architecture",\n "isolation"\n ],\n "type": "object"\n },\n {\n "type": "null"\n }\n ]\n },\n "evidence_id": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "evidence_links": {\n "items": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "type": "array"\n },\n "limitations": {\n "items": {\n "type": "string"\n },\n "type": "array"\n },\n "locations": {\n "items": {\n "oneOf": [\n {\n "additionalProperties": false,\n "properties": {\n "address": {\n "minLength": 1,\n "type": "string"\n },\n "kind": {\n "const": "address",\n "type": "string"\n }\n },\n "required": [\n "kind",\n "address"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "end": {\n "minLength": 1,\n "type": "string"\n },\n "kind": {\n "const": "address-range",\n "type": "string"\n },\n "start": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "kind",\n "start",\n "end"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "kind": {\n "const": "artifact-path",\n "type": "string"\n },\n "path": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "kind",\n "path"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "kind": {\n "const": "file-offset",\n "type": "string"\n },\n "offset": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "kind",\n "offset"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "end": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "kind": {\n "const": "file-offset-range",\n "type": "string"\n },\n "start": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "kind",\n "start",\n "end"\n ],\n "type": "object"\n }\n ]\n },\n "type": "array"\n },\n "normalized_result": {\n "$ref": "#/$defs/__schema0"\n },\n "operation": {\n "minLength": 1,\n "type": "string"\n },\n "parameters": {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n },\n "predicate_type": {\n "minLength": 1,\n "type": "string"\n },\n "provider": {\n "additionalProperties": false,\n "properties": {\n "id": {\n "minLength": 1,\n "type": "string"\n },\n "name": {\n "minLength": 1,\n "type": "string"\n },\n "version": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "id",\n "name",\n "version"\n ],\n "type": "object"\n },\n "raw_result": {\n "anyOf": [\n {\n "$ref": "#/$defs/__schema0"\n },\n {\n "type": "null"\n }\n ]\n },\n "subject": {\n "anyOf": [\n {\n "additionalProperties": false,\n "properties": {\n "architecture": {\n "anyOf": [\n {\n "enum": [\n "x86",\n "x86_64",\n "arm",\n "arm64"\n ],\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "digest": {\n "additionalProperties": false,\n "properties": {\n "sha256": {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n }\n },\n "required": [\n "sha256"\n ],\n "type": "object"\n },\n "format": {\n "enum": [\n "hopper",\n "analysis-database",\n "mach-o",\n "elf",\n "pe",\n "dos-mz",\n "dos-com",\n "zip",\n "ipa",\n "apk",\n "msix",\n "appx",\n "asar",\n "dmg",\n "pkg",\n "plist",\n "javascript",\n "source-map",\n "directory",\n "file",\n "unknown",\n "mach-o-universal",\n "javascript-bundle",\n "entitlements"\n ],\n "type": "string"\n },\n "local_path": {\n "type": "string"\n },\n "name": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "name",\n "digest",\n "format",\n "architecture",\n "local_path"\n ],\n "type": "object"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "evidence_id",\n "subject",\n "provider",\n "predicate_type",\n "operation",\n "parameters",\n "raw_result",\n "normalized_result",\n "confidence",\n "authority",\n "environment",\n "limitations",\n "locations",\n "evidence_links"\n ],\n "type": "object"\n },\n "evidence_id": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "result": {\n "additionalProperties": false,\n "properties": {\n "document": {\n "type": "string"\n },\n "procedure_count": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "segment_count": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "segments": {\n "items": {\n "additionalProperties": false,\n "properties": {\n "end": {\n "type": "string"\n },\n "length": {\n "minimum": 0,\n "type": "number"\n },\n "name": {\n "type": "string"\n },\n "start": {\n "type": "string"\n }\n },\n "required": [\n "name",\n "start",\n "end",\n "length"\n ],\n "type": "object"\n },\n "type": "array"\n },\n "string_count": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "document",\n "segments",\n "segment_count",\n "procedure_count",\n "string_count"\n ],\n "type": "object"\n }\n },\n "required": [\n "result",\n "evidence_id",\n "evidence"\n ],\n "type": "object"\n },\n "requiresSession": false,\n "title": "Binary Overview"\n },\n {\n "analysisOperation": "analyze_function",\n "annotations": {\n "destructiveHint": false,\n "idempotentHint": true,\n "openWorldHint": false,\n "readOnlyHint": false\n },\n "description": "Build a dossier for one native function identified by symbol or provider-returned address. Returns identity with complete inclusive body ranges or explicit unknown, provider-specific pseudocode and assembly, comments, calls, references, referenced strings/names, local CFG blocks, and available native API boundary observations.",\n "effects": {\n "accessesNetwork": false,\n "changesUiState": false,\n "idempotent": true,\n "launchesProcess": false,\n "mayDiscardData": false,\n "mutatesSession": true,\n "mutatesTarget": false,\n "writesFilesystem": false\n },\n "inputSchema": {\n "$schema": "https://json-schema.org/draft/2020-12/schema",\n "additionalProperties": false,\n "examples": [\n {\n "procedure": "main"\n }\n ],\n "properties": {\n "procedure": {\n "description": "A procedure name or address",\n "type": "string"\n }\n },\n "required": [\n "procedure"\n ],\n "type": "object"\n },\n "kind": "enhanced",\n "name": "analyze_function",\n "outputSchema": {\n "$defs": {\n "__schema0": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "number"\n },\n {\n "type": "boolean"\n },\n {\n "type": "null"\n },\n {\n "items": {\n "$ref": "#/$defs/__schema0"\n },\n "type": "array"\n },\n {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n }\n ]\n }\n },\n "$schema": "https://json-schema.org/draft/2020-12/schema",\n "additionalProperties": false,\n "properties": {\n "evidence": {\n "additionalProperties": false,\n "properties": {\n "analysis_profile": {\n "additionalProperties": false,\n "properties": {\n "digest": {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n },\n "parameters": {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n },\n "provider": {\n "additionalProperties": false,\n "properties": {\n "id": {\n "minLength": 1,\n "type": "string"\n },\n "name": {\n "minLength": 1,\n "type": "string"\n },\n "version": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "id",\n "name",\n "version"\n ],\n "type": "object"\n }\n },\n "required": [\n "provider",\n "parameters",\n "digest"\n ],\n "type": "object"\n },\n "authority": {\n "enum": [\n "shipped-artifact",\n "controlled-replay",\n "historical-reference",\n "external-service",\n "analyst-inference"\n ],\n "type": "string"\n },\n "confidence": {\n "enum": [\n "observed",\n "derived",\n "inferred"\n ],\n "type": "string"\n },\n "environment": {\n "anyOf": [\n {\n "additionalProperties": false,\n "properties": {\n "architecture": {\n "minLength": 1,\n "type": "string"\n },\n "id": {\n "minLength": 1,\n "type": "string"\n },\n "isolation": {\n "enum": [\n "none",\n "process",\n "container",\n "virtual-machine"\n ],\n "type": "string"\n },\n "platform": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "id",\n "platform",\n "architecture",\n "isolation"\n ],\n "type": "object"\n },\n {\n "type": "null"\n }\n ]\n },\n "evidence_id": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "evidence_links": {\n "items": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "type": "array"\n },\n "limitations": {\n "items": {\n "type": "string"\n },\n "type": "array"\n },\n "locations": {\n "items": {\n "oneOf": [\n {\n "additionalProperties": false,\n "properties": {\n "address": {\n "minLength": 1,\n "type": "string"\n },\n "kind": {\n "const": "address",\n "type": "string"\n }\n },\n "required": [\n "kind",\n "address"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "end": {\n "minLength": 1,\n "type": "string"\n },\n "kind": {\n "const": "address-range",\n "type": "string"\n },\n "start": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "kind",\n "start",\n "end"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "kind": {\n "const": "artifact-path",\n "type": "string"\n },\n "path": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "kind",\n "path"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "kind": {\n "const": "file-offset",\n "type": "string"\n },\n "offset": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "kind",\n "offset"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "end": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "kind": {\n "const": "file-offset-range",\n "type": "string"\n },\n "start": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "kind",\n "start",\n "end"\n ],\n "type": "object"\n }\n ]\n },\n "type": "array"\n },\n "normalized_result": {\n "$ref": "#/$defs/__schema0"\n },\n "operation": {\n "minLength": 1,\n "type": "string"\n },\n "parameters": {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n },\n "predicate_type": {\n "minLength": 1,\n "type": "string"\n },\n "provider": {\n "additionalProperties": false,\n "properties": {\n "id": {\n "minLength": 1,\n "type": "string"\n },\n "name": {\n "minLength": 1,\n "type": "string"\n },\n "version": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "id",\n "name",\n "version"\n ],\n "type": "object"\n },\n "raw_result": {\n "anyOf": [\n {\n "$ref": "#/$defs/__schema0"\n },\n {\n "type": "null"\n }\n ]\n },\n "subject": {\n "anyOf": [\n {\n "additionalProperties": false,\n "properties": {\n "architecture": {\n "anyOf": [\n {\n "enum": [\n "x86",\n "x86_64",\n "arm",\n "arm64"\n ],\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "digest": {\n "additionalProperties": false,\n "properties": {\n "sha256": {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n }\n },\n "required": [\n "sha256"\n ],\n "type": "object"\n },\n "format": {\n "enum": [\n "hopper",\n "analysis-database",\n "mach-o",\n "elf",\n "pe",\n "dos-mz",\n "dos-com",\n "zip",\n "ipa",\n "apk",\n "msix",\n "appx",\n "asar",\n "dmg",\n "pkg",\n "plist",\n "javascript",\n "source-map",\n "directory",\n "file",\n "unknown",\n "mach-o-universal",\n "javascript-bundle",\n "entitlements"\n ],\n "type": "string"\n },\n "local_path": {\n "type": "string"\n },\n "name": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "name",\n "digest",\n "format",\n "architecture",\n "local_path"\n ],\n "type": "object"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "evidence_id",\n "subject",\n "provider",\n "predicate_type",\n "operation",\n "parameters",\n "raw_result",\n "normalized_result",\n "confidence",\n "authority",\n "environment",\n "limitations",\n "locations",\n "evidence_links"\n ],\n "type": "object"\n },\n "evidence_id": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "result": {\n "additionalProperties": false,\n "properties": {\n "assembly": {\n "items": {\n "type": "string"\n },\n "type": "array"\n },\n "basic_blocks": {\n "items": {\n "additionalProperties": false,\n "properties": {\n "end": {\n "type": "string"\n },\n "start": {\n "type": "string"\n },\n "successors": {\n "items": {\n "type": "string"\n },\n "type": "array"\n }\n },\n "required": [\n "start",\n "end",\n "successors"\n ],\n "type": "object"\n },\n "type": "array"\n },\n "callees": {\n "items": {\n "additionalProperties": false,\n "properties": {\n "address": {\n "type": "string"\n },\n "body": {\n "default": {\n "available": false,\n "reason": "The provider did not report complete function body ranges."\n },\n "oneOf": [\n {\n "additionalProperties": false,\n "properties": {\n "available": {\n "const": false,\n "type": "boolean"\n },\n "reason": {\n "type": "string"\n }\n },\n "required": [\n "available",\n "reason"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "available": {\n "const": true,\n "type": "boolean"\n },\n "contains_entry": {\n "type": "boolean"\n },\n "non_contiguous": {\n "type": "boolean"\n },\n "provenance": {\n "minLength": 1,\n "type": "string"\n },\n "ranges": {\n "items": {\n "additionalProperties": false,\n "properties": {\n "end": {\n "description": "Inclusive last address of this observed body range.",\n "type": "string"\n },\n "start": {\n "type": "string"\n }\n },\n "required": [\n "start",\n "end"\n ],\n "type": "object"\n },\n "type": "array"\n },\n "span_bytes": {\n "anyOf": [\n {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n {\n "type": "null"\n }\n ]\n },\n "total_bytes": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "available",\n "provenance",\n "ranges",\n "total_bytes",\n "span_bytes",\n "non_contiguous",\n "contains_entry"\n ],\n "type": "object"\n }\n ]\n },\n "classification": {\n "anyOf": [\n {\n "additionalProperties": false,\n "properties": {\n "external": {\n "type": "boolean"\n },\n "provenance": {\n "minLength": 1,\n "type": "string"\n },\n "thunk": {\n "type": "boolean"\n },\n "thunk_target": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "external",\n "thunk",\n "thunk_target",\n "provenance"\n ],\n "type": "object"\n },\n {\n "type": "null"\n }\n ],\n "default": null\n },\n "name": {\n "type": "string"\n }\n },\n "required": [\n "address",\n "name",\n "classification",\n "body"\n ],\n "type": "object"\n },\n "type": "array"\n },\n "callers": {\n "items": {\n "additionalProperties": false,\n "properties": {\n "address": {\n "type": "string"\n },\n "body": {\n "default": {\n "available": false,\n "reason": "The provider did not report complete function body ranges."\n },\n "oneOf": [\n {\n "additionalProperties": false,\n "properties": {\n "available": {\n "const": false,\n "type": "boolean"\n },\n "reason": {\n "type": "string"\n }\n },\n "required": [\n "available",\n "reason"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "available": {\n "const": true,\n "type": "boolean"\n },\n "contains_entry": {\n "type": "boolean"\n },\n "non_contiguous": {\n "type": "boolean"\n },\n "provenance": {\n "minLength": 1,\n "type": "string"\n },\n "ranges": {\n "items": {\n "additionalProperties": false,\n "properties": {\n "end": {\n "description": "Inclusive last address of this observed body range.",\n "type": "string"\n },\n "start": {\n "type": "string"\n }\n },\n "required": [\n "start",\n "end"\n ],\n "type": "object"\n },\n "type": "array"\n },\n "span_bytes": {\n "anyOf": [\n {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n {\n "type": "null"\n }\n ]\n },\n "total_bytes": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "available",\n "provenance",\n "ranges",\n "total_bytes",\n "span_bytes",\n "non_contiguous",\n "contains_entry"\n ],\n "type": "object"\n }\n ]\n },\n "classification": {\n "anyOf": [\n {\n "additionalProperties": false,\n "properties": {\n "external": {\n "type": "boolean"\n },\n "provenance": {\n "minLength": 1,\n "type": "string"\n },\n "thunk": {\n "type": "boolean"\n },\n "thunk_target": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "external",\n "thunk",\n "thunk_target",\n "provenance"\n ],\n "type": "object"\n },\n {\n "type": "null"\n }\n ],\n "default": null\n },\n "name": {\n "type": "string"\n }\n },\n "required": [\n "address",\n "name",\n "classification",\n "body"\n ],\n "type": "object"\n },\n "type": "array"\n },\n "comments": {\n "items": {\n "additionalProperties": false,\n "properties": {\n "address": {\n "type": "string"\n },\n "kind": {\n "enum": [\n "comment",\n "inline"\n ],\n "type": "string"\n },\n "text": {\n "type": "string"\n }\n },\n "required": [\n "address",\n "kind",\n "text"\n ],\n "type": "object"\n },\n "type": "array"\n },\n "incoming_references": {\n "items": {\n "additionalProperties": false,\n "properties": {\n "kind": {\n "oneOf": [\n {\n "additionalProperties": false,\n "properties": {\n "available": {\n "const": false,\n "type": "boolean"\n },\n "reason": {\n "type": "string"\n }\n },\n "required": [\n "available",\n "reason"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "available": {\n "const": true,\n "type": "boolean"\n },\n "call": {\n "type": "boolean"\n },\n "computed": {\n "type": "boolean"\n },\n "conditional": {\n "type": "boolean"\n },\n "data": {\n "type": "boolean"\n },\n "external": {\n "type": "boolean"\n },\n "flow": {\n "type": "boolean"\n },\n "indirect": {\n "type": "boolean"\n },\n "jump": {\n "type": "boolean"\n },\n "operand_index": {\n "maximum": 9007199254740991,\n "minimum": -9007199254740991,\n "type": "integer"\n },\n "primary": {\n "type": "boolean"\n },\n "provenance": {\n "minLength": 1,\n "type": "string"\n },\n "read": {\n "type": "boolean"\n },\n "terminal": {\n "type": "boolean"\n },\n "type": {\n "type": "string"\n },\n "write": {\n "type": "boolean"\n }\n },\n "required": [\n "available",\n "provenance",\n "type",\n "flow",\n "call",\n "jump",\n "data",\n "read",\n "write",\n "indirect",\n "computed",\n "conditional",\n "terminal",\n "primary",\n "operand_index",\n "external"\n ],\n "type": "object"\n }\n ]\n },\n "source_address": {\n "type": "string"\n },\n "source_procedure": {\n "anyOf": [\n {\n "additionalProperties": false,\n "properties": {\n "address": {\n "type": "string"\n },\n "body": {\n "default": {\n "available": false,\n "reason": "The provider did not report complete function body ranges."\n },\n "oneOf": [\n {\n "additionalProperties": false,\n "properties": {\n "available": {\n "const": false,\n "type": "boolean"\n },\n "reason": {\n "type": "string"\n }\n },\n "required": [\n "available",\n "reason"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "available": {\n "const": true,\n "type": "boolean"\n },\n "contains_entry": {\n "type": "boolean"\n },\n "non_contiguous": {\n "type": "boolean"\n },\n "provenance": {\n "minLength": 1,\n "type": "string"\n },\n "ranges": {\n "items": {\n "additionalProperties": false,\n "properties": {\n "end": {\n "description": "Inclusive last address of this observed body range.",\n "type": "string"\n },\n "start": {\n "type": "string"\n }\n },\n "required": [\n "start",\n "end"\n ],\n "type": "object"\n },\n "type": "array"\n },\n "span_bytes": {\n "anyOf": [\n {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n {\n "type": "null"\n }\n ]\n },\n "total_bytes": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "available",\n "provenance",\n "ranges",\n "total_bytes",\n "span_bytes",\n "non_contiguous",\n "contains_entry"\n ],\n "type": "object"\n }\n ]\n },\n "classification": {\n "anyOf": [\n {\n "additionalProperties": false,\n "properties": {\n "external": {\n "type": "boolean"\n },\n "provenance": {\n "minLength": 1,\n "type": "string"\n },\n "thunk": {\n "type": "boolean"\n },\n "thunk_target": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "external",\n "thunk",\n "thunk_target",\n "provenance"\n ],\n "type": "object"\n },\n {\n "type": "null"\n }\n ],\n "default": null\n },\n "name": {\n "type": "string"\n }\n },\n "required": [\n "address",\n "name",\n "classification",\n "body"\n ],\n "type": "object"\n },\n {\n "type": "null"\n }\n ]\n },\n "target_address": {\n "type": "string"\n },\n "target_procedure": {\n "anyOf": [\n {\n "additionalProperties": false,\n "properties": {\n "address": {\n "type": "string"\n },\n "body": {\n "default": {\n "available": false,\n "reason": "The provider did not report complete function body ranges."\n },\n "oneOf": [\n {\n "additionalProperties": false,\n "properties": {\n "available": {\n "const": false,\n "type": "boolean"\n },\n "reason": {\n "type": "string"\n }\n },\n "required": [\n "available",\n "reason"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "available": {\n "const": true,\n "type": "boolean"\n },\n "contains_entry": {\n "type": "boolean"\n },\n "non_contiguous": {\n "type": "boolean"\n },\n "provenance": {\n "minLength": 1,\n "type": "string"\n },\n "ranges": {\n "items": {\n "additionalProperties": false,\n "properties": {\n "end": {\n "description": "Inclusive last address of this observed body range.",\n "type": "string"\n },\n "start": {\n "type": "string"\n }\n },\n "required": [\n "start",\n "end"\n ],\n "type": "object"\n },\n "type": "array"\n },\n "span_bytes": {\n "anyOf": [\n {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n {\n "type": "null"\n }\n ]\n },\n "total_bytes": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "available",\n "provenance",\n "ranges",\n "total_bytes",\n "span_bytes",\n "non_contiguous",\n "contains_entry"\n ],\n "type": "object"\n }\n ]\n },\n "classification": {\n "anyOf": [\n {\n "additionalProperties": false,\n "properties": {\n "external": {\n "type": "boolean"\n },\n "provenance": {\n "minLength": 1,\n "type": "string"\n },\n "thunk": {\n "type": "boolean"\n },\n "thunk_target": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "external",\n "thunk",\n "thunk_target",\n "provenance"\n ],\n "type": "object"\n },\n {\n "type": "null"\n }\n ],\n "default": null\n },\n "name": {\n "type": "string"\n }\n },\n "required": [\n "address",\n "name",\n "classification",\n "body"\n ],\n "type": "object"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "source_address",\n "target_address",\n "source_procedure",\n "target_procedure",\n "kind"\n ],\n "type": "object"\n },\n "type": "array"\n },\n "limitations": {\n "default": [],\n "items": {\n "type": "string"\n },\n "type": "array"\n },\n "native_api": {\n "anyOf": [\n {\n "oneOf": [\n {\n "additionalProperties": false,\n "properties": {\n "available": {\n "const": false,\n "type": "boolean"\n },\n "reason": {\n "minLength": 1,\n "type": "string"\n },\n "residual_unknowns": {\n "items": {\n "minLength": 1,\n "type": "string"\n },\n "minItems": 1,\n "type": "array"\n }\n },\n "required": [\n "available",\n "reason",\n "residual_unknowns"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "available": {\n "const": true,\n "type": "boolean"\n },\n "calling_convention": {\n "minLength": 1,\n "type": "string"\n },\n "decompiler_artifacts": {\n "items": {\n "enum": [\n "recovered-signature",\n "register-and-stack-variables",\n "compiler-generated-control-flow",\n "pointer-arithmetic",\n "pseudocode"\n ],\n "type": "string"\n },\n "type": "array"\n },\n "jump_tables": {\n "items": {\n "additionalProperties": false,\n "properties": {\n "data_sources": {\n "items": {\n "additionalProperties": false,\n "properties": {\n "address": {\n "minLength": 1,\n "type": "string"\n },\n "confidence": {\n "enum": [\n "low",\n "medium",\n "high"\n ],\n "type": "string"\n },\n "entry_count": {\n "anyOf": [\n {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n {\n "type": "null"\n }\n ]\n },\n "entry_size_bytes": {\n "anyOf": [\n {\n "maximum": 9007199254740991,\n "minimum": 1,\n "type": "integer"\n },\n {\n "type": "null"\n }\n ]\n },\n "evidence": {\n "items": {\n "additionalProperties": false,\n "properties": {\n "detail": {\n "minLength": 1,\n "type": "string"\n },\n "kind": {\n "enum": [\n "signature-source",\n "decompiler-type",\n "type-lock",\n "calling-convention",\n "jump-table"\n ],\n "type": "string"\n },\n "source": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "kind",\n "source",\n "detail"\n ],\n "type": "object"\n },\n "minItems": 1,\n "type": "array"\n },\n "provenance": {\n "enum": [\n "ghidra-decompiler-load-table",\n "ghidra-dispatch-block-data-reference",\n "ghidra-aarch64-byte-table",\n "ghidra-aarch64-halfword-table"\n ],\n "type": "string"\n }\n },\n "required": [\n "address",\n "provenance",\n "entry_size_bytes",\n "entry_count",\n "confidence",\n "evidence"\n ],\n "type": "object"\n },\n "type": "array"\n },\n "default_targets": {\n "default": [],\n "items": {\n "additionalProperties": false,\n "properties": {\n "confidence": {\n "enum": [\n "low",\n "medium",\n "high"\n ],\n "type": "string"\n },\n "evidence": {\n "items": {\n "additionalProperties": false,\n "properties": {\n "detail": {\n "minLength": 1,\n "type": "string"\n },\n "kind": {\n "enum": [\n "signature-source",\n "decompiler-type",\n "type-lock",\n "calling-convention",\n "jump-table"\n ],\n "type": "string"\n },\n "source": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "kind",\n "source",\n "detail"\n ],\n "type": "object"\n },\n "minItems": 1,\n "type": "array"\n },\n "target_address": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "target_address",\n "confidence",\n "evidence"\n ],\n "type": "object"\n },\n "type": "array"\n },\n "dispatch_address": {\n "minLength": 1,\n "type": "string"\n },\n "limitations": {\n "items": {\n "type": "string"\n },\n "type": "array"\n },\n "mappings": {\n "items": {\n "additionalProperties": false,\n "properties": {\n "case_value": {\n "anyOf": [\n {\n "maximum": 9007199254740991,\n "minimum": -9007199254740991,\n "type": "integer"\n },\n {\n "type": "null"\n }\n ]\n },\n "confidence": {\n "enum": [\n "low",\n "medium",\n "high"\n ],\n "type": "string"\n },\n "evidence": {\n "items": {\n "additionalProperties": false,\n "properties": {\n "detail": {\n "minLength": 1,\n "type": "string"\n },\n "kind": {\n "enum": [\n "signature-source",\n "decompiler-type",\n "type-lock",\n "calling-convention",\n "jump-table"\n ],\n "type": "string"\n },\n "source": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "kind",\n "source",\n "detail"\n ],\n "type": "object"\n },\n "minItems": 1,\n "type": "array"\n },\n "target_address": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "case_value",\n "target_address",\n "confidence",\n "evidence"\n ],\n "type": "object"\n },\n "type": "array"\n }\n },\n "required": [\n "dispatch_address",\n "data_sources",\n "mappings",\n "default_targets",\n "limitations"\n ],\n "type": "object"\n },\n "type": "array"\n },\n "limitations": {\n "items": {\n "type": "string"\n },\n "type": "array"\n },\n "parameters": {\n "items": {\n "additionalProperties": false,\n "properties": {\n "confidence": {\n "enum": [\n "low",\n "medium",\n "high"\n ],\n "type": "string"\n },\n "data_type": {\n "minLength": 1,\n "type": "string"\n },\n "decompiler_artifacts": {\n "items": {\n "enum": [\n "recovered-signature",\n "register-or-stack-storage",\n "compiler-generated-variable"\n ],\n "type": "string"\n },\n "type": "array"\n },\n "evidence": {\n "items": {\n "additionalProperties": false,\n "properties": {\n "detail": {\n "minLength": 1,\n "type": "string"\n },\n "kind": {\n "enum": [\n "signature-source",\n "decompiler-type",\n "type-lock",\n "calling-convention",\n "jump-table"\n ],\n "type": "string"\n },\n "source": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "kind",\n "source",\n "detail"\n ],\n "type": "object"\n },\n "minItems": 1,\n "type": "array"\n },\n "name": {\n "anyOf": [\n {\n "minLength": 1,\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "ordinal": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "role": {\n "const": "parameter",\n "type": "string"\n },\n "size_bytes": {\n "anyOf": [\n {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n {\n "type": "null"\n }\n ]\n },\n "storage": {\n "anyOf": [\n {\n "minLength": 1,\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "ordinal",\n "name",\n "data_type",\n "size_bytes",\n "storage",\n "confidence",\n "evidence",\n "decompiler_artifacts",\n "role"\n ],\n "type": "object"\n },\n "type": "array"\n },\n "provenance": {\n "minLength": 1,\n "type": "string"\n },\n "pseudocode": {\n "additionalProperties": false,\n "properties": {\n "classification": {\n "const": "decompiler-generated-non-source",\n "type": "string"\n },\n "compilable": {\n "const": false,\n "type": "boolean"\n }\n },\n "required": [\n "classification",\n "compilable"\n ],\n "type": "object"\n },\n "return_type": {\n "additionalProperties": false,\n "properties": {\n "confidence": {\n "enum": [\n "low",\n "medium",\n "high"\n ],\n "type": "string"\n },\n "data_type": {\n "minLength": 1,\n "type": "string"\n },\n "decompiler_artifacts": {\n "items": {\n "enum": [\n "recovered-signature",\n "register-or-stack-storage",\n "compiler-generated-variable"\n ],\n "type": "string"\n },\n "type": "array"\n },\n "evidence": {\n "items": {\n "additionalProperties": false,\n "properties": {\n "detail": {\n "minLength": 1,\n "type": "string"\n },\n "kind": {\n "enum": [\n "signature-source",\n "decompiler-type",\n "type-lock",\n "calling-convention",\n "jump-table"\n ],\n "type": "string"\n },\n "source": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "kind",\n "source",\n "detail"\n ],\n "type": "object"\n },\n "minItems": 1,\n "type": "array"\n },\n "name": {\n "type": "null"\n },\n "ordinal": {\n "type": "null"\n },\n "role": {\n "const": "return",\n "type": "string"\n },\n "size_bytes": {\n "anyOf": [\n {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n {\n "type": "null"\n }\n ]\n },\n "storage": {\n "anyOf": [\n {\n "minLength": 1,\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "ordinal",\n "name",\n "data_type",\n "size_bytes",\n "storage",\n "confidence",\n "evidence",\n "decompiler_artifacts",\n "role"\n ],\n "type": "object"\n },\n "signature_source": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "available",\n "provenance",\n "signature_source",\n "calling_convention",\n "return_type",\n "parameters",\n "jump_tables",\n "pseudocode",\n "decompiler_artifacts",\n "limitations"\n ],\n "type": "object"\n }\n ]\n },\n {\n "type": "null"\n }\n ],\n "default": null\n },\n "native_value_flow": {\n "anyOf": [\n {\n "oneOf": [\n {\n "additionalProperties": false,\n "properties": {\n "available": {\n "const": true,\n "type": "boolean"\n },\n "def_use": {\n "items": {\n "additionalProperties": false,\n "properties": {\n "definition": {\n "minLength": 1,\n "type": "string"\n },\n "input_index": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "use": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "definition",\n "use",\n "input_index"\n ],\n "type": "object"\n },\n "type": "array"\n },\n "effects": {\n "items": {\n "additionalProperties": false,\n "properties": {\n "kind": {\n "enum": [\n "memory_read",\n "memory_write",\n "conditional_branch",\n "indirect_branch",\n "direct_call",\n "indirect_call"\n ],\n "type": "string"\n },\n "operand_input": {\n "anyOf": [\n {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n {\n "type": "null"\n }\n ]\n },\n "operation": {\n "minLength": 1,\n "type": "string"\n },\n "value_input": {\n "anyOf": [\n {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "operation",\n "kind",\n "operand_input",\n "value_input"\n ],\n "type": "object"\n },\n "type": "array"\n },\n "known_omitted_edges": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "known_omitted_inputs": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "limitations": {\n "items": {\n "minLength": 1,\n "type": "string"\n },\n "type": "array"\n },\n "omitted_operations_lower_bound": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "operations": {\n "items": {\n "additionalProperties": false,\n "properties": {\n "address": {\n "minLength": 1,\n "type": "string"\n },\n "block_membership": {\n "default": "unavailable",\n "enum": [\n "member",\n "detached",\n "unavailable"\n ],\n "type": "string"\n },\n "id": {\n "minLength": 1,\n "type": "string"\n },\n "inputs": {\n "items": {\n "additionalProperties": false,\n "properties": {\n "constant_hex": {\n "anyOf": [\n {\n "pattern": "^[0-9a-f]+$",\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "kind": {\n "enum": [\n "constant",\n "address",\n "register",\n "unique",\n "other"\n ],\n "type": "string"\n },\n "location": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "size_bytes": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "kind",\n "size_bytes",\n "location",\n "constant_hex"\n ],\n "type": "object"\n },\n "type": "array"\n },\n "is_dead": {\n "type": "boolean"\n },\n "opcode": {\n "minLength": 1,\n "type": "string"\n },\n "output": {\n "anyOf": [\n {\n "additionalProperties": false,\n "properties": {\n "constant_hex": {\n "anyOf": [\n {\n "pattern": "^[0-9a-f]+$",\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "kind": {\n "enum": [\n "constant",\n "address",\n "register",\n "unique",\n "other"\n ],\n "type": "string"\n },\n "location": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "size_bytes": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "kind",\n "size_bytes",\n "location",\n "constant_hex"\n ],\n "type": "object"\n },\n {\n "type": "null"\n }\n ]\n },\n "sequence": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "id",\n "address",\n "sequence",\n "opcode",\n "is_dead",\n "block_membership",\n "inputs",\n "output"\n ],\n "type": "object"\n },\n "type": "array"\n },\n "parameter_uses": {\n "default": [],\n "items": {\n "additionalProperties": false,\n "properties": {\n "input_index": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "ordinal": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "use": {\n "type": "string"\n }\n },\n "required": [\n "ordinal",\n "use",\n "input_index"\n ],\n "type": "object"\n },\n "type": "array"\n },\n "parameters": {\n "default": [],\n "items": {\n "additionalProperties": false,\n "properties": {\n "data_type": {\n "type": "string"\n },\n "name": {\n "type": "string"\n },\n "ordinal": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "ordinal",\n "name",\n "data_type"\n ],\n "type": "object"\n },\n "type": "array"\n },\n "provenance": {\n "const": "ghidra-high-pcode",\n "type": "string"\n },\n "truncated": {\n "type": "boolean"\n }\n },\n "required": [\n "available",\n "provenance",\n "operations",\n "def_use",\n "effects",\n "parameters",\n "parameter_uses",\n "truncated",\n "omitted_operations_lower_bound",\n "known_omitted_inputs",\n "known_omitted_edges",\n "limitations"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "available": {\n "const": false,\n "type": "boolean"\n },\n "limitations": {\n "items": {\n "minLength": 1,\n "type": "string"\n },\n "type": "array"\n },\n "reason": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "available",\n "reason",\n "limitations"\n ],\n "type": "object"\n }\n ]\n },\n {\n "type": "null"\n }\n ],\n "default": null\n },\n "outgoing_references": {\n "items": {\n "additionalProperties": false,\n "properties": {\n "kind": {\n "oneOf": [\n {\n "additionalProperties": false,\n "properties": {\n "available": {\n "const": false,\n "type": "boolean"\n },\n "reason": {\n "type": "string"\n }\n },\n "required": [\n "available",\n "reason"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "available": {\n "const": true,\n "type": "boolean"\n },\n "call": {\n "type": "boolean"\n },\n "computed": {\n "type": "boolean"\n },\n "conditional": {\n "type": "boolean"\n },\n "data": {\n "type": "boolean"\n },\n "external": {\n "type": "boolean"\n },\n "flow": {\n "type": "boolean"\n },\n "indirect": {\n "type": "boolean"\n },\n "jump": {\n "type": "boolean"\n },\n "operand_index": {\n "maximum": 9007199254740991,\n "minimum": -9007199254740991,\n "type": "integer"\n },\n "primary": {\n "type": "boolean"\n },\n "provenance": {\n "minLength": 1,\n "type": "string"\n },\n "read": {\n "type": "boolean"\n },\n "terminal": {\n "type": "boolean"\n },\n "type": {\n "type": "string"\n },\n "write": {\n "type": "boolean"\n }\n },\n "required": [\n "available",\n "provenance",\n "type",\n "flow",\n "call",\n "jump",\n "data",\n "read",\n "write",\n "indirect",\n "computed",\n "conditional",\n "terminal",\n "primary",\n "operand_index",\n "external"\n ],\n "type": "object"\n }\n ]\n },\n "source_address": {\n "type": "string"\n },\n "source_procedure": {\n "anyOf": [\n {\n "additionalProperties": false,\n "properties": {\n "address": {\n "type": "string"\n },\n "body": {\n "default": {\n "available": false,\n "reason": "The provider did not report complete function body ranges."\n },\n "oneOf": [\n {\n "additionalProperties": false,\n "properties": {\n "available": {\n "const": false,\n "type": "boolean"\n },\n "reason": {\n "type": "string"\n }\n },\n "required": [\n "available",\n "reason"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "available": {\n "const": true,\n "type": "boolean"\n },\n "contains_entry": {\n "type": "boolean"\n },\n "non_contiguous": {\n "type": "boolean"\n },\n "provenance": {\n "minLength": 1,\n "type": "string"\n },\n "ranges": {\n "items": {\n "additionalProperties": false,\n "properties": {\n "end": {\n "description": "Inclusive last address of this observed body range.",\n "type": "string"\n },\n "start": {\n "type": "string"\n }\n },\n "required": [\n "start",\n "end"\n ],\n "type": "object"\n },\n "type": "array"\n },\n "span_bytes": {\n "anyOf": [\n {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n {\n "type": "null"\n }\n ]\n },\n "total_bytes": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "available",\n "provenance",\n "ranges",\n "total_bytes",\n "span_bytes",\n "non_contiguous",\n "contains_entry"\n ],\n "type": "object"\n }\n ]\n },\n "classification": {\n "anyOf": [\n {\n "additionalProperties": false,\n "properties": {\n "external": {\n "type": "boolean"\n },\n "provenance": {\n "minLength": 1,\n "type": "string"\n },\n "thunk": {\n "type": "boolean"\n },\n "thunk_target": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "external",\n "thunk",\n "thunk_target",\n "provenance"\n ],\n "type": "object"\n },\n {\n "type": "null"\n }\n ],\n "default": null\n },\n "name": {\n "type": "string"\n }\n },\n "required": [\n "address",\n "name",\n "classification",\n "body"\n ],\n "type": "object"\n },\n {\n "type": "null"\n }\n ]\n },\n "target_address": {\n "type": "string"\n },\n "target_procedure": {\n "anyOf": [\n {\n "additionalProperties": false,\n "properties": {\n "address": {\n "type": "string"\n },\n "body": {\n "default": {\n "available": false,\n "reason": "The provider did not report complete function body ranges."\n },\n "oneOf": [\n {\n "additionalProperties": false,\n "properties": {\n "available": {\n "const": false,\n "type": "boolean"\n },\n "reason": {\n "type": "string"\n }\n },\n "required": [\n "available",\n "reason"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "available": {\n "const": true,\n "type": "boolean"\n },\n "contains_entry": {\n "type": "boolean"\n },\n "non_contiguous": {\n "type": "boolean"\n },\n "provenance": {\n "minLength": 1,\n "type": "string"\n },\n "ranges": {\n "items": {\n "additionalProperties": false,\n "properties": {\n "end": {\n "description": "Inclusive last address of this observed body range.",\n "type": "string"\n },\n "start": {\n "type": "string"\n }\n },\n "required": [\n "start",\n "end"\n ],\n "type": "object"\n },\n "type": "array"\n },\n "span_bytes": {\n "anyOf": [\n {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n {\n "type": "null"\n }\n ]\n },\n "total_bytes": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "available",\n "provenance",\n "ranges",\n "total_bytes",\n "span_bytes",\n "non_contiguous",\n "contains_entry"\n ],\n "type": "object"\n }\n ]\n },\n "classification": {\n "anyOf": [\n {\n "additionalProperties": false,\n "properties": {\n "external": {\n "type": "boolean"\n },\n "provenance": {\n "minLength": 1,\n "type": "string"\n },\n "thunk": {\n "type": "boolean"\n },\n "thunk_target": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "external",\n "thunk",\n "thunk_target",\n "provenance"\n ],\n "type": "object"\n },\n {\n "type": "null"\n }\n ],\n "default": null\n },\n "name": {\n "type": "string"\n }\n },\n "required": [\n "address",\n "name",\n "classification",\n "body"\n ],\n "type": "object"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "source_address",\n "target_address",\n "source_procedure",\n "target_procedure",\n "kind"\n ],\n "type": "object"\n },\n "type": "array"\n },\n "procedure": {\n "additionalProperties": false,\n "properties": {\n "address": {\n "type": "string"\n },\n "body": {\n "default": {\n "available": false,\n "reason": "The provider did not report complete function body ranges."\n },\n "oneOf": [\n {\n "additionalProperties": false,\n "properties": {\n "available": {\n "const": false,\n "type": "boolean"\n },\n "reason": {\n "type": "string"\n }\n },\n "required": [\n "available",\n "reason"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "available": {\n "const": true,\n "type": "boolean"\n },\n "contains_entry": {\n "type": "boolean"\n },\n "non_contiguous": {\n "type": "boolean"\n },\n "provenance": {\n "minLength": 1,\n "type": "string"\n },\n "ranges": {\n "items": {\n "additionalProperties": false,\n "properties": {\n "end": {\n "description": "Inclusive last address of this observed body range.",\n "type": "string"\n },\n "start": {\n "type": "string"\n }\n },\n "required": [\n "start",\n "end"\n ],\n "type": "object"\n },\n "type": "array"\n },\n "span_bytes": {\n "anyOf": [\n {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n {\n "type": "null"\n }\n ]\n },\n "total_bytes": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "available",\n "provenance",\n "ranges",\n "total_bytes",\n "span_bytes",\n "non_contiguous",\n "contains_entry"\n ],\n "type": "object"\n }\n ]\n },\n "classification": {\n "anyOf": [\n {\n "additionalProperties": false,\n "properties": {\n "external": {\n "type": "boolean"\n },\n "provenance": {\n "minLength": 1,\n "type": "string"\n },\n "thunk": {\n "type": "boolean"\n },\n "thunk_target": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "external",\n "thunk",\n "thunk_target",\n "provenance"\n ],\n "type": "object"\n },\n {\n "type": "null"\n }\n ],\n "default": null\n },\n "locals": {\n "items": {\n "additionalProperties": false,\n "properties": {\n "description": {\n "type": "string"\n },\n "provenance": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "description",\n "provenance"\n ],\n "type": "object"\n },\n "type": "array"\n },\n "name": {\n "type": "string"\n },\n "signature": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "address",\n "name",\n "classification",\n "body",\n "signature",\n "locals"\n ],\n "type": "object"\n },\n "pseudocode": {\n "type": "string"\n },\n "referenced_names": {\n "items": {\n "additionalProperties": false,\n "properties": {\n "address": {\n "type": "string"\n },\n "source_address": {\n "type": "string"\n },\n "value": {\n "type": "string"\n }\n },\n "required": [\n "address",\n "value",\n "source_address"\n ],\n "type": "object"\n },\n "type": "array"\n },\n "referenced_strings": {\n "items": {\n "additionalProperties": false,\n "properties": {\n "address": {\n "type": "string"\n },\n "source_address": {\n "type": "string"\n },\n "value": {\n "type": "string"\n }\n },\n "required": [\n "address",\n "value",\n "source_address"\n ],\n "type": "object"\n },\n "type": "array"\n }\n },\n "required": [\n "procedure",\n "pseudocode",\n "assembly",\n "comments",\n "callers",\n "callees",\n "incoming_references",\n "outgoing_references",\n "referenced_strings",\n "referenced_names",\n "basic_blocks",\n "native_api",\n "native_value_flow",\n "limitations"\n ],\n "type": "object"\n }\n },\n "required": [\n "result",\n "evidence_id",\n "evidence"\n ],\n "type": "object"\n },\n "requiresSession": false,\n "title": "Analyze Function"\n },\n {\n "analysisOperation": "inspect_native_api",\n "annotations": {\n "destructiveHint": false,\n "idempotentHint": false,\n "openWorldHint": false,\n "readOnlyHint": false\n },\n "description": "Analyze a native API boundary in one function identified by symbol or provider-returned address. Returns confidence, evidence, jump-table dispatch/data/case mappings, separately evidenced default targets, unsupported branches, and residual unknowns. Null case values mean unresolved cases, never a known default.",\n "effects": {\n "accessesNetwork": false,\n "changesUiState": false,\n "idempotent": false,\n "launchesProcess": false,\n "mayDiscardData": false,\n "mutatesSession": true,\n "mutatesTarget": false,\n "writesFilesystem": false\n },\n "inputSchema": {\n "$schema": "https://json-schema.org/draft/2020-12/schema",\n "additionalProperties": false,\n "examples": [\n {\n "procedure": "main"\n }\n ],\n "properties": {\n "procedure": {\n "description": "A procedure name or address",\n "type": "string"\n }\n },\n "required": [\n "procedure"\n ],\n "type": "object"\n },\n "kind": "enhanced",\n "name": "inspect_native_api",\n "outputSchema": {\n "$defs": {\n "__schema0": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "number"\n },\n {\n "type": "boolean"\n },\n {\n "type": "null"\n },\n {\n "items": {\n "$ref": "#/$defs/__schema0"\n },\n "type": "array"\n },\n {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n }\n ]\n }\n },\n "$schema": "https://json-schema.org/draft/2020-12/schema",\n "additionalProperties": false,\n "properties": {\n "evidence": {\n "additionalProperties": false,\n "properties": {\n "analysis_profile": {\n "additionalProperties": false,\n "properties": {\n "digest": {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n },\n "parameters": {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n },\n "provider": {\n "additionalProperties": false,\n "properties": {\n "id": {\n "minLength": 1,\n "type": "string"\n },\n "name": {\n "minLength": 1,\n "type": "string"\n },\n "version": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "id",\n "name",\n "version"\n ],\n "type": "object"\n }\n },\n "required": [\n "provider",\n "parameters",\n "digest"\n ],\n "type": "object"\n },\n "authority": {\n "enum": [\n "shipped-artifact",\n "controlled-replay",\n "historical-reference",\n "external-service",\n "analyst-inference"\n ],\n "type": "string"\n },\n "confidence": {\n "enum": [\n "observed",\n "derived",\n "inferred"\n ],\n "type": "string"\n },\n "environment": {\n "anyOf": [\n {\n "additionalProperties": false,\n "properties": {\n "architecture": {\n "minLength": 1,\n "type": "string"\n },\n "id": {\n "minLength": 1,\n "type": "string"\n },\n "isolation": {\n "enum": [\n "none",\n "process",\n "container",\n "virtual-machine"\n ],\n "type": "string"\n },\n "platform": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "id",\n "platform",\n "architecture",\n "isolation"\n ],\n "type": "object"\n },\n {\n "type": "null"\n }\n ]\n },\n "evidence_id": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "evidence_links": {\n "items": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "type": "array"\n },\n "limitations": {\n "items": {\n "type": "string"\n },\n "type": "array"\n },\n "locations": {\n "items": {\n "oneOf": [\n {\n "additionalProperties": false,\n "properties": {\n "address": {\n "minLength": 1,\n "type": "string"\n },\n "kind": {\n "const": "address",\n "type": "string"\n }\n },\n "required": [\n "kind",\n "address"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "end": {\n "minLength": 1,\n "type": "string"\n },\n "kind": {\n "const": "address-range",\n "type": "string"\n },\n "start": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "kind",\n "start",\n "end"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "kind": {\n "const": "artifact-path",\n "type": "string"\n },\n "path": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "kind",\n "path"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "kind": {\n "const": "file-offset",\n "type": "string"\n },\n "offset": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "kind",\n "offset"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "end": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "kind": {\n "const": "file-offset-range",\n "type": "string"\n },\n "start": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "kind",\n "start",\n "end"\n ],\n "type": "object"\n }\n ]\n },\n "type": "array"\n },\n "normalized_result": {\n "$ref": "#/$defs/__schema0"\n },\n "operation": {\n "minLength": 1,\n "type": "string"\n },\n "parameters": {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n },\n "predicate_type": {\n "minLength": 1,\n "type": "string"\n },\n "provider": {\n "additionalProperties": false,\n "properties": {\n "id": {\n "minLength": 1,\n "type": "string"\n },\n "name": {\n "minLength": 1,\n "type": "string"\n },\n "version": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "id",\n "name",\n "version"\n ],\n "type": "object"\n },\n "raw_result": {\n "anyOf": [\n {\n "$ref": "#/$defs/__schema0"\n },\n {\n "type": "null"\n }\n ]\n },\n "subject": {\n "anyOf": [\n {\n "additionalProperties": false,\n "properties": {\n "architecture": {\n "anyOf": [\n {\n "enum": [\n "x86",\n "x86_64",\n "arm",\n "arm64"\n ],\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "digest": {\n "additionalProperties": false,\n "properties": {\n "sha256": {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n }\n },\n "required": [\n "sha256"\n ],\n "type": "object"\n },\n "format": {\n "enum": [\n "hopper",\n "analysis-database",\n "mach-o",\n "elf",\n "pe",\n "dos-mz",\n "dos-com",\n "zip",\n "ipa",\n "apk",\n "msix",\n "appx",\n "asar",\n "dmg",\n "pkg",\n "plist",\n "javascript",\n "source-map",\n "directory",\n "file",\n "unknown",\n "mach-o-universal",\n "javascript-bundle",\n "entitlements"\n ],\n "type": "string"\n },\n "local_path": {\n "type": "string"\n },\n "name": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "name",\n "digest",\n "format",\n "architecture",\n "local_path"\n ],\n "type": "object"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "evidence_id",\n "subject",\n "provider",\n "predicate_type",\n "operation",\n "parameters",\n "raw_result",\n "normalized_result",\n "confidence",\n "authority",\n "environment",\n "limitations",\n "locations",\n "evidence_links"\n ],\n "type": "object"\n },\n "evidence_id": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "result": {\n "additionalProperties": false,\n "properties": {\n "boundary": {\n "oneOf": [\n {\n "additionalProperties": false,\n "properties": {\n "available": {\n "const": false,\n "type": "boolean"\n },\n "reason": {\n "minLength": 1,\n "type": "string"\n },\n "residual_unknowns": {\n "items": {\n "minLength": 1,\n "type": "string"\n },\n "minItems": 1,\n "type": "array"\n }\n },\n "required": [\n "available",\n "reason",\n "residual_unknowns"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "available": {\n "const": true,\n "type": "boolean"\n },\n "calling_convention": {\n "minLength": 1,\n "type": "string"\n },\n "decompiler_artifacts": {\n "items": {\n "enum": [\n "recovered-signature",\n "register-and-stack-variables",\n "compiler-generated-control-flow",\n "pointer-arithmetic",\n "pseudocode"\n ],\n "type": "string"\n },\n "type": "array"\n },\n "jump_tables": {\n "items": {\n "additionalProperties": false,\n "properties": {\n "data_sources": {\n "items": {\n "additionalProperties": false,\n "properties": {\n "address": {\n "minLength": 1,\n "type": "string"\n },\n "confidence": {\n "enum": [\n "low",\n "medium",\n "high"\n ],\n "type": "string"\n },\n "entry_count": {\n "anyOf": [\n {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n {\n "type": "null"\n }\n ]\n },\n "entry_size_bytes": {\n "anyOf": [\n {\n "maximum": 9007199254740991,\n "minimum": 1,\n "type": "integer"\n },\n {\n "type": "null"\n }\n ]\n },\n "evidence": {\n "items": {\n "additionalProperties": false,\n "properties": {\n "detail": {\n "minLength": 1,\n "type": "string"\n },\n "kind": {\n "enum": [\n "signature-source",\n "decompiler-type",\n "type-lock",\n "calling-convention",\n "jump-table"\n ],\n "type": "string"\n },\n "source": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "kind",\n "source",\n "detail"\n ],\n "type": "object"\n },\n "minItems": 1,\n "type": "array"\n },\n "provenance": {\n "enum": [\n "ghidra-decompiler-load-table",\n "ghidra-dispatch-block-data-reference",\n "ghidra-aarch64-byte-table",\n "ghidra-aarch64-halfword-table"\n ],\n "type": "string"\n }\n },\n "required": [\n "address",\n "provenance",\n "entry_size_bytes",\n "entry_count",\n "confidence",\n "evidence"\n ],\n "type": "object"\n },\n "type": "array"\n },\n "default_targets": {\n "default": [],\n "items": {\n "additionalProperties": false,\n "properties": {\n "confidence": {\n "enum": [\n "low",\n "medium",\n "high"\n ],\n "type": "string"\n },\n "evidence": {\n "items": {\n "additionalProperties": false,\n "properties": {\n "detail": {\n "minLength": 1,\n "type": "string"\n },\n "kind": {\n "enum": [\n "signature-source",\n "decompiler-type",\n "type-lock",\n "calling-convention",\n "jump-table"\n ],\n "type": "string"\n },\n "source": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "kind",\n "source",\n "detail"\n ],\n "type": "object"\n },\n "minItems": 1,\n "type": "array"\n },\n "target_address": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "target_address",\n "confidence",\n "evidence"\n ],\n "type": "object"\n },\n "type": "array"\n },\n "dispatch_address": {\n "minLength": 1,\n "type": "string"\n },\n "limitations": {\n "items": {\n "type": "string"\n },\n "type": "array"\n },\n "mappings": {\n "items": {\n "additionalProperties": false,\n "properties": {\n "case_value": {\n "anyOf": [\n {\n "maximum": 9007199254740991,\n "minimum": -9007199254740991,\n "type": "integer"\n },\n {\n "type": "null"\n }\n ]\n },\n "confidence": {\n "enum": [\n "low",\n "medium",\n "high"\n ],\n "type": "string"\n },\n "evidence": {\n "items": {\n "additionalProperties": false,\n "properties": {\n "detail": {\n "minLength": 1,\n "type": "string"\n },\n "kind": {\n "enum": [\n "signature-source",\n "decompiler-type",\n "type-lock",\n "calling-convention",\n "jump-table"\n ],\n "type": "string"\n },\n "source": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "kind",\n "source",\n "detail"\n ],\n "type": "object"\n },\n "minItems": 1,\n "type": "array"\n },\n "target_address": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "case_value",\n "target_address",\n "confidence",\n "evidence"\n ],\n "type": "object"\n },\n "type": "array"\n }\n },\n "required": [\n "dispatch_address",\n "data_sources",\n "mappings",\n "default_targets",\n "limitations"\n ],\n "type": "object"\n },\n "type": "array"\n },\n "limitations": {\n "items": {\n "type": "string"\n },\n "type": "array"\n },\n "parameters": {\n "items": {\n "additionalProperties": false,\n "properties": {\n "confidence": {\n "enum": [\n "low",\n "medium",\n "high"\n ],\n "type": "string"\n },\n "data_type": {\n "minLength": 1,\n "type": "string"\n },\n "decompiler_artifacts": {\n "items": {\n "enum": [\n "recovered-signature",\n "register-or-stack-storage",\n "compiler-generated-variable"\n ],\n "type": "string"\n },\n "type": "array"\n },\n "evidence": {\n "items": {\n "additionalProperties": false,\n "properties": {\n "detail": {\n "minLength": 1,\n "type": "string"\n },\n "kind": {\n "enum": [\n "signature-source",\n "decompiler-type",\n "type-lock",\n "calling-convention",\n "jump-table"\n ],\n "type": "string"\n },\n "source": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "kind",\n "source",\n "detail"\n ],\n "type": "object"\n },\n "minItems": 1,\n "type": "array"\n },\n "name": {\n "anyOf": [\n {\n "minLength": 1,\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "ordinal": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "role": {\n "const": "parameter",\n "type": "string"\n },\n "size_bytes": {\n "anyOf": [\n {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n {\n "type": "null"\n }\n ]\n },\n "storage": {\n "anyOf": [\n {\n "minLength": 1,\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "ordinal",\n "name",\n "data_type",\n "size_bytes",\n "storage",\n "confidence",\n "evidence",\n "decompiler_artifacts",\n "role"\n ],\n "type": "object"\n },\n "type": "array"\n },\n "provenance": {\n "minLength": 1,\n "type": "string"\n },\n "pseudocode": {\n "additionalProperties": false,\n "properties": {\n "classification": {\n "const": "decompiler-generated-non-source",\n "type": "string"\n },\n "compilable": {\n "const": false,\n "type": "boolean"\n }\n },\n "required": [\n "classification",\n "compilable"\n ],\n "type": "object"\n },\n "return_type": {\n "additionalProperties": false,\n "properties": {\n "confidence": {\n "enum": [\n "low",\n "medium",\n "high"\n ],\n "type": "string"\n },\n "data_type": {\n "minLength": 1,\n "type": "string"\n },\n "decompiler_artifacts": {\n "items": {\n "enum": [\n "recovered-signature",\n "register-or-stack-storage",\n "compiler-generated-variable"\n ],\n "type": "string"\n },\n "type": "array"\n },\n "evidence": {\n "items": {\n "additionalProperties": false,\n "properties": {\n "detail": {\n "minLength": 1,\n "type": "string"\n },\n "kind": {\n "enum": [\n "signature-source",\n "decompiler-type",\n "type-lock",\n "calling-convention",\n "jump-table"\n ],\n "type": "string"\n },\n "source": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "kind",\n "source",\n "detail"\n ],\n "type": "object"\n },\n "minItems": 1,\n "type": "array"\n },\n "name": {\n "type": "null"\n },\n "ordinal": {\n "type": "null"\n },\n "role": {\n "const": "return",\n "type": "string"\n },\n "size_bytes": {\n "anyOf": [\n {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n {\n "type": "null"\n }\n ]\n },\n "storage": {\n "anyOf": [\n {\n "minLength": 1,\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "ordinal",\n "name",\n "data_type",\n "size_bytes",\n "storage",\n "confidence",\n "evidence",\n "decompiler_artifacts",\n "role"\n ],\n "type": "object"\n },\n "signature_source": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "available",\n "provenance",\n "signature_source",\n "calling_convention",\n "return_type",\n "parameters",\n "jump_tables",\n "pseudocode",\n "decompiler_artifacts",\n "limitations"\n ],\n "type": "object"\n }\n ]\n },\n "procedure": {\n "additionalProperties": false,\n "properties": {\n "address": {\n "minLength": 1,\n "type": "string"\n },\n "name": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "address",\n "name"\n ],\n "type": "object"\n },\n "residual_unknowns": {\n "items": {\n "minLength": 1,\n "type": "string"\n },\n "type": "array"\n },\n "substeps": {\n "items": {\n "additionalProperties": false,\n "properties": {\n "observations": {\n "items": {\n "minLength": 1,\n "type": "string"\n },\n "type": "array"\n },\n "operation": {\n "enum": [\n "analyze_function",\n "project_native_api_boundary",\n "preserve_residual_unknowns"\n ],\n "type": "string"\n },\n "status": {\n "enum": [\n "completed",\n "unsupported"\n ],\n "type": "string"\n }\n },\n "required": [\n "operation",\n "status",\n "observations"\n ],\n "type": "object"\n },\n "maxItems": 3,\n "minItems": 3,\n "type": "array"\n },\n "unsupported_branches": {\n "items": {\n "minLength": 1,\n "type": "string"\n },\n "type": "array"\n }\n },\n "required": [\n "procedure",\n "boundary",\n "substeps",\n "unsupported_branches",\n "residual_unknowns"\n ],\n "type": "object"\n }\n },\n "required": [\n "result",\n "evidence_id",\n "evidence"\n ],\n "type": "object"\n },\n "requiresSession": false,\n "title": "Inspect Native Api"\n },\n {\n "analysisOperation": "trace_feature",\n "annotations": {\n "destructiveHint": false,\n "idempotentHint": false,\n "openWorldHint": false,\n "readOnlyHint": false\n },\n "description": "Trace a literal feature query through every matching string and procedure, their xrefs, and truthful containing-procedure resolution. Returns observations, operation count, and residual unknowns without inferring reference kinds.",\n "effects": {\n "accessesNetwork": false,\n "changesUiState": false,\n "idempotent": false,\n "launchesProcess": false,\n "mayDiscardData": false,\n "mutatesSession": true,\n "mutatesTarget": false,\n "writesFilesystem": false\n },\n "inputSchema": {\n "$schema": "https://json-schema.org/draft/2020-12/schema",\n "additionalProperties": false,\n "examples": [\n {\n "case_sensitive": false,\n "query": "license"\n }\n ],\n "properties": {\n "case_sensitive": {\n "default": false,\n "description": "Whether text matching distinguishes uppercase and lowercase.",\n "type": "boolean"\n },\n "query": {\n "description": "Non-empty feature or text query to investigate.",\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "query"\n ],\n "type": "object"\n },\n "kind": "enhanced",\n "name": "trace_feature",\n "outputSchema": {\n "$defs": {\n "__schema0": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "number"\n },\n {\n "type": "boolean"\n },\n {\n "type": "null"\n },\n {\n "items": {\n "$ref": "#/$defs/__schema0"\n },\n "type": "array"\n },\n {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n }\n ]\n }\n },\n "$schema": "https://json-schema.org/draft/2020-12/schema",\n "additionalProperties": false,\n "properties": {\n "evidence": {\n "additionalProperties": false,\n "properties": {\n "analysis_profile": {\n "additionalProperties": false,\n "properties": {\n "digest": {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n },\n "parameters": {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n },\n "provider": {\n "additionalProperties": false,\n "properties": {\n "id": {\n "minLength": 1,\n "type": "string"\n },\n "name": {\n "minLength": 1,\n "type": "string"\n },\n "version": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "id",\n "name",\n "version"\n ],\n "type": "object"\n }\n },\n "required": [\n "provider",\n "parameters",\n "digest"\n ],\n "type": "object"\n },\n "authority": {\n "enum": [\n "shipped-artifact",\n "controlled-replay",\n "historical-reference",\n "external-service",\n "analyst-inference"\n ],\n "type": "string"\n },\n "confidence": {\n "enum": [\n "observed",\n "derived",\n "inferred"\n ],\n "type": "string"\n },\n "environment": {\n "anyOf": [\n {\n "additionalProperties": false,\n "properties": {\n "architecture": {\n "minLength": 1,\n "type": "string"\n },\n "id": {\n "minLength": 1,\n "type": "string"\n },\n "isolation": {\n "enum": [\n "none",\n "process",\n "container",\n "virtual-machine"\n ],\n "type": "string"\n },\n "platform": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "id",\n "platform",\n "architecture",\n "isolation"\n ],\n "type": "object"\n },\n {\n "type": "null"\n }\n ]\n },\n "evidence_id": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "evidence_links": {\n "items": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "type": "array"\n },\n "limitations": {\n "items": {\n "type": "string"\n },\n "type": "array"\n },\n "locations": {\n "items": {\n "oneOf": [\n {\n "additionalProperties": false,\n "properties": {\n "address": {\n "minLength": 1,\n "type": "string"\n },\n "kind": {\n "const": "address",\n "type": "string"\n }\n },\n "required": [\n "kind",\n "address"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "end": {\n "minLength": 1,\n "type": "string"\n },\n "kind": {\n "const": "address-range",\n "type": "string"\n },\n "start": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "kind",\n "start",\n "end"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "kind": {\n "const": "artifact-path",\n "type": "string"\n },\n "path": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "kind",\n "path"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "kind": {\n "const": "file-offset",\n "type": "string"\n },\n "offset": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "kind",\n "offset"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "end": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "kind": {\n "const": "file-offset-range",\n "type": "string"\n },\n "start": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "kind",\n "start",\n "end"\n ],\n "type": "object"\n }\n ]\n },\n "type": "array"\n },\n "normalized_result": {\n "$ref": "#/$defs/__schema0"\n },\n "operation": {\n "minLength": 1,\n "type": "string"\n },\n "parameters": {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n },\n "predicate_type": {\n "minLength": 1,\n "type": "string"\n },\n "provider": {\n "additionalProperties": false,\n "properties": {\n "id": {\n "minLength": 1,\n "type": "string"\n },\n "name": {\n "minLength": 1,\n "type": "string"\n },\n "version": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "id",\n "name",\n "version"\n ],\n "type": "object"\n },\n "raw_result": {\n "anyOf": [\n {\n "$ref": "#/$defs/__schema0"\n },\n {\n "type": "null"\n }\n ]\n },\n "subject": {\n "anyOf": [\n {\n "additionalProperties": false,\n "properties": {\n "architecture": {\n "anyOf": [\n {\n "enum": [\n "x86",\n "x86_64",\n "arm",\n "arm64"\n ],\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "digest": {\n "additionalProperties": false,\n "properties": {\n "sha256": {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n }\n },\n "required": [\n "sha256"\n ],\n "type": "object"\n },\n "format": {\n "enum": [\n "hopper",\n "analysis-database",\n "mach-o",\n "elf",\n "pe",\n "dos-mz",\n "dos-com",\n "zip",\n "ipa",\n "apk",\n "msix",\n "appx",\n "asar",\n "dmg",\n "pkg",\n "plist",\n "javascript",\n "source-map",\n "directory",\n "file",\n "unknown",\n "mach-o-universal",\n "javascript-bundle",\n "entitlements"\n ],\n "type": "string"\n },\n "local_path": {\n "type": "string"\n },\n "name": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "name",\n "digest",\n "format",\n "architecture",\n "local_path"\n ],\n "type": "object"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "evidence_id",\n "subject",\n "provider",\n "predicate_type",\n "operation",\n "parameters",\n "raw_result",\n "normalized_result",\n "confidence",\n "authority",\n "environment",\n "limitations",\n "locations",\n "evidence_links"\n ],\n "type": "object"\n },\n "evidence_id": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "result": {\n "additionalProperties": false,\n "properties": {\n "matches": {\n "items": {\n "additionalProperties": false,\n "properties": {\n "address": {\n "type": "string"\n },\n "type": {\n "enum": [\n "string",\n "procedure"\n ],\n "type": "string"\n },\n "value": {\n "type": "string"\n }\n },\n "required": [\n "type",\n "address",\n "value"\n ],\n "type": "object"\n },\n "type": "array"\n },\n "query": {\n "type": "string"\n },\n "references": {\n "items": {\n "additionalProperties": false,\n "properties": {\n "containing_procedure": {\n "oneOf": [\n {\n "additionalProperties": false,\n "properties": {\n "found": {\n "const": true,\n "type": "boolean"\n },\n "procedure": {\n "additionalProperties": false,\n "properties": {\n "address": {\n "type": "string"\n },\n "body": {\n "default": {\n "available": false,\n "reason": "The provider did not report complete function body ranges."\n },\n "oneOf": [\n {\n "additionalProperties": false,\n "properties": {\n "available": {\n "const": false,\n "type": "boolean"\n },\n "reason": {\n "type": "string"\n }\n },\n "required": [\n "available",\n "reason"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "available": {\n "const": true,\n "type": "boolean"\n },\n "contains_entry": {\n "type": "boolean"\n },\n "non_contiguous": {\n "type": "boolean"\n },\n "provenance": {\n "minLength": 1,\n "type": "string"\n },\n "ranges": {\n "items": {\n "additionalProperties": false,\n "properties": {\n "end": {\n "description": "Inclusive last address of this observed body range.",\n "type": "string"\n },\n "start": {\n "type": "string"\n }\n },\n "required": [\n "start",\n "end"\n ],\n "type": "object"\n },\n "type": "array"\n },\n "span_bytes": {\n "anyOf": [\n {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n {\n "type": "null"\n }\n ]\n },\n "total_bytes": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "available",\n "provenance",\n "ranges",\n "total_bytes",\n "span_bytes",\n "non_contiguous",\n "contains_entry"\n ],\n "type": "object"\n }\n ]\n },\n "classification": {\n "anyOf": [\n {\n "additionalProperties": false,\n "properties": {\n "external": {\n "type": "boolean"\n },\n "provenance": {\n "minLength": 1,\n "type": "string"\n },\n "thunk": {\n "type": "boolean"\n },\n "thunk_target": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "external",\n "thunk",\n "thunk_target",\n "provenance"\n ],\n "type": "object"\n },\n {\n "type": "null"\n }\n ],\n "default": null\n },\n "name": {\n "type": "string"\n }\n },\n "required": [\n "address",\n "name",\n "classification",\n "body"\n ],\n "type": "object"\n },\n "query_address": {\n "type": "string"\n }\n },\n "required": [\n "query_address",\n "found",\n "procedure"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "found": {\n "const": false,\n "type": "boolean"\n },\n "procedure": {\n "type": "null"\n },\n "query_address": {\n "type": "string"\n },\n "reason": {\n "enum": [\n "outside_segments",\n "not_in_procedure"\n ],\n "type": "string"\n }\n },\n "required": [\n "query_address",\n "found",\n "procedure",\n "reason"\n ],\n "type": "object"\n }\n ]\n },\n "source_address": {\n "type": "string"\n },\n "target_address": {\n "type": "string"\n }\n },\n "required": [\n "target_address",\n "source_address",\n "containing_procedure"\n ],\n "type": "object"\n },\n "type": "array"\n },\n "residual_unknowns": {\n "items": {\n "type": "string"\n },\n "type": "array"\n },\n "search_mode": {\n "const": "literal",\n "type": "string"\n },\n "truncated": {\n "type": "boolean"\n }\n },\n "required": [\n "query",\n "search_mode",\n "matches",\n "references",\n "truncated",\n "residual_unknowns"\n ],\n "type": "object"\n }\n },\n "required": [\n "result",\n "evidence_id",\n "evidence"\n ],\n "type": "object"\n },\n "requiresSession": false,\n "title": "Trace Feature"\n },\n {\n "analysisOperation": "trace_call_path",\n "annotations": {\n "destructiveHint": false,\n "idempotentHint": false,\n "openWorldHint": false,\n "readOnlyHint": false\n },\n "description": "Trace direct callers or callees from one exact procedure address until the graph is exhausted or the optional goal is reached. Returns visited nodes, direct-call edges, a shortest traversal path, provider failures, and residual unknowns; unresolved indirect calls remain unknown.",\n "effects": {\n "accessesNetwork": false,\n "changesUiState": false,\n "idempotent": false,\n "launchesProcess": false,\n "mayDiscardData": false,\n "mutatesSession": true,\n "mutatesTarget": false,\n "writesFilesystem": false\n },\n "inputSchema": {\n "$schema": "https://json-schema.org/draft/2020-12/schema",\n "additionalProperties": false,\n "examples": [\n {\n "direction": "forward",\n "goal": "0x1100",\n "start": "0x1000"\n }\n ],\n "properties": {\n "direction": {\n "default": "forward",\n "description": "Direction in which to traverse or compare relationships.",\n "enum": [\n "forward",\n "backward"\n ],\n "type": "string"\n },\n "goal": {\n "description": "An optional provider-normalized destination address",\n "type": "string"\n },\n "start": {\n "description": "A provider-normalized procedure address",\n "type": "string"\n }\n },\n "required": [\n "start"\n ],\n "type": "object"\n },\n "kind": "enhanced",\n "name": "trace_call_path",\n "outputSchema": {\n "$defs": {\n "__schema0": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "number"\n },\n {\n "type": "boolean"\n },\n {\n "type": "null"\n },\n {\n "items": {\n "$ref": "#/$defs/__schema0"\n },\n "type": "array"\n },\n {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n }\n ]\n },\n "__schema1": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "number"\n },\n {\n "type": "boolean"\n },\n {\n "type": "null"\n },\n {\n "items": {\n "$ref": "#/$defs/__schema1"\n },\n "type": "array"\n },\n {\n "additionalProperties": {\n "$ref": "#/$defs/__schema1"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n }\n ]\n }\n },\n "$schema": "https://json-schema.org/draft/2020-12/schema",\n "additionalProperties": false,\n "properties": {\n "evidence": {\n "additionalProperties": false,\n "properties": {\n "analysis_profile": {\n "additionalProperties": false,\n "properties": {\n "digest": {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n },\n "parameters": {\n "additionalProperties": {\n "$ref": "#/$defs/__schema1"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n },\n "provider": {\n "additionalProperties": false,\n "properties": {\n "id": {\n "minLength": 1,\n "type": "string"\n },\n "name": {\n "minLength": 1,\n "type": "string"\n },\n "version": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "id",\n "name",\n "version"\n ],\n "type": "object"\n }\n },\n "required": [\n "provider",\n "parameters",\n "digest"\n ],\n "type": "object"\n },\n "authority": {\n "enum": [\n "shipped-artifact",\n "controlled-replay",\n "historical-reference",\n "external-service",\n "analyst-inference"\n ],\n "type": "string"\n },\n "confidence": {\n "enum": [\n "observed",\n "derived",\n "inferred"\n ],\n "type": "string"\n },\n "environment": {\n "anyOf": [\n {\n "additionalProperties": false,\n "properties": {\n "architecture": {\n "minLength": 1,\n "type": "string"\n },\n "id": {\n "minLength": 1,\n "type": "string"\n },\n "isolation": {\n "enum": [\n "none",\n "process",\n "container",\n "virtual-machine"\n ],\n "type": "string"\n },\n "platform": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "id",\n "platform",\n "architecture",\n "isolation"\n ],\n "type": "object"\n },\n {\n "type": "null"\n }\n ]\n },\n "evidence_id": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "evidence_links": {\n "items": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "type": "array"\n },\n "limitations": {\n "items": {\n "type": "string"\n },\n "type": "array"\n },\n "locations": {\n "items": {\n "oneOf": [\n {\n "additionalProperties": false,\n "properties": {\n "address": {\n "minLength": 1,\n "type": "string"\n },\n "kind": {\n "const": "address",\n "type": "string"\n }\n },\n "required": [\n "kind",\n "address"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "end": {\n "minLength": 1,\n "type": "string"\n },\n "kind": {\n "const": "address-range",\n "type": "string"\n },\n "start": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "kind",\n "start",\n "end"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "kind": {\n "const": "artifact-path",\n "type": "string"\n },\n "path": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "kind",\n "path"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "kind": {\n "const": "file-offset",\n "type": "string"\n },\n "offset": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "kind",\n "offset"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "end": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "kind": {\n "const": "file-offset-range",\n "type": "string"\n },\n "start": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "kind",\n "start",\n "end"\n ],\n "type": "object"\n }\n ]\n },\n "type": "array"\n },\n "normalized_result": {\n "$ref": "#/$defs/__schema1"\n },\n "operation": {\n "minLength": 1,\n "type": "string"\n },\n "parameters": {\n "additionalProperties": {\n "$ref": "#/$defs/__schema1"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n },\n "predicate_type": {\n "minLength": 1,\n "type": "string"\n },\n "provider": {\n "additionalProperties": false,\n "properties": {\n "id": {\n "minLength": 1,\n "type": "string"\n },\n "name": {\n "minLength": 1,\n "type": "string"\n },\n "version": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "id",\n "name",\n "version"\n ],\n "type": "object"\n },\n "raw_result": {\n "anyOf": [\n {\n "$ref": "#/$defs/__schema1"\n },\n {\n "type": "null"\n }\n ]\n },\n "subject": {\n "anyOf": [\n {\n "additionalProperties": false,\n "properties": {\n "architecture": {\n "anyOf": [\n {\n "enum": [\n "x86",\n "x86_64",\n "arm",\n "arm64"\n ],\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "digest": {\n "additionalProperties": false,\n "properties": {\n "sha256": {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n }\n },\n "required": [\n "sha256"\n ],\n "type": "object"\n },\n "format": {\n "enum": [\n "hopper",\n "analysis-database",\n "mach-o",\n "elf",\n "pe",\n "dos-mz",\n "dos-com",\n "zip",\n "ipa",\n "apk",\n "msix",\n "appx",\n "asar",\n "dmg",\n "pkg",\n "plist",\n "javascript",\n "source-map",\n "directory",\n "file",\n "unknown",\n "mach-o-universal",\n "javascript-bundle",\n "entitlements"\n ],\n "type": "string"\n },\n "local_path": {\n "type": "string"\n },\n "name": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "name",\n "digest",\n "format",\n "architecture",\n "local_path"\n ],\n "type": "object"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "evidence_id",\n "subject",\n "provider",\n "predicate_type",\n "operation",\n "parameters",\n "raw_result",\n "normalized_result",\n "confidence",\n "authority",\n "environment",\n "limitations",\n "locations",\n "evidence_links"\n ],\n "type": "object"\n },\n "evidence_id": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "result": {\n "additionalProperties": false,\n "properties": {\n "direction": {\n "enum": [\n "forward",\n "backward"\n ],\n "type": "string"\n },\n "edges": {\n "items": {\n "additionalProperties": false,\n "properties": {\n "discovery_depth": {\n "maximum": 9007199254740991,\n "minimum": 1,\n "type": "integer"\n },\n "source_address": {\n "type": "string"\n },\n "target_address": {\n "type": "string"\n }\n },\n "required": [\n "source_address",\n "target_address",\n "discovery_depth"\n ],\n "type": "object"\n },\n "type": "array"\n },\n "failures": {\n "items": {\n "additionalProperties": false,\n "properties": {\n "address": {\n "type": "string"\n },\n "error": {\n "oneOf": [\n {\n "additionalProperties": false,\n "properties": {\n "category": {\n "enum": [\n "invalid_input",\n "unsupported_provider",\n "integrity_mismatch",\n "truncated",\n "cancelled",\n "timeout",\n "unavailable",\n "execution_failure"\n ],\n "type": "string"\n },\n "code": {\n "const": "invalid_request",\n "type": "string"\n },\n "details": {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n },\n "message": {\n "minLength": 1,\n "type": "string"\n },\n "remediation": {\n "additionalProperties": false,\n "properties": {\n "action": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "action"\n ],\n "type": "object"\n },\n "retryable": {\n "type": "boolean"\n }\n },\n "required": [\n "code",\n "category",\n "message",\n "retryable",\n "remediation"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "category": {\n "enum": [\n "invalid_input",\n "unsupported_provider",\n "integrity_mismatch",\n "truncated",\n "cancelled",\n "timeout",\n "unavailable",\n "execution_failure"\n ],\n "type": "string"\n },\n "code": {\n "const": "unreadable_output",\n "type": "string"\n },\n "details": {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n },\n "message": {\n "minLength": 1,\n "type": "string"\n },\n "remediation": {\n "additionalProperties": false,\n "properties": {\n "action": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "action"\n ],\n "type": "object"\n },\n "retryable": {\n "type": "boolean"\n }\n },\n "required": [\n "code",\n "category",\n "message",\n "retryable",\n "remediation"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "category": {\n "enum": [\n "invalid_input",\n "unsupported_provider",\n "integrity_mismatch",\n "truncated",\n "cancelled",\n "timeout",\n "unavailable",\n "execution_failure"\n ],\n "type": "string"\n },\n "code": {\n "const": "capability_unavailable",\n "type": "string"\n },\n "details": {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n },\n "message": {\n "minLength": 1,\n "type": "string"\n },\n "remediation": {\n "additionalProperties": false,\n "properties": {\n "action": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "action"\n ],\n "type": "object"\n },\n "retryable": {\n "type": "boolean"\n }\n },\n "required": [\n "code",\n "category",\n "message",\n "retryable",\n "remediation"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "category": {\n "enum": [\n "invalid_input",\n "unsupported_provider",\n "integrity_mismatch",\n "truncated",\n "cancelled",\n "timeout",\n "unavailable",\n "execution_failure"\n ],\n "type": "string"\n },\n "code": {\n "const": "provider_unavailable",\n "type": "string"\n },\n "details": {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n },\n "message": {\n "minLength": 1,\n "type": "string"\n },\n "remediation": {\n "additionalProperties": false,\n "properties": {\n "action": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "action"\n ],\n "type": "object"\n },\n "retryable": {\n "type": "boolean"\n }\n },\n "required": [\n "code",\n "category",\n "message",\n "retryable",\n "remediation"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "category": {\n "enum": [\n "invalid_input",\n "unsupported_provider",\n "integrity_mismatch",\n "truncated",\n "cancelled",\n "timeout",\n "unavailable",\n "execution_failure"\n ],\n "type": "string"\n },\n "code": {\n "const": "provider_timeout",\n "type": "string"\n },\n "details": {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n },\n "message": {\n "minLength": 1,\n "type": "string"\n },\n "remediation": {\n "additionalProperties": false,\n "properties": {\n "action": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "action"\n ],\n "type": "object"\n },\n "retryable": {\n "type": "boolean"\n }\n },\n "required": [\n "code",\n "category",\n "message",\n "retryable",\n "remediation"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "category": {\n "enum": [\n "invalid_input",\n "unsupported_provider",\n "integrity_mismatch",\n "truncated",\n "cancelled",\n "timeout",\n "unavailable",\n "execution_failure"\n ],\n "type": "string"\n },\n "code": {\n "const": "cancelled",\n "type": "string"\n },\n "details": {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n },\n "message": {\n "minLength": 1,\n "type": "string"\n },\n "remediation": {\n "additionalProperties": false,\n "properties": {\n "action": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "action"\n ],\n "type": "object"\n },\n "retryable": {\n "type": "boolean"\n }\n },\n "required": [\n "code",\n "category",\n "message",\n "retryable",\n "remediation"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "category": {\n "enum": [\n "invalid_input",\n "unsupported_provider",\n "integrity_mismatch",\n "truncated",\n "cancelled",\n "timeout",\n "unavailable",\n "execution_failure"\n ],\n "type": "string"\n },\n "code": {\n "const": "artifact_integrity_mismatch",\n "type": "string"\n },\n "details": {\n "additionalProperties": false,\n "properties": {\n "calculated_sha256": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "declared_sha256": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "logical_path": {\n "type": "string"\n },\n "unpacked": {\n "type": "boolean"\n }\n },\n "required": [\n "logical_path",\n "declared_sha256",\n "calculated_sha256",\n "unpacked"\n ],\n "type": "object"\n },\n "message": {\n "minLength": 1,\n "type": "string"\n },\n "remediation": {\n "additionalProperties": false,\n "properties": {\n "action": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "action"\n ],\n "type": "object"\n },\n "retryable": {\n "type": "boolean"\n }\n },\n "required": [\n "code",\n "category",\n "message",\n "retryable",\n "remediation",\n "details"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "category": {\n "enum": [\n "invalid_input",\n "unsupported_provider",\n "integrity_mismatch",\n "truncated",\n "cancelled",\n "timeout",\n "unavailable",\n "execution_failure"\n ],\n "type": "string"\n },\n "code": {\n "const": "artifact_operation_failed",\n "type": "string"\n },\n "details": {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n },\n "message": {\n "minLength": 1,\n "type": "string"\n },\n "remediation": {\n "additionalProperties": false,\n "properties": {\n "action": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "action"\n ],\n "type": "object"\n },\n "retryable": {\n "type": "boolean"\n }\n },\n "required": [\n "code",\n "category",\n "message",\n "retryable",\n "remediation"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "category": {\n "enum": [\n "invalid_input",\n "unsupported_provider",\n "integrity_mismatch",\n "truncated",\n "cancelled",\n "timeout",\n "unavailable",\n "execution_failure"\n ],\n "type": "string"\n },\n "code": {\n "const": "evidence_integrity_mismatch",\n "type": "string"\n },\n "details": {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n },\n "message": {\n "minLength": 1,\n "type": "string"\n },\n "remediation": {\n "additionalProperties": false,\n "properties": {\n "action": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "action"\n ],\n "type": "object"\n },\n "retryable": {\n "type": "boolean"\n }\n },\n "required": [\n "code",\n "category",\n "message",\n "retryable",\n "remediation"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "category": {\n "enum": [\n "invalid_input",\n "unsupported_provider",\n "integrity_mismatch",\n "truncated",\n "cancelled",\n "timeout",\n "unavailable",\n "execution_failure"\n ],\n "type": "string"\n },\n "code": {\n "const": "truncated",\n "type": "string"\n },\n "details": {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n },\n "message": {\n "minLength": 1,\n "type": "string"\n },\n "remediation": {\n "additionalProperties": false,\n "properties": {\n "action": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "action"\n ],\n "type": "object"\n },\n "retryable": {\n "type": "boolean"\n }\n },\n "required": [\n "code",\n "category",\n "message",\n "retryable",\n "remediation"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "category": {\n "enum": [\n "invalid_input",\n "unsupported_provider",\n "integrity_mismatch",\n "truncated",\n "cancelled",\n "timeout",\n "unavailable",\n "execution_failure"\n ],\n "type": "string"\n },\n "code": {\n "const": "process_capture_failed",\n "type": "string"\n },\n "details": {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n },\n "message": {\n "minLength": 1,\n "type": "string"\n },\n "remediation": {\n "additionalProperties": false,\n "properties": {\n "action": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "action"\n ],\n "type": "object"\n },\n "retryable": {\n "type": "boolean"\n }\n },\n "required": [\n "code",\n "category",\n "message",\n "retryable",\n "remediation"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "category": {\n "enum": [\n "invalid_input",\n "unsupported_provider",\n "integrity_mismatch",\n "truncated",\n "cancelled",\n "timeout",\n "unavailable",\n "execution_failure"\n ],\n "type": "string"\n },\n "code": {\n "const": "cleanup_incomplete",\n "type": "string"\n },\n "details": {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n },\n "message": {\n "minLength": 1,\n "type": "string"\n },\n "remediation": {\n "additionalProperties": false,\n "properties": {\n "action": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "action"\n ],\n "type": "object"\n },\n "retryable": {\n "type": "boolean"\n }\n },\n "required": [\n "code",\n "category",\n "message",\n "retryable",\n "remediation"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "category": {\n "enum": [\n "invalid_input",\n "unsupported_provider",\n "integrity_mismatch",\n "truncated",\n "cancelled",\n "timeout",\n "unavailable",\n "execution_failure"\n ],\n "type": "string"\n },\n "code": {\n "const": "revision_conflict",\n "type": "string"\n },\n "details": {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n },\n "message": {\n "minLength": 1,\n "type": "string"\n },\n "remediation": {\n "additionalProperties": false,\n "properties": {\n "action": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "action"\n ],\n "type": "object"\n },\n "retryable": {\n "type": "boolean"\n }\n },\n "required": [\n "code",\n "category",\n "message",\n "retryable",\n "remediation"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "category": {\n "enum": [\n "invalid_input",\n "unsupported_provider",\n "integrity_mismatch",\n "truncated",\n "cancelled",\n "timeout",\n "unavailable",\n "execution_failure"\n ],\n "type": "string"\n },\n "code": {\n "const": "configuration_invalid",\n "type": "string"\n },\n "details": {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n },\n "message": {\n "minLength": 1,\n "type": "string"\n },\n "remediation": {\n "additionalProperties": false,\n "properties": {\n "action": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "action"\n ],\n "type": "object"\n },\n "retryable": {\n "type": "boolean"\n }\n },\n "required": [\n "code",\n "category",\n "message",\n "retryable",\n "remediation"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "category": {\n "enum": [\n "invalid_input",\n "unsupported_provider",\n "integrity_mismatch",\n "truncated",\n "cancelled",\n "timeout",\n "unavailable",\n "execution_failure"\n ],\n "type": "string"\n },\n "code": {\n "const": "target_unavailable",\n "type": "string"\n },\n "details": {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n },\n "message": {\n "minLength": 1,\n "type": "string"\n },\n "remediation": {\n "additionalProperties": false,\n "properties": {\n "action": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "action"\n ],\n "type": "object"\n },\n "retryable": {\n "type": "boolean"\n }\n },\n "required": [\n "code",\n "category",\n "message",\n "retryable",\n "remediation"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "category": {\n "enum": [\n "invalid_input",\n "unsupported_provider",\n "integrity_mismatch",\n "truncated",\n "cancelled",\n "timeout",\n "unavailable",\n "execution_failure"\n ],\n "type": "string"\n },\n "code": {\n "const": "execution_failure",\n "type": "string"\n },\n "details": {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n },\n "message": {\n "minLength": 1,\n "type": "string"\n },\n "remediation": {\n "additionalProperties": false,\n "properties": {\n "action": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "action"\n ],\n "type": "object"\n },\n "retryable": {\n "type": "boolean"\n }\n },\n "required": [\n "code",\n "category",\n "message",\n "retryable",\n "remediation"\n ],\n "type": "object"\n }\n ]\n }\n },\n "required": [\n "address",\n "error"\n ],\n "type": "object"\n },\n "type": "array"\n },\n "goal": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "goal_status": {\n "enum": [\n "not_requested",\n "reached",\n "not_reached"\n ],\n "type": "string"\n },\n "limitations": {\n "items": {\n "type": "string"\n },\n "type": "array"\n },\n "nodes": {\n "items": {\n "additionalProperties": false,\n "properties": {\n "address": {\n "type": "string"\n },\n "depth": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "address",\n "depth"\n ],\n "type": "object"\n },\n "type": "array"\n },\n "residual_unknowns": {\n "items": {\n "type": "string"\n },\n "type": "array"\n },\n "start": {\n "type": "string"\n },\n "traversal": {\n "additionalProperties": false,\n "properties": {\n "nodes_visited": {\n "maximum": 9007199254740991,\n "minimum": 1,\n "type": "integer"\n }\n },\n "required": [\n "nodes_visited"\n ],\n "type": "object"\n },\n "traversal_path": {\n "items": {\n "type": "string"\n },\n "type": "array"\n },\n "truncated": {\n "type": "boolean"\n }\n },\n "required": [\n "start",\n "goal",\n "direction",\n "goal_status",\n "nodes",\n "edges",\n "traversal_path",\n "failures",\n "traversal",\n "truncated",\n "residual_unknowns",\n "limitations"\n ],\n "type": "object"\n }\n },\n "required": [\n "result",\n "evidence_id",\n "evidence"\n ],\n "type": "object"\n },\n "requiresSession": false,\n "title": "Trace Call Path"\n },\n {\n "analysisOperation": "trace_native_ui_action",\n "annotations": {\n "destructiveHint": false,\n "idempotentHint": true,\n "openWorldHint": false,\n "readOnlyHint": false\n },\n "description": "Trace one unique compiled UI action, object ID, native symbol or exact function address through authored connections, encoded or symbolized Objective-C handlers, and bounded static call references. Typed direct and resolved indirect calls, ambiguous candidates, inferred untyped provider callees, and targetless sites remain distinct. Runtime reachability is unknown; use trace_native_values for recovered value dependencies.",\n "effects": {\n "accessesNetwork": false,\n "changesUiState": false,\n "idempotent": true,\n "launchesProcess": false,\n "mayDiscardData": false,\n "mutatesSession": true,\n "mutatesTarget": false,\n "writesFilesystem": false\n },\n "inputSchema": {\n "$schema": "https://json-schema.org/draft/2020-12/schema",\n "additionalProperties": false,\n "examples": [\n {\n "action": "buildTapped:",\n "max_depth": 8,\n "max_edges": 500,\n "max_nodes": 250\n }\n ],\n "properties": {\n "action": {\n "description": "A unique compiled UI action selector, interface object ID, native symbol or exact function address",\n "minLength": 1,\n "type": "string"\n },\n "max_depth": {\n "default": 8,\n "description": "Maximum permitted depth for this operation.",\n "maximum": 32,\n "minimum": 0,\n "type": "integer"\n },\n "max_edges": {\n "default": 500,\n "description": "Maximum permitted edges for this operation.",\n "maximum": 5000,\n "minimum": 1,\n "type": "integer"\n },\n "max_nodes": {\n "default": 250,\n "description": "Maximum permitted nodes for this operation.",\n "maximum": 2000,\n "minimum": 1,\n "type": "integer"\n }\n },\n "required": [\n "action"\n ],\n "type": "object"\n },\n "kind": "enhanced",\n "name": "trace_native_ui_action",\n "outputSchema": {\n "$defs": {\n "__schema0": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "number"\n },\n {\n "type": "boolean"\n },\n {\n "type": "null"\n },\n {\n "items": {\n "$ref": "#/$defs/__schema0"\n },\n "type": "array"\n },\n {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n }\n ]\n }\n },\n "$schema": "https://json-schema.org/draft/2020-12/schema",\n "additionalProperties": false,\n "properties": {\n "evidence": {\n "additionalProperties": false,\n "properties": {\n "analysis_profile": {\n "additionalProperties": false,\n "properties": {\n "digest": {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n },\n "parameters": {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n },\n "provider": {\n "additionalProperties": false,\n "properties": {\n "id": {\n "minLength": 1,\n "type": "string"\n },\n "name": {\n "minLength": 1,\n "type": "string"\n },\n "version": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "id",\n "name",\n "version"\n ],\n "type": "object"\n }\n },\n "required": [\n "provider",\n "parameters",\n "digest"\n ],\n "type": "object"\n },\n "authority": {\n "enum": [\n "shipped-artifact",\n "controlled-replay",\n "historical-reference",\n "external-service",\n "analyst-inference"\n ],\n "type": "string"\n },\n "confidence": {\n "enum": [\n "observed",\n "derived",\n "inferred"\n ],\n "type": "string"\n },\n "environment": {\n "anyOf": [\n {\n "additionalProperties": false,\n "properties": {\n "architecture": {\n "minLength": 1,\n "type": "string"\n },\n "id": {\n "minLength": 1,\n "type": "string"\n },\n "isolation": {\n "enum": [\n "none",\n "process",\n "container",\n "virtual-machine"\n ],\n "type": "string"\n },\n "platform": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "id",\n "platform",\n "architecture",\n "isolation"\n ],\n "type": "object"\n },\n {\n "type": "null"\n }\n ]\n },\n "evidence_id": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "evidence_links": {\n "items": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "type": "array"\n },\n "limitations": {\n "items": {\n "type": "string"\n },\n "type": "array"\n },\n "locations": {\n "items": {\n "oneOf": [\n {\n "additionalProperties": false,\n "properties": {\n "address": {\n "minLength": 1,\n "type": "string"\n },\n "kind": {\n "const": "address",\n "type": "string"\n }\n },\n "required": [\n "kind",\n "address"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "end": {\n "minLength": 1,\n "type": "string"\n },\n "kind": {\n "const": "address-range",\n "type": "string"\n },\n "start": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "kind",\n "start",\n "end"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "kind": {\n "const": "artifact-path",\n "type": "string"\n },\n "path": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "kind",\n "path"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "kind": {\n "const": "file-offset",\n "type": "string"\n },\n "offset": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "kind",\n "offset"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "end": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "kind": {\n "const": "file-offset-range",\n "type": "string"\n },\n "start": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "kind",\n "start",\n "end"\n ],\n "type": "object"\n }\n ]\n },\n "type": "array"\n },\n "normalized_result": {\n "$ref": "#/$defs/__schema0"\n },\n "operation": {\n "minLength": 1,\n "type": "string"\n },\n "parameters": {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n },\n "predicate_type": {\n "minLength": 1,\n "type": "string"\n },\n "provider": {\n "additionalProperties": false,\n "properties": {\n "id": {\n "minLength": 1,\n "type": "string"\n },\n "name": {\n "minLength": 1,\n "type": "string"\n },\n "version": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "id",\n "name",\n "version"\n ],\n "type": "object"\n },\n "raw_result": {\n "anyOf": [\n {\n "$ref": "#/$defs/__schema0"\n },\n {\n "type": "null"\n }\n ]\n },\n "subject": {\n "anyOf": [\n {\n "additionalProperties": false,\n "properties": {\n "architecture": {\n "anyOf": [\n {\n "enum": [\n "x86",\n "x86_64",\n "arm",\n "arm64"\n ],\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "digest": {\n "additionalProperties": false,\n "properties": {\n "sha256": {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n }\n },\n "required": [\n "sha256"\n ],\n "type": "object"\n },\n "format": {\n "enum": [\n "hopper",\n "analysis-database",\n "mach-o",\n "elf",\n "pe",\n "dos-mz",\n "dos-com",\n "zip",\n "ipa",\n "apk",\n "msix",\n "appx",\n "asar",\n "dmg",\n "pkg",\n "plist",\n "javascript",\n "source-map",\n "directory",\n "file",\n "unknown",\n "mach-o-universal",\n "javascript-bundle",\n "entitlements"\n ],\n "type": "string"\n },\n "local_path": {\n "type": "string"\n },\n "name": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "name",\n "digest",\n "format",\n "architecture",\n "local_path"\n ],\n "type": "object"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "evidence_id",\n "subject",\n "provider",\n "predicate_type",\n "operation",\n "parameters",\n "raw_result",\n "normalized_result",\n "confidence",\n "authority",\n "environment",\n "limitations",\n "locations",\n "evidence_links"\n ],\n "type": "object"\n },\n "evidence_id": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "result": {\n "additionalProperties": false,\n "properties": {\n "coverage": {\n "items": {\n "additionalProperties": false,\n "properties": {\n "examined": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "facet": {\n "minLength": 1,\n "type": "string"\n },\n "omitted": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "reason": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "status": {\n "enum": [\n "complete",\n "partial",\n "unsupported",\n "not_requested"\n ],\n "type": "string"\n }\n },\n "required": [\n "facet",\n "status",\n "reason",\n "examined",\n "omitted"\n ],\n "type": "object"\n },\n "type": "array"\n },\n "direction": {\n "enum": [\n "forward",\n "backward"\n ],\n "type": "string"\n },\n "edges": {\n "items": {\n "oneOf": [\n {\n "additionalProperties": false,\n "properties": {\n "evidence": {\n "items": {\n "additionalProperties": false,\n "properties": {\n "artifact_path": {\n "anyOf": [\n {\n "minLength": 1,\n "type": "string"\n },\n {\n "type": "null"\n }\n ],\n "default": null\n },\n "artifact_sha256": {\n "anyOf": [\n {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n },\n {\n "type": "null"\n }\n ],\n "default": null\n },\n "description": {\n "minLength": 1,\n "type": "string"\n },\n "kind": {\n "enum": [\n "binary_metadata",\n "interface_builder_resource",\n "symbol",\n "reference",\n "decompiler"\n ],\n "type": "string"\n },\n "location": {\n "additionalProperties": false,\n "properties": {\n "address": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "file_offset": {\n "anyOf": [\n {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "address",\n "file_offset"\n ],\n "type": "object"\n }\n },\n "required": [\n "kind",\n "description",\n "location",\n "artifact_path",\n "artifact_sha256"\n ],\n "type": "object"\n },\n "minItems": 1,\n "type": "array"\n },\n "from": {\n "minLength": 1,\n "type": "string"\n },\n "id": {\n "minLength": 1,\n "type": "string"\n },\n "limitations": {\n "items": {\n "type": "string"\n },\n "type": "array"\n },\n "relation": {\n "enum": [\n "contains",\n "outlet_to",\n "target_action",\n "segue_to",\n "objc_dispatch",\n "swift_witness_dispatch",\n "swift_vtable_dispatch",\n "thunk_to",\n "direct_call",\n "indirect_call",\n "provider_call",\n "reads",\n "writes",\n "flows_to",\n "controls"\n ],\n "type": "string"\n },\n "resolution": {\n "enum": [\n "observed",\n "inferred",\n "resolved",\n "ambiguous"\n ],\n "type": "string"\n },\n "to": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "id",\n "from",\n "to",\n "relation",\n "resolution",\n "evidence",\n "limitations"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "evidence": {\n "items": {\n "additionalProperties": false,\n "properties": {\n "artifact_path": {\n "anyOf": [\n {\n "minLength": 1,\n "type": "string"\n },\n {\n "type": "null"\n }\n ],\n "default": null\n },\n "artifact_sha256": {\n "anyOf": [\n {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n },\n {\n "type": "null"\n }\n ],\n "default": null\n },\n "description": {\n "minLength": 1,\n "type": "string"\n },\n "kind": {\n "enum": [\n "binary_metadata",\n "interface_builder_resource",\n "symbol",\n "reference",\n "decompiler"\n ],\n "type": "string"\n },\n "location": {\n "additionalProperties": false,\n "properties": {\n "address": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "file_offset": {\n "anyOf": [\n {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "address",\n "file_offset"\n ],\n "type": "object"\n }\n },\n "required": [\n "kind",\n "description",\n "location",\n "artifact_path",\n "artifact_sha256"\n ],\n "type": "object"\n },\n "type": "array"\n },\n "from": {\n "minLength": 1,\n "type": "string"\n },\n "id": {\n "minLength": 1,\n "type": "string"\n },\n "limitations": {\n "items": {\n "type": "string"\n },\n "type": "array"\n },\n "reason": {\n "minLength": 1,\n "type": "string"\n },\n "relation": {\n "enum": [\n "contains",\n "outlet_to",\n "target_action",\n "segue_to",\n "objc_dispatch",\n "swift_witness_dispatch",\n "swift_vtable_dispatch",\n "thunk_to",\n "direct_call",\n "indirect_call",\n "provider_call",\n "reads",\n "writes",\n "flows_to",\n "controls"\n ],\n "type": "string"\n },\n "resolution": {\n "const": "unresolved",\n "type": "string"\n },\n "to": {\n "type": "null"\n }\n },\n "required": [\n "id",\n "from",\n "to",\n "relation",\n "resolution",\n "reason",\n "evidence",\n "limitations"\n ],\n "type": "object"\n }\n ]\n },\n "type": "array"\n },\n "limitations": {\n "items": {\n "minLength": 1,\n "type": "string"\n },\n "type": "array"\n },\n "nodes": {\n "items": {\n "additionalProperties": false,\n "properties": {\n "attributes": {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n },\n "evidence": {\n "items": {\n "additionalProperties": false,\n "properties": {\n "artifact_path": {\n "anyOf": [\n {\n "minLength": 1,\n "type": "string"\n },\n {\n "type": "null"\n }\n ],\n "default": null\n },\n "artifact_sha256": {\n "anyOf": [\n {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n },\n {\n "type": "null"\n }\n ],\n "default": null\n },\n "description": {\n "minLength": 1,\n "type": "string"\n },\n "kind": {\n "enum": [\n "binary_metadata",\n "interface_builder_resource",\n "symbol",\n "reference",\n "decompiler"\n ],\n "type": "string"\n },\n "location": {\n "additionalProperties": false,\n "properties": {\n "address": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "file_offset": {\n "anyOf": [\n {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "address",\n "file_offset"\n ],\n "type": "object"\n }\n },\n "required": [\n "kind",\n "description",\n "location",\n "artifact_path",\n "artifact_sha256"\n ],\n "type": "object"\n },\n "type": "array"\n },\n "id": {\n "minLength": 1,\n "type": "string"\n },\n "kind": {\n "enum": [\n "storyboard",\n "scene",\n "view_controller",\n "view",\n "control",\n "constraint",\n "layout_guide",\n "resource",\n "placeholder",\n "external_object",\n "outlet",\n "action",\n "segue",\n "objc_class",\n "objc_selector",\n "swift_declaration",\n "swift_requirement",\n "dispatch_table",\n "dispatch_slot",\n "thunk",\n "function",\n "state_value",\n "global_value",\n "field",\n "branch_condition",\n "sink",\n "unknown"\n ],\n "type": "string"\n },\n "location": {\n "anyOf": [\n {\n "additionalProperties": false,\n "properties": {\n "address": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "file_offset": {\n "anyOf": [\n {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "address",\n "file_offset"\n ],\n "type": "object"\n },\n {\n "type": "null"\n }\n ]\n },\n "name": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "id",\n "kind",\n "name",\n "location",\n "attributes",\n "evidence"\n ],\n "type": "object"\n },\n "type": "array"\n },\n "provider": {\n "additionalProperties": false,\n "properties": {\n "id": {\n "minLength": 1,\n "type": "string"\n },\n "tool_version": {\n "minLength": 1,\n "type": "string"\n },\n "version": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "id",\n "version",\n "tool_version"\n ],\n "type": "object"\n },\n "reached_depth": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "reason": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "start": {\n "minLength": 1,\n "type": "string"\n },\n "target_sha256": {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n },\n "truncated": {\n "type": "boolean"\n },\n "unresolved": {\n "items": {\n "oneOf": [\n {\n "additionalProperties": false,\n "properties": {\n "evidence": {\n "items": {\n "additionalProperties": false,\n "properties": {\n "artifact_path": {\n "anyOf": [\n {\n "minLength": 1,\n "type": "string"\n },\n {\n "type": "null"\n }\n ],\n "default": null\n },\n "artifact_sha256": {\n "anyOf": [\n {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n },\n {\n "type": "null"\n }\n ],\n "default": null\n },\n "description": {\n "minLength": 1,\n "type": "string"\n },\n "kind": {\n "enum": [\n "binary_metadata",\n "interface_builder_resource",\n "symbol",\n "reference",\n "decompiler"\n ],\n "type": "string"\n },\n "location": {\n "additionalProperties": false,\n "properties": {\n "address": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "file_offset": {\n "anyOf": [\n {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "address",\n "file_offset"\n ],\n "type": "object"\n }\n },\n "required": [\n "kind",\n "description",\n "location",\n "artifact_path",\n "artifact_sha256"\n ],\n "type": "object"\n },\n "minItems": 1,\n "type": "array"\n },\n "from": {\n "minLength": 1,\n "type": "string"\n },\n "id": {\n "minLength": 1,\n "type": "string"\n },\n "limitations": {\n "items": {\n "type": "string"\n },\n "type": "array"\n },\n "relation": {\n "enum": [\n "contains",\n "outlet_to",\n "target_action",\n "segue_to",\n "objc_dispatch",\n "swift_witness_dispatch",\n "swift_vtable_dispatch",\n "thunk_to",\n "direct_call",\n "indirect_call",\n "provider_call",\n "reads",\n "writes",\n "flows_to",\n "controls"\n ],\n "type": "string"\n },\n "resolution": {\n "enum": [\n "observed",\n "inferred",\n "resolved",\n "ambiguous"\n ],\n "type": "string"\n },\n "to": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "id",\n "from",\n "to",\n "relation",\n "resolution",\n "evidence",\n "limitations"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "evidence": {\n "items": {\n "additionalProperties": false,\n "properties": {\n "artifact_path": {\n "anyOf": [\n {\n "minLength": 1,\n "type": "string"\n },\n {\n "type": "null"\n }\n ],\n "default": null\n },\n "artifact_sha256": {\n "anyOf": [\n {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n },\n {\n "type": "null"\n }\n ],\n "default": null\n },\n "description": {\n "minLength": 1,\n "type": "string"\n },\n "kind": {\n "enum": [\n "binary_metadata",\n "interface_builder_resource",\n "symbol",\n "reference",\n "decompiler"\n ],\n "type": "string"\n },\n "location": {\n "additionalProperties": false,\n "properties": {\n "address": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "file_offset": {\n "anyOf": [\n {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "address",\n "file_offset"\n ],\n "type": "object"\n }\n },\n "required": [\n "kind",\n "description",\n "location",\n "artifact_path",\n "artifact_sha256"\n ],\n "type": "object"\n },\n "type": "array"\n },\n "from": {\n "minLength": 1,\n "type": "string"\n },\n "id": {\n "minLength": 1,\n "type": "string"\n },\n "limitations": {\n "items": {\n "type": "string"\n },\n "type": "array"\n },\n "reason": {\n "minLength": 1,\n "type": "string"\n },\n "relation": {\n "enum": [\n "contains",\n "outlet_to",\n "target_action",\n "segue_to",\n "objc_dispatch",\n "swift_witness_dispatch",\n "swift_vtable_dispatch",\n "thunk_to",\n "direct_call",\n "indirect_call",\n "provider_call",\n "reads",\n "writes",\n "flows_to",\n "controls"\n ],\n "type": "string"\n },\n "resolution": {\n "const": "unresolved",\n "type": "string"\n },\n "to": {\n "type": "null"\n }\n },\n "required": [\n "id",\n "from",\n "to",\n "relation",\n "resolution",\n "reason",\n "evidence",\n "limitations"\n ],\n "type": "object"\n }\n ]\n },\n "type": "array"\n }\n },\n "required": [\n "target_sha256",\n "provider",\n "start",\n "direction",\n "nodes",\n "edges",\n "unresolved",\n "reached_depth",\n "truncated",\n "reason",\n "coverage",\n "limitations"\n ],\n "type": "object"\n }\n },\n "required": [\n "result",\n "evidence_id",\n "evidence"\n ],\n "type": "object"\n },\n "requiresSession": false,\n "title": "Trace Native Ui Action"\n },\n {\n "analysisOperation": "trace_native_values",\n "annotations": {\n "destructiveHint": false,\n "idempotentHint": true,\n "openWorldHint": false,\n "readOnlyHint": false\n },\n "description": "Trace a bounded static dependency graph from one explicit native procedure. Includes high-p-code def-use, constants, operators, memory and branch operations, resolved call edges, and derived argument/parameter and return/output bindings. Missing bindings, alias semantics, persistent state and RNG roles remain unknown. Budgets bound depth, decompilations, graph size and payloads; nodes are paginated.",\n "effects": {\n "accessesNetwork": false,\n "changesUiState": false,\n "idempotent": true,\n "launchesProcess": false,\n "mayDiscardData": false,\n "mutatesSession": true,\n "mutatesTarget": false,\n "writesFilesystem": false\n },\n "inputSchema": {\n "$schema": "https://json-schema.org/draft/2020-12/schema",\n "additionalProperties": false,\n "examples": [\n {\n "limit": 1000,\n "max_call_sites": 256,\n "max_depth": 3,\n "max_edges": 10000,\n "max_functions": 16,\n "max_nodes": 5000,\n "offset": 0,\n "procedure": "0x1000"\n }\n ],\n "properties": {\n "limit": {\n "default": 1000,\n "description": "Value for limit.",\n "maximum": 5000,\n "minimum": 1,\n "type": "integer"\n },\n "max_call_sites": {\n "default": 256,\n "description": "Maximum permitted call sites for this operation.",\n "maximum": 4096,\n "minimum": 1,\n "type": "integer"\n },\n "max_depth": {\n "default": 3,\n "description": "Maximum permitted depth for this operation.",\n "maximum": 16,\n "minimum": 0,\n "type": "integer"\n },\n "max_edges": {\n "default": 10000,\n "description": "Maximum permitted edges for this operation.",\n "maximum": 40000,\n "minimum": 1,\n "type": "integer"\n },\n "max_functions": {\n "default": 16,\n "description": "Maximum permitted functions for this operation.",\n "maximum": 64,\n "minimum": 1,\n "type": "integer"\n },\n "max_nodes": {\n "default": 5000,\n "description": "Maximum permitted nodes for this operation.",\n "maximum": 20000,\n "minimum": 1,\n "type": "integer"\n },\n "offset": {\n "default": 0,\n "description": "Value for offset.",\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "procedure": {\n "description": "Value for procedure.",\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "procedure"\n ],\n "type": "object"\n },\n "kind": "enhanced",\n "name": "trace_native_values",\n "outputSchema": {\n "$defs": {\n "__schema0": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "number"\n },\n {\n "type": "boolean"\n },\n {\n "type": "null"\n },\n {\n "items": {\n "$ref": "#/$defs/__schema0"\n },\n "type": "array"\n },\n {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n }\n ]\n }\n },\n "$schema": "https://json-schema.org/draft/2020-12/schema",\n "additionalProperties": false,\n "properties": {\n "evidence": {\n "additionalProperties": false,\n "properties": {\n "analysis_profile": {\n "additionalProperties": false,\n "properties": {\n "digest": {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n },\n "parameters": {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n },\n "provider": {\n "additionalProperties": false,\n "properties": {\n "id": {\n "minLength": 1,\n "type": "string"\n },\n "name": {\n "minLength": 1,\n "type": "string"\n },\n "version": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "id",\n "name",\n "version"\n ],\n "type": "object"\n }\n },\n "required": [\n "provider",\n "parameters",\n "digest"\n ],\n "type": "object"\n },\n "authority": {\n "enum": [\n "shipped-artifact",\n "controlled-replay",\n "historical-reference",\n "external-service",\n "analyst-inference"\n ],\n "type": "string"\n },\n "confidence": {\n "enum": [\n "observed",\n "derived",\n "inferred"\n ],\n "type": "string"\n },\n "environment": {\n "anyOf": [\n {\n "additionalProperties": false,\n "properties": {\n "architecture": {\n "minLength": 1,\n "type": "string"\n },\n "id": {\n "minLength": 1,\n "type": "string"\n },\n "isolation": {\n "enum": [\n "none",\n "process",\n "container",\n "virtual-machine"\n ],\n "type": "string"\n },\n "platform": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "id",\n "platform",\n "architecture",\n "isolation"\n ],\n "type": "object"\n },\n {\n "type": "null"\n }\n ]\n },\n "evidence_id": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "evidence_links": {\n "items": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "type": "array"\n },\n "limitations": {\n "items": {\n "type": "string"\n },\n "type": "array"\n },\n "locations": {\n "items": {\n "oneOf": [\n {\n "additionalProperties": false,\n "properties": {\n "address": {\n "minLength": 1,\n "type": "string"\n },\n "kind": {\n "const": "address",\n "type": "string"\n }\n },\n "required": [\n "kind",\n "address"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "end": {\n "minLength": 1,\n "type": "string"\n },\n "kind": {\n "const": "address-range",\n "type": "string"\n },\n "start": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "kind",\n "start",\n "end"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "kind": {\n "const": "artifact-path",\n "type": "string"\n },\n "path": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "kind",\n "path"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "kind": {\n "const": "file-offset",\n "type": "string"\n },\n "offset": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "kind",\n "offset"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "end": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "kind": {\n "const": "file-offset-range",\n "type": "string"\n },\n "start": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "kind",\n "start",\n "end"\n ],\n "type": "object"\n }\n ]\n },\n "type": "array"\n },\n "normalized_result": {\n "$ref": "#/$defs/__schema0"\n },\n "operation": {\n "minLength": 1,\n "type": "string"\n },\n "parameters": {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n },\n "predicate_type": {\n "minLength": 1,\n "type": "string"\n },\n "provider": {\n "additionalProperties": false,\n "properties": {\n "id": {\n "minLength": 1,\n "type": "string"\n },\n "name": {\n "minLength": 1,\n "type": "string"\n },\n "version": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "id",\n "name",\n "version"\n ],\n "type": "object"\n },\n "raw_result": {\n "anyOf": [\n {\n "$ref": "#/$defs/__schema0"\n },\n {\n "type": "null"\n }\n ]\n },\n "subject": {\n "anyOf": [\n {\n "additionalProperties": false,\n "properties": {\n "architecture": {\n "anyOf": [\n {\n "enum": [\n "x86",\n "x86_64",\n "arm",\n "arm64"\n ],\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "digest": {\n "additionalProperties": false,\n "properties": {\n "sha256": {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n }\n },\n "required": [\n "sha256"\n ],\n "type": "object"\n },\n "format": {\n "enum": [\n "hopper",\n "analysis-database",\n "mach-o",\n "elf",\n "pe",\n "dos-mz",\n "dos-com",\n "zip",\n "ipa",\n "apk",\n "msix",\n "appx",\n "asar",\n "dmg",\n "pkg",\n "plist",\n "javascript",\n "source-map",\n "directory",\n "file",\n "unknown",\n "mach-o-universal",\n "javascript-bundle",\n "entitlements"\n ],\n "type": "string"\n },\n "local_path": {\n "type": "string"\n },\n "name": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "name",\n "digest",\n "format",\n "architecture",\n "local_path"\n ],\n "type": "object"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "evidence_id",\n "subject",\n "provider",\n "predicate_type",\n "operation",\n "parameters",\n "raw_result",\n "normalized_result",\n "confidence",\n "authority",\n "environment",\n "limitations",\n "locations",\n "evidence_links"\n ],\n "type": "object"\n },\n "evidence_id": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "result": {\n "additionalProperties": false,\n "properties": {\n "decompilations": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "edges": {\n "items": {\n "additionalProperties": false,\n "properties": {\n "evidence_id": {\n "type": "string"\n },\n "input_index": {\n "anyOf": [\n {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n {\n "type": "null"\n }\n ]\n },\n "kind": {\n "enum": [\n "def-use",\n "call",\n "parameter-use",\n "argument-binding",\n "return-binding"\n ],\n "type": "string"\n },\n "source": {\n "type": "string"\n },\n "status": {\n "enum": [\n "derived",\n "direct",\n "resolved-indirect",\n "candidate"\n ],\n "type": "string"\n },\n "target": {\n "type": "string"\n }\n },\n "required": [\n "source",\n "target",\n "input_index",\n "kind",\n "status",\n "evidence_id"\n ],\n "type": "object"\n },\n "type": "array"\n },\n "limitations": {\n "items": {\n "type": "string"\n },\n "type": "array"\n },\n "next_offset": {\n "anyOf": [\n {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n {\n "type": "null"\n }\n ]\n },\n "nodes": {\n "items": {\n "additionalProperties": false,\n "properties": {\n "evidence_id": {\n "type": "string"\n },\n "id": {\n "type": "string"\n },\n "kind": {\n "enum": [\n "operation",\n "parameter"\n ],\n "type": "string"\n },\n "operation": {\n "anyOf": [\n {\n "additionalProperties": false,\n "properties": {\n "address": {\n "minLength": 1,\n "type": "string"\n },\n "block_membership": {\n "default": "unavailable",\n "enum": [\n "member",\n "detached",\n "unavailable"\n ],\n "type": "string"\n },\n "id": {\n "minLength": 1,\n "type": "string"\n },\n "inputs": {\n "items": {\n "additionalProperties": false,\n "properties": {\n "constant_hex": {\n "anyOf": [\n {\n "pattern": "^[0-9a-f]+$",\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "kind": {\n "enum": [\n "constant",\n "address",\n "register",\n "unique",\n "other"\n ],\n "type": "string"\n },\n "location": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "size_bytes": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "kind",\n "size_bytes",\n "location",\n "constant_hex"\n ],\n "type": "object"\n },\n "type": "array"\n },\n "is_dead": {\n "type": "boolean"\n },\n "opcode": {\n "minLength": 1,\n "type": "string"\n },\n "output": {\n "anyOf": [\n {\n "additionalProperties": false,\n "properties": {\n "constant_hex": {\n "anyOf": [\n {\n "pattern": "^[0-9a-f]+$",\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "kind": {\n "enum": [\n "constant",\n "address",\n "register",\n "unique",\n "other"\n ],\n "type": "string"\n },\n "location": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "size_bytes": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "kind",\n "size_bytes",\n "location",\n "constant_hex"\n ],\n "type": "object"\n },\n {\n "type": "null"\n }\n ]\n },\n "sequence": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "id",\n "address",\n "sequence",\n "opcode",\n "is_dead",\n "block_membership",\n "inputs",\n "output"\n ],\n "type": "object"\n },\n {\n "type": "null"\n }\n ]\n },\n "parameter": {\n "anyOf": [\n {\n "additionalProperties": false,\n "properties": {\n "data_type": {\n "type": "string"\n },\n "name": {\n "type": "string"\n },\n "ordinal": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "ordinal",\n "name",\n "data_type"\n ],\n "type": "object"\n },\n {\n "type": "null"\n }\n ]\n },\n "procedure": {\n "type": "string"\n }\n },\n "required": [\n "id",\n "procedure",\n "evidence_id",\n "kind",\n "operation",\n "parameter"\n ],\n "type": "object"\n },\n "type": "array"\n },\n "procedures": {\n "items": {\n "additionalProperties": false,\n "properties": {\n "address": {\n "type": "string"\n },\n "analysis_profile_digest": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "depth": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "evidence_id": {\n "type": "string"\n },\n "provider": {\n "type": "string"\n }\n },\n "required": [\n "address",\n "depth",\n "evidence_id",\n "provider",\n "analysis_profile_digest"\n ],\n "type": "object"\n },\n "type": "array"\n },\n "seed": {\n "type": "string"\n },\n "target_sha256": {\n "type": "string"\n },\n "total_edges": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "total_nodes": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "truncated": {\n "type": "boolean"\n },\n "unknowns": {\n "items": {\n "additionalProperties": false,\n "properties": {\n "address": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "procedure": {\n "type": "string"\n },\n "reason": {\n "type": "string"\n }\n },\n "required": [\n "procedure",\n "address",\n "reason"\n ],\n "type": "object"\n },\n "type": "array"\n }\n },\n "required": [\n "seed",\n "target_sha256",\n "nodes",\n "edges",\n "procedures",\n "unknowns",\n "total_nodes",\n "total_edges",\n "decompilations",\n "next_offset",\n "truncated",\n "limitations"\n ],\n "type": "object"\n }\n },\n "required": [\n "result",\n "evidence_id",\n "evidence"\n ],\n "type": "object"\n },\n "requiresSession": false,\n "title": "Trace Native Values"\n },\n {\n "analysisOperation": "observe_native_ui",\n "annotations": {\n "destructiveHint": false,\n "idempotentHint": true,\n "openWorldHint": true,\n "readOnlyHint": false\n },\n "description": "Observe an already-running native app by PID and window ID, bound to the active Mach-O target. Captures a bounded accessibility tree and selected-window screenshot; OS permission denial fails without broad capture or target launch.",\n "effects": {\n "accessesNetwork": false,\n "changesUiState": false,\n "idempotent": true,\n "launchesProcess": true,\n "mayDiscardData": false,\n "mutatesSession": true,\n "mutatesTarget": false,\n "writesFilesystem": true\n },\n "inputSchema": {\n "$schema": "https://json-schema.org/draft/2020-12/schema",\n "additionalProperties": false,\n "examples": [\n {\n "pid": 123,\n "window_id": 456\n }\n ],\n "properties": {\n "accessibility": {\n "default": true,\n "description": "Value for accessibility.",\n "type": "boolean"\n },\n "max_nodes": {\n "default": 500,\n "description": "Maximum accessibility nodes per capture; increase for large windows.",\n "exclusiveMinimum": 0,\n "maximum": 9007199254740991,\n "type": "integer"\n },\n "pid": {\n "description": "Value for pid.",\n "exclusiveMinimum": 0,\n "maximum": 9007199254740991,\n "type": "integer"\n },\n "screenshot": {\n "default": true,\n "description": "Value for screenshot.",\n "type": "boolean"\n },\n "window_id": {\n "description": "Value for window id.",\n "exclusiveMinimum": 0,\n "maximum": 9007199254740991,\n "type": "integer"\n }\n },\n "required": [\n "pid",\n "window_id"\n ],\n "type": "object"\n },\n "kind": "native-provider",\n "name": "observe_native_ui",\n "outputSchema": {\n "$defs": {\n "__schema0": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "number"\n },\n {\n "type": "boolean"\n },\n {\n "type": "null"\n },\n {\n "items": {\n "$ref": "#/$defs/__schema0"\n },\n "type": "array"\n },\n {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n }\n ]\n }\n },\n "$schema": "https://json-schema.org/draft/2020-12/schema",\n "additionalProperties": false,\n "properties": {\n "evidence": {\n "additionalProperties": false,\n "properties": {\n "analysis_profile": {\n "additionalProperties": false,\n "properties": {\n "digest": {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n },\n "parameters": {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n },\n "provider": {\n "additionalProperties": false,\n "properties": {\n "id": {\n "minLength": 1,\n "type": "string"\n },\n "name": {\n "minLength": 1,\n "type": "string"\n },\n "version": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "id",\n "name",\n "version"\n ],\n "type": "object"\n }\n },\n "required": [\n "provider",\n "parameters",\n "digest"\n ],\n "type": "object"\n },\n "authority": {\n "enum": [\n "shipped-artifact",\n "controlled-replay",\n "historical-reference",\n "external-service",\n "analyst-inference"\n ],\n "type": "string"\n },\n "confidence": {\n "enum": [\n "observed",\n "derived",\n "inferred"\n ],\n "type": "string"\n },\n "environment": {\n "anyOf": [\n {\n "additionalProperties": false,\n "properties": {\n "architecture": {\n "minLength": 1,\n "type": "string"\n },\n "id": {\n "minLength": 1,\n "type": "string"\n },\n "isolation": {\n "enum": [\n "none",\n "process",\n "container",\n "virtual-machine"\n ],\n "type": "string"\n },\n "platform": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "id",\n "platform",\n "architecture",\n "isolation"\n ],\n "type": "object"\n },\n {\n "type": "null"\n }\n ]\n },\n "evidence_id": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "evidence_links": {\n "items": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "type": "array"\n },\n "limitations": {\n "items": {\n "type": "string"\n },\n "type": "array"\n },\n "locations": {\n "items": {\n "oneOf": [\n {\n "additionalProperties": false,\n "properties": {\n "address": {\n "minLength": 1,\n "type": "string"\n },\n "kind": {\n "const": "address",\n "type": "string"\n }\n },\n "required": [\n "kind",\n "address"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "end": {\n "minLength": 1,\n "type": "string"\n },\n "kind": {\n "const": "address-range",\n "type": "string"\n },\n "start": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "kind",\n "start",\n "end"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "kind": {\n "const": "artifact-path",\n "type": "string"\n },\n "path": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "kind",\n "path"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "kind": {\n "const": "file-offset",\n "type": "string"\n },\n "offset": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "kind",\n "offset"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "end": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "kind": {\n "const": "file-offset-range",\n "type": "string"\n },\n "start": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "kind",\n "start",\n "end"\n ],\n "type": "object"\n }\n ]\n },\n "type": "array"\n },\n "normalized_result": {\n "$ref": "#/$defs/__schema0"\n },\n "operation": {\n "minLength": 1,\n "type": "string"\n },\n "parameters": {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n },\n "predicate_type": {\n "minLength": 1,\n "type": "string"\n },\n "provider": {\n "additionalProperties": false,\n "properties": {\n "id": {\n "minLength": 1,\n "type": "string"\n },\n "name": {\n "minLength": 1,\n "type": "string"\n },\n "version": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "id",\n "name",\n "version"\n ],\n "type": "object"\n },\n "raw_result": {\n "anyOf": [\n {\n "$ref": "#/$defs/__schema0"\n },\n {\n "type": "null"\n }\n ]\n },\n "subject": {\n "anyOf": [\n {\n "additionalProperties": false,\n "properties": {\n "architecture": {\n "anyOf": [\n {\n "enum": [\n "x86",\n "x86_64",\n "arm",\n "arm64"\n ],\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "digest": {\n "additionalProperties": false,\n "properties": {\n "sha256": {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n }\n },\n "required": [\n "sha256"\n ],\n "type": "object"\n },\n "format": {\n "enum": [\n "hopper",\n "analysis-database",\n "mach-o",\n "elf",\n "pe",\n "dos-mz",\n "dos-com",\n "zip",\n "ipa",\n "apk",\n "msix",\n "appx",\n "asar",\n "dmg",\n "pkg",\n "plist",\n "javascript",\n "source-map",\n "directory",\n "file",\n "unknown",\n "mach-o-universal",\n "javascript-bundle",\n "entitlements"\n ],\n "type": "string"\n },\n "local_path": {\n "type": "string"\n },\n "name": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "name",\n "digest",\n "format",\n "architecture",\n "local_path"\n ],\n "type": "object"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "evidence_id",\n "subject",\n "provider",\n "predicate_type",\n "operation",\n "parameters",\n "raw_result",\n "normalized_result",\n "confidence",\n "authority",\n "environment",\n "limitations",\n "locations",\n "evidence_links"\n ],\n "type": "object"\n },\n "evidence_id": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "result": {\n "additionalProperties": false,\n "properties": {\n "initial": {\n "additionalProperties": false,\n "properties": {\n "gaps": {\n "items": {\n "type": "string"\n },\n "type": "array"\n },\n "nodes": {\n "items": {\n "additionalProperties": false,\n "properties": {\n "actions": {\n "items": {\n "type": "string"\n },\n "type": "array"\n },\n "children_count": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "path": {\n "items": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "type": "array"\n },\n "role": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "title": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "value": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "path",\n "role",\n "title",\n "value",\n "actions",\n "children_count"\n ],\n "type": "object"\n },\n "type": "array"\n },\n "screenshot": {\n "anyOf": [\n {\n "additionalProperties": false,\n "properties": {\n "base64": {\n "minLength": 4,\n "type": "string"\n },\n "height": {\n "exclusiveMinimum": 0,\n "maximum": 9007199254740991,\n "type": "integer"\n },\n "mime_type": {\n "const": "image/png",\n "type": "string"\n },\n "sha256": {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n },\n "width": {\n "exclusiveMinimum": 0,\n "maximum": 9007199254740991,\n "type": "integer"\n }\n },\n "required": [\n "mime_type",\n "base64",\n "sha256",\n "width",\n "height"\n ],\n "type": "object"\n },\n {\n "type": "null"\n }\n ]\n },\n "truncated": {\n "type": "boolean"\n },\n "window": {\n "additionalProperties": false,\n "properties": {\n "executable": {\n "type": "string"\n },\n "launch_time": {\n "type": "number"\n },\n "pid": {\n "exclusiveMinimum": 0,\n "maximum": 9007199254740991,\n "type": "integer"\n },\n "title": {\n "type": "string"\n },\n "window_id": {\n "exclusiveMinimum": 0,\n "maximum": 9007199254740991,\n "type": "integer"\n }\n },\n "required": [\n "pid",\n "window_id",\n "executable",\n "launch_time",\n "title"\n ],\n "type": "object"\n }\n },\n "required": [\n "window",\n "nodes",\n "truncated",\n "screenshot",\n "gaps"\n ],\n "type": "object"\n },\n "limitations": {\n "items": {\n "type": "string"\n },\n "type": "array"\n },\n "restore": {\n "const": "leave-as-is",\n "type": "string"\n },\n "steps": {\n "items": {\n "additionalProperties": false,\n "properties": {\n "after": {\n "anyOf": [\n {\n "additionalProperties": false,\n "properties": {\n "gaps": {\n "items": {\n "type": "string"\n },\n "type": "array"\n },\n "nodes": {\n "items": {\n "additionalProperties": false,\n "properties": {\n "actions": {\n "items": {\n "type": "string"\n },\n "type": "array"\n },\n "children_count": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "path": {\n "items": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "type": "array"\n },\n "role": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "title": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "value": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "path",\n "role",\n "title",\n "value",\n "actions",\n "children_count"\n ],\n "type": "object"\n },\n "type": "array"\n },\n "screenshot": {\n "anyOf": [\n {\n "additionalProperties": false,\n "properties": {\n "base64": {\n "minLength": 4,\n "type": "string"\n },\n "height": {\n "exclusiveMinimum": 0,\n "maximum": 9007199254740991,\n "type": "integer"\n },\n "mime_type": {\n "const": "image/png",\n "type": "string"\n },\n "sha256": {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n },\n "width": {\n "exclusiveMinimum": 0,\n "maximum": 9007199254740991,\n "type": "integer"\n }\n },\n "required": [\n "mime_type",\n "base64",\n "sha256",\n "width",\n "height"\n ],\n "type": "object"\n },\n {\n "type": "null"\n }\n ]\n },\n "truncated": {\n "type": "boolean"\n },\n "window": {\n "additionalProperties": false,\n "properties": {\n "executable": {\n "type": "string"\n },\n "launch_time": {\n "type": "number"\n },\n "pid": {\n "exclusiveMinimum": 0,\n "maximum": 9007199254740991,\n "type": "integer"\n },\n "title": {\n "type": "string"\n },\n "window_id": {\n "exclusiveMinimum": 0,\n "maximum": 9007199254740991,\n "type": "integer"\n }\n },\n "required": [\n "pid",\n "window_id",\n "executable",\n "launch_time",\n "title"\n ],\n "type": "object"\n }\n },\n "required": [\n "window",\n "nodes",\n "truncated",\n "screenshot",\n "gaps"\n ],\n "type": "object"\n },\n {\n "type": "null"\n }\n ]\n },\n "before": {\n "additionalProperties": false,\n "properties": {\n "gaps": {\n "items": {\n "type": "string"\n },\n "type": "array"\n },\n "nodes": {\n "items": {\n "additionalProperties": false,\n "properties": {\n "actions": {\n "items": {\n "type": "string"\n },\n "type": "array"\n },\n "children_count": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "path": {\n "items": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "type": "array"\n },\n "role": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "title": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "value": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "path",\n "role",\n "title",\n "value",\n "actions",\n "children_count"\n ],\n "type": "object"\n },\n "type": "array"\n },\n "screenshot": {\n "anyOf": [\n {\n "additionalProperties": false,\n "properties": {\n "base64": {\n "minLength": 4,\n "type": "string"\n },\n "height": {\n "exclusiveMinimum": 0,\n "maximum": 9007199254740991,\n "type": "integer"\n },\n "mime_type": {\n "const": "image/png",\n "type": "string"\n },\n "sha256": {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n },\n "width": {\n "exclusiveMinimum": 0,\n "maximum": 9007199254740991,\n "type": "integer"\n }\n },\n "required": [\n "mime_type",\n "base64",\n "sha256",\n "width",\n "height"\n ],\n "type": "object"\n },\n {\n "type": "null"\n }\n ]\n },\n "truncated": {\n "type": "boolean"\n },\n "window": {\n "additionalProperties": false,\n "properties": {\n "executable": {\n "type": "string"\n },\n "launch_time": {\n "type": "number"\n },\n "pid": {\n "exclusiveMinimum": 0,\n "maximum": 9007199254740991,\n "type": "integer"\n },\n "title": {\n "type": "string"\n },\n "window_id": {\n "exclusiveMinimum": 0,\n "maximum": 9007199254740991,\n "type": "integer"\n }\n },\n "required": [\n "pid",\n "window_id",\n "executable",\n "launch_time",\n "title"\n ],\n "type": "object"\n }\n },\n "required": [\n "window",\n "nodes",\n "truncated",\n "screenshot",\n "gaps"\n ],\n "type": "object"\n },\n "index": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "kind": {\n "type": "string"\n },\n "outcome": {\n "enum": [\n "completed",\n "failed",\n "cancelled"\n ],\n "type": "string"\n },\n "reason": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "index",\n "kind",\n "before",\n "after",\n "outcome",\n "reason"\n ],\n "type": "object"\n },\n "type": "array"\n },\n "target_sha256": {\n "type": "string"\n }\n },\n "required": [\n "target_sha256",\n "initial",\n "steps",\n "restore",\n "limitations"\n ],\n "type": "object"\n }\n },\n "required": [\n "result",\n "evidence_id",\n "evidence"\n ],\n "type": "object"\n },\n "requiresSession": false,\n "title": "Observe Native Ui"\n },\n {\n "analysisOperation": "capture_native_ui_scenario",\n "annotations": {\n "destructiveHint": true,\n "idempotentHint": false,\n "openWorldHint": true,\n "readOnlyHint": false\n },\n "description": "Run selected-element press, increment/decrement scroll, AXValue text entry and bounded wait steps in one exact native app window. Returns ordered before/after captures and action/capture failures. Actions can change app data, network activity and persistent state; application state is left as-is and restoration is not attempted.",\n "effects": {\n "accessesNetwork": true,\n "changesUiState": true,\n "idempotent": false,\n "launchesProcess": true,\n "mayDiscardData": true,\n "mutatesSession": true,\n "mutatesTarget": true,\n "writesFilesystem": true\n },\n "inputSchema": {\n "$schema": "https://json-schema.org/draft/2020-12/schema",\n "additionalProperties": false,\n "examples": [\n {\n "pid": 123,\n "steps": [\n {\n "kind": "wait",\n "milliseconds": 100\n }\n ],\n "window_id": 456\n }\n ],\n "properties": {\n "accessibility": {\n "default": true,\n "description": "Value for accessibility.",\n "type": "boolean"\n },\n "max_nodes": {\n "default": 500,\n "description": "Maximum accessibility nodes per capture; increase for large windows.",\n "exclusiveMinimum": 0,\n "maximum": 9007199254740991,\n "type": "integer"\n },\n "pid": {\n "description": "Value for pid.",\n "exclusiveMinimum": 0,\n "maximum": 9007199254740991,\n "type": "integer"\n },\n "screenshot": {\n "default": true,\n "description": "Value for screenshot.",\n "type": "boolean"\n },\n "steps": {\n "description": "Value for steps.",\n "items": {\n "oneOf": [\n {\n "additionalProperties": false,\n "properties": {\n "kind": {\n "const": "click",\n "description": "Value for kind.",\n "type": "string"\n },\n "path": {\n "description": "Local filesystem path used by this operation.",\n "items": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "maxItems": 32,\n "type": "array"\n }\n },\n "required": [\n "kind",\n "path"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "direction": {\n "description": "Direction in which to traverse or compare relationships.",\n "enum": [\n "increment",\n "decrement"\n ],\n "type": "string"\n },\n "kind": {\n "const": "scroll",\n "description": "Value for kind.",\n "type": "string"\n },\n "path": {\n "description": "Local filesystem path used by this operation.",\n "items": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "maxItems": 32,\n "type": "array"\n }\n },\n "required": [\n "kind",\n "path",\n "direction"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "kind": {\n "const": "key-entry",\n "description": "Value for kind.",\n "type": "string"\n },\n "path": {\n "description": "Local filesystem path used by this operation.",\n "items": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "maxItems": 32,\n "type": "array"\n },\n "text": {\n "description": "Value for text.",\n "type": "string"\n }\n },\n "required": [\n "kind",\n "path",\n "text"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "kind": {\n "const": "wait",\n "description": "Value for kind.",\n "type": "string"\n },\n "milliseconds": {\n "description": "Wait duration in milliseconds, within the 180-second operation deadline.",\n "maximum": 180000,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "kind",\n "milliseconds"\n ],\n "type": "object"\n }\n ]\n },\n "minItems": 1,\n "type": "array"\n },\n "window_id": {\n "description": "Value for window id.",\n "exclusiveMinimum": 0,\n "maximum": 9007199254740991,\n "type": "integer"\n }\n },\n "required": [\n "pid",\n "window_id",\n "steps"\n ],\n "type": "object"\n },\n "kind": "native-provider",\n "name": "capture_native_ui_scenario",\n "outputSchema": {\n "$defs": {\n "__schema0": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "number"\n },\n {\n "type": "boolean"\n },\n {\n "type": "null"\n },\n {\n "items": {\n "$ref": "#/$defs/__schema0"\n },\n "type": "array"\n },\n {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n }\n ]\n }\n },\n "$schema": "https://json-schema.org/draft/2020-12/schema",\n "additionalProperties": false,\n "properties": {\n "evidence": {\n "additionalProperties": false,\n "properties": {\n "analysis_profile": {\n "additionalProperties": false,\n "properties": {\n "digest": {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n },\n "parameters": {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n },\n "provider": {\n "additionalProperties": false,\n "properties": {\n "id": {\n "minLength": 1,\n "type": "string"\n },\n "name": {\n "minLength": 1,\n "type": "string"\n },\n "version": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "id",\n "name",\n "version"\n ],\n "type": "object"\n }\n },\n "required": [\n "provider",\n "parameters",\n "digest"\n ],\n "type": "object"\n },\n "authority": {\n "enum": [\n "shipped-artifact",\n "controlled-replay",\n "historical-reference",\n "external-service",\n "analyst-inference"\n ],\n "type": "string"\n },\n "confidence": {\n "enum": [\n "observed",\n "derived",\n "inferred"\n ],\n "type": "string"\n },\n "environment": {\n "anyOf": [\n {\n "additionalProperties": false,\n "properties": {\n "architecture": {\n "minLength": 1,\n "type": "string"\n },\n "id": {\n "minLength": 1,\n "type": "string"\n },\n "isolation": {\n "enum": [\n "none",\n "process",\n "container",\n "virtual-machine"\n ],\n "type": "string"\n },\n "platform": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "id",\n "platform",\n "architecture",\n "isolation"\n ],\n "type": "object"\n },\n {\n "type": "null"\n }\n ]\n },\n "evidence_id": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "evidence_links": {\n "items": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "type": "array"\n },\n "limitations": {\n "items": {\n "type": "string"\n },\n "type": "array"\n },\n "locations": {\n "items": {\n "oneOf": [\n {\n "additionalProperties": false,\n "properties": {\n "address": {\n "minLength": 1,\n "type": "string"\n },\n "kind": {\n "const": "address",\n "type": "string"\n }\n },\n "required": [\n "kind",\n "address"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "end": {\n "minLength": 1,\n "type": "string"\n },\n "kind": {\n "const": "address-range",\n "type": "string"\n },\n "start": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "kind",\n "start",\n "end"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "kind": {\n "const": "artifact-path",\n "type": "string"\n },\n "path": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "kind",\n "path"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "kind": {\n "const": "file-offset",\n "type": "string"\n },\n "offset": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "kind",\n "offset"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "end": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "kind": {\n "const": "file-offset-range",\n "type": "string"\n },\n "start": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "kind",\n "start",\n "end"\n ],\n "type": "object"\n }\n ]\n },\n "type": "array"\n },\n "normalized_result": {\n "$ref": "#/$defs/__schema0"\n },\n "operation": {\n "minLength": 1,\n "type": "string"\n },\n "parameters": {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n },\n "predicate_type": {\n "minLength": 1,\n "type": "string"\n },\n "provider": {\n "additionalProperties": false,\n "properties": {\n "id": {\n "minLength": 1,\n "type": "string"\n },\n "name": {\n "minLength": 1,\n "type": "string"\n },\n "version": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "id",\n "name",\n "version"\n ],\n "type": "object"\n },\n "raw_result": {\n "anyOf": [\n {\n "$ref": "#/$defs/__schema0"\n },\n {\n "type": "null"\n }\n ]\n },\n "subject": {\n "anyOf": [\n {\n "additionalProperties": false,\n "properties": {\n "architecture": {\n "anyOf": [\n {\n "enum": [\n "x86",\n "x86_64",\n "arm",\n "arm64"\n ],\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "digest": {\n "additionalProperties": false,\n "properties": {\n "sha256": {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n }\n },\n "required": [\n "sha256"\n ],\n "type": "object"\n },\n "format": {\n "enum": [\n "hopper",\n "analysis-database",\n "mach-o",\n "elf",\n "pe",\n "dos-mz",\n "dos-com",\n "zip",\n "ipa",\n "apk",\n "msix",\n "appx",\n "asar",\n "dmg",\n "pkg",\n "plist",\n "javascript",\n "source-map",\n "directory",\n "file",\n "unknown",\n "mach-o-universal",\n "javascript-bundle",\n "entitlements"\n ],\n "type": "string"\n },\n "local_path": {\n "type": "string"\n },\n "name": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "name",\n "digest",\n "format",\n "architecture",\n "local_path"\n ],\n "type": "object"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "evidence_id",\n "subject",\n "provider",\n "predicate_type",\n "operation",\n "parameters",\n "raw_result",\n "normalized_result",\n "confidence",\n "authority",\n "environment",\n "limitations",\n "locations",\n "evidence_links"\n ],\n "type": "object"\n },\n "evidence_id": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "result": {\n "additionalProperties": false,\n "properties": {\n "initial": {\n "additionalProperties": false,\n "properties": {\n "gaps": {\n "items": {\n "type": "string"\n },\n "type": "array"\n },\n "nodes": {\n "items": {\n "additionalProperties": false,\n "properties": {\n "actions": {\n "items": {\n "type": "string"\n },\n "type": "array"\n },\n "children_count": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "path": {\n "items": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "type": "array"\n },\n "role": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "title": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "value": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "path",\n "role",\n "title",\n "value",\n "actions",\n "children_count"\n ],\n "type": "object"\n },\n "type": "array"\n },\n "screenshot": {\n "anyOf": [\n {\n "additionalProperties": false,\n "properties": {\n "base64": {\n "minLength": 4,\n "type": "string"\n },\n "height": {\n "exclusiveMinimum": 0,\n "maximum": 9007199254740991,\n "type": "integer"\n },\n "mime_type": {\n "const": "image/png",\n "type": "string"\n },\n "sha256": {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n },\n "width": {\n "exclusiveMinimum": 0,\n "maximum": 9007199254740991,\n "type": "integer"\n }\n },\n "required": [\n "mime_type",\n "base64",\n "sha256",\n "width",\n "height"\n ],\n "type": "object"\n },\n {\n "type": "null"\n }\n ]\n },\n "truncated": {\n "type": "boolean"\n },\n "window": {\n "additionalProperties": false,\n "properties": {\n "executable": {\n "type": "string"\n },\n "launch_time": {\n "type": "number"\n },\n "pid": {\n "exclusiveMinimum": 0,\n "maximum": 9007199254740991,\n "type": "integer"\n },\n "title": {\n "type": "string"\n },\n "window_id": {\n "exclusiveMinimum": 0,\n "maximum": 9007199254740991,\n "type": "integer"\n }\n },\n "required": [\n "pid",\n "window_id",\n "executable",\n "launch_time",\n "title"\n ],\n "type": "object"\n }\n },\n "required": [\n "window",\n "nodes",\n "truncated",\n "screenshot",\n "gaps"\n ],\n "type": "object"\n },\n "limitations": {\n "items": {\n "type": "string"\n },\n "type": "array"\n },\n "restore": {\n "const": "leave-as-is",\n "type": "string"\n },\n "steps": {\n "items": {\n "additionalProperties": false,\n "properties": {\n "after": {\n "anyOf": [\n {\n "additionalProperties": false,\n "properties": {\n "gaps": {\n "items": {\n "type": "string"\n },\n "type": "array"\n },\n "nodes": {\n "items": {\n "additionalProperties": false,\n "properties": {\n "actions": {\n "items": {\n "type": "string"\n },\n "type": "array"\n },\n "children_count": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "path": {\n "items": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "type": "array"\n },\n "role": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "title": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "value": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "path",\n "role",\n "title",\n "value",\n "actions",\n "children_count"\n ],\n "type": "object"\n },\n "type": "array"\n },\n "screenshot": {\n "anyOf": [\n {\n "additionalProperties": false,\n "properties": {\n "base64": {\n "minLength": 4,\n "type": "string"\n },\n "height": {\n "exclusiveMinimum": 0,\n "maximum": 9007199254740991,\n "type": "integer"\n },\n "mime_type": {\n "const": "image/png",\n "type": "string"\n },\n "sha256": {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n },\n "width": {\n "exclusiveMinimum": 0,\n "maximum": 9007199254740991,\n "type": "integer"\n }\n },\n "required": [\n "mime_type",\n "base64",\n "sha256",\n "width",\n "height"\n ],\n "type": "object"\n },\n {\n "type": "null"\n }\n ]\n },\n "truncated": {\n "type": "boolean"\n },\n "window": {\n "additionalProperties": false,\n "properties": {\n "executable": {\n "type": "string"\n },\n "launch_time": {\n "type": "number"\n },\n "pid": {\n "exclusiveMinimum": 0,\n "maximum": 9007199254740991,\n "type": "integer"\n },\n "title": {\n "type": "string"\n },\n "window_id": {\n "exclusiveMinimum": 0,\n "maximum": 9007199254740991,\n "type": "integer"\n }\n },\n "required": [\n "pid",\n "window_id",\n "executable",\n "launch_time",\n "title"\n ],\n "type": "object"\n }\n },\n "required": [\n "window",\n "nodes",\n "truncated",\n "screenshot",\n "gaps"\n ],\n "type": "object"\n },\n {\n "type": "null"\n }\n ]\n },\n "before": {\n "additionalProperties": false,\n "properties": {\n "gaps": {\n "items": {\n "type": "string"\n },\n "type": "array"\n },\n "nodes": {\n "items": {\n "additionalProperties": false,\n "properties": {\n "actions": {\n "items": {\n "type": "string"\n },\n "type": "array"\n },\n "children_count": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "path": {\n "items": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "type": "array"\n },\n "role": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "title": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "value": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "path",\n "role",\n "title",\n "value",\n "actions",\n "children_count"\n ],\n "type": "object"\n },\n "type": "array"\n },\n "screenshot": {\n "anyOf": [\n {\n "additionalProperties": false,\n "properties": {\n "base64": {\n "minLength": 4,\n "type": "string"\n },\n "height": {\n "exclusiveMinimum": 0,\n "maximum": 9007199254740991,\n "type": "integer"\n },\n "mime_type": {\n "const": "image/png",\n "type": "string"\n },\n "sha256": {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n },\n "width": {\n "exclusiveMinimum": 0,\n "maximum": 9007199254740991,\n "type": "integer"\n }\n },\n "required": [\n "mime_type",\n "base64",\n "sha256",\n "width",\n "height"\n ],\n "type": "object"\n },\n {\n "type": "null"\n }\n ]\n },\n "truncated": {\n "type": "boolean"\n },\n "window": {\n "additionalProperties": false,\n "properties": {\n "executable": {\n "type": "string"\n },\n "launch_time": {\n "type": "number"\n },\n "pid": {\n "exclusiveMinimum": 0,\n "maximum": 9007199254740991,\n "type": "integer"\n },\n "title": {\n "type": "string"\n },\n "window_id": {\n "exclusiveMinimum": 0,\n "maximum": 9007199254740991,\n "type": "integer"\n }\n },\n "required": [\n "pid",\n "window_id",\n "executable",\n "launch_time",\n "title"\n ],\n "type": "object"\n }\n },\n "required": [\n "window",\n "nodes",\n "truncated",\n "screenshot",\n "gaps"\n ],\n "type": "object"\n },\n "index": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "kind": {\n "type": "string"\n },\n "outcome": {\n "enum": [\n "completed",\n "failed",\n "cancelled"\n ],\n "type": "string"\n },\n "reason": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "index",\n "kind",\n "before",\n "after",\n "outcome",\n "reason"\n ],\n "type": "object"\n },\n "type": "array"\n },\n "target_sha256": {\n "type": "string"\n }\n },\n "required": [\n "target_sha256",\n "initial",\n "steps",\n "restore",\n "limitations"\n ],\n "type": "object"\n }\n },\n "required": [\n "result",\n "evidence_id",\n "evidence"\n ],\n "type": "object"\n },\n "requiresSession": false,\n "title": "Capture Native Ui Scenario"\n },\n {\n "analysisOperation": "inspect_macho",\n "annotations": {\n "destructiveHint": false,\n "idempotentHint": true,\n "openWorldHint": true,\n "readOnlyHint": false\n },\n "description": "Inspect Mach-O slices, load commands, imports, exports, dependencies, build metadata, segments, sections, permissions, and exact command provenance without launching Hopper.",\n "effects": {\n "accessesNetwork": false,\n "changesUiState": false,\n "idempotent": true,\n "launchesProcess": true,\n "mayDiscardData": false,\n "mutatesSession": true,\n "mutatesTarget": false,\n "writesFilesystem": false\n },\n "inputSchema": {\n "$schema": "https://json-schema.org/draft/2020-12/schema",\n "examples": [\n {}\n ],\n "properties": {},\n "type": "object"\n },\n "kind": "native-provider",\n "name": "inspect_macho",\n "outputSchema": {\n "$defs": {\n "__schema0": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "number"\n },\n {\n "type": "boolean"\n },\n {\n "type": "null"\n },\n {\n "items": {\n "$ref": "#/$defs/__schema0"\n },\n "type": "array"\n },\n {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n }\n ]\n }\n },\n "$schema": "https://json-schema.org/draft/2020-12/schema",\n "additionalProperties": false,\n "properties": {\n "evidence": {\n "additionalProperties": false,\n "properties": {\n "analysis_profile": {\n "additionalProperties": false,\n "properties": {\n "digest": {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n },\n "parameters": {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n },\n "provider": {\n "additionalProperties": false,\n "properties": {\n "id": {\n "minLength": 1,\n "type": "string"\n },\n "name": {\n "minLength": 1,\n "type": "string"\n },\n "version": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "id",\n "name",\n "version"\n ],\n "type": "object"\n }\n },\n "required": [\n "provider",\n "parameters",\n "digest"\n ],\n "type": "object"\n },\n "authority": {\n "enum": [\n "shipped-artifact",\n "controlled-replay",\n "historical-reference",\n "external-service",\n "analyst-inference"\n ],\n "type": "string"\n },\n "confidence": {\n "enum": [\n "observed",\n "derived",\n "inferred"\n ],\n "type": "string"\n },\n "environment": {\n "anyOf": [\n {\n "additionalProperties": false,\n "properties": {\n "architecture": {\n "minLength": 1,\n "type": "string"\n },\n "id": {\n "minLength": 1,\n "type": "string"\n },\n "isolation": {\n "enum": [\n "none",\n "process",\n "container",\n "virtual-machine"\n ],\n "type": "string"\n },\n "platform": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "id",\n "platform",\n "architecture",\n "isolation"\n ],\n "type": "object"\n },\n {\n "type": "null"\n }\n ]\n },\n "evidence_id": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "evidence_links": {\n "items": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "type": "array"\n },\n "limitations": {\n "items": {\n "type": "string"\n },\n "type": "array"\n },\n "locations": {\n "items": {\n "oneOf": [\n {\n "additionalProperties": false,\n "properties": {\n "address": {\n "minLength": 1,\n "type": "string"\n },\n "kind": {\n "const": "address",\n "type": "string"\n }\n },\n "required": [\n "kind",\n "address"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "end": {\n "minLength": 1,\n "type": "string"\n },\n "kind": {\n "const": "address-range",\n "type": "string"\n },\n "start": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "kind",\n "start",\n "end"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "kind": {\n "const": "artifact-path",\n "type": "string"\n },\n "path": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "kind",\n "path"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "kind": {\n "const": "file-offset",\n "type": "string"\n },\n "offset": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "kind",\n "offset"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "end": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "kind": {\n "const": "file-offset-range",\n "type": "string"\n },\n "start": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "kind",\n "start",\n "end"\n ],\n "type": "object"\n }\n ]\n },\n "type": "array"\n },\n "normalized_result": {\n "$ref": "#/$defs/__schema0"\n },\n "operation": {\n "minLength": 1,\n "type": "string"\n },\n "parameters": {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n },\n "predicate_type": {\n "minLength": 1,\n "type": "string"\n },\n "provider": {\n "additionalProperties": false,\n "properties": {\n "id": {\n "minLength": 1,\n "type": "string"\n },\n "name": {\n "minLength": 1,\n "type": "string"\n },\n "version": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "id",\n "name",\n "version"\n ],\n "type": "object"\n },\n "raw_result": {\n "anyOf": [\n {\n "$ref": "#/$defs/__schema0"\n },\n {\n "type": "null"\n }\n ]\n },\n "subject": {\n "anyOf": [\n {\n "additionalProperties": false,\n "properties": {\n "architecture": {\n "anyOf": [\n {\n "enum": [\n "x86",\n "x86_64",\n "arm",\n "arm64"\n ],\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "digest": {\n "additionalProperties": false,\n "properties": {\n "sha256": {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n }\n },\n "required": [\n "sha256"\n ],\n "type": "object"\n },\n "format": {\n "enum": [\n "hopper",\n "analysis-database",\n "mach-o",\n "elf",\n "pe",\n "dos-mz",\n "dos-com",\n "zip",\n "ipa",\n "apk",\n "msix",\n "appx",\n "asar",\n "dmg",\n "pkg",\n "plist",\n "javascript",\n "source-map",\n "directory",\n "file",\n "unknown",\n "mach-o-universal",\n "javascript-bundle",\n "entitlements"\n ],\n "type": "string"\n },\n "local_path": {\n "type": "string"\n },\n "name": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "name",\n "digest",\n "format",\n "architecture",\n "local_path"\n ],\n "type": "object"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "evidence_id",\n "subject",\n "provider",\n "predicate_type",\n "operation",\n "parameters",\n "raw_result",\n "normalized_result",\n "confidence",\n "authority",\n "environment",\n "limitations",\n "locations",\n "evidence_links"\n ],\n "type": "object"\n },\n "evidence_id": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "result": {\n "additionalProperties": false,\n "properties": {\n "architectures": {\n "additionalProperties": false,\n "properties": {\n "exhaustive": {\n "type": "boolean"\n },\n "items": {\n "items": {\n "additionalProperties": false,\n "properties": {\n "alignment": {\n "anyOf": [\n {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n {\n "type": "null"\n }\n ]\n },\n "cpu_subtype": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "cpu_type": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "file_offset": {\n "anyOf": [\n {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n {\n "type": "null"\n }\n ]\n },\n "name": {\n "type": "string"\n },\n "size": {\n "anyOf": [\n {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "name",\n "cpu_type",\n "cpu_subtype",\n "file_offset",\n "size",\n "alignment"\n ],\n "type": "object"\n },\n "type": "array"\n },\n "limitations": {\n "items": {\n "type": "string"\n },\n "type": "array"\n },\n "total": {\n "anyOf": [\n {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "items",\n "total",\n "exhaustive",\n "limitations"\n ],\n "type": "object"\n },\n "build_metadata": {\n "additionalProperties": false,\n "properties": {\n "exhaustive": {\n "type": "boolean"\n },\n "items": {\n "items": {\n "additionalProperties": false,\n "properties": {\n "minimum_os": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "platform": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "sdk": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "tools": {\n "items": {\n "additionalProperties": false,\n "properties": {\n "name": {\n "type": "string"\n },\n "version": {\n "type": "string"\n }\n },\n "required": [\n "name",\n "version"\n ],\n "type": "object"\n },\n "type": "array"\n }\n },\n "required": [\n "platform",\n "minimum_os",\n "sdk",\n "tools"\n ],\n "type": "object"\n },\n "type": "array"\n },\n "limitations": {\n "items": {\n "type": "string"\n },\n "type": "array"\n },\n "total": {\n "anyOf": [\n {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "items",\n "total",\n "exhaustive",\n "limitations"\n ],\n "type": "object"\n },\n "dependencies": {\n "additionalProperties": false,\n "properties": {\n "exhaustive": {\n "type": "boolean"\n },\n "items": {\n "items": {\n "additionalProperties": false,\n "properties": {\n "compatibility_version": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "current_version": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "kind": {\n "type": "string"\n },\n "path": {\n "type": "string"\n }\n },\n "required": [\n "path",\n "kind",\n "current_version",\n "compatibility_version"\n ],\n "type": "object"\n },\n "type": "array"\n },\n "limitations": {\n "items": {\n "type": "string"\n },\n "type": "array"\n },\n "total": {\n "anyOf": [\n {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "items",\n "total",\n "exhaustive",\n "limitations"\n ],\n "type": "object"\n },\n "endian": {\n "anyOf": [\n {\n "enum": [\n "little",\n "big"\n ],\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "entrypoints": {\n "additionalProperties": false,\n "properties": {\n "exhaustive": {\n "type": "boolean"\n },\n "items": {\n "items": {\n "additionalProperties": false,\n "properties": {\n "file_offset": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "file_offset"\n ],\n "type": "object"\n },\n "type": "array"\n },\n "limitations": {\n "items": {\n "type": "string"\n },\n "type": "array"\n },\n "total": {\n "anyOf": [\n {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "items",\n "total",\n "exhaustive",\n "limitations"\n ],\n "type": "object"\n },\n "exports": {\n "additionalProperties": false,\n "properties": {\n "exhaustive": {\n "type": "boolean"\n },\n "items": {\n "items": {\n "additionalProperties": false,\n "properties": {\n "address": {\n "anyOf": [\n {\n "pattern": "^0x[a-fA-F0-9]+$",\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "name": {\n "type": "string"\n },\n "reexport": {\n "anyOf": [\n {\n "type": "boolean"\n },\n {\n "type": "null"\n }\n ]\n },\n "source": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "weak": {\n "anyOf": [\n {\n "type": "boolean"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "name",\n "address",\n "weak",\n "reexport",\n "source"\n ],\n "type": "object"\n },\n "type": "array"\n },\n "limitations": {\n "items": {\n "type": "string"\n },\n "type": "array"\n },\n "total": {\n "anyOf": [\n {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "items",\n "total",\n "exhaustive",\n "limitations"\n ],\n "type": "object"\n },\n "file_type": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "flags": {\n "items": {\n "type": "string"\n },\n "type": "array"\n },\n "format": {\n "const": "mach-o",\n "type": "string"\n },\n "imports": {\n "additionalProperties": false,\n "properties": {\n "exhaustive": {\n "type": "boolean"\n },\n "items": {\n "items": {\n "additionalProperties": false,\n "properties": {\n "address": {\n "anyOf": [\n {\n "pattern": "^0x[a-fA-F0-9]+$",\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "name": {\n "type": "string"\n },\n "reexport": {\n "anyOf": [\n {\n "type": "boolean"\n },\n {\n "type": "null"\n }\n ]\n },\n "source": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "weak": {\n "anyOf": [\n {\n "type": "boolean"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "name",\n "address",\n "weak",\n "reexport",\n "source"\n ],\n "type": "object"\n },\n "type": "array"\n },\n "limitations": {\n "items": {\n "type": "string"\n },\n "type": "array"\n },\n "total": {\n "anyOf": [\n {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "items",\n "total",\n "exhaustive",\n "limitations"\n ],\n "type": "object"\n },\n "limitations": {\n "items": {\n "type": "string"\n },\n "type": "array"\n },\n "load_commands": {\n "additionalProperties": false,\n "properties": {\n "exhaustive": {\n "type": "boolean"\n },\n "items": {\n "items": {\n "additionalProperties": false,\n "properties": {\n "fields": {\n "additionalProperties": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "number"\n },\n {\n "type": "null"\n }\n ]\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n },\n "index": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "kind": {\n "type": "string"\n }\n },\n "required": [\n "index",\n "kind",\n "fields"\n ],\n "type": "object"\n },\n "type": "array"\n },\n "limitations": {\n "items": {\n "type": "string"\n },\n "type": "array"\n },\n "total": {\n "anyOf": [\n {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "items",\n "total",\n "exhaustive",\n "limitations"\n ],\n "type": "object"\n },\n "provenance": {\n "items": {\n "additionalProperties": false,\n "properties": {\n "command": {\n "items": {\n "type": "string"\n },\n "type": "array"\n },\n "executable_sha256": {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n },\n "exit": {\n "additionalProperties": false,\n "properties": {\n "code": {\n "anyOf": [\n {\n "maximum": 9007199254740991,\n "minimum": -9007199254740991,\n "type": "integer"\n },\n {\n "type": "null"\n }\n ]\n },\n "signal": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "code",\n "signal"\n ],\n "type": "object"\n },\n "stderr_bytes": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "stdout_bytes": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "tool": {\n "minLength": 1,\n "type": "string"\n },\n "tool_version": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "version_reason": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "tool",\n "command",\n "tool_version",\n "version_reason",\n "executable_sha256",\n "exit",\n "stdout_bytes",\n "stderr_bytes"\n ],\n "type": "object"\n },\n "type": "array"\n },\n "segments": {\n "additionalProperties": false,\n "properties": {\n "exhaustive": {\n "type": "boolean"\n },\n "items": {\n "items": {\n "additionalProperties": false,\n "properties": {\n "file_offset": {\n "anyOf": [\n {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n {\n "type": "null"\n }\n ]\n },\n "file_size": {\n "anyOf": [\n {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n {\n "type": "null"\n }\n ]\n },\n "initial_permissions": {\n "additionalProperties": false,\n "properties": {\n "execute": {\n "anyOf": [\n {\n "type": "boolean"\n },\n {\n "type": "null"\n }\n ]\n },\n "raw": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "read": {\n "anyOf": [\n {\n "type": "boolean"\n },\n {\n "type": "null"\n }\n ]\n },\n "write": {\n "anyOf": [\n {\n "type": "boolean"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "read",\n "write",\n "execute",\n "raw"\n ],\n "type": "object"\n },\n "maximum_permissions": {\n "additionalProperties": false,\n "properties": {\n "execute": {\n "anyOf": [\n {\n "type": "boolean"\n },\n {\n "type": "null"\n }\n ]\n },\n "raw": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "read": {\n "anyOf": [\n {\n "type": "boolean"\n },\n {\n "type": "null"\n }\n ]\n },\n "write": {\n "anyOf": [\n {\n "type": "boolean"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "read",\n "write",\n "execute",\n "raw"\n ],\n "type": "object"\n },\n "name": {\n "type": "string"\n },\n "sections": {\n "additionalProperties": false,\n "properties": {\n "exhaustive": {\n "type": "boolean"\n },\n "items": {\n "items": {\n "additionalProperties": false,\n "properties": {\n "address": {\n "anyOf": [\n {\n "pattern": "^0x[a-fA-F0-9]+$",\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "alignment": {\n "anyOf": [\n {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n {\n "type": "null"\n }\n ]\n },\n "file_offset": {\n "anyOf": [\n {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n {\n "type": "null"\n }\n ]\n },\n "flags": {\n "items": {\n "type": "string"\n },\n "type": "array"\n },\n "name": {\n "type": "string"\n },\n "segment": {\n "type": "string"\n },\n "size": {\n "anyOf": [\n {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "segment",\n "name",\n "address",\n "size",\n "file_offset",\n "alignment",\n "flags"\n ],\n "type": "object"\n },\n "type": "array"\n },\n "limitations": {\n "items": {\n "type": "string"\n },\n "type": "array"\n },\n "total": {\n "anyOf": [\n {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "items",\n "total",\n "exhaustive",\n "limitations"\n ],\n "type": "object"\n },\n "vm_address": {\n "anyOf": [\n {\n "pattern": "^0x[a-fA-F0-9]+$",\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "vm_size": {\n "anyOf": [\n {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "name",\n "vm_address",\n "vm_size",\n "file_offset",\n "file_size",\n "maximum_permissions",\n "initial_permissions",\n "sections"\n ],\n "type": "object"\n },\n "type": "array"\n },\n "limitations": {\n "items": {\n "type": "string"\n },\n "type": "array"\n },\n "total": {\n "anyOf": [\n {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "items",\n "total",\n "exhaustive",\n "limitations"\n ],\n "type": "object"\n },\n "uuid": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "word_size": {\n "anyOf": [\n {\n "anyOf": [\n {\n "const": 32,\n "type": "number"\n },\n {\n "const": 64,\n "type": "number"\n }\n ]\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "format",\n "endian",\n "word_size",\n "file_type",\n "flags",\n "uuid",\n "entrypoints",\n "architectures",\n "build_metadata",\n "load_commands",\n "dependencies",\n "imports",\n "exports",\n "segments",\n "provenance",\n "limitations"\n ],\n "type": "object"\n }\n },\n "required": [\n "result",\n "evidence_id",\n "evidence"\n ],\n "type": "object"\n },\n "requiresSession": false,\n "title": "Inspect Macho"\n },\n {\n "analysisOperation": "inspect_signature",\n "annotations": {\n "destructiveHint": false,\n "idempotentHint": true,\n "openWorldHint": true,\n "readOnlyHint": false\n },\n "description": "Inspect the active artifact\'s code-signing identity, hashes, authorities, requirements, entitlements, hardened-runtime state, and exact command provenance.",\n "effects": {\n "accessesNetwork": false,\n "changesUiState": false,\n "idempotent": true,\n "launchesProcess": true,\n "mayDiscardData": false,\n "mutatesSession": true,\n "mutatesTarget": false,\n "writesFilesystem": false\n },\n "inputSchema": {\n "$schema": "https://json-schema.org/draft/2020-12/schema",\n "examples": [\n {}\n ],\n "properties": {},\n "type": "object"\n },\n "kind": "native-provider",\n "name": "inspect_signature",\n "outputSchema": {\n "$defs": {\n "__schema0": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "number"\n },\n {\n "type": "boolean"\n },\n {\n "type": "null"\n },\n {\n "items": {\n "$ref": "#/$defs/__schema0"\n },\n "type": "array"\n },\n {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n }\n ]\n }\n },\n "$schema": "https://json-schema.org/draft/2020-12/schema",\n "additionalProperties": false,\n "properties": {\n "evidence": {\n "additionalProperties": false,\n "properties": {\n "analysis_profile": {\n "additionalProperties": false,\n "properties": {\n "digest": {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n },\n "parameters": {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n },\n "provider": {\n "additionalProperties": false,\n "properties": {\n "id": {\n "minLength": 1,\n "type": "string"\n },\n "name": {\n "minLength": 1,\n "type": "string"\n },\n "version": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "id",\n "name",\n "version"\n ],\n "type": "object"\n }\n },\n "required": [\n "provider",\n "parameters",\n "digest"\n ],\n "type": "object"\n },\n "authority": {\n "enum": [\n "shipped-artifact",\n "controlled-replay",\n "historical-reference",\n "external-service",\n "analyst-inference"\n ],\n "type": "string"\n },\n "confidence": {\n "enum": [\n "observed",\n "derived",\n "inferred"\n ],\n "type": "string"\n },\n "environment": {\n "anyOf": [\n {\n "additionalProperties": false,\n "properties": {\n "architecture": {\n "minLength": 1,\n "type": "string"\n },\n "id": {\n "minLength": 1,\n "type": "string"\n },\n "isolation": {\n "enum": [\n "none",\n "process",\n "container",\n "virtual-machine"\n ],\n "type": "string"\n },\n "platform": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "id",\n "platform",\n "architecture",\n "isolation"\n ],\n "type": "object"\n },\n {\n "type": "null"\n }\n ]\n },\n "evidence_id": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "evidence_links": {\n "items": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "type": "array"\n },\n "limitations": {\n "items": {\n "type": "string"\n },\n "type": "array"\n },\n "locations": {\n "items": {\n "oneOf": [\n {\n "additionalProperties": false,\n "properties": {\n "address": {\n "minLength": 1,\n "type": "string"\n },\n "kind": {\n "const": "address",\n "type": "string"\n }\n },\n "required": [\n "kind",\n "address"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "end": {\n "minLength": 1,\n "type": "string"\n },\n "kind": {\n "const": "address-range",\n "type": "string"\n },\n "start": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "kind",\n "start",\n "end"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "kind": {\n "const": "artifact-path",\n "type": "string"\n },\n "path": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "kind",\n "path"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "kind": {\n "const": "file-offset",\n "type": "string"\n },\n "offset": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "kind",\n "offset"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "end": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "kind": {\n "const": "file-offset-range",\n "type": "string"\n },\n "start": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "kind",\n "start",\n "end"\n ],\n "type": "object"\n }\n ]\n },\n "type": "array"\n },\n "normalized_result": {\n "$ref": "#/$defs/__schema0"\n },\n "operation": {\n "minLength": 1,\n "type": "string"\n },\n "parameters": {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n },\n "predicate_type": {\n "minLength": 1,\n "type": "string"\n },\n "provider": {\n "additionalProperties": false,\n "properties": {\n "id": {\n "minLength": 1,\n "type": "string"\n },\n "name": {\n "minLength": 1,\n "type": "string"\n },\n "version": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "id",\n "name",\n "version"\n ],\n "type": "object"\n },\n "raw_result": {\n "anyOf": [\n {\n "$ref": "#/$defs/__schema0"\n },\n {\n "type": "null"\n }\n ]\n },\n "subject": {\n "anyOf": [\n {\n "additionalProperties": false,\n "properties": {\n "architecture": {\n "anyOf": [\n {\n "enum": [\n "x86",\n "x86_64",\n "arm",\n "arm64"\n ],\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "digest": {\n "additionalProperties": false,\n "properties": {\n "sha256": {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n }\n },\n "required": [\n "sha256"\n ],\n "type": "object"\n },\n "format": {\n "enum": [\n "hopper",\n "analysis-database",\n "mach-o",\n "elf",\n "pe",\n "dos-mz",\n "dos-com",\n "zip",\n "ipa",\n "apk",\n "msix",\n "appx",\n "asar",\n "dmg",\n "pkg",\n "plist",\n "javascript",\n "source-map",\n "directory",\n "file",\n "unknown",\n "mach-o-universal",\n "javascript-bundle",\n "entitlements"\n ],\n "type": "string"\n },\n "local_path": {\n "type": "string"\n },\n "name": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "name",\n "digest",\n "format",\n "architecture",\n "local_path"\n ],\n "type": "object"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "evidence_id",\n "subject",\n "provider",\n "predicate_type",\n "operation",\n "parameters",\n "raw_result",\n "normalized_result",\n "confidence",\n "authority",\n "environment",\n "limitations",\n "locations",\n "evidence_links"\n ],\n "type": "object"\n },\n "evidence_id": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "result": {\n "additionalProperties": false,\n "properties": {\n "authorities": {\n "items": {\n "type": "string"\n },\n "type": "array"\n },\n "cdhashes": {\n "items": {\n "type": "string"\n },\n "type": "array"\n },\n "designated_requirement": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "entitlements": {\n "anyOf": [\n {\n "$ref": "#/$defs/__schema0"\n },\n {\n "type": "null"\n }\n ]\n },\n "format": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "hardened_runtime": {\n "anyOf": [\n {\n "type": "boolean"\n },\n {\n "type": "null"\n }\n ]\n },\n "hash_algorithms": {\n "items": {\n "type": "string"\n },\n "type": "array"\n },\n "identifier": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "limitations": {\n "items": {\n "type": "string"\n },\n "type": "array"\n },\n "provenance": {\n "items": {\n "additionalProperties": false,\n "properties": {\n "command": {\n "items": {\n "type": "string"\n },\n "type": "array"\n },\n "executable_sha256": {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n },\n "exit": {\n "additionalProperties": false,\n "properties": {\n "code": {\n "anyOf": [\n {\n "maximum": 9007199254740991,\n "minimum": -9007199254740991,\n "type": "integer"\n },\n {\n "type": "null"\n }\n ]\n },\n "signal": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "code",\n "signal"\n ],\n "type": "object"\n },\n "stderr_bytes": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "stdout_bytes": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "tool": {\n "minLength": 1,\n "type": "string"\n },\n "tool_version": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "version_reason": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "tool",\n "command",\n "tool_version",\n "version_reason",\n "executable_sha256",\n "exit",\n "stdout_bytes",\n "stderr_bytes"\n ],\n "type": "object"\n },\n "type": "array"\n },\n "signed": {\n "type": "boolean"\n },\n "team_identifier": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "timestamp": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "signed",\n "identifier",\n "team_identifier",\n "format",\n "cdhashes",\n "hash_algorithms",\n "authorities",\n "designated_requirement",\n "entitlements",\n "timestamp",\n "hardened_runtime",\n "provenance",\n "limitations"\n ],\n "type": "object"\n }\n },\n "required": [\n "result",\n "evidence_id",\n "evidence"\n ],\n "type": "object"\n },\n "requiresSession": false,\n "title": "Inspect Signature"\n },\n {\n "analysisOperation": "inspect_plist",\n "annotations": {\n "destructiveHint": false,\n "idempotentHint": true,\n "openWorldHint": true,\n "readOnlyHint": false\n },\n "description": "Parse Info.plist from the active artifact by default, or pass any local plist path. Returns normalized JSON rather than plutil text.",\n "effects": {\n "accessesNetwork": false,\n "changesUiState": false,\n "idempotent": true,\n "launchesProcess": true,\n "mayDiscardData": false,\n "mutatesSession": true,\n "mutatesTarget": false,\n "writesFilesystem": false\n },\n "inputSchema": {\n "$schema": "https://json-schema.org/draft/2020-12/schema",\n "examples": [\n {\n "path": "/Applications/Example.app/Contents/Info.plist"\n }\n ],\n "properties": {\n "path": {\n "description": "Local filesystem path used by this operation.",\n "minLength": 1,\n "type": "string"\n }\n },\n "type": "object"\n },\n "kind": "native-provider",\n "name": "inspect_plist",\n "outputSchema": {\n "$defs": {\n "__schema0": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "number"\n },\n {\n "type": "boolean"\n },\n {\n "type": "null"\n },\n {\n "items": {\n "$ref": "#/$defs/__schema0"\n },\n "type": "array"\n },\n {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n }\n ]\n }\n },\n "$schema": "https://json-schema.org/draft/2020-12/schema",\n "additionalProperties": false,\n "properties": {\n "evidence": {\n "additionalProperties": false,\n "properties": {\n "analysis_profile": {\n "additionalProperties": false,\n "properties": {\n "digest": {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n },\n "parameters": {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n },\n "provider": {\n "additionalProperties": false,\n "properties": {\n "id": {\n "minLength": 1,\n "type": "string"\n },\n "name": {\n "minLength": 1,\n "type": "string"\n },\n "version": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "id",\n "name",\n "version"\n ],\n "type": "object"\n }\n },\n "required": [\n "provider",\n "parameters",\n "digest"\n ],\n "type": "object"\n },\n "authority": {\n "enum": [\n "shipped-artifact",\n "controlled-replay",\n "historical-reference",\n "external-service",\n "analyst-inference"\n ],\n "type": "string"\n },\n "confidence": {\n "enum": [\n "observed",\n "derived",\n "inferred"\n ],\n "type": "string"\n },\n "environment": {\n "anyOf": [\n {\n "additionalProperties": false,\n "properties": {\n "architecture": {\n "minLength": 1,\n "type": "string"\n },\n "id": {\n "minLength": 1,\n "type": "string"\n },\n "isolation": {\n "enum": [\n "none",\n "process",\n "container",\n "virtual-machine"\n ],\n "type": "string"\n },\n "platform": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "id",\n "platform",\n "architecture",\n "isolation"\n ],\n "type": "object"\n },\n {\n "type": "null"\n }\n ]\n },\n "evidence_id": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "evidence_links": {\n "items": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "type": "array"\n },\n "limitations": {\n "items": {\n "type": "string"\n },\n "type": "array"\n },\n "locations": {\n "items": {\n "oneOf": [\n {\n "additionalProperties": false,\n "properties": {\n "address": {\n "minLength": 1,\n "type": "string"\n },\n "kind": {\n "const": "address",\n "type": "string"\n }\n },\n "required": [\n "kind",\n "address"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "end": {\n "minLength": 1,\n "type": "string"\n },\n "kind": {\n "const": "address-range",\n "type": "string"\n },\n "start": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "kind",\n "start",\n "end"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "kind": {\n "const": "artifact-path",\n "type": "string"\n },\n "path": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "kind",\n "path"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "kind": {\n "const": "file-offset",\n "type": "string"\n },\n "offset": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "kind",\n "offset"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "end": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "kind": {\n "const": "file-offset-range",\n "type": "string"\n },\n "start": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "kind",\n "start",\n "end"\n ],\n "type": "object"\n }\n ]\n },\n "type": "array"\n },\n "normalized_result": {\n "$ref": "#/$defs/__schema0"\n },\n "operation": {\n "minLength": 1,\n "type": "string"\n },\n "parameters": {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n },\n "predicate_type": {\n "minLength": 1,\n "type": "string"\n },\n "provider": {\n "additionalProperties": false,\n "properties": {\n "id": {\n "minLength": 1,\n "type": "string"\n },\n "name": {\n "minLength": 1,\n "type": "string"\n },\n "version": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "id",\n "name",\n "version"\n ],\n "type": "object"\n },\n "raw_result": {\n "anyOf": [\n {\n "$ref": "#/$defs/__schema0"\n },\n {\n "type": "null"\n }\n ]\n },\n "subject": {\n "anyOf": [\n {\n "additionalProperties": false,\n "properties": {\n "architecture": {\n "anyOf": [\n {\n "enum": [\n "x86",\n "x86_64",\n "arm",\n "arm64"\n ],\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "digest": {\n "additionalProperties": false,\n "properties": {\n "sha256": {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n }\n },\n "required": [\n "sha256"\n ],\n "type": "object"\n },\n "format": {\n "enum": [\n "hopper",\n "analysis-database",\n "mach-o",\n "elf",\n "pe",\n "dos-mz",\n "dos-com",\n "zip",\n "ipa",\n "apk",\n "msix",\n "appx",\n "asar",\n "dmg",\n "pkg",\n "plist",\n "javascript",\n "source-map",\n "directory",\n "file",\n "unknown",\n "mach-o-universal",\n "javascript-bundle",\n "entitlements"\n ],\n "type": "string"\n },\n "local_path": {\n "type": "string"\n },\n "name": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "name",\n "digest",\n "format",\n "architecture",\n "local_path"\n ],\n "type": "object"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "evidence_id",\n "subject",\n "provider",\n "predicate_type",\n "operation",\n "parameters",\n "raw_result",\n "normalized_result",\n "confidence",\n "authority",\n "environment",\n "limitations",\n "locations",\n "evidence_links"\n ],\n "type": "object"\n },\n "evidence_id": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "result": {\n "additionalProperties": false,\n "properties": {\n "bundle": {\n "additionalProperties": false,\n "properties": {\n "executable": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "identifier": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "name": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "short_version": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "version": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "identifier",\n "executable",\n "name",\n "version",\n "short_version"\n ],\n "type": "object"\n },\n "format": {\n "enum": [\n "xml",\n "binary",\n "json",\n "unknown"\n ],\n "type": "string"\n },\n "limitations": {\n "items": {\n "type": "string"\n },\n "type": "array"\n },\n "provenance": {\n "items": {\n "additionalProperties": false,\n "properties": {\n "command": {\n "items": {\n "type": "string"\n },\n "type": "array"\n },\n "executable_sha256": {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n },\n "exit": {\n "additionalProperties": false,\n "properties": {\n "code": {\n "anyOf": [\n {\n "maximum": 9007199254740991,\n "minimum": -9007199254740991,\n "type": "integer"\n },\n {\n "type": "null"\n }\n ]\n },\n "signal": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "code",\n "signal"\n ],\n "type": "object"\n },\n "stderr_bytes": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "stdout_bytes": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "tool": {\n "minLength": 1,\n "type": "string"\n },\n "tool_version": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "version_reason": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "tool",\n "command",\n "tool_version",\n "version_reason",\n "executable_sha256",\n "exit",\n "stdout_bytes",\n "stderr_bytes"\n ],\n "type": "object"\n },\n "type": "array"\n },\n "source_path": {\n "type": "string"\n },\n "value": {\n "$ref": "#/$defs/__schema0"\n }\n },\n "required": [\n "format",\n "value",\n "bundle",\n "source_path",\n "provenance",\n "limitations"\n ],\n "type": "object"\n }\n },\n "required": [\n "result",\n "evidence_id",\n "evidence"\n ],\n "type": "object"\n },\n "requiresSession": false,\n "title": "Inspect Plist"\n },\n {\n "analysisOperation": "list_architectures",\n "annotations": {\n "destructiveHint": false,\n "idempotentHint": true,\n "openWorldHint": true,\n "readOnlyHint": false\n },\n "description": "List thin or universal Mach-O slices with offsets, sizes, alignment, explicit coverage, and native-tool provenance.",\n "effects": {\n "accessesNetwork": false,\n "changesUiState": false,\n "idempotent": true,\n "launchesProcess": true,\n "mayDiscardData": false,\n "mutatesSession": true,\n "mutatesTarget": false,\n "writesFilesystem": false\n },\n "inputSchema": {\n "$schema": "https://json-schema.org/draft/2020-12/schema",\n "examples": [\n {}\n ],\n "properties": {},\n "type": "object"\n },\n "kind": "native-provider",\n "name": "list_architectures",\n "outputSchema": {\n "$defs": {\n "__schema0": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "number"\n },\n {\n "type": "boolean"\n },\n {\n "type": "null"\n },\n {\n "items": {\n "$ref": "#/$defs/__schema0"\n },\n "type": "array"\n },\n {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n }\n ]\n }\n },\n "$schema": "https://json-schema.org/draft/2020-12/schema",\n "additionalProperties": false,\n "properties": {\n "evidence": {\n "additionalProperties": false,\n "properties": {\n "analysis_profile": {\n "additionalProperties": false,\n "properties": {\n "digest": {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n },\n "parameters": {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n },\n "provider": {\n "additionalProperties": false,\n "properties": {\n "id": {\n "minLength": 1,\n "type": "string"\n },\n "name": {\n "minLength": 1,\n "type": "string"\n },\n "version": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "id",\n "name",\n "version"\n ],\n "type": "object"\n }\n },\n "required": [\n "provider",\n "parameters",\n "digest"\n ],\n "type": "object"\n },\n "authority": {\n "enum": [\n "shipped-artifact",\n "controlled-replay",\n "historical-reference",\n "external-service",\n "analyst-inference"\n ],\n "type": "string"\n },\n "confidence": {\n "enum": [\n "observed",\n "derived",\n "inferred"\n ],\n "type": "string"\n },\n "environment": {\n "anyOf": [\n {\n "additionalProperties": false,\n "properties": {\n "architecture": {\n "minLength": 1,\n "type": "string"\n },\n "id": {\n "minLength": 1,\n "type": "string"\n },\n "isolation": {\n "enum": [\n "none",\n "process",\n "container",\n "virtual-machine"\n ],\n "type": "string"\n },\n "platform": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "id",\n "platform",\n "architecture",\n "isolation"\n ],\n "type": "object"\n },\n {\n "type": "null"\n }\n ]\n },\n "evidence_id": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "evidence_links": {\n "items": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "type": "array"\n },\n "limitations": {\n "items": {\n "type": "string"\n },\n "type": "array"\n },\n "locations": {\n "items": {\n "oneOf": [\n {\n "additionalProperties": false,\n "properties": {\n "address": {\n "minLength": 1,\n "type": "string"\n },\n "kind": {\n "const": "address",\n "type": "string"\n }\n },\n "required": [\n "kind",\n "address"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "end": {\n "minLength": 1,\n "type": "string"\n },\n "kind": {\n "const": "address-range",\n "type": "string"\n },\n "start": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "kind",\n "start",\n "end"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "kind": {\n "const": "artifact-path",\n "type": "string"\n },\n "path": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "kind",\n "path"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "kind": {\n "const": "file-offset",\n "type": "string"\n },\n "offset": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "kind",\n "offset"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "end": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "kind": {\n "const": "file-offset-range",\n "type": "string"\n },\n "start": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "kind",\n "start",\n "end"\n ],\n "type": "object"\n }\n ]\n },\n "type": "array"\n },\n "normalized_result": {\n "$ref": "#/$defs/__schema0"\n },\n "operation": {\n "minLength": 1,\n "type": "string"\n },\n "parameters": {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n },\n "predicate_type": {\n "minLength": 1,\n "type": "string"\n },\n "provider": {\n "additionalProperties": false,\n "properties": {\n "id": {\n "minLength": 1,\n "type": "string"\n },\n "name": {\n "minLength": 1,\n "type": "string"\n },\n "version": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "id",\n "name",\n "version"\n ],\n "type": "object"\n },\n "raw_result": {\n "anyOf": [\n {\n "$ref": "#/$defs/__schema0"\n },\n {\n "type": "null"\n }\n ]\n },\n "subject": {\n "anyOf": [\n {\n "additionalProperties": false,\n "properties": {\n "architecture": {\n "anyOf": [\n {\n "enum": [\n "x86",\n "x86_64",\n "arm",\n "arm64"\n ],\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "digest": {\n "additionalProperties": false,\n "properties": {\n "sha256": {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n }\n },\n "required": [\n "sha256"\n ],\n "type": "object"\n },\n "format": {\n "enum": [\n "hopper",\n "analysis-database",\n "mach-o",\n "elf",\n "pe",\n "dos-mz",\n "dos-com",\n "zip",\n "ipa",\n "apk",\n "msix",\n "appx",\n "asar",\n "dmg",\n "pkg",\n "plist",\n "javascript",\n "source-map",\n "directory",\n "file",\n "unknown",\n "mach-o-universal",\n "javascript-bundle",\n "entitlements"\n ],\n "type": "string"\n },\n "local_path": {\n "type": "string"\n },\n "name": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "name",\n "digest",\n "format",\n "architecture",\n "local_path"\n ],\n "type": "object"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "evidence_id",\n "subject",\n "provider",\n "predicate_type",\n "operation",\n "parameters",\n "raw_result",\n "normalized_result",\n "confidence",\n "authority",\n "environment",\n "limitations",\n "locations",\n "evidence_links"\n ],\n "type": "object"\n },\n "evidence_id": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "result": {\n "additionalProperties": false,\n "properties": {\n "architectures": {\n "additionalProperties": false,\n "properties": {\n "exhaustive": {\n "type": "boolean"\n },\n "items": {\n "items": {\n "additionalProperties": false,\n "properties": {\n "alignment": {\n "anyOf": [\n {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n {\n "type": "null"\n }\n ]\n },\n "cpu_subtype": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "cpu_type": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "file_offset": {\n "anyOf": [\n {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n {\n "type": "null"\n }\n ]\n },\n "name": {\n "type": "string"\n },\n "size": {\n "anyOf": [\n {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "name",\n "cpu_type",\n "cpu_subtype",\n "file_offset",\n "size",\n "alignment"\n ],\n "type": "object"\n },\n "type": "array"\n },\n "limitations": {\n "items": {\n "type": "string"\n },\n "type": "array"\n },\n "total": {\n "anyOf": [\n {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "items",\n "total",\n "exhaustive",\n "limitations"\n ],\n "type": "object"\n },\n "limitations": {\n "items": {\n "type": "string"\n },\n "type": "array"\n },\n "provenance": {\n "items": {\n "additionalProperties": false,\n "properties": {\n "command": {\n "items": {\n "type": "string"\n },\n "type": "array"\n },\n "executable_sha256": {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n },\n "exit": {\n "additionalProperties": false,\n "properties": {\n "code": {\n "anyOf": [\n {\n "maximum": 9007199254740991,\n "minimum": -9007199254740991,\n "type": "integer"\n },\n {\n "type": "null"\n }\n ]\n },\n "signal": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "code",\n "signal"\n ],\n "type": "object"\n },\n "stderr_bytes": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "stdout_bytes": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "tool": {\n "minLength": 1,\n "type": "string"\n },\n "tool_version": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "version_reason": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "tool",\n "command",\n "tool_version",\n "version_reason",\n "executable_sha256",\n "exit",\n "stdout_bytes",\n "stderr_bytes"\n ],\n "type": "object"\n },\n "type": "array"\n }\n },\n "required": [\n "architectures",\n "provenance",\n "limitations"\n ],\n "type": "object"\n }\n },\n "required": [\n "result",\n "evidence_id",\n "evidence"\n ],\n "type": "object"\n },\n "requiresSession": false,\n "title": "List Architectures"\n },\n {\n "analysisOperation": "demangle_swift",\n "annotations": {\n "destructiveHint": false,\n "idempotentHint": true,\n "openWorldHint": true,\n "readOnlyHint": false\n },\n "description": "Demangle an ordered list of single-line Swift symbols without requiring Hopper. Each input returns demangled, unchanged, or invalid status.",\n "effects": {\n "accessesNetwork": false,\n "changesUiState": false,\n "idempotent": true,\n "launchesProcess": true,\n "mayDiscardData": false,\n "mutatesSession": true,\n "mutatesTarget": false,\n "writesFilesystem": false\n },\n "inputSchema": {\n "$schema": "https://json-schema.org/draft/2020-12/schema",\n "examples": [\n {\n "symbols": [\n "$s4Test3fooyyF"\n ]\n }\n ],\n "properties": {\n "symbols": {\n "description": "Ordered Swift symbols to demangle.",\n "items": {\n "minLength": 1,\n "pattern": "^[^\\\\n]*$",\n "type": "string"\n },\n "minItems": 1,\n "type": "array"\n }\n },\n "required": [\n "symbols"\n ],\n "type": "object"\n },\n "kind": "native-provider",\n "name": "demangle_swift",\n "outputSchema": {\n "$defs": {\n "__schema0": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "number"\n },\n {\n "type": "boolean"\n },\n {\n "type": "null"\n },\n {\n "items": {\n "$ref": "#/$defs/__schema0"\n },\n "type": "array"\n },\n {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n }\n ]\n }\n },\n "$schema": "https://json-schema.org/draft/2020-12/schema",\n "additionalProperties": false,\n "properties": {\n "evidence": {\n "additionalProperties": false,\n "properties": {\n "analysis_profile": {\n "additionalProperties": false,\n "properties": {\n "digest": {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n },\n "parameters": {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n },\n "provider": {\n "additionalProperties": false,\n "properties": {\n "id": {\n "minLength": 1,\n "type": "string"\n },\n "name": {\n "minLength": 1,\n "type": "string"\n },\n "version": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "id",\n "name",\n "version"\n ],\n "type": "object"\n }\n },\n "required": [\n "provider",\n "parameters",\n "digest"\n ],\n "type": "object"\n },\n "authority": {\n "enum": [\n "shipped-artifact",\n "controlled-replay",\n "historical-reference",\n "external-service",\n "analyst-inference"\n ],\n "type": "string"\n },\n "confidence": {\n "enum": [\n "observed",\n "derived",\n "inferred"\n ],\n "type": "string"\n },\n "environment": {\n "anyOf": [\n {\n "additionalProperties": false,\n "properties": {\n "architecture": {\n "minLength": 1,\n "type": "string"\n },\n "id": {\n "minLength": 1,\n "type": "string"\n },\n "isolation": {\n "enum": [\n "none",\n "process",\n "container",\n "virtual-machine"\n ],\n "type": "string"\n },\n "platform": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "id",\n "platform",\n "architecture",\n "isolation"\n ],\n "type": "object"\n },\n {\n "type": "null"\n }\n ]\n },\n "evidence_id": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "evidence_links": {\n "items": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "type": "array"\n },\n "limitations": {\n "items": {\n "type": "string"\n },\n "type": "array"\n },\n "locations": {\n "items": {\n "oneOf": [\n {\n "additionalProperties": false,\n "properties": {\n "address": {\n "minLength": 1,\n "type": "string"\n },\n "kind": {\n "const": "address",\n "type": "string"\n }\n },\n "required": [\n "kind",\n "address"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "end": {\n "minLength": 1,\n "type": "string"\n },\n "kind": {\n "const": "address-range",\n "type": "string"\n },\n "start": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "kind",\n "start",\n "end"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "kind": {\n "const": "artifact-path",\n "type": "string"\n },\n "path": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "kind",\n "path"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "kind": {\n "const": "file-offset",\n "type": "string"\n },\n "offset": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "kind",\n "offset"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "end": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "kind": {\n "const": "file-offset-range",\n "type": "string"\n },\n "start": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "kind",\n "start",\n "end"\n ],\n "type": "object"\n }\n ]\n },\n "type": "array"\n },\n "normalized_result": {\n "$ref": "#/$defs/__schema0"\n },\n "operation": {\n "minLength": 1,\n "type": "string"\n },\n "parameters": {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n },\n "predicate_type": {\n "minLength": 1,\n "type": "string"\n },\n "provider": {\n "additionalProperties": false,\n "properties": {\n "id": {\n "minLength": 1,\n "type": "string"\n },\n "name": {\n "minLength": 1,\n "type": "string"\n },\n "version": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "id",\n "name",\n "version"\n ],\n "type": "object"\n },\n "raw_result": {\n "anyOf": [\n {\n "$ref": "#/$defs/__schema0"\n },\n {\n "type": "null"\n }\n ]\n },\n "subject": {\n "anyOf": [\n {\n "additionalProperties": false,\n "properties": {\n "architecture": {\n "anyOf": [\n {\n "enum": [\n "x86",\n "x86_64",\n "arm",\n "arm64"\n ],\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "digest": {\n "additionalProperties": false,\n "properties": {\n "sha256": {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n }\n },\n "required": [\n "sha256"\n ],\n "type": "object"\n },\n "format": {\n "enum": [\n "hopper",\n "analysis-database",\n "mach-o",\n "elf",\n "pe",\n "dos-mz",\n "dos-com",\n "zip",\n "ipa",\n "apk",\n "msix",\n "appx",\n "asar",\n "dmg",\n "pkg",\n "plist",\n "javascript",\n "source-map",\n "directory",\n "file",\n "unknown",\n "mach-o-universal",\n "javascript-bundle",\n "entitlements"\n ],\n "type": "string"\n },\n "local_path": {\n "type": "string"\n },\n "name": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "name",\n "digest",\n "format",\n "architecture",\n "local_path"\n ],\n "type": "object"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "evidence_id",\n "subject",\n "provider",\n "predicate_type",\n "operation",\n "parameters",\n "raw_result",\n "normalized_result",\n "confidence",\n "authority",\n "environment",\n "limitations",\n "locations",\n "evidence_links"\n ],\n "type": "object"\n },\n "evidence_id": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "result": {\n "additionalProperties": false,\n "properties": {\n "limitations": {\n "items": {\n "type": "string"\n },\n "type": "array"\n },\n "provenance": {\n "items": {\n "additionalProperties": false,\n "properties": {\n "command": {\n "items": {\n "type": "string"\n },\n "type": "array"\n },\n "executable_sha256": {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n },\n "exit": {\n "additionalProperties": false,\n "properties": {\n "code": {\n "anyOf": [\n {\n "maximum": 9007199254740991,\n "minimum": -9007199254740991,\n "type": "integer"\n },\n {\n "type": "null"\n }\n ]\n },\n "signal": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "code",\n "signal"\n ],\n "type": "object"\n },\n "stderr_bytes": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "stdout_bytes": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "tool": {\n "minLength": 1,\n "type": "string"\n },\n "tool_version": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "version_reason": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "tool",\n "command",\n "tool_version",\n "version_reason",\n "executable_sha256",\n "exit",\n "stdout_bytes",\n "stderr_bytes"\n ],\n "type": "object"\n },\n "type": "array"\n },\n "symbols": {\n "items": {\n "additionalProperties": false,\n "properties": {\n "input": {\n "type": "string"\n },\n "output": {\n "type": "string"\n },\n "status": {\n "enum": [\n "demangled",\n "unchanged",\n "invalid"\n ],\n "type": "string"\n }\n },\n "required": [\n "input",\n "output",\n "status"\n ],\n "type": "object"\n },\n "type": "array"\n }\n },\n "required": [\n "symbols",\n "provenance",\n "limitations"\n ],\n "type": "object"\n }\n },\n "required": [\n "result",\n "evidence_id",\n "evidence"\n ],\n "type": "object"\n },\n "requiresSession": false,\n "title": "Demangle Swift"\n },\n {\n "analysisOperation": "inspect_artifact",\n "annotations": {\n "destructiveHint": false,\n "idempotentHint": true,\n "openWorldHint": true,\n "readOnlyHint": false\n },\n "description": "Inspect an active archive or application package in one call. Returns the complete content-addressed artifact graph, source Evidence, observations, relationships, integrity contradictions, hypotheses, unexplored branches, limitations, and next probes inline. Read-only DMG mounting is used automatically on supported macOS hosts. Integrity mismatches fail by default; record-and-continue keeps mismatches explicitly untrusted. It does not extract files; use extract_artifact to materialize its regular contents.",\n "effects": {\n "accessesNetwork": false,\n "changesUiState": false,\n "idempotent": true,\n "launchesProcess": true,\n "mayDiscardData": false,\n "mutatesSession": true,\n "mutatesTarget": false,\n "writesFilesystem": true\n },\n "inputSchema": {\n "$schema": "https://json-schema.org/draft/2020-12/schema",\n "additionalProperties": false,\n "examples": [\n {}\n ],\n "properties": {\n "integrity_policy": {\n "default": "fail",\n "description": "Value for integrity policy.",\n "enum": [\n "fail",\n "record-and-continue"\n ],\n "type": "string"\n }\n },\n "type": "object"\n },\n "kind": "artifact-provider",\n "name": "inspect_artifact",\n "outputSchema": {\n "$defs": {\n "__schema0": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "number"\n },\n {\n "type": "boolean"\n },\n {\n "type": "null"\n },\n {\n "items": {\n "$ref": "#/$defs/__schema0"\n },\n "type": "array"\n },\n {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n }\n ]\n }\n },\n "$schema": "https://json-schema.org/draft/2020-12/schema",\n "additionalProperties": false,\n "properties": {\n "evidence": {\n "additionalProperties": false,\n "properties": {\n "analysis_profile": {\n "additionalProperties": false,\n "properties": {\n "digest": {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n },\n "parameters": {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n },\n "provider": {\n "additionalProperties": false,\n "properties": {\n "id": {\n "minLength": 1,\n "type": "string"\n },\n "name": {\n "minLength": 1,\n "type": "string"\n },\n "version": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "id",\n "name",\n "version"\n ],\n "type": "object"\n }\n },\n "required": [\n "provider",\n "parameters",\n "digest"\n ],\n "type": "object"\n },\n "authority": {\n "enum": [\n "shipped-artifact",\n "controlled-replay",\n "historical-reference",\n "external-service",\n "analyst-inference"\n ],\n "type": "string"\n },\n "confidence": {\n "enum": [\n "observed",\n "derived",\n "inferred"\n ],\n "type": "string"\n },\n "environment": {\n "anyOf": [\n {\n "additionalProperties": false,\n "properties": {\n "architecture": {\n "minLength": 1,\n "type": "string"\n },\n "id": {\n "minLength": 1,\n "type": "string"\n },\n "isolation": {\n "enum": [\n "none",\n "process",\n "container",\n "virtual-machine"\n ],\n "type": "string"\n },\n "platform": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "id",\n "platform",\n "architecture",\n "isolation"\n ],\n "type": "object"\n },\n {\n "type": "null"\n }\n ]\n },\n "evidence_id": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "evidence_links": {\n "items": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "type": "array"\n },\n "limitations": {\n "items": {\n "type": "string"\n },\n "type": "array"\n },\n "locations": {\n "items": {\n "oneOf": [\n {\n "additionalProperties": false,\n "properties": {\n "address": {\n "minLength": 1,\n "type": "string"\n },\n "kind": {\n "const": "address",\n "type": "string"\n }\n },\n "required": [\n "kind",\n "address"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "end": {\n "minLength": 1,\n "type": "string"\n },\n "kind": {\n "const": "address-range",\n "type": "string"\n },\n "start": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "kind",\n "start",\n "end"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "kind": {\n "const": "artifact-path",\n "type": "string"\n },\n "path": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "kind",\n "path"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "kind": {\n "const": "file-offset",\n "type": "string"\n },\n "offset": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "kind",\n "offset"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "end": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "kind": {\n "const": "file-offset-range",\n "type": "string"\n },\n "start": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "kind",\n "start",\n "end"\n ],\n "type": "object"\n }\n ]\n },\n "type": "array"\n },\n "normalized_result": {\n "$ref": "#/$defs/__schema0"\n },\n "operation": {\n "minLength": 1,\n "type": "string"\n },\n "parameters": {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n },\n "predicate_type": {\n "minLength": 1,\n "type": "string"\n },\n "provider": {\n "additionalProperties": false,\n "properties": {\n "id": {\n "minLength": 1,\n "type": "string"\n },\n "name": {\n "minLength": 1,\n "type": "string"\n },\n "version": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "id",\n "name",\n "version"\n ],\n "type": "object"\n },\n "raw_result": {\n "anyOf": [\n {\n "$ref": "#/$defs/__schema0"\n },\n {\n "type": "null"\n }\n ]\n },\n "subject": {\n "anyOf": [\n {\n "additionalProperties": false,\n "properties": {\n "architecture": {\n "anyOf": [\n {\n "enum": [\n "x86",\n "x86_64",\n "arm",\n "arm64"\n ],\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "digest": {\n "additionalProperties": false,\n "properties": {\n "sha256": {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n }\n },\n "required": [\n "sha256"\n ],\n "type": "object"\n },\n "format": {\n "enum": [\n "hopper",\n "analysis-database",\n "mach-o",\n "elf",\n "pe",\n "dos-mz",\n "dos-com",\n "zip",\n "ipa",\n "apk",\n "msix",\n "appx",\n "asar",\n "dmg",\n "pkg",\n "plist",\n "javascript",\n "source-map",\n "directory",\n "file",\n "unknown",\n "mach-o-universal",\n "javascript-bundle",\n "entitlements"\n ],\n "type": "string"\n },\n "local_path": {\n "type": "string"\n },\n "name": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "name",\n "digest",\n "format",\n "architecture",\n "local_path"\n ],\n "type": "object"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "evidence_id",\n "subject",\n "provider",\n "predicate_type",\n "operation",\n "parameters",\n "raw_result",\n "normalized_result",\n "confidence",\n "authority",\n "environment",\n "limitations",\n "locations",\n "evidence_links"\n ],\n "type": "object"\n },\n "evidence_id": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "result": {\n "additionalProperties": false,\n "properties": {\n "contradictions": {\n "items": {\n "additionalProperties": false,\n "properties": {\n "contradiction_id": {\n "pattern": "^aic_[a-f0-9]{64}$",\n "type": "string"\n },\n "declared_sha256": {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n },\n "evidence_id": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "observed_sha256": {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n },\n "occurrence_id": {\n "pattern": "^occ_[a-f0-9]{64}$",\n "type": "string"\n },\n "statement": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "contradiction_id",\n "statement",\n "occurrence_id",\n "declared_sha256",\n "observed_sha256",\n "evidence_id"\n ],\n "type": "object"\n },\n "type": "array"\n },\n "coverage": {\n "additionalProperties": false,\n "properties": {\n "hypotheses_omitted": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "hypotheses_retained": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "next_probes_omitted": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "next_probes_retained": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "observations_omitted": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "observations_retained": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "relationships_omitted": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "relationships_retained": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "status": {\n "enum": [\n "complete-within-substeps",\n "partial",\n "truncated"\n ],\n "type": "string"\n },\n "substeps_completed": {\n "const": 1,\n "type": "number"\n },\n "unexplored_branches_omitted": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "unexplored_branches_retained": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "status",\n "substeps_completed",\n "observations_retained",\n "observations_omitted",\n "relationships_retained",\n "relationships_omitted",\n "hypotheses_retained",\n "hypotheses_omitted",\n "unexplored_branches_retained",\n "unexplored_branches_omitted",\n "next_probes_retained",\n "next_probes_omitted"\n ],\n "type": "object"\n },\n "derived_relationships": {\n "items": {\n "additionalProperties": false,\n "properties": {\n "evidence_id": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "logical_path": {\n "anyOf": [\n {\n "minLength": 1,\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "occurrence_id": {\n "pattern": "^occ_[a-f0-9]{64}$",\n "type": "string"\n },\n "relation": {\n "enum": [\n "contains",\n "extracts",\n "slice-of",\n "embeds",\n "loads",\n "maps-source",\n "derived-from"\n ],\n "type": "string"\n },\n "relationship_id": {\n "pattern": "^air_[a-f0-9]{64}$",\n "type": "string"\n },\n "source_artifact_id": {\n "pattern": "^art_[a-f0-9]{64}$",\n "type": "string"\n },\n "target_artifact_id": {\n "pattern": "^art_[a-f0-9]{64}$",\n "type": "string"\n }\n },\n "required": [\n "relationship_id",\n "relation",\n "source_artifact_id",\n "target_artifact_id",\n "occurrence_id",\n "logical_path",\n "evidence_id"\n ],\n "type": "object"\n },\n "type": "array"\n },\n "evidence_links": {\n "items": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "minItems": 1,\n "type": "array"\n },\n "hypotheses": {\n "items": {\n "additionalProperties": false,\n "properties": {\n "basis_evidence_ids": {\n "items": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "minItems": 1,\n "type": "array"\n },\n "confidence": {\n "enum": [\n "medium",\n "low"\n ],\n "type": "string"\n },\n "hypothesis_id": {\n "pattern": "^aih_[a-f0-9]{64}$",\n "type": "string"\n },\n "limitation": {\n "minLength": 1,\n "type": "string"\n },\n "statement": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "hypothesis_id",\n "statement",\n "confidence",\n "basis_evidence_ids",\n "limitation"\n ],\n "type": "object"\n },\n "type": "array"\n },\n "inspection_id": {\n "pattern": "^ai_[a-f0-9]{64}$",\n "type": "string"\n },\n "limitations": {\n "items": {\n "minLength": 1,\n "type": "string"\n },\n "type": "array"\n },\n "next_probes": {\n "items": {\n "additionalProperties": false,\n "properties": {\n "authority": {\n "enum": [\n "artifact-bytes",\n "managed-static-analysis",\n "native-analysis-provider",\n "ast-static-analysis"\n ],\n "type": "string"\n },\n "operation": {\n "minLength": 1,\n "type": "string"\n },\n "rationale": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "operation",\n "rationale",\n "authority"\n ],\n "type": "object"\n },\n "type": "array"\n },\n "observations": {\n "items": {\n "additionalProperties": false,\n "properties": {\n "evidence_id": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "kind": {\n "enum": [\n "root-manifest",\n "artifact",\n "occurrence",\n "integrity"\n ],\n "type": "string"\n },\n "observation_id": {\n "pattern": "^aio_[a-f0-9]{64}$",\n "type": "string"\n },\n "subject": {\n "minLength": 1,\n "type": "string"\n },\n "value": {\n "$ref": "#/$defs/__schema0"\n }\n },\n "required": [\n "observation_id",\n "kind",\n "subject",\n "value",\n "evidence_id"\n ],\n "type": "object"\n },\n "type": "array"\n },\n "subject": {\n "additionalProperties": false,\n "properties": {\n "manifest_id": {\n "pattern": "^agm_[a-f0-9]{64}$",\n "type": "string"\n },\n "root_artifact_id": {\n "pattern": "^art_[a-f0-9]{64}$",\n "type": "string"\n },\n "root_format": {\n "minLength": 1,\n "type": "string"\n },\n "root_sha256": {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n }\n },\n "required": [\n "manifest_id",\n "root_artifact_id",\n "root_sha256",\n "root_format"\n ],\n "type": "object"\n },\n "substeps": {\n "items": {\n "additionalProperties": false,\n "properties": {\n "evidence": {\n "additionalProperties": false,\n "properties": {\n "analysis_profile": {\n "additionalProperties": false,\n "properties": {\n "digest": {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n },\n "parameters": {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n },\n "provider": {\n "additionalProperties": false,\n "properties": {\n "id": {\n "minLength": 1,\n "type": "string"\n },\n "name": {\n "minLength": 1,\n "type": "string"\n },\n "version": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "id",\n "name",\n "version"\n ],\n "type": "object"\n }\n },\n "required": [\n "provider",\n "parameters",\n "digest"\n ],\n "type": "object"\n },\n "authority": {\n "enum": [\n "shipped-artifact",\n "controlled-replay",\n "historical-reference",\n "external-service",\n "analyst-inference"\n ],\n "type": "string"\n },\n "confidence": {\n "enum": [\n "observed",\n "derived",\n "inferred"\n ],\n "type": "string"\n },\n "environment": {\n "anyOf": [\n {\n "additionalProperties": false,\n "properties": {\n "architecture": {\n "minLength": 1,\n "type": "string"\n },\n "id": {\n "minLength": 1,\n "type": "string"\n },\n "isolation": {\n "enum": [\n "none",\n "process",\n "container",\n "virtual-machine"\n ],\n "type": "string"\n },\n "platform": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "id",\n "platform",\n "architecture",\n "isolation"\n ],\n "type": "object"\n },\n {\n "type": "null"\n }\n ]\n },\n "evidence_id": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "evidence_links": {\n "items": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "type": "array"\n },\n "limitations": {\n "items": {\n "type": "string"\n },\n "type": "array"\n },\n "locations": {\n "items": {\n "oneOf": [\n {\n "additionalProperties": false,\n "properties": {\n "address": {\n "minLength": 1,\n "type": "string"\n },\n "kind": {\n "const": "address",\n "type": "string"\n }\n },\n "required": [\n "kind",\n "address"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "end": {\n "minLength": 1,\n "type": "string"\n },\n "kind": {\n "const": "address-range",\n "type": "string"\n },\n "start": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "kind",\n "start",\n "end"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "kind": {\n "const": "artifact-path",\n "type": "string"\n },\n "path": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "kind",\n "path"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "kind": {\n "const": "file-offset",\n "type": "string"\n },\n "offset": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "kind",\n "offset"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "end": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "kind": {\n "const": "file-offset-range",\n "type": "string"\n },\n "start": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "kind",\n "start",\n "end"\n ],\n "type": "object"\n }\n ]\n },\n "type": "array"\n },\n "normalized_result": {\n "$ref": "#/$defs/__schema0"\n },\n "operation": {\n "minLength": 1,\n "type": "string"\n },\n "parameters": {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n },\n "predicate_type": {\n "minLength": 1,\n "type": "string"\n },\n "provider": {\n "additionalProperties": false,\n "properties": {\n "id": {\n "minLength": 1,\n "type": "string"\n },\n "name": {\n "minLength": 1,\n "type": "string"\n },\n "version": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "id",\n "name",\n "version"\n ],\n "type": "object"\n },\n "raw_result": {\n "anyOf": [\n {\n "$ref": "#/$defs/__schema0"\n },\n {\n "type": "null"\n }\n ]\n },\n "subject": {\n "anyOf": [\n {\n "additionalProperties": false,\n "properties": {\n "architecture": {\n "anyOf": [\n {\n "enum": [\n "x86",\n "x86_64",\n "arm",\n "arm64"\n ],\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "digest": {\n "additionalProperties": false,\n "properties": {\n "sha256": {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n }\n },\n "required": [\n "sha256"\n ],\n "type": "object"\n },\n "format": {\n "enum": [\n "hopper",\n "analysis-database",\n "mach-o",\n "elf",\n "pe",\n "dos-mz",\n "dos-com",\n "zip",\n "ipa",\n "apk",\n "msix",\n "appx",\n "asar",\n "dmg",\n "pkg",\n "plist",\n "javascript",\n "source-map",\n "directory",\n "file",\n "unknown",\n "mach-o-universal",\n "javascript-bundle",\n "entitlements"\n ],\n "type": "string"\n },\n "local_path": {\n "type": "string"\n },\n "name": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "name",\n "digest",\n "format",\n "architecture",\n "local_path"\n ],\n "type": "object"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "evidence_id",\n "subject",\n "provider",\n "predicate_type",\n "operation",\n "parameters",\n "raw_result",\n "normalized_result",\n "confidence",\n "authority",\n "environment",\n "limitations",\n "locations",\n "evidence_links"\n ],\n "type": "object"\n },\n "evidence_id": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "operation": {\n "const": "inventory_artifact",\n "type": "string"\n },\n "status": {\n "const": "completed",\n "type": "string"\n },\n "substep_id": {\n "pattern": "^ais_[a-f0-9]{64}$",\n "type": "string"\n }\n },\n "required": [\n "substep_id",\n "operation",\n "status",\n "evidence_id",\n "evidence"\n ],\n "type": "object"\n },\n "minItems": 1,\n "type": "array"\n },\n "unexplored_branches": {\n "items": {\n "additionalProperties": false,\n "properties": {\n "branch_id": {\n "pattern": "^aib_[a-f0-9]{64}$",\n "type": "string"\n },\n "detail": {\n "minLength": 1,\n "type": "string"\n },\n "evidence_id": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "next_probe": {\n "anyOf": [\n {\n "additionalProperties": false,\n "properties": {\n "authority": {\n "enum": [\n "artifact-bytes",\n "managed-static-analysis",\n "native-analysis-provider",\n "ast-static-analysis"\n ],\n "type": "string"\n },\n "operation": {\n "minLength": 1,\n "type": "string"\n },\n "rationale": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "operation",\n "rationale",\n "authority"\n ],\n "type": "object"\n },\n {\n "type": "null"\n }\n ]\n },\n "reason": {\n "enum": [\n "format-specific-analysis-required",\n "unknown-format"\n ],\n "type": "string"\n }\n },\n "required": [\n "branch_id",\n "reason",\n "detail",\n "next_probe",\n "evidence_id"\n ],\n "type": "object"\n },\n "type": "array"\n }\n },\n "required": [\n "inspection_id",\n "subject",\n "substeps",\n "observations",\n "derived_relationships",\n "hypotheses",\n "contradictions",\n "unexplored_branches",\n "next_probes",\n "coverage",\n "evidence_links",\n "limitations"\n ],\n "type": "object"\n }\n },\n "required": [\n "result",\n "evidence_id",\n "evidence"\n ],\n "type": "object"\n },\n "requiresSession": false,\n "title": "Inspect Artifact"\n },\n {\n "analysisOperation": "extract_artifact",\n "annotations": {\n "destructiveHint": false,\n "idempotentHint": false,\n "openWorldHint": true,\n "readOnlyHint": false\n },\n "description": "Extract all regular files from the active archive or application package into a fresh temporary directory chosen by REA. The result includes its location. Rejects traversal and symlink escapes, never overwrites, enforces archive integrity checks, and verifies cleanup. Integrity mismatches fail by default; record-and-continue extracts the observed bytes and reports each mismatch as an untrusted integrity contradiction.",\n "effects": {\n "accessesNetwork": false,\n "changesUiState": false,\n "idempotent": false,\n "launchesProcess": true,\n "mayDiscardData": false,\n "mutatesSession": true,\n "mutatesTarget": false,\n "writesFilesystem": true\n },\n "inputSchema": {\n "$schema": "https://json-schema.org/draft/2020-12/schema",\n "additionalProperties": false,\n "examples": [\n {}\n ],\n "properties": {\n "integrity_policy": {\n "default": "fail",\n "description": "Value for integrity policy.",\n "enum": [\n "fail",\n "record-and-continue"\n ],\n "type": "string"\n }\n },\n "type": "object"\n },\n "kind": "artifact-provider",\n "name": "extract_artifact",\n "outputSchema": {\n "$defs": {\n "__schema0": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "number"\n },\n {\n "type": "boolean"\n },\n {\n "type": "null"\n },\n {\n "items": {\n "$ref": "#/$defs/__schema0"\n },\n "type": "array"\n },\n {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n }\n ]\n }\n },\n "$schema": "https://json-schema.org/draft/2020-12/schema",\n "additionalProperties": false,\n "properties": {\n "evidence": {\n "additionalProperties": false,\n "properties": {\n "analysis_profile": {\n "additionalProperties": false,\n "properties": {\n "digest": {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n },\n "parameters": {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n },\n "provider": {\n "additionalProperties": false,\n "properties": {\n "id": {\n "minLength": 1,\n "type": "string"\n },\n "name": {\n "minLength": 1,\n "type": "string"\n },\n "version": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "id",\n "name",\n "version"\n ],\n "type": "object"\n }\n },\n "required": [\n "provider",\n "parameters",\n "digest"\n ],\n "type": "object"\n },\n "authority": {\n "enum": [\n "shipped-artifact",\n "controlled-replay",\n "historical-reference",\n "external-service",\n "analyst-inference"\n ],\n "type": "string"\n },\n "confidence": {\n "enum": [\n "observed",\n "derived",\n "inferred"\n ],\n "type": "string"\n },\n "environment": {\n "anyOf": [\n {\n "additionalProperties": false,\n "properties": {\n "architecture": {\n "minLength": 1,\n "type": "string"\n },\n "id": {\n "minLength": 1,\n "type": "string"\n },\n "isolation": {\n "enum": [\n "none",\n "process",\n "container",\n "virtual-machine"\n ],\n "type": "string"\n },\n "platform": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "id",\n "platform",\n "architecture",\n "isolation"\n ],\n "type": "object"\n },\n {\n "type": "null"\n }\n ]\n },\n "evidence_id": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "evidence_links": {\n "items": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "type": "array"\n },\n "limitations": {\n "items": {\n "type": "string"\n },\n "type": "array"\n },\n "locations": {\n "items": {\n "oneOf": [\n {\n "additionalProperties": false,\n "properties": {\n "address": {\n "minLength": 1,\n "type": "string"\n },\n "kind": {\n "const": "address",\n "type": "string"\n }\n },\n "required": [\n "kind",\n "address"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "end": {\n "minLength": 1,\n "type": "string"\n },\n "kind": {\n "const": "address-range",\n "type": "string"\n },\n "start": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "kind",\n "start",\n "end"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "kind": {\n "const": "artifact-path",\n "type": "string"\n },\n "path": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "kind",\n "path"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "kind": {\n "const": "file-offset",\n "type": "string"\n },\n "offset": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "kind",\n "offset"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "end": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "kind": {\n "const": "file-offset-range",\n "type": "string"\n },\n "start": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "kind",\n "start",\n "end"\n ],\n "type": "object"\n }\n ]\n },\n "type": "array"\n },\n "normalized_result": {\n "$ref": "#/$defs/__schema0"\n },\n "operation": {\n "minLength": 1,\n "type": "string"\n },\n "parameters": {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n },\n "predicate_type": {\n "minLength": 1,\n "type": "string"\n },\n "provider": {\n "additionalProperties": false,\n "properties": {\n "id": {\n "minLength": 1,\n "type": "string"\n },\n "name": {\n "minLength": 1,\n "type": "string"\n },\n "version": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "id",\n "name",\n "version"\n ],\n "type": "object"\n },\n "raw_result": {\n "anyOf": [\n {\n "$ref": "#/$defs/__schema0"\n },\n {\n "type": "null"\n }\n ]\n },\n "subject": {\n "anyOf": [\n {\n "additionalProperties": false,\n "properties": {\n "architecture": {\n "anyOf": [\n {\n "enum": [\n "x86",\n "x86_64",\n "arm",\n "arm64"\n ],\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "digest": {\n "additionalProperties": false,\n "properties": {\n "sha256": {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n }\n },\n "required": [\n "sha256"\n ],\n "type": "object"\n },\n "format": {\n "enum": [\n "hopper",\n "analysis-database",\n "mach-o",\n "elf",\n "pe",\n "dos-mz",\n "dos-com",\n "zip",\n "ipa",\n "apk",\n "msix",\n "appx",\n "asar",\n "dmg",\n "pkg",\n "plist",\n "javascript",\n "source-map",\n "directory",\n "file",\n "unknown",\n "mach-o-universal",\n "javascript-bundle",\n "entitlements"\n ],\n "type": "string"\n },\n "local_path": {\n "type": "string"\n },\n "name": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "name",\n "digest",\n "format",\n "architecture",\n "local_path"\n ],\n "type": "object"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "evidence_id",\n "subject",\n "provider",\n "predicate_type",\n "operation",\n "parameters",\n "raw_result",\n "normalized_result",\n "confidence",\n "authority",\n "environment",\n "limitations",\n "locations",\n "evidence_links"\n ],\n "type": "object"\n },\n "evidence_id": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "result": {\n "additionalProperties": false,\n "properties": {\n "artifacts": {\n "items": {\n "additionalProperties": false,\n "properties": {\n "artifact_id": {\n "pattern": "^art_[a-f0-9]{64}$",\n "type": "string"\n },\n "bytes_written": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "created": {\n "type": "boolean"\n },\n "relative_path": {\n "minLength": 1,\n "type": "string"\n },\n "sha256": {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n }\n },\n "required": [\n "artifact_id",\n "relative_path",\n "sha256",\n "bytes_written",\n "created"\n ],\n "type": "object"\n },\n "type": "array"\n },\n "cleanup": {\n "additionalProperties": false,\n "properties": {\n "attempted": {\n "type": "boolean"\n },\n "residual_paths": {\n "items": {\n "minLength": 1,\n "type": "string"\n },\n "type": "array"\n },\n "verified": {\n "type": "boolean"\n }\n },\n "required": [\n "attempted",\n "verified",\n "residual_paths"\n ],\n "type": "object"\n },\n "containment_verified": {\n "type": "boolean"\n },\n "extraction_manifest": {\n "additionalProperties": false,\n "properties": {\n "extraction_id": {\n "pattern": "^aex_[a-f0-9]{64}$",\n "type": "string"\n },\n "files_sha256": {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n },\n "output_root_alias": {\n "const": "$OUTPUT_ROOT",\n "type": "string"\n },\n "selected_occurrence_ids": {\n "items": {\n "pattern": "^occ_[a-f0-9]{64}$",\n "type": "string"\n },\n "minItems": 1,\n "type": "array"\n },\n "source_manifest_id": {\n "pattern": "^agm_[a-f0-9]{64}$",\n "type": "string"\n }\n },\n "required": [\n "extraction_id",\n "source_manifest_id",\n "selected_occurrence_ids",\n "files_sha256",\n "output_root_alias"\n ],\n "type": "object"\n },\n "integrity_contradictions": {\n "default": [],\n "items": {\n "additionalProperties": false,\n "properties": {\n "contradiction_id": {\n "pattern": "^ic_[a-f0-9]{64}$",\n "type": "string"\n },\n "declared_sha256": {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n },\n "entry_kind": {\n "enum": [\n "file",\n "slice"\n ],\n "type": "string"\n },\n "limitations": {\n "items": {\n "type": "string"\n },\n "minItems": 1,\n "type": "array"\n },\n "logical_path": {\n "minLength": 1,\n "type": "string"\n },\n "observed_sha256": {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n },\n "occurrence_id": {\n "pattern": "^occ_[a-f0-9]{64}$",\n "type": "string"\n },\n "parent_artifact_id": {\n "pattern": "^art_[a-f0-9]{64}$",\n "type": "string"\n },\n "provenance": {\n "const": "container-integrity-metadata-versus-observed-bytes",\n "type": "string"\n },\n "trust": {\n "const": "observed-untrusted",\n "type": "string"\n },\n "unpacked": {\n "type": "boolean"\n }\n },\n "required": [\n "contradiction_id",\n "occurrence_id",\n "parent_artifact_id",\n "logical_path",\n "declared_sha256",\n "observed_sha256",\n "entry_kind",\n "unpacked",\n "trust",\n "provenance",\n "limitations"\n ],\n "type": "object"\n },\n "type": "array"\n },\n "limitations": {\n "items": {\n "type": "string"\n },\n "type": "array"\n },\n "manifest": {\n "additionalProperties": false,\n "properties": {\n "edge_count": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "graph_sha256": {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n },\n "manifest_id": {\n "pattern": "^agm_[a-f0-9]{64}$",\n "type": "string"\n },\n "node_count": {\n "maximum": 9007199254740991,\n "minimum": 1,\n "type": "integer"\n },\n "occurrence_count": {\n "maximum": 9007199254740991,\n "minimum": 1,\n "type": "integer"\n },\n "root_artifact_id": {\n "pattern": "^art_[a-f0-9]{64}$",\n "type": "string"\n },\n "root_format": {\n "enum": [\n "dmg",\n "zip",\n "pkg",\n "asar",\n "javascript-bundle",\n "source-map",\n "mach-o-universal",\n "mach-o",\n "elf",\n "pe",\n "dos-mz",\n "dos-com",\n "hopper",\n "analysis-database",\n "ipa",\n "apk",\n "msix",\n "appx",\n "plist",\n "entitlements",\n "directory",\n "file",\n "unknown"\n ],\n "type": "string"\n },\n "root_sha256": {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n }\n },\n "required": [\n "manifest_id",\n "root_artifact_id",\n "root_sha256",\n "root_format",\n "graph_sha256",\n "node_count",\n "occurrence_count",\n "edge_count"\n ],\n "type": "object"\n },\n "output_root": {\n "minLength": 1,\n "type": "string"\n },\n "provenance": {\n "items": {\n "additionalProperties": false,\n "properties": {\n "arguments": {\n "items": {\n "type": "string"\n },\n "type": "array"\n },\n "effects": {\n "items": {\n "enum": [\n "read",\n "write",\n "mount"\n ],\n "type": "string"\n },\n "type": "array"\n },\n "executable_sha256": {\n "anyOf": [\n {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "exit_code": {\n "anyOf": [\n {\n "maximum": 9007199254740991,\n "minimum": -9007199254740991,\n "type": "integer"\n },\n {\n "type": "null"\n }\n ]\n },\n "tool": {\n "minLength": 1,\n "type": "string"\n },\n "tool_version": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "tool",\n "arguments",\n "tool_version",\n "executable_sha256",\n "exit_code",\n "effects"\n ],\n "type": "object"\n },\n "type": "array"\n }\n },\n "required": [\n "manifest",\n "extraction_manifest",\n "output_root",\n "artifacts",\n "containment_verified",\n "cleanup",\n "provenance",\n "integrity_contradictions",\n "limitations"\n ],\n "type": "object"\n }\n },\n "required": [\n "result",\n "evidence_id",\n "evidence"\n ],\n "type": "object"\n },\n "requiresSession": false,\n "title": "Extract Artifact"\n },\n {\n "analysisOperation": "decode_interface_builder",\n "annotations": {\n "destructiveHint": false,\n "idempotentHint": true,\n "openWorldHint": false,\n "readOnlyHint": false\n },\n "description": "Decode compiled storyboard and nib archives inside the active Apple app bundle, including keyed property lists and NIBArchive object tables, into a bounded object, hierarchy, and connection graph. This is static archive parsing; unrecognized archive classes and unresolved code handlers remain explicit unknowns.",\n "effects": {\n "accessesNetwork": false,\n "changesUiState": false,\n "idempotent": true,\n "launchesProcess": false,\n "mayDiscardData": false,\n "mutatesSession": true,\n "mutatesTarget": false,\n "writesFilesystem": false\n },\n "inputSchema": {\n "$schema": "https://json-schema.org/draft/2020-12/schema",\n "additionalProperties": false,\n "examples": [\n {}\n ],\n "properties": {\n "max_connections": {\n "default": 40000,\n "description": "Maximum permitted connections for this operation.",\n "maximum": 40000,\n "minimum": 1,\n "type": "integer"\n },\n "max_documents": {\n "default": 64,\n "description": "Maximum permitted documents for this operation.",\n "maximum": 64,\n "minimum": 1,\n "type": "integer"\n },\n "max_objects": {\n "default": 20000,\n "description": "Maximum permitted objects for this operation.",\n "maximum": 20000,\n "minimum": 1,\n "type": "integer"\n }\n },\n "type": "object"\n },\n "kind": "artifact-provider",\n "name": "decode_interface_builder",\n "outputSchema": {\n "$defs": {\n "__schema0": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "number"\n },\n {\n "type": "boolean"\n },\n {\n "type": "null"\n },\n {\n "items": {\n "$ref": "#/$defs/__schema0"\n },\n "type": "array"\n },\n {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n }\n ]\n }\n },\n "$schema": "https://json-schema.org/draft/2020-12/schema",\n "additionalProperties": false,\n "properties": {\n "evidence": {\n "additionalProperties": false,\n "properties": {\n "analysis_profile": {\n "additionalProperties": false,\n "properties": {\n "digest": {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n },\n "parameters": {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n },\n "provider": {\n "additionalProperties": false,\n "properties": {\n "id": {\n "minLength": 1,\n "type": "string"\n },\n "name": {\n "minLength": 1,\n "type": "string"\n },\n "version": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "id",\n "name",\n "version"\n ],\n "type": "object"\n }\n },\n "required": [\n "provider",\n "parameters",\n "digest"\n ],\n "type": "object"\n },\n "authority": {\n "enum": [\n "shipped-artifact",\n "controlled-replay",\n "historical-reference",\n "external-service",\n "analyst-inference"\n ],\n "type": "string"\n },\n "confidence": {\n "enum": [\n "observed",\n "derived",\n "inferred"\n ],\n "type": "string"\n },\n "environment": {\n "anyOf": [\n {\n "additionalProperties": false,\n "properties": {\n "architecture": {\n "minLength": 1,\n "type": "string"\n },\n "id": {\n "minLength": 1,\n "type": "string"\n },\n "isolation": {\n "enum": [\n "none",\n "process",\n "container",\n "virtual-machine"\n ],\n "type": "string"\n },\n "platform": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "id",\n "platform",\n "architecture",\n "isolation"\n ],\n "type": "object"\n },\n {\n "type": "null"\n }\n ]\n },\n "evidence_id": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "evidence_links": {\n "items": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "type": "array"\n },\n "limitations": {\n "items": {\n "type": "string"\n },\n "type": "array"\n },\n "locations": {\n "items": {\n "oneOf": [\n {\n "additionalProperties": false,\n "properties": {\n "address": {\n "minLength": 1,\n "type": "string"\n },\n "kind": {\n "const": "address",\n "type": "string"\n }\n },\n "required": [\n "kind",\n "address"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "end": {\n "minLength": 1,\n "type": "string"\n },\n "kind": {\n "const": "address-range",\n "type": "string"\n },\n "start": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "kind",\n "start",\n "end"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "kind": {\n "const": "artifact-path",\n "type": "string"\n },\n "path": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "kind",\n "path"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "kind": {\n "const": "file-offset",\n "type": "string"\n },\n "offset": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "kind",\n "offset"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "end": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "kind": {\n "const": "file-offset-range",\n "type": "string"\n },\n "start": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "kind",\n "start",\n "end"\n ],\n "type": "object"\n }\n ]\n },\n "type": "array"\n },\n "normalized_result": {\n "$ref": "#/$defs/__schema0"\n },\n "operation": {\n "minLength": 1,\n "type": "string"\n },\n "parameters": {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n },\n "predicate_type": {\n "minLength": 1,\n "type": "string"\n },\n "provider": {\n "additionalProperties": false,\n "properties": {\n "id": {\n "minLength": 1,\n "type": "string"\n },\n "name": {\n "minLength": 1,\n "type": "string"\n },\n "version": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "id",\n "name",\n "version"\n ],\n "type": "object"\n },\n "raw_result": {\n "anyOf": [\n {\n "$ref": "#/$defs/__schema0"\n },\n {\n "type": "null"\n }\n ]\n },\n "subject": {\n "anyOf": [\n {\n "additionalProperties": false,\n "properties": {\n "architecture": {\n "anyOf": [\n {\n "enum": [\n "x86",\n "x86_64",\n "arm",\n "arm64"\n ],\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "digest": {\n "additionalProperties": false,\n "properties": {\n "sha256": {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n }\n },\n "required": [\n "sha256"\n ],\n "type": "object"\n },\n "format": {\n "enum": [\n "hopper",\n "analysis-database",\n "mach-o",\n "elf",\n "pe",\n "dos-mz",\n "dos-com",\n "zip",\n "ipa",\n "apk",\n "msix",\n "appx",\n "asar",\n "dmg",\n "pkg",\n "plist",\n "javascript",\n "source-map",\n "directory",\n "file",\n "unknown",\n "mach-o-universal",\n "javascript-bundle",\n "entitlements"\n ],\n "type": "string"\n },\n "local_path": {\n "type": "string"\n },\n "name": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "name",\n "digest",\n "format",\n "architecture",\n "local_path"\n ],\n "type": "object"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "evidence_id",\n "subject",\n "provider",\n "predicate_type",\n "operation",\n "parameters",\n "raw_result",\n "normalized_result",\n "confidence",\n "authority",\n "environment",\n "limitations",\n "locations",\n "evidence_links"\n ],\n "type": "object"\n },\n "evidence_id": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "result": {\n "additionalProperties": false,\n "properties": {\n "documents": {\n "items": {\n "additionalProperties": false,\n "properties": {\n "archive_sha256": {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n },\n "connection_count": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "document_kind": {\n "enum": [\n "nib",\n "storyboard_scene"\n ],\n "type": "string"\n },\n "hierarchy_complete": {\n "type": "boolean"\n },\n "object_count": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "relative_path": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "relative_path",\n "archive_sha256",\n "document_kind",\n "object_count",\n "connection_count",\n "hierarchy_complete"\n ],\n "type": "object"\n },\n "maxItems": 64,\n "type": "array"\n },\n "graph": {\n "additionalProperties": false,\n "properties": {\n "coverage": {\n "items": {\n "additionalProperties": false,\n "properties": {\n "examined": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "facet": {\n "minLength": 1,\n "type": "string"\n },\n "omitted": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "reason": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "status": {\n "enum": [\n "complete",\n "partial",\n "unsupported",\n "not_requested"\n ],\n "type": "string"\n }\n },\n "required": [\n "facet",\n "status",\n "reason",\n "examined",\n "omitted"\n ],\n "type": "object"\n },\n "type": "array"\n },\n "edges": {\n "items": {\n "oneOf": [\n {\n "additionalProperties": false,\n "properties": {\n "evidence": {\n "items": {\n "additionalProperties": false,\n "properties": {\n "artifact_path": {\n "anyOf": [\n {\n "minLength": 1,\n "type": "string"\n },\n {\n "type": "null"\n }\n ],\n "default": null\n },\n "artifact_sha256": {\n "anyOf": [\n {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n },\n {\n "type": "null"\n }\n ],\n "default": null\n },\n "description": {\n "minLength": 1,\n "type": "string"\n },\n "kind": {\n "enum": [\n "binary_metadata",\n "interface_builder_resource",\n "symbol",\n "reference",\n "decompiler"\n ],\n "type": "string"\n },\n "location": {\n "additionalProperties": false,\n "properties": {\n "address": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "file_offset": {\n "anyOf": [\n {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "address",\n "file_offset"\n ],\n "type": "object"\n }\n },\n "required": [\n "kind",\n "description",\n "location",\n "artifact_path",\n "artifact_sha256"\n ],\n "type": "object"\n },\n "minItems": 1,\n "type": "array"\n },\n "from": {\n "minLength": 1,\n "type": "string"\n },\n "id": {\n "minLength": 1,\n "type": "string"\n },\n "limitations": {\n "items": {\n "type": "string"\n },\n "type": "array"\n },\n "relation": {\n "enum": [\n "contains",\n "outlet_to",\n "target_action",\n "segue_to",\n "objc_dispatch",\n "swift_witness_dispatch",\n "swift_vtable_dispatch",\n "thunk_to",\n "direct_call",\n "indirect_call",\n "provider_call",\n "reads",\n "writes",\n "flows_to",\n "controls"\n ],\n "type": "string"\n },\n "resolution": {\n "enum": [\n "observed",\n "inferred",\n "resolved",\n "ambiguous"\n ],\n "type": "string"\n },\n "to": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "id",\n "from",\n "to",\n "relation",\n "resolution",\n "evidence",\n "limitations"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "evidence": {\n "items": {\n "additionalProperties": false,\n "properties": {\n "artifact_path": {\n "anyOf": [\n {\n "minLength": 1,\n "type": "string"\n },\n {\n "type": "null"\n }\n ],\n "default": null\n },\n "artifact_sha256": {\n "anyOf": [\n {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n },\n {\n "type": "null"\n }\n ],\n "default": null\n },\n "description": {\n "minLength": 1,\n "type": "string"\n },\n "kind": {\n "enum": [\n "binary_metadata",\n "interface_builder_resource",\n "symbol",\n "reference",\n "decompiler"\n ],\n "type": "string"\n },\n "location": {\n "additionalProperties": false,\n "properties": {\n "address": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "file_offset": {\n "anyOf": [\n {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "address",\n "file_offset"\n ],\n "type": "object"\n }\n },\n "required": [\n "kind",\n "description",\n "location",\n "artifact_path",\n "artifact_sha256"\n ],\n "type": "object"\n },\n "type": "array"\n },\n "from": {\n "minLength": 1,\n "type": "string"\n },\n "id": {\n "minLength": 1,\n "type": "string"\n },\n "limitations": {\n "items": {\n "type": "string"\n },\n "type": "array"\n },\n "reason": {\n "minLength": 1,\n "type": "string"\n },\n "relation": {\n "enum": [\n "contains",\n "outlet_to",\n "target_action",\n "segue_to",\n "objc_dispatch",\n "swift_witness_dispatch",\n "swift_vtable_dispatch",\n "thunk_to",\n "direct_call",\n "indirect_call",\n "provider_call",\n "reads",\n "writes",\n "flows_to",\n "controls"\n ],\n "type": "string"\n },\n "resolution": {\n "const": "unresolved",\n "type": "string"\n },\n "to": {\n "type": "null"\n }\n },\n "required": [\n "id",\n "from",\n "to",\n "relation",\n "resolution",\n "reason",\n "evidence",\n "limitations"\n ],\n "type": "object"\n }\n ]\n },\n "type": "array"\n },\n "nodes": {\n "items": {\n "additionalProperties": false,\n "properties": {\n "attributes": {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n },\n "evidence": {\n "items": {\n "additionalProperties": false,\n "properties": {\n "artifact_path": {\n "anyOf": [\n {\n "minLength": 1,\n "type": "string"\n },\n {\n "type": "null"\n }\n ],\n "default": null\n },\n "artifact_sha256": {\n "anyOf": [\n {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n },\n {\n "type": "null"\n }\n ],\n "default": null\n },\n "description": {\n "minLength": 1,\n "type": "string"\n },\n "kind": {\n "enum": [\n "binary_metadata",\n "interface_builder_resource",\n "symbol",\n "reference",\n "decompiler"\n ],\n "type": "string"\n },\n "location": {\n "additionalProperties": false,\n "properties": {\n "address": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "file_offset": {\n "anyOf": [\n {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "address",\n "file_offset"\n ],\n "type": "object"\n }\n },\n "required": [\n "kind",\n "description",\n "location",\n "artifact_path",\n "artifact_sha256"\n ],\n "type": "object"\n },\n "type": "array"\n },\n "id": {\n "minLength": 1,\n "type": "string"\n },\n "kind": {\n "enum": [\n "storyboard",\n "scene",\n "view_controller",\n "view",\n "control",\n "constraint",\n "layout_guide",\n "resource",\n "placeholder",\n "external_object",\n "outlet",\n "action",\n "segue",\n "objc_class",\n "objc_selector",\n "swift_declaration",\n "swift_requirement",\n "dispatch_table",\n "dispatch_slot",\n "thunk",\n "function",\n "state_value",\n "global_value",\n "field",\n "branch_condition",\n "sink",\n "unknown"\n ],\n "type": "string"\n },\n "location": {\n "anyOf": [\n {\n "additionalProperties": false,\n "properties": {\n "address": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "file_offset": {\n "anyOf": [\n {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "address",\n "file_offset"\n ],\n "type": "object"\n },\n {\n "type": "null"\n }\n ]\n },\n "name": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "id",\n "kind",\n "name",\n "location",\n "attributes",\n "evidence"\n ],\n "type": "object"\n },\n "type": "array"\n },\n "provider": {\n "additionalProperties": false,\n "properties": {\n "id": {\n "minLength": 1,\n "type": "string"\n },\n "tool_version": {\n "minLength": 1,\n "type": "string"\n },\n "version": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "id",\n "version",\n "tool_version"\n ],\n "type": "object"\n },\n "target_sha256": {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n },\n "truncated": {\n "type": "boolean"\n }\n },\n "required": [\n "target_sha256",\n "provider",\n "nodes",\n "edges",\n "coverage",\n "truncated"\n ],\n "type": "object"\n },\n "limitations": {\n "items": {\n "type": "string"\n },\n "type": "array"\n },\n "target_sha256": {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n }\n },\n "required": [\n "target_sha256",\n "documents",\n "graph",\n "limitations"\n ],\n "type": "object"\n }\n },\n "required": [\n "result",\n "evidence_id",\n "evidence"\n ],\n "type": "object"\n },\n "requiresSession": false,\n "title": "Decode Interface Builder"\n },\n {\n "analysisOperation": "inspect_keyed_archive",\n "annotations": {\n "destructiveHint": false,\n "idempotentHint": true,\n "openWorldHint": false,\n "readOnlyHint": false\n },\n "description": "Inspect one Foundation NSKeyedArchiver plist in the active app bundle as original object-table nodes, class descriptors, named roots, and UID edges. Preserves shared and cyclic references without instantiating classes. The path is relative to the bundle; root selection and object pagination preserve original identities.",\n "effects": {\n "accessesNetwork": false,\n "changesUiState": false,\n "idempotent": true,\n "launchesProcess": false,\n "mayDiscardData": false,\n "mutatesSession": true,\n "mutatesTarget": false,\n "writesFilesystem": false\n },\n "inputSchema": {\n "$schema": "https://json-schema.org/draft/2020-12/schema",\n "additionalProperties": false,\n "examples": [\n {\n "path": "Contents/Resources/Model.plist"\n }\n ],\n "properties": {\n "limit": {\n "default": 20000,\n "description": "Value for limit.",\n "maximum": 20000,\n "minimum": 1,\n "type": "integer"\n },\n "offset": {\n "default": 0,\n "description": "Value for offset.",\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "path": {\n "default": ".",\n "description": "Local filesystem path used by this operation.",\n "minLength": 1,\n "type": "string"\n },\n "root": {\n "description": "Value for root.",\n "type": "string"\n }\n },\n "type": "object"\n },\n "kind": "artifact-provider",\n "name": "inspect_keyed_archive",\n "outputSchema": {\n "$defs": {\n "__schema0": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "number"\n },\n {\n "type": "boolean"\n },\n {\n "type": "null"\n },\n {\n "items": {\n "$ref": "#/$defs/__schema0"\n },\n "type": "array"\n },\n {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n }\n ]\n }\n },\n "$schema": "https://json-schema.org/draft/2020-12/schema",\n "additionalProperties": false,\n "properties": {\n "evidence": {\n "additionalProperties": false,\n "properties": {\n "analysis_profile": {\n "additionalProperties": false,\n "properties": {\n "digest": {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n },\n "parameters": {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n },\n "provider": {\n "additionalProperties": false,\n "properties": {\n "id": {\n "minLength": 1,\n "type": "string"\n },\n "name": {\n "minLength": 1,\n "type": "string"\n },\n "version": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "id",\n "name",\n "version"\n ],\n "type": "object"\n }\n },\n "required": [\n "provider",\n "parameters",\n "digest"\n ],\n "type": "object"\n },\n "authority": {\n "enum": [\n "shipped-artifact",\n "controlled-replay",\n "historical-reference",\n "external-service",\n "analyst-inference"\n ],\n "type": "string"\n },\n "confidence": {\n "enum": [\n "observed",\n "derived",\n "inferred"\n ],\n "type": "string"\n },\n "environment": {\n "anyOf": [\n {\n "additionalProperties": false,\n "properties": {\n "architecture": {\n "minLength": 1,\n "type": "string"\n },\n "id": {\n "minLength": 1,\n "type": "string"\n },\n "isolation": {\n "enum": [\n "none",\n "process",\n "container",\n "virtual-machine"\n ],\n "type": "string"\n },\n "platform": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "id",\n "platform",\n "architecture",\n "isolation"\n ],\n "type": "object"\n },\n {\n "type": "null"\n }\n ]\n },\n "evidence_id": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "evidence_links": {\n "items": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "type": "array"\n },\n "limitations": {\n "items": {\n "type": "string"\n },\n "type": "array"\n },\n "locations": {\n "items": {\n "oneOf": [\n {\n "additionalProperties": false,\n "properties": {\n "address": {\n "minLength": 1,\n "type": "string"\n },\n "kind": {\n "const": "address",\n "type": "string"\n }\n },\n "required": [\n "kind",\n "address"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "end": {\n "minLength": 1,\n "type": "string"\n },\n "kind": {\n "const": "address-range",\n "type": "string"\n },\n "start": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "kind",\n "start",\n "end"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "kind": {\n "const": "artifact-path",\n "type": "string"\n },\n "path": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "kind",\n "path"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "kind": {\n "const": "file-offset",\n "type": "string"\n },\n "offset": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "kind",\n "offset"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "end": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "kind": {\n "const": "file-offset-range",\n "type": "string"\n },\n "start": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "kind",\n "start",\n "end"\n ],\n "type": "object"\n }\n ]\n },\n "type": "array"\n },\n "normalized_result": {\n "$ref": "#/$defs/__schema0"\n },\n "operation": {\n "minLength": 1,\n "type": "string"\n },\n "parameters": {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n },\n "predicate_type": {\n "minLength": 1,\n "type": "string"\n },\n "provider": {\n "additionalProperties": false,\n "properties": {\n "id": {\n "minLength": 1,\n "type": "string"\n },\n "name": {\n "minLength": 1,\n "type": "string"\n },\n "version": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "id",\n "name",\n "version"\n ],\n "type": "object"\n },\n "raw_result": {\n "anyOf": [\n {\n "$ref": "#/$defs/__schema0"\n },\n {\n "type": "null"\n }\n ]\n },\n "subject": {\n "anyOf": [\n {\n "additionalProperties": false,\n "properties": {\n "architecture": {\n "anyOf": [\n {\n "enum": [\n "x86",\n "x86_64",\n "arm",\n "arm64"\n ],\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "digest": {\n "additionalProperties": false,\n "properties": {\n "sha256": {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n }\n },\n "required": [\n "sha256"\n ],\n "type": "object"\n },\n "format": {\n "enum": [\n "hopper",\n "analysis-database",\n "mach-o",\n "elf",\n "pe",\n "dos-mz",\n "dos-com",\n "zip",\n "ipa",\n "apk",\n "msix",\n "appx",\n "asar",\n "dmg",\n "pkg",\n "plist",\n "javascript",\n "source-map",\n "directory",\n "file",\n "unknown",\n "mach-o-universal",\n "javascript-bundle",\n "entitlements"\n ],\n "type": "string"\n },\n "local_path": {\n "type": "string"\n },\n "name": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "name",\n "digest",\n "format",\n "architecture",\n "local_path"\n ],\n "type": "object"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "evidence_id",\n "subject",\n "provider",\n "predicate_type",\n "operation",\n "parameters",\n "raw_result",\n "normalized_result",\n "confidence",\n "authority",\n "environment",\n "limitations",\n "locations",\n "evidence_links"\n ],\n "type": "object"\n },\n "evidence_id": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "result": {\n "additionalProperties": false,\n "properties": {\n "archive_format": {\n "enum": [\n "binary-plist",\n "xml-plist"\n ],\n "type": "string"\n },\n "archive_path": {\n "type": "string"\n },\n "archive_sha256": {\n "type": "string"\n },\n "limitations": {\n "items": {\n "type": "string"\n },\n "type": "array"\n },\n "next_offset": {\n "anyOf": [\n {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n {\n "type": "null"\n }\n ]\n },\n "objects": {\n "items": {\n "additionalProperties": false,\n "properties": {\n "class_id": {\n "anyOf": [\n {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n {\n "type": "null"\n }\n ]\n },\n "class_name": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "id": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "kind": {\n "enum": [\n "nil",\n "scalar",\n "array",\n "dictionary",\n "class-descriptor",\n "archived-object"\n ],\n "type": "string"\n },\n "status": {\n "enum": [\n "observed",\n "unknown-class",\n "unresolved-class",\n "nil"\n ],\n "type": "string"\n },\n "value": {\n "$ref": "#/$defs/__schema0"\n }\n },\n "required": [\n "id",\n "kind",\n "class_id",\n "class_name",\n "status",\n "value"\n ],\n "type": "object"\n },\n "type": "array"\n },\n "offset": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "references": {\n "items": {\n "additionalProperties": false,\n "properties": {\n "path": {\n "items": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n ]\n },\n "type": "array"\n },\n "raw": {\n "$ref": "#/$defs/__schema0"\n },\n "source": {\n "anyOf": [\n {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n {\n "type": "null"\n }\n ]\n },\n "status": {\n "enum": [\n "resolved",\n "nil",\n "unresolved",\n "malformed"\n ],\n "type": "string"\n },\n "target": {\n "anyOf": [\n {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "source",\n "path",\n "target",\n "status",\n "raw"\n ],\n "type": "object"\n },\n "type": "array"\n },\n "roots": {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n },\n "target_sha256": {\n "type": "string"\n },\n "total_objects": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "total_references": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "truncated": {\n "type": "boolean"\n }\n },\n "required": [\n "target_sha256",\n "archive_path",\n "archive_sha256",\n "archive_format",\n "roots",\n "objects",\n "references",\n "total_objects",\n "total_references",\n "offset",\n "next_offset",\n "truncated",\n "limitations"\n ],\n "type": "object"\n }\n },\n "required": [\n "result",\n "evidence_id",\n "evidence"\n ],\n "type": "object"\n },\n "requiresSession": false,\n "title": "Inspect Keyed Archive"\n },\n {\n "analysisOperation": "inspect_asset_catalog",\n "annotations": {\n "destructiveHint": false,\n "idempotentHint": true,\n "openWorldHint": true,\n "readOnlyHint": false\n },\n "description": "Inspect compiled Assets.car metadata in an active Apple app bundle. Returns stable paginated catalog and rendition records with raw assetutil metadata and catalog digests; rendition bytes are not extracted.",\n "effects": {\n "accessesNetwork": false,\n "changesUiState": false,\n "idempotent": true,\n "launchesProcess": true,\n "mayDiscardData": false,\n "mutatesSession": true,\n "mutatesTarget": false,\n "writesFilesystem": false\n },\n "inputSchema": {\n "$schema": "https://json-schema.org/draft/2020-12/schema",\n "additionalProperties": false,\n "examples": [\n {\n "limit": 1000,\n "offset": 0\n }\n ],\n "properties": {\n "limit": {\n "default": 1000,\n "description": "Value for limit.",\n "maximum": 10000,\n "minimum": 1,\n "type": "integer"\n },\n "offset": {\n "default": 0,\n "description": "Value for offset.",\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "type": "object"\n },\n "kind": "artifact-provider",\n "name": "inspect_asset_catalog",\n "outputSchema": {\n "$defs": {\n "__schema0": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "number"\n },\n {\n "type": "boolean"\n },\n {\n "type": "null"\n },\n {\n "items": {\n "$ref": "#/$defs/__schema0"\n },\n "type": "array"\n },\n {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n }\n ]\n }\n },\n "$schema": "https://json-schema.org/draft/2020-12/schema",\n "additionalProperties": false,\n "properties": {\n "evidence": {\n "additionalProperties": false,\n "properties": {\n "analysis_profile": {\n "additionalProperties": false,\n "properties": {\n "digest": {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n },\n "parameters": {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n },\n "provider": {\n "additionalProperties": false,\n "properties": {\n "id": {\n "minLength": 1,\n "type": "string"\n },\n "name": {\n "minLength": 1,\n "type": "string"\n },\n "version": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "id",\n "name",\n "version"\n ],\n "type": "object"\n }\n },\n "required": [\n "provider",\n "parameters",\n "digest"\n ],\n "type": "object"\n },\n "authority": {\n "enum": [\n "shipped-artifact",\n "controlled-replay",\n "historical-reference",\n "external-service",\n "analyst-inference"\n ],\n "type": "string"\n },\n "confidence": {\n "enum": [\n "observed",\n "derived",\n "inferred"\n ],\n "type": "string"\n },\n "environment": {\n "anyOf": [\n {\n "additionalProperties": false,\n "properties": {\n "architecture": {\n "minLength": 1,\n "type": "string"\n },\n "id": {\n "minLength": 1,\n "type": "string"\n },\n "isolation": {\n "enum": [\n "none",\n "process",\n "container",\n "virtual-machine"\n ],\n "type": "string"\n },\n "platform": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "id",\n "platform",\n "architecture",\n "isolation"\n ],\n "type": "object"\n },\n {\n "type": "null"\n }\n ]\n },\n "evidence_id": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "evidence_links": {\n "items": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "type": "array"\n },\n "limitations": {\n "items": {\n "type": "string"\n },\n "type": "array"\n },\n "locations": {\n "items": {\n "oneOf": [\n {\n "additionalProperties": false,\n "properties": {\n "address": {\n "minLength": 1,\n "type": "string"\n },\n "kind": {\n "const": "address",\n "type": "string"\n }\n },\n "required": [\n "kind",\n "address"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "end": {\n "minLength": 1,\n "type": "string"\n },\n "kind": {\n "const": "address-range",\n "type": "string"\n },\n "start": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "kind",\n "start",\n "end"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "kind": {\n "const": "artifact-path",\n "type": "string"\n },\n "path": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "kind",\n "path"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "kind": {\n "const": "file-offset",\n "type": "string"\n },\n "offset": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "kind",\n "offset"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "end": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "kind": {\n "const": "file-offset-range",\n "type": "string"\n },\n "start": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "kind",\n "start",\n "end"\n ],\n "type": "object"\n }\n ]\n },\n "type": "array"\n },\n "normalized_result": {\n "$ref": "#/$defs/__schema0"\n },\n "operation": {\n "minLength": 1,\n "type": "string"\n },\n "parameters": {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n },\n "predicate_type": {\n "minLength": 1,\n "type": "string"\n },\n "provider": {\n "additionalProperties": false,\n "properties": {\n "id": {\n "minLength": 1,\n "type": "string"\n },\n "name": {\n "minLength": 1,\n "type": "string"\n },\n "version": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "id",\n "name",\n "version"\n ],\n "type": "object"\n },\n "raw_result": {\n "anyOf": [\n {\n "$ref": "#/$defs/__schema0"\n },\n {\n "type": "null"\n }\n ]\n },\n "subject": {\n "anyOf": [\n {\n "additionalProperties": false,\n "properties": {\n "architecture": {\n "anyOf": [\n {\n "enum": [\n "x86",\n "x86_64",\n "arm",\n "arm64"\n ],\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "digest": {\n "additionalProperties": false,\n "properties": {\n "sha256": {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n }\n },\n "required": [\n "sha256"\n ],\n "type": "object"\n },\n "format": {\n "enum": [\n "hopper",\n "analysis-database",\n "mach-o",\n "elf",\n "pe",\n "dos-mz",\n "dos-com",\n "zip",\n "ipa",\n "apk",\n "msix",\n "appx",\n "asar",\n "dmg",\n "pkg",\n "plist",\n "javascript",\n "source-map",\n "directory",\n "file",\n "unknown",\n "mach-o-universal",\n "javascript-bundle",\n "entitlements"\n ],\n "type": "string"\n },\n "local_path": {\n "type": "string"\n },\n "name": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "name",\n "digest",\n "format",\n "architecture",\n "local_path"\n ],\n "type": "object"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "evidence_id",\n "subject",\n "provider",\n "predicate_type",\n "operation",\n "parameters",\n "raw_result",\n "normalized_result",\n "confidence",\n "authority",\n "environment",\n "limitations",\n "locations",\n "evidence_links"\n ],\n "type": "object"\n },\n "evidence_id": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "result": {\n "additionalProperties": false,\n "properties": {\n "catalogs": {\n "items": {\n "additionalProperties": false,\n "properties": {\n "path": {\n "minLength": 1,\n "type": "string"\n },\n "record_count": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "sha256": {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n }\n },\n "required": [\n "path",\n "sha256",\n "record_count"\n ],\n "type": "object"\n },\n "type": "array"\n },\n "limit": {\n "exclusiveMinimum": 0,\n "maximum": 9007199254740991,\n "type": "integer"\n },\n "limitations": {\n "items": {\n "type": "string"\n },\n "type": "array"\n },\n "next_offset": {\n "anyOf": [\n {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n {\n "type": "null"\n }\n ]\n },\n "offset": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "records": {\n "items": {\n "additionalProperties": false,\n "properties": {\n "asset_name": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "catalog_path": {\n "minLength": 1,\n "type": "string"\n },\n "catalog_sha256": {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n },\n "index": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "kind": {\n "enum": [\n "catalog",\n "rendition"\n ],\n "type": "string"\n },\n "metadata": {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n },\n "rendition_name": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "catalog_path",\n "catalog_sha256",\n "index",\n "kind",\n "asset_name",\n "rendition_name",\n "metadata"\n ],\n "type": "object"\n },\n "type": "array"\n },\n "resource_key_matches": {\n "items": {\n "additionalProperties": false,\n "properties": {\n "field": {\n "minLength": 1,\n "type": "string"\n },\n "key": {\n "minLength": 1,\n "type": "string"\n },\n "renditions": {\n "items": {\n "additionalProperties": false,\n "properties": {\n "catalog_path": {\n "minLength": 1,\n "type": "string"\n },\n "catalog_sha256": {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n },\n "record_index": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "rendition_name": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "catalog_path",\n "catalog_sha256",\n "record_index",\n "rendition_name"\n ],\n "type": "object"\n },\n "type": "array"\n },\n "source_archive_sha256": {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n },\n "source_node_id": {\n "minLength": 1,\n "type": "string"\n },\n "source_path": {\n "minLength": 1,\n "type": "string"\n },\n "status": {\n "enum": [\n "matched",\n "ambiguous",\n "unmatched"\n ],\n "type": "string"\n }\n },\n "required": [\n "source_node_id",\n "source_path",\n "source_archive_sha256",\n "field",\n "key",\n "status",\n "renditions"\n ],\n "type": "object"\n },\n "type": "array"\n },\n "target_sha256": {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n },\n "total_records": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "truncated": {\n "type": "boolean"\n }\n },\n "required": [\n "target_sha256",\n "catalogs",\n "total_records",\n "offset",\n "limit",\n "records",\n "resource_key_matches",\n "next_offset",\n "truncated",\n "limitations"\n ],\n "type": "object"\n }\n },\n "required": [\n "result",\n "evidence_id",\n "evidence"\n ],\n "type": "object"\n },\n "requiresSession": false,\n "title": "Inspect Asset Catalog"\n },\n {\n "analysisOperation": "inspect_managed_artifact",\n "annotations": {\n "destructiveHint": false,\n "idempotentHint": true,\n "openWorldHint": false,\n "readOnlyHint": false\n },\n "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 complete inline inventories when metadata is admitted and explicit partial or malformed coverage otherwise.",\n "effects": {\n "accessesNetwork": false,\n "changesUiState": false,\n "idempotent": true,\n "launchesProcess": false,\n "mayDiscardData": false,\n "mutatesSession": true,\n "mutatesTarget": false,\n "writesFilesystem": false\n },\n "inputSchema": {\n "$schema": "https://json-schema.org/draft/2020-12/schema",\n "examples": [\n {\n "path": "/tmp/Example.dll"\n }\n ],\n "properties": {\n "path": {\n "description": "Explicit managed PE/CLI path; omit to reuse the previously selected managed target",\n "minLength": 1,\n "type": "string"\n }\n },\n "type": "object"\n },\n "kind": "managed-provider",\n "name": "inspect_managed_artifact",\n "outputSchema": {\n "$defs": {\n "__schema0": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "number"\n },\n {\n "type": "boolean"\n },\n {\n "type": "null"\n },\n {\n "items": {\n "$ref": "#/$defs/__schema0"\n },\n "type": "array"\n },\n {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n }\n ]\n }\n },\n "$schema": "https://json-schema.org/draft/2020-12/schema",\n "additionalProperties": false,\n "properties": {\n "evidence": {\n "additionalProperties": false,\n "properties": {\n "analysis_profile": {\n "additionalProperties": false,\n "properties": {\n "digest": {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n },\n "parameters": {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n },\n "provider": {\n "additionalProperties": false,\n "properties": {\n "id": {\n "minLength": 1,\n "type": "string"\n },\n "name": {\n "minLength": 1,\n "type": "string"\n },\n "version": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "id",\n "name",\n "version"\n ],\n "type": "object"\n }\n },\n "required": [\n "provider",\n "parameters",\n "digest"\n ],\n "type": "object"\n },\n "authority": {\n "enum": [\n "shipped-artifact",\n "controlled-replay",\n "historical-reference",\n "external-service",\n "analyst-inference"\n ],\n "type": "string"\n },\n "confidence": {\n "enum": [\n "observed",\n "derived",\n "inferred"\n ],\n "type": "string"\n },\n "environment": {\n "anyOf": [\n {\n "additionalProperties": false,\n "properties": {\n "architecture": {\n "minLength": 1,\n "type": "string"\n },\n "id": {\n "minLength": 1,\n "type": "string"\n },\n "isolation": {\n "enum": [\n "none",\n "process",\n "container",\n "virtual-machine"\n ],\n "type": "string"\n },\n "platform": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "id",\n "platform",\n "architecture",\n "isolation"\n ],\n "type": "object"\n },\n {\n "type": "null"\n }\n ]\n },\n "evidence_id": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "evidence_links": {\n "items": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "type": "array"\n },\n "limitations": {\n "items": {\n "type": "string"\n },\n "type": "array"\n },\n "locations": {\n "items": {\n "oneOf": [\n {\n "additionalProperties": false,\n "properties": {\n "address": {\n "minLength": 1,\n "type": "string"\n },\n "kind": {\n "const": "address",\n "type": "string"\n }\n },\n "required": [\n "kind",\n "address"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "end": {\n "minLength": 1,\n "type": "string"\n },\n "kind": {\n "const": "address-range",\n "type": "string"\n },\n "start": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "kind",\n "start",\n "end"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "kind": {\n "const": "artifact-path",\n "type": "string"\n },\n "path": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "kind",\n "path"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "kind": {\n "const": "file-offset",\n "type": "string"\n },\n "offset": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "kind",\n "offset"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "end": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "kind": {\n "const": "file-offset-range",\n "type": "string"\n },\n "start": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "kind",\n "start",\n "end"\n ],\n "type": "object"\n }\n ]\n },\n "type": "array"\n },\n "normalized_result": {\n "$ref": "#/$defs/__schema0"\n },\n "operation": {\n "minLength": 1,\n "type": "string"\n },\n "parameters": {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n },\n "predicate_type": {\n "minLength": 1,\n "type": "string"\n },\n "provider": {\n "additionalProperties": false,\n "properties": {\n "id": {\n "minLength": 1,\n "type": "string"\n },\n "name": {\n "minLength": 1,\n "type": "string"\n },\n "version": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "id",\n "name",\n "version"\n ],\n "type": "object"\n },\n "raw_result": {\n "anyOf": [\n {\n "$ref": "#/$defs/__schema0"\n },\n {\n "type": "null"\n }\n ]\n },\n "subject": {\n "anyOf": [\n {\n "additionalProperties": false,\n "properties": {\n "architecture": {\n "anyOf": [\n {\n "enum": [\n "x86",\n "x86_64",\n "arm",\n "arm64"\n ],\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "digest": {\n "additionalProperties": false,\n "properties": {\n "sha256": {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n }\n },\n "required": [\n "sha256"\n ],\n "type": "object"\n },\n "format": {\n "enum": [\n "hopper",\n "analysis-database",\n "mach-o",\n "elf",\n "pe",\n "dos-mz",\n "dos-com",\n "zip",\n "ipa",\n "apk",\n "msix",\n "appx",\n "asar",\n "dmg",\n "pkg",\n "plist",\n "javascript",\n "source-map",\n "directory",\n "file",\n "unknown",\n "mach-o-universal",\n "javascript-bundle",\n "entitlements"\n ],\n "type": "string"\n },\n "local_path": {\n "type": "string"\n },\n "name": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "name",\n "digest",\n "format",\n "architecture",\n "local_path"\n ],\n "type": "object"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "evidence_id",\n "subject",\n "provider",\n "predicate_type",\n "operation",\n "parameters",\n "raw_result",\n "normalized_result",\n "confidence",\n "authority",\n "environment",\n "limitations",\n "locations",\n "evidence_links"\n ],\n "type": "object"\n },\n "evidence_id": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "result": {\n "additionalProperties": false,\n "properties": {\n "artifact": {\n "additionalProperties": false,\n "properties": {\n "byte_length": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "format": {\n "const": "pe",\n "type": "string"\n },\n "path": {\n "minLength": 1,\n "type": "string"\n },\n "sha256": {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n }\n },\n "required": [\n "path",\n "sha256",\n "byte_length",\n "format"\n ],\n "type": "object"\n },\n "assembly": {\n "anyOf": [\n {\n "additionalProperties": false,\n "properties": {\n "culture": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "flags": {\n "maximum": 4294967295,\n "minimum": 0,\n "type": "integer"\n },\n "hash_algorithm": {\n "maximum": 4294967295,\n "minimum": 0,\n "type": "integer"\n },\n "name": {\n "type": "string"\n },\n "public_key": {\n "additionalProperties": false,\n "properties": {\n "byte_length": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "kind": {\n "enum": [\n "none",\n "public-key",\n "public-key-token"\n ],\n "type": "string"\n },\n "sha256": {\n "anyOf": [\n {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "token": {\n "anyOf": [\n {\n "pattern": "^[a-f0-9]{16}$",\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "kind",\n "byte_length",\n "sha256",\n "token"\n ],\n "type": "object"\n },\n "row_offset": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "token": {\n "pattern": "^0x[0-9a-f]{8}$",\n "type": "string"\n },\n "version": {\n "pattern": "^\\\\d+\\\\.\\\\d+\\\\.\\\\d+\\\\.\\\\d+$",\n "type": "string"\n }\n },\n "required": [\n "name",\n "version",\n "culture",\n "flags",\n "hash_algorithm",\n "public_key",\n "token",\n "row_offset"\n ],\n "type": "object"\n },\n {\n "type": "null"\n }\n ]\n },\n "attributes": {\n "items": {\n "additionalProperties": false,\n "properties": {\n "constructor_token": {\n "anyOf": [\n {\n "pattern": "^0x[0-9a-f]{8}$",\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "decoded_fixed_string": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "parent_token": {\n "pattern": "^0x[0-9a-f]{8}$",\n "type": "string"\n },\n "row_offset": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "token": {\n "pattern": "^0x[0-9a-f]{8}$",\n "type": "string"\n },\n "type_name": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "value_length": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "value_sha256": {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n }\n },\n "required": [\n "parent_token",\n "constructor_token",\n "type_name",\n "value_length",\n "value_sha256",\n "decoded_fixed_string",\n "token",\n "row_offset"\n ],\n "type": "object"\n },\n "type": "array"\n },\n "classification": {\n "additionalProperties": false,\n "properties": {\n "container": {\n "const": "pe",\n "type": "string"\n },\n "evidence": {\n "items": {\n "additionalProperties": false,\n "properties": {\n "code": {\n "minLength": 1,\n "type": "string"\n },\n "detail": {\n "minLength": 1,\n "type": "string"\n },\n "file_offset": {\n "anyOf": [\n {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "code",\n "detail",\n "file_offset"\n ],\n "type": "object"\n },\n "type": "array"\n },\n "implementation": {\n "enum": [\n "cil",\n "cil-and-ready-to-run",\n "cpp-cli-mixed",\n "metadata-only",\n "not-managed",\n "unknown"\n ],\n "type": "string"\n },\n "managed_architecture": {\n "enum": [\n "anycpu",\n "anycpu-prefer-32",\n "x86",\n "x86_64",\n "arm",\n "arm64",\n "unknown"\n ],\n "type": "string"\n },\n "runtime_family": {\n "enum": [\n "dotnet-framework",\n "modern-dotnet",\n "unity-mono",\n "mixed-clr-native",\n "unknown"\n ],\n "type": "string"\n },\n "status": {\n "enum": [\n "managed",\n "not-managed",\n "malformed"\n ],\n "type": "string"\n }\n },\n "required": [\n "status",\n "container",\n "runtime_family",\n "implementation",\n "managed_architecture",\n "evidence"\n ],\n "type": "object"\n },\n "coverage": {\n "additionalProperties": false,\n "properties": {\n "issues": {\n "items": {\n "additionalProperties": false,\n "properties": {\n "code": {\n "enum": [\n "invalid-cli-header",\n "invalid-directory",\n "invalid-metadata-root",\n "invalid-stream",\n "missing-stream",\n "invalid-tables",\n "invalid-row",\n "invalid-heap-index",\n "invalid-string",\n "invalid-blob",\n "unsupported-signature",\n "invalid-guid",\n "invalid-resource"\n ],\n "type": "string"\n },\n "detail": {\n "minLength": 1,\n "type": "string"\n },\n "offset": {\n "anyOf": [\n {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n {\n "type": "null"\n }\n ]\n },\n "scope": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "code",\n "scope",\n "offset",\n "detail"\n ],\n "type": "object"\n },\n "type": "array"\n },\n "state": {\n "enum": [\n "complete",\n "partial",\n "unavailable"\n ],\n "type": "string"\n }\n },\n "required": [\n "state",\n "issues"\n ],\n "type": "object"\n },\n "limitations": {\n "items": {\n "type": "string"\n },\n "type": "array"\n },\n "metadata": {\n "additionalProperties": false,\n "properties": {\n "status": {\n "enum": [\n "absent",\n "complete",\n "partial",\n "malformed"\n ],\n "type": "string"\n },\n "stream_names": {\n "items": {\n "type": "string"\n },\n "type": "array"\n },\n "table_row_counts": {\n "additionalProperties": {\n "maximum": 4294967295,\n "minimum": 0,\n "type": "integer"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n },\n "version": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "status",\n "version",\n "stream_names",\n "table_row_counts"\n ],\n "type": "object"\n },\n "module": {\n "anyOf": [\n {\n "additionalProperties": false,\n "properties": {\n "enc_base_id": {\n "anyOf": [\n {\n "pattern": "^[0-9a-fA-F]{8}(?:-[0-9a-fA-F]{4}){3}-[0-9a-fA-F]{12}$",\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "enc_id": {\n "anyOf": [\n {\n "pattern": "^[0-9a-fA-F]{8}(?:-[0-9a-fA-F]{4}){3}-[0-9a-fA-F]{12}$",\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "generation": {\n "maximum": 65535,\n "minimum": 0,\n "type": "integer"\n },\n "mvid": {\n "anyOf": [\n {\n "pattern": "^[0-9a-fA-F]{8}(?:-[0-9a-fA-F]{4}){3}-[0-9a-fA-F]{12}$",\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "name": {\n "type": "string"\n },\n "row_offset": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "token": {\n "pattern": "^0x[0-9a-f]{8}$",\n "type": "string"\n }\n },\n "required": [\n "name",\n "generation",\n "mvid",\n "enc_id",\n "enc_base_id",\n "token",\n "row_offset"\n ],\n "type": "object"\n },\n {\n "type": "null"\n }\n ]\n },\n "pe": {\n "additionalProperties": false,\n "properties": {\n "architecture": {\n "enum": [\n "x86",\n "x86_64",\n "arm",\n "arm64"\n ],\n "type": "string"\n },\n "characteristics": {\n "maximum": 65535,\n "minimum": 0,\n "type": "integer"\n },\n "cli": {\n "anyOf": [\n {\n "additionalProperties": false,\n "properties": {\n "entry_point": {\n "additionalProperties": false,\n "properties": {\n "kind": {\n "enum": [\n "metadata-token",\n "native-rva",\n "none"\n ],\n "type": "string"\n },\n "value": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "kind",\n "value"\n ],\n "type": "object"\n },\n "flag_names": {\n "items": {\n "type": "string"\n },\n "type": "array"\n },\n "flags": {\n "maximum": 4294967295,\n "minimum": 0,\n "type": "integer"\n },\n "header_offset": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "header_size": {\n "maximum": 9007199254740991,\n "minimum": 72,\n "type": "integer"\n },\n "managed_native_header_rva": {\n "maximum": 4294967295,\n "minimum": 0,\n "type": "integer"\n },\n "managed_native_header_size": {\n "maximum": 4294967295,\n "minimum": 0,\n "type": "integer"\n },\n "metadata_rva": {\n "maximum": 4294967295,\n "minimum": 1,\n "type": "integer"\n },\n "metadata_size": {\n "maximum": 4294967295,\n "minimum": 1,\n "type": "integer"\n },\n "ready_to_run_signature": {\n "type": "boolean"\n },\n "resources_rva": {\n "maximum": 4294967295,\n "minimum": 0,\n "type": "integer"\n },\n "resources_size": {\n "maximum": 4294967295,\n "minimum": 0,\n "type": "integer"\n },\n "runtime_version": {\n "type": "string"\n },\n "strong_name_rva": {\n "maximum": 4294967295,\n "minimum": 0,\n "type": "integer"\n },\n "strong_name_size": {\n "maximum": 4294967295,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "header_offset",\n "header_size",\n "runtime_version",\n "flags",\n "flag_names",\n "entry_point",\n "metadata_rva",\n "metadata_size",\n "resources_rva",\n "resources_size",\n "strong_name_rva",\n "strong_name_size",\n "managed_native_header_rva",\n "managed_native_header_size",\n "ready_to_run_signature"\n ],\n "type": "object"\n },\n {\n "type": "null"\n }\n ]\n },\n "machine": {\n "maximum": 65535,\n "minimum": 0,\n "type": "integer"\n },\n "machine_hex": {\n "pattern": "^0x[0-9a-f]{4}$",\n "type": "string"\n },\n "optional_header": {\n "enum": [\n "pe32",\n "pe32-plus"\n ],\n "type": "string"\n },\n "section_count": {\n "maximum": 65535,\n "minimum": 1,\n "type": "integer"\n }\n },\n "required": [\n "machine",\n "machine_hex",\n "architecture",\n "optional_header",\n "section_count",\n "characteristics",\n "cli"\n ],\n "type": "object"\n },\n "references": {\n "items": {\n "additionalProperties": false,\n "properties": {\n "culture": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "flags": {\n "maximum": 4294967295,\n "minimum": 0,\n "type": "integer"\n },\n "hash_value_length": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "hash_value_sha256": {\n "anyOf": [\n {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "name": {\n "type": "string"\n },\n "public_key_or_token": {\n "additionalProperties": false,\n "properties": {\n "byte_length": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "kind": {\n "enum": [\n "none",\n "public-key",\n "public-key-token"\n ],\n "type": "string"\n },\n "sha256": {\n "anyOf": [\n {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "token": {\n "anyOf": [\n {\n "pattern": "^[a-f0-9]{16}$",\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "kind",\n "byte_length",\n "sha256",\n "token"\n ],\n "type": "object"\n },\n "row_offset": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "token": {\n "pattern": "^0x[0-9a-f]{8}$",\n "type": "string"\n },\n "version": {\n "pattern": "^\\\\d+\\\\.\\\\d+\\\\.\\\\d+\\\\.\\\\d+$",\n "type": "string"\n }\n },\n "required": [\n "name",\n "version",\n "culture",\n "flags",\n "public_key_or_token",\n "hash_value_sha256",\n "hash_value_length",\n "token",\n "row_offset"\n ],\n "type": "object"\n },\n "type": "array"\n },\n "resources": {\n "items": {\n "additionalProperties": false,\n "properties": {\n "data_length": {\n "anyOf": [\n {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n {\n "type": "null"\n }\n ]\n },\n "data_sha256": {\n "anyOf": [\n {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "declared_offset": {\n "maximum": 4294967295,\n "minimum": 0,\n "type": "integer"\n },\n "embedded": {\n "type": "boolean"\n },\n "flags": {\n "maximum": 4294967295,\n "minimum": 0,\n "type": "integer"\n },\n "implementation_token": {\n "anyOf": [\n {\n "pattern": "^0x[0-9a-f]{8}$",\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "name": {\n "type": "string"\n },\n "row_offset": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "token": {\n "pattern": "^0x[0-9a-f]{8}$",\n "type": "string"\n },\n "visibility": {\n "enum": [\n "public",\n "private",\n "unknown"\n ],\n "type": "string"\n }\n },\n "required": [\n "name",\n "flags",\n "visibility",\n "implementation_token",\n "embedded",\n "declared_offset",\n "data_length",\n "data_sha256",\n "token",\n "row_offset"\n ],\n "type": "object"\n },\n "type": "array"\n },\n "target_frameworks": {\n "items": {\n "type": "string"\n },\n "type": "array"\n }\n },\n "required": [\n "artifact",\n "pe",\n "classification",\n "metadata",\n "module",\n "assembly",\n "target_frameworks",\n "references",\n "resources",\n "attributes",\n "coverage",\n "limitations"\n ],\n "type": "object"\n }\n },\n "required": [\n "result",\n "evidence_id",\n "evidence"\n ],\n "type": "object"\n },\n "requiresSession": false,\n "title": "Inspect Managed Artifact"\n },\n {\n "analysisOperation": "inspect_managed_members",\n "annotations": {\n "destructiveHint": false,\n "idempotentHint": true,\n "openWorldHint": false,\n "readOnlyHint": false\n },\n "description": "Inspect PE/CLI metadata members, signatures, raw CIL hashes, 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 tuple hash does not resolve them or fully commit control flow.",\n "effects": {\n "accessesNetwork": false,\n "changesUiState": false,\n "idempotent": true,\n "launchesProcess": false,\n "mayDiscardData": false,\n "mutatesSession": true,\n "mutatesTarget": false,\n "writesFilesystem": false\n },\n "inputSchema": {\n "$schema": "https://json-schema.org/draft/2020-12/schema",\n "examples": [\n {}\n ],\n "properties": {\n "path": {\n "description": "Explicit managed PE/CLI path; omit to reuse the previously selected managed target",\n "minLength": 1,\n "type": "string"\n }\n },\n "type": "object"\n },\n "kind": "managed-provider",\n "name": "inspect_managed_members",\n "outputSchema": {\n "$defs": {\n "__schema0": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "number"\n },\n {\n "type": "boolean"\n },\n {\n "type": "null"\n },\n {\n "items": {\n "$ref": "#/$defs/__schema0"\n },\n "type": "array"\n },\n {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n }\n ]\n }\n },\n "$schema": "https://json-schema.org/draft/2020-12/schema",\n "additionalProperties": false,\n "properties": {\n "evidence": {\n "additionalProperties": false,\n "properties": {\n "analysis_profile": {\n "additionalProperties": false,\n "properties": {\n "digest": {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n },\n "parameters": {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n },\n "provider": {\n "additionalProperties": false,\n "properties": {\n "id": {\n "minLength": 1,\n "type": "string"\n },\n "name": {\n "minLength": 1,\n "type": "string"\n },\n "version": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "id",\n "name",\n "version"\n ],\n "type": "object"\n }\n },\n "required": [\n "provider",\n "parameters",\n "digest"\n ],\n "type": "object"\n },\n "authority": {\n "enum": [\n "shipped-artifact",\n "controlled-replay",\n "historical-reference",\n "external-service",\n "analyst-inference"\n ],\n "type": "string"\n },\n "confidence": {\n "enum": [\n "observed",\n "derived",\n "inferred"\n ],\n "type": "string"\n },\n "environment": {\n "anyOf": [\n {\n "additionalProperties": false,\n "properties": {\n "architecture": {\n "minLength": 1,\n "type": "string"\n },\n "id": {\n "minLength": 1,\n "type": "string"\n },\n "isolation": {\n "enum": [\n "none",\n "process",\n "container",\n "virtual-machine"\n ],\n "type": "string"\n },\n "platform": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "id",\n "platform",\n "architecture",\n "isolation"\n ],\n "type": "object"\n },\n {\n "type": "null"\n }\n ]\n },\n "evidence_id": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "evidence_links": {\n "items": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "type": "array"\n },\n "limitations": {\n "items": {\n "type": "string"\n },\n "type": "array"\n },\n "locations": {\n "items": {\n "oneOf": [\n {\n "additionalProperties": false,\n "properties": {\n "address": {\n "minLength": 1,\n "type": "string"\n },\n "kind": {\n "const": "address",\n "type": "string"\n }\n },\n "required": [\n "kind",\n "address"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "end": {\n "minLength": 1,\n "type": "string"\n },\n "kind": {\n "const": "address-range",\n "type": "string"\n },\n "start": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "kind",\n "start",\n "end"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "kind": {\n "const": "artifact-path",\n "type": "string"\n },\n "path": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "kind",\n "path"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "kind": {\n "const": "file-offset",\n "type": "string"\n },\n "offset": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "kind",\n "offset"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "end": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "kind": {\n "const": "file-offset-range",\n "type": "string"\n },\n "start": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "kind",\n "start",\n "end"\n ],\n "type": "object"\n }\n ]\n },\n "type": "array"\n },\n "normalized_result": {\n "$ref": "#/$defs/__schema0"\n },\n "operation": {\n "minLength": 1,\n "type": "string"\n },\n "parameters": {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n },\n "predicate_type": {\n "minLength": 1,\n "type": "string"\n },\n "provider": {\n "additionalProperties": false,\n "properties": {\n "id": {\n "minLength": 1,\n "type": "string"\n },\n "name": {\n "minLength": 1,\n "type": "string"\n },\n "version": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "id",\n "name",\n "version"\n ],\n "type": "object"\n },\n "raw_result": {\n "anyOf": [\n {\n "$ref": "#/$defs/__schema0"\n },\n {\n "type": "null"\n }\n ]\n },\n "subject": {\n "anyOf": [\n {\n "additionalProperties": false,\n "properties": {\n "architecture": {\n "anyOf": [\n {\n "enum": [\n "x86",\n "x86_64",\n "arm",\n "arm64"\n ],\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "digest": {\n "additionalProperties": false,\n "properties": {\n "sha256": {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n }\n },\n "required": [\n "sha256"\n ],\n "type": "object"\n },\n "format": {\n "enum": [\n "hopper",\n "analysis-database",\n "mach-o",\n "elf",\n "pe",\n "dos-mz",\n "dos-com",\n "zip",\n "ipa",\n "apk",\n "msix",\n "appx",\n "asar",\n "dmg",\n "pkg",\n "plist",\n "javascript",\n "source-map",\n "directory",\n "file",\n "unknown",\n "mach-o-universal",\n "javascript-bundle",\n "entitlements"\n ],\n "type": "string"\n },\n "local_path": {\n "type": "string"\n },\n "name": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "name",\n "digest",\n "format",\n "architecture",\n "local_path"\n ],\n "type": "object"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "evidence_id",\n "subject",\n "provider",\n "predicate_type",\n "operation",\n "parameters",\n "raw_result",\n "normalized_result",\n "confidence",\n "authority",\n "environment",\n "limitations",\n "locations",\n "evidence_links"\n ],\n "type": "object"\n },\n "evidence_id": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "result": {\n "additionalProperties": false,\n "properties": {\n "artifact": {\n "additionalProperties": false,\n "properties": {\n "byte_length": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "format": {\n "const": "pe",\n "type": "string"\n },\n "path": {\n "minLength": 1,\n "type": "string"\n },\n "sha256": {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n }\n },\n "required": [\n "path",\n "sha256",\n "byte_length",\n "format"\n ],\n "type": "object"\n },\n "call_edges": {\n "items": {\n "additionalProperties": false,\n "properties": {\n "caller": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "caller_token": {\n "pattern": "^0x[0-9a-f]{8}$",\n "type": "string"\n },\n "opcode": {\n "type": "string"\n },\n "target_kind": {\n "enum": [\n "method-def",\n "member-ref",\n "method-spec",\n "unknown"\n ],\n "type": "string"\n },\n "target_name": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "target_token": {\n "pattern": "^0x[0-9a-f]{8}$",\n "type": "string"\n }\n },\n "required": [\n "caller_token",\n "caller",\n "opcode",\n "target_token",\n "target_kind",\n "target_name"\n ],\n "type": "object"\n },\n "type": "array"\n },\n "coverage": {\n "additionalProperties": false,\n "properties": {\n "issues": {\n "items": {\n "additionalProperties": false,\n "properties": {\n "code": {\n "enum": [\n "invalid-cli-header",\n "invalid-directory",\n "invalid-metadata-root",\n "invalid-stream",\n "missing-stream",\n "invalid-tables",\n "invalid-row",\n "invalid-heap-index",\n "invalid-string",\n "invalid-blob",\n "unsupported-signature",\n "invalid-guid",\n "invalid-resource"\n ],\n "type": "string"\n },\n "detail": {\n "minLength": 1,\n "type": "string"\n },\n "offset": {\n "anyOf": [\n {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n {\n "type": "null"\n }\n ]\n },\n "scope": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "code",\n "scope",\n "offset",\n "detail"\n ],\n "type": "object"\n },\n "type": "array"\n },\n "state": {\n "enum": [\n "complete",\n "partial",\n "unavailable"\n ],\n "type": "string"\n }\n },\n "required": [\n "state",\n "issues"\n ],\n "type": "object"\n },\n "field_accesses": {\n "items": {\n "additionalProperties": false,\n "properties": {\n "field_name": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "field_token": {\n "pattern": "^0x[0-9a-f]{8}$",\n "type": "string"\n },\n "method": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "method_token": {\n "pattern": "^0x[0-9a-f]{8}$",\n "type": "string"\n },\n "opcode": {\n "type": "string"\n }\n },\n "required": [\n "method_token",\n "method",\n "opcode",\n "field_token",\n "field_name"\n ],\n "type": "object"\n },\n "type": "array"\n },\n "fields": {\n "items": {\n "additionalProperties": false,\n "properties": {\n "declaring_type": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "declaring_type_token": {\n "anyOf": [\n {\n "pattern": "^0x[0-9a-f]{8}$",\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "flags": {\n "maximum": 65535,\n "minimum": 0,\n "type": "integer"\n },\n "name": {\n "type": "string"\n },\n "row_offset": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "signature": {\n "additionalProperties": false,\n "properties": {\n "calling_convention": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "field_type": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "generic_parameter_count": {\n "anyOf": [\n {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n {\n "type": "null"\n }\n ]\n },\n "issue": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "kind": {\n "enum": [\n "method",\n "field",\n "unknown"\n ],\n "type": "string"\n },\n "parameter_count": {\n "anyOf": [\n {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n {\n "type": "null"\n }\n ]\n },\n "parameter_types": {\n "items": {\n "type": "string"\n },\n "type": "array"\n },\n "parse_status": {\n "enum": [\n "decoded",\n "partial",\n "unsupported",\n "malformed"\n ],\n "type": "string"\n },\n "raw_length": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "raw_sha256": {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n },\n "return_type": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "raw_length",\n "raw_sha256",\n "kind",\n "parse_status",\n "calling_convention",\n "generic_parameter_count",\n "parameter_count",\n "return_type",\n "parameter_types",\n "field_type",\n "issue"\n ],\n "type": "object"\n },\n "token": {\n "pattern": "^0x[0-9a-f]{8}$",\n "type": "string"\n }\n },\n "required": [\n "token",\n "row_offset",\n "declaring_type_token",\n "declaring_type",\n "name",\n "flags",\n "signature"\n ],\n "type": "object"\n },\n "type": "array"\n },\n "identity_scope": {\n "additionalProperties": false,\n "properties": {\n "requires_artifact_sha256": {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n },\n "requires_mvid": {\n "anyOf": [\n {\n "pattern": "^[0-9a-fA-F]{8}(?:-[0-9a-fA-F]{4}){3}-[0-9a-fA-F]{12}$",\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "token_identity": {\n "const": "build-local",\n "type": "string"\n }\n },\n "required": [\n "token_identity",\n "requires_artifact_sha256",\n "requires_mvid"\n ],\n "type": "object"\n },\n "limitations": {\n "items": {\n "type": "string"\n },\n "type": "array"\n },\n "member_refs": {\n "items": {\n "additionalProperties": false,\n "properties": {\n "name": {\n "type": "string"\n },\n "parent_token": {\n "anyOf": [\n {\n "pattern": "^0x[0-9a-f]{8}$",\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "row_offset": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "signature": {\n "additionalProperties": false,\n "properties": {\n "calling_convention": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "field_type": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "generic_parameter_count": {\n "anyOf": [\n {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n {\n "type": "null"\n }\n ]\n },\n "issue": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "kind": {\n "enum": [\n "method",\n "field",\n "unknown"\n ],\n "type": "string"\n },\n "parameter_count": {\n "anyOf": [\n {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n {\n "type": "null"\n }\n ]\n },\n "parameter_types": {\n "items": {\n "type": "string"\n },\n "type": "array"\n },\n "parse_status": {\n "enum": [\n "decoded",\n "partial",\n "unsupported",\n "malformed"\n ],\n "type": "string"\n },\n "raw_length": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "raw_sha256": {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n },\n "return_type": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "raw_length",\n "raw_sha256",\n "kind",\n "parse_status",\n "calling_convention",\n "generic_parameter_count",\n "parameter_count",\n "return_type",\n "parameter_types",\n "field_type",\n "issue"\n ],\n "type": "object"\n },\n "token": {\n "pattern": "^0x[0-9a-f]{8}$",\n "type": "string"\n }\n },\n "required": [\n "token",\n "row_offset",\n "parent_token",\n "name",\n "signature"\n ],\n "type": "object"\n },\n "type": "array"\n },\n "metadata": {\n "additionalProperties": false,\n "properties": {\n "status": {\n "enum": [\n "absent",\n "complete",\n "partial",\n "malformed"\n ],\n "type": "string"\n },\n "table_row_counts": {\n "additionalProperties": {\n "maximum": 4294967295,\n "minimum": 0,\n "type": "integer"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n },\n "version": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "status",\n "version",\n "table_row_counts"\n ],\n "type": "object"\n },\n "methods": {\n "items": {\n "additionalProperties": false,\n "properties": {\n "body": {\n "additionalProperties": false,\n "properties": {\n "anchors": {\n "items": {\n "additionalProperties": false,\n "properties": {\n "il_offset": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "opcode": {\n "minLength": 1,\n "type": "string"\n },\n "operand": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "operand_kind": {\n "enum": [\n "none",\n "branch",\n "constant",\n "field",\n "method",\n "signature",\n "string",\n "switch",\n "token",\n "type",\n "variable",\n "unknown"\n ],\n "type": "string"\n }\n },\n "required": [\n "il_offset",\n "opcode",\n "operand_kind",\n "operand"\n ],\n "type": "object"\n },\n "type": "array"\n },\n "decoded_instruction_count": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "exception_regions": {\n "items": {\n "additionalProperties": false,\n "properties": {\n "class_token": {\n "anyOf": [\n {\n "pattern": "^0x[0-9a-f]{8}$",\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "filter_offset": {\n "anyOf": [\n {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n {\n "type": "null"\n }\n ]\n },\n "flags": {\n "maximum": 4294967295,\n "minimum": 0,\n "type": "integer"\n },\n "handler_length": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "handler_offset": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "try_length": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "try_offset": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "flags",\n "try_offset",\n "try_length",\n "handler_offset",\n "handler_length",\n "class_token",\n "filter_offset"\n ],\n "type": "object"\n },\n "type": "array"\n },\n "file_offset": {\n "anyOf": [\n {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n {\n "type": "null"\n }\n ]\n },\n "header_format": {\n "enum": [\n "tiny",\n "fat",\n "none",\n "unknown"\n ],\n "type": "string"\n },\n "il_sha256": {\n "anyOf": [\n {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n },\n {\n "type": "null"\n }\n ],\n "description": "SHA-256 of exactly the raw il_size CIL bytes; excludes the method header, locals signature, alignment, and extra sections"\n },\n "il_size": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "init_locals": {\n "anyOf": [\n {\n "type": "boolean"\n },\n {\n "type": "null"\n }\n ]\n },\n "instruction_count": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "issue": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "local_var_sig_token": {\n "anyOf": [\n {\n "pattern": "^0x[0-9a-f]{8}$",\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "max_stack": {\n "anyOf": [\n {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n {\n "type": "null"\n }\n ]\n },\n "normalized_il_sha256": {\n "anyOf": [\n {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n },\n {\n "type": "null"\n }\n ],\n "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"\n },\n "opcode_counts": {\n "additionalProperties": {\n "maximum": 9007199254740991,\n "minimum": 1,\n "type": "integer"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n },\n "rva": {\n "maximum": 4294967295,\n "minimum": 0,\n "type": "integer"\n },\n "status": {\n "enum": [\n "present",\n "partial",\n "absent",\n "malformed"\n ],\n "type": "string"\n },\n "truncated_instructions": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "status",\n "header_format",\n "rva",\n "file_offset",\n "max_stack",\n "init_locals",\n "local_var_sig_token",\n "il_size",\n "il_sha256",\n "normalized_il_sha256",\n "instruction_count",\n "decoded_instruction_count",\n "truncated_instructions",\n "opcode_counts",\n "anchors",\n "exception_regions",\n "issue"\n ],\n "type": "object"\n },\n "declaring_type": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "declaring_type_token": {\n "anyOf": [\n {\n "pattern": "^0x[0-9a-f]{8}$",\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "flags": {\n "maximum": 65535,\n "minimum": 0,\n "type": "integer"\n },\n "impl_flags": {\n "maximum": 65535,\n "minimum": 0,\n "type": "integer"\n },\n "name": {\n "type": "string"\n },\n "row_offset": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "rva": {\n "maximum": 4294967295,\n "minimum": 0,\n "type": "integer"\n },\n "signature": {\n "additionalProperties": false,\n "properties": {\n "calling_convention": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "field_type": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "generic_parameter_count": {\n "anyOf": [\n {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n {\n "type": "null"\n }\n ]\n },\n "issue": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "kind": {\n "enum": [\n "method",\n "field",\n "unknown"\n ],\n "type": "string"\n },\n "parameter_count": {\n "anyOf": [\n {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n {\n "type": "null"\n }\n ]\n },\n "parameter_types": {\n "items": {\n "type": "string"\n },\n "type": "array"\n },\n "parse_status": {\n "enum": [\n "decoded",\n "partial",\n "unsupported",\n "malformed"\n ],\n "type": "string"\n },\n "raw_length": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "raw_sha256": {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n },\n "return_type": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "raw_length",\n "raw_sha256",\n "kind",\n "parse_status",\n "calling_convention",\n "generic_parameter_count",\n "parameter_count",\n "return_type",\n "parameter_types",\n "field_type",\n "issue"\n ],\n "type": "object"\n },\n "token": {\n "pattern": "^0x[0-9a-f]{8}$",\n "type": "string"\n }\n },\n "required": [\n "token",\n "row_offset",\n "declaring_type_token",\n "declaring_type",\n "name",\n "rva",\n "impl_flags",\n "flags",\n "signature",\n "body"\n ],\n "type": "object"\n },\n "type": "array"\n },\n "module": {\n "anyOf": [\n {\n "additionalProperties": false,\n "properties": {\n "enc_base_id": {\n "anyOf": [\n {\n "pattern": "^[0-9a-fA-F]{8}(?:-[0-9a-fA-F]{4}){3}-[0-9a-fA-F]{12}$",\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "enc_id": {\n "anyOf": [\n {\n "pattern": "^[0-9a-fA-F]{8}(?:-[0-9a-fA-F]{4}){3}-[0-9a-fA-F]{12}$",\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "generation": {\n "maximum": 65535,\n "minimum": 0,\n "type": "integer"\n },\n "mvid": {\n "anyOf": [\n {\n "pattern": "^[0-9a-fA-F]{8}(?:-[0-9a-fA-F]{4}){3}-[0-9a-fA-F]{12}$",\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "name": {\n "type": "string"\n },\n "row_offset": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "token": {\n "pattern": "^0x[0-9a-f]{8}$",\n "type": "string"\n }\n },\n "required": [\n "name",\n "generation",\n "mvid",\n "enc_id",\n "enc_base_id",\n "token",\n "row_offset"\n ],\n "type": "object"\n },\n {\n "type": "null"\n }\n ]\n },\n "types": {\n "items": {\n "additionalProperties": false,\n "properties": {\n "extends_token": {\n "anyOf": [\n {\n "pattern": "^0x[0-9a-f]{8}$",\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "field_list": {\n "additionalProperties": false,\n "properties": {\n "count": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "first_row": {\n "anyOf": [\n {\n "maximum": 9007199254740991,\n "minimum": 1,\n "type": "integer"\n },\n {\n "type": "null"\n }\n ]\n },\n "last_row": {\n "anyOf": [\n {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "first_row",\n "last_row",\n "count"\n ],\n "type": "object"\n },\n "flags": {\n "maximum": 4294967295,\n "minimum": 0,\n "type": "integer"\n },\n "full_name": {\n "type": "string"\n },\n "method_list": {\n "additionalProperties": false,\n "properties": {\n "count": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "first_row": {\n "anyOf": [\n {\n "maximum": 9007199254740991,\n "minimum": 1,\n "type": "integer"\n },\n {\n "type": "null"\n }\n ]\n },\n "last_row": {\n "anyOf": [\n {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "first_row",\n "last_row",\n "count"\n ],\n "type": "object"\n },\n "name": {\n "type": "string"\n },\n "namespace": {\n "type": "string"\n },\n "row_offset": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "token": {\n "pattern": "^0x[0-9a-f]{8}$",\n "type": "string"\n }\n },\n "required": [\n "token",\n "row_offset",\n "namespace",\n "name",\n "full_name",\n "flags",\n "extends_token",\n "field_list",\n "method_list"\n ],\n "type": "object"\n },\n "type": "array"\n }\n },\n "required": [\n "artifact",\n "module",\n "metadata",\n "identity_scope",\n "types",\n "fields",\n "methods",\n "member_refs",\n "call_edges",\n "field_accesses",\n "coverage",\n "limitations"\n ],\n "type": "object"\n }\n },\n "required": [\n "result",\n "evidence_id",\n "evidence"\n ],\n "type": "object"\n },\n "requiresSession": false,\n "title": "Inspect Managed Members"\n },\n {\n "analysisOperation": "inspect_managed_native_boundaries",\n "annotations": {\n "destructiveHint": false,\n "idempotentHint": true,\n "openWorldHint": false,\n "readOnlyHint": false\n },\n "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.",\n "effects": {\n "accessesNetwork": false,\n "changesUiState": false,\n "idempotent": true,\n "launchesProcess": false,\n "mayDiscardData": false,\n "mutatesSession": true,\n "mutatesTarget": false,\n "writesFilesystem": false\n },\n "inputSchema": {\n "$schema": "https://json-schema.org/draft/2020-12/schema",\n "examples": [\n {}\n ],\n "properties": {\n "path": {\n "description": "Explicit managed PE/CLI path; omit to reuse the previously selected managed target",\n "minLength": 1,\n "type": "string"\n }\n },\n "type": "object"\n },\n "kind": "managed-provider",\n "name": "inspect_managed_native_boundaries",\n "outputSchema": {\n "$defs": {\n "__schema0": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "number"\n },\n {\n "type": "boolean"\n },\n {\n "type": "null"\n },\n {\n "items": {\n "$ref": "#/$defs/__schema0"\n },\n "type": "array"\n },\n {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n }\n ]\n }\n },\n "$schema": "https://json-schema.org/draft/2020-12/schema",\n "additionalProperties": false,\n "properties": {\n "evidence": {\n "additionalProperties": false,\n "properties": {\n "analysis_profile": {\n "additionalProperties": false,\n "properties": {\n "digest": {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n },\n "parameters": {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n },\n "provider": {\n "additionalProperties": false,\n "properties": {\n "id": {\n "minLength": 1,\n "type": "string"\n },\n "name": {\n "minLength": 1,\n "type": "string"\n },\n "version": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "id",\n "name",\n "version"\n ],\n "type": "object"\n }\n },\n "required": [\n "provider",\n "parameters",\n "digest"\n ],\n "type": "object"\n },\n "authority": {\n "enum": [\n "shipped-artifact",\n "controlled-replay",\n "historical-reference",\n "external-service",\n "analyst-inference"\n ],\n "type": "string"\n },\n "confidence": {\n "enum": [\n "observed",\n "derived",\n "inferred"\n ],\n "type": "string"\n },\n "environment": {\n "anyOf": [\n {\n "additionalProperties": false,\n "properties": {\n "architecture": {\n "minLength": 1,\n "type": "string"\n },\n "id": {\n "minLength": 1,\n "type": "string"\n },\n "isolation": {\n "enum": [\n "none",\n "process",\n "container",\n "virtual-machine"\n ],\n "type": "string"\n },\n "platform": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "id",\n "platform",\n "architecture",\n "isolation"\n ],\n "type": "object"\n },\n {\n "type": "null"\n }\n ]\n },\n "evidence_id": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "evidence_links": {\n "items": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "type": "array"\n },\n "limitations": {\n "items": {\n "type": "string"\n },\n "type": "array"\n },\n "locations": {\n "items": {\n "oneOf": [\n {\n "additionalProperties": false,\n "properties": {\n "address": {\n "minLength": 1,\n "type": "string"\n },\n "kind": {\n "const": "address",\n "type": "string"\n }\n },\n "required": [\n "kind",\n "address"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "end": {\n "minLength": 1,\n "type": "string"\n },\n "kind": {\n "const": "address-range",\n "type": "string"\n },\n "start": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "kind",\n "start",\n "end"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "kind": {\n "const": "artifact-path",\n "type": "string"\n },\n "path": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "kind",\n "path"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "kind": {\n "const": "file-offset",\n "type": "string"\n },\n "offset": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "kind",\n "offset"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "end": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "kind": {\n "const": "file-offset-range",\n "type": "string"\n },\n "start": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "kind",\n "start",\n "end"\n ],\n "type": "object"\n }\n ]\n },\n "type": "array"\n },\n "normalized_result": {\n "$ref": "#/$defs/__schema0"\n },\n "operation": {\n "minLength": 1,\n "type": "string"\n },\n "parameters": {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n },\n "predicate_type": {\n "minLength": 1,\n "type": "string"\n },\n "provider": {\n "additionalProperties": false,\n "properties": {\n "id": {\n "minLength": 1,\n "type": "string"\n },\n "name": {\n "minLength": 1,\n "type": "string"\n },\n "version": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "id",\n "name",\n "version"\n ],\n "type": "object"\n },\n "raw_result": {\n "anyOf": [\n {\n "$ref": "#/$defs/__schema0"\n },\n {\n "type": "null"\n }\n ]\n },\n "subject": {\n "anyOf": [\n {\n "additionalProperties": false,\n "properties": {\n "architecture": {\n "anyOf": [\n {\n "enum": [\n "x86",\n "x86_64",\n "arm",\n "arm64"\n ],\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "digest": {\n "additionalProperties": false,\n "properties": {\n "sha256": {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n }\n },\n "required": [\n "sha256"\n ],\n "type": "object"\n },\n "format": {\n "enum": [\n "hopper",\n "analysis-database",\n "mach-o",\n "elf",\n "pe",\n "dos-mz",\n "dos-com",\n "zip",\n "ipa",\n "apk",\n "msix",\n "appx",\n "asar",\n "dmg",\n "pkg",\n "plist",\n "javascript",\n "source-map",\n "directory",\n "file",\n "unknown",\n "mach-o-universal",\n "javascript-bundle",\n "entitlements"\n ],\n "type": "string"\n },\n "local_path": {\n "type": "string"\n },\n "name": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "name",\n "digest",\n "format",\n "architecture",\n "local_path"\n ],\n "type": "object"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "evidence_id",\n "subject",\n "provider",\n "predicate_type",\n "operation",\n "parameters",\n "raw_result",\n "normalized_result",\n "confidence",\n "authority",\n "environment",\n "limitations",\n "locations",\n "evidence_links"\n ],\n "type": "object"\n },\n "evidence_id": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "result": {\n "additionalProperties": false,\n "properties": {\n "artifact": {\n "additionalProperties": false,\n "properties": {\n "byte_length": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "format": {\n "const": "pe",\n "type": "string"\n },\n "path": {\n "minLength": 1,\n "type": "string"\n },\n "sha256": {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n }\n },\n "required": [\n "path",\n "sha256",\n "byte_length",\n "format"\n ],\n "type": "object"\n },\n "cli_native": {\n "additionalProperties": false,\n "properties": {\n "il_only": {\n "type": "boolean"\n },\n "managed_native_header_rva": {\n "maximum": 4294967295,\n "minimum": 0,\n "type": "integer"\n },\n "managed_native_header_size": {\n "maximum": 4294967295,\n "minimum": 0,\n "type": "integer"\n },\n "native_entry_point": {\n "type": "boolean"\n },\n "ready_to_run_signature": {\n "type": "boolean"\n },\n "requires_32bit": {\n "type": "boolean"\n },\n "strong_name_signed": {\n "type": "boolean"\n }\n },\n "required": [\n "il_only",\n "requires_32bit",\n "strong_name_signed",\n "native_entry_point",\n "ready_to_run_signature",\n "managed_native_header_rva",\n "managed_native_header_size"\n ],\n "type": "object"\n },\n "coverage": {\n "additionalProperties": false,\n "properties": {\n "issues": {\n "items": {\n "additionalProperties": false,\n "properties": {\n "code": {\n "enum": [\n "invalid-cli-header",\n "invalid-directory",\n "invalid-metadata-root",\n "invalid-stream",\n "missing-stream",\n "invalid-tables",\n "invalid-row",\n "invalid-heap-index",\n "invalid-string",\n "invalid-blob",\n "unsupported-signature",\n "invalid-guid",\n "invalid-resource"\n ],\n "type": "string"\n },\n "detail": {\n "minLength": 1,\n "type": "string"\n },\n "offset": {\n "anyOf": [\n {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n {\n "type": "null"\n }\n ]\n },\n "scope": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "code",\n "scope",\n "offset",\n "detail"\n ],\n "type": "object"\n },\n "type": "array"\n },\n "state": {\n "enum": [\n "complete",\n "partial",\n "unavailable"\n ],\n "type": "string"\n }\n },\n "required": [\n "state",\n "issues"\n ],\n "type": "object"\n },\n "identity_scope": {\n "additionalProperties": false,\n "properties": {\n "requires_artifact_sha256": {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n },\n "requires_mvid": {\n "anyOf": [\n {\n "pattern": "^[0-9a-fA-F]{8}(?:-[0-9a-fA-F]{4}){3}-[0-9a-fA-F]{12}$",\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "token_identity": {\n "const": "build-local",\n "type": "string"\n }\n },\n "required": [\n "token_identity",\n "requires_artifact_sha256",\n "requires_mvid"\n ],\n "type": "object"\n },\n "limitations": {\n "items": {\n "type": "string"\n },\n "type": "array"\n },\n "metadata": {\n "additionalProperties": false,\n "properties": {\n "status": {\n "enum": [\n "absent",\n "complete",\n "partial",\n "malformed"\n ],\n "type": "string"\n },\n "table_row_counts": {\n "additionalProperties": {\n "maximum": 4294967295,\n "minimum": 0,\n "type": "integer"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n },\n "version": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "status",\n "version",\n "table_row_counts"\n ],\n "type": "object"\n },\n "module": {\n "anyOf": [\n {\n "additionalProperties": false,\n "properties": {\n "enc_base_id": {\n "anyOf": [\n {\n "pattern": "^[0-9a-fA-F]{8}(?:-[0-9a-fA-F]{4}){3}-[0-9a-fA-F]{12}$",\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "enc_id": {\n "anyOf": [\n {\n "pattern": "^[0-9a-fA-F]{8}(?:-[0-9a-fA-F]{4}){3}-[0-9a-fA-F]{12}$",\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "generation": {\n "maximum": 65535,\n "minimum": 0,\n "type": "integer"\n },\n "mvid": {\n "anyOf": [\n {\n "pattern": "^[0-9a-fA-F]{8}(?:-[0-9a-fA-F]{4}){3}-[0-9a-fA-F]{12}$",\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "name": {\n "type": "string"\n },\n "row_offset": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "token": {\n "pattern": "^0x[0-9a-f]{8}$",\n "type": "string"\n }\n },\n "required": [\n "name",\n "generation",\n "mvid",\n "enc_id",\n "enc_base_id",\n "token",\n "row_offset"\n ],\n "type": "object"\n },\n {\n "type": "null"\n }\n ]\n },\n "module_refs": {\n "items": {\n "additionalProperties": false,\n "properties": {\n "name": {\n "type": "string"\n },\n "row_offset": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "token": {\n "pattern": "^0x[0-9a-f]{8}$",\n "type": "string"\n }\n },\n "required": [\n "token",\n "row_offset",\n "name"\n ],\n "type": "object"\n },\n "type": "array"\n },\n "native_implementations": {\n "items": {\n "additionalProperties": false,\n "properties": {\n "body_interpretation": {\n "enum": [\n "managed-cil",\n "native-or-runtime",\n "not-file-backed",\n "unknown"\n ],\n "type": "string"\n },\n "boundary_kind": {\n "enum": [\n "pinvoke",\n "native-body",\n "runtime-provided",\n "unmanaged-method",\n "mixed-or-unknown"\n ],\n "type": "string"\n },\n "code_type": {\n "enum": [\n "il",\n "native",\n "optil",\n "runtime",\n "unknown"\n ],\n "type": "string"\n },\n "flags": {\n "maximum": 65535,\n "minimum": 0,\n "type": "integer"\n },\n "impl_flags": {\n "maximum": 65535,\n "minimum": 0,\n "type": "integer"\n },\n "managed_kind": {\n "enum": [\n "managed",\n "unmanaged",\n "unknown"\n ],\n "type": "string"\n },\n "name": {\n "type": "string"\n },\n "pinvoke_declared": {\n "type": "boolean"\n },\n "row_offset": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "rva": {\n "maximum": 4294967295,\n "minimum": 0,\n "type": "integer"\n },\n "token": {\n "pattern": "^0x[0-9a-f]{8}$",\n "type": "string"\n }\n },\n "required": [\n "token",\n "row_offset",\n "name",\n "rva",\n "flags",\n "impl_flags",\n "code_type",\n "managed_kind",\n "pinvoke_declared",\n "boundary_kind",\n "body_interpretation"\n ],\n "type": "object"\n },\n "type": "array"\n },\n "pinvoke_imports": {\n "items": {\n "additionalProperties": false,\n "properties": {\n "best_fit": {\n "enum": [\n "assembly-default",\n "enabled",\n "disabled",\n "unknown"\n ],\n "type": "string"\n },\n "call_convention": {\n "enum": [\n "not-specified",\n "winapi",\n "cdecl",\n "stdcall",\n "thiscall",\n "fastcall",\n "unknown"\n ],\n "type": "string"\n },\n "char_set": {\n "enum": [\n "not-specified",\n "ansi",\n "unicode",\n "auto",\n "unknown"\n ],\n "type": "string"\n },\n "import_name": {\n "type": "string"\n },\n "import_scope_name": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "import_scope_token": {\n "anyOf": [\n {\n "pattern": "^0x[0-9a-f]{8}$",\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "mapping_flags": {\n "maximum": 65535,\n "minimum": 0,\n "type": "integer"\n },\n "mapping_flags_hex": {\n "pattern": "^0x[0-9a-f]{4}$",\n "type": "string"\n },\n "member_kind": {\n "enum": [\n "method",\n "field",\n "unknown"\n ],\n "type": "string"\n },\n "member_name": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "member_token": {\n "anyOf": [\n {\n "pattern": "^0x[0-9a-f]{8}$",\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "no_mangle": {\n "type": "boolean"\n },\n "row_offset": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "supports_last_error": {\n "type": "boolean"\n },\n "throw_on_unmappable_char": {\n "enum": [\n "assembly-default",\n "enabled",\n "disabled",\n "unknown"\n ],\n "type": "string"\n },\n "token": {\n "pattern": "^0x[0-9a-f]{8}$",\n "type": "string"\n },\n "verification": {\n "const": "managed-declaration-only",\n "type": "string"\n }\n },\n "required": [\n "token",\n "row_offset",\n "mapping_flags",\n "mapping_flags_hex",\n "member_token",\n "member_kind",\n "member_name",\n "import_name",\n "import_scope_token",\n "import_scope_name",\n "no_mangle",\n "char_set",\n "call_convention",\n "supports_last_error",\n "best_fit",\n "throw_on_unmappable_char",\n "verification"\n ],\n "type": "object"\n },\n "type": "array"\n },\n "summary": {\n "additionalProperties": false,\n "properties": {\n "mixed_mode_or_native_header": {\n "type": "boolean"\n },\n "module_ref_count": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "native_implementation_count": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "pinvoke_import_count": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "ready_to_run": {\n "type": "boolean"\n }\n },\n "required": [\n "module_ref_count",\n "pinvoke_import_count",\n "native_implementation_count",\n "ready_to_run",\n "mixed_mode_or_native_header"\n ],\n "type": "object"\n }\n },\n "required": [\n "artifact",\n "module",\n "metadata",\n "identity_scope",\n "cli_native",\n "module_refs",\n "pinvoke_imports",\n "native_implementations",\n "summary",\n "coverage",\n "limitations"\n ],\n "type": "object"\n }\n },\n "required": [\n "result",\n "evidence_id",\n "evidence"\n ],\n "type": "object"\n },\n "requiresSession": false,\n "title": "Inspect Managed Native Boundaries"\n },\n {\n "analysisOperation": null,\n "annotations": {\n "destructiveHint": false,\n "idempotentHint": true,\n "openWorldHint": true,\n "readOnlyHint": false\n },\n "description": "Inspect a local APK\'s package, SDK and permission declarations, decoded manifest and class/resource counts. Does not execute the APK or verify signatures. Requires a caller-supplied JADX MCP JAR and JDK; uses one worker in an isolated temporary workspace.",\n "effects": {\n "accessesNetwork": false,\n "changesUiState": false,\n "idempotent": true,\n "launchesProcess": true,\n "mayDiscardData": false,\n "mutatesSession": true,\n "mutatesTarget": false,\n "writesFilesystem": true\n },\n "inputSchema": {\n "$schema": "https://json-schema.org/draft/2020-12/schema",\n "additionalProperties": false,\n "examples": [\n {\n "path": "/tmp/Example.apk"\n }\n ],\n "properties": {\n "path": {\n "description": "Local APK path; the target is never executed",\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "path"\n ],\n "type": "object"\n },\n "kind": "android-provider",\n "name": "inspect_android_package",\n "outputSchema": {\n "$defs": {\n "__schema0": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "number"\n },\n {\n "type": "boolean"\n },\n {\n "type": "null"\n },\n {\n "items": {\n "$ref": "#/$defs/__schema0"\n },\n "type": "array"\n },\n {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n }\n ]\n }\n },\n "$schema": "https://json-schema.org/draft/2020-12/schema",\n "additionalProperties": false,\n "properties": {\n "evidence": {\n "additionalProperties": false,\n "properties": {\n "analysis_profile": {\n "additionalProperties": false,\n "properties": {\n "digest": {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n },\n "parameters": {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n },\n "provider": {\n "additionalProperties": false,\n "properties": {\n "id": {\n "minLength": 1,\n "type": "string"\n },\n "name": {\n "minLength": 1,\n "type": "string"\n },\n "version": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "id",\n "name",\n "version"\n ],\n "type": "object"\n }\n },\n "required": [\n "provider",\n "parameters",\n "digest"\n ],\n "type": "object"\n },\n "authority": {\n "enum": [\n "shipped-artifact",\n "controlled-replay",\n "historical-reference",\n "external-service",\n "analyst-inference"\n ],\n "type": "string"\n },\n "confidence": {\n "enum": [\n "observed",\n "derived",\n "inferred"\n ],\n "type": "string"\n },\n "environment": {\n "anyOf": [\n {\n "additionalProperties": false,\n "properties": {\n "architecture": {\n "minLength": 1,\n "type": "string"\n },\n "id": {\n "minLength": 1,\n "type": "string"\n },\n "isolation": {\n "enum": [\n "none",\n "process",\n "container",\n "virtual-machine"\n ],\n "type": "string"\n },\n "platform": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "id",\n "platform",\n "architecture",\n "isolation"\n ],\n "type": "object"\n },\n {\n "type": "null"\n }\n ]\n },\n "evidence_id": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "evidence_links": {\n "items": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "type": "array"\n },\n "limitations": {\n "items": {\n "type": "string"\n },\n "type": "array"\n },\n "locations": {\n "items": {\n "oneOf": [\n {\n "additionalProperties": false,\n "properties": {\n "address": {\n "minLength": 1,\n "type": "string"\n },\n "kind": {\n "const": "address",\n "type": "string"\n }\n },\n "required": [\n "kind",\n "address"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "end": {\n "minLength": 1,\n "type": "string"\n },\n "kind": {\n "const": "address-range",\n "type": "string"\n },\n "start": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "kind",\n "start",\n "end"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "kind": {\n "const": "artifact-path",\n "type": "string"\n },\n "path": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "kind",\n "path"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "kind": {\n "const": "file-offset",\n "type": "string"\n },\n "offset": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "kind",\n "offset"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "end": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "kind": {\n "const": "file-offset-range",\n "type": "string"\n },\n "start": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "kind",\n "start",\n "end"\n ],\n "type": "object"\n }\n ]\n },\n "type": "array"\n },\n "normalized_result": {\n "$ref": "#/$defs/__schema0"\n },\n "operation": {\n "minLength": 1,\n "type": "string"\n },\n "parameters": {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n },\n "predicate_type": {\n "minLength": 1,\n "type": "string"\n },\n "provider": {\n "additionalProperties": false,\n "properties": {\n "id": {\n "minLength": 1,\n "type": "string"\n },\n "name": {\n "minLength": 1,\n "type": "string"\n },\n "version": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "id",\n "name",\n "version"\n ],\n "type": "object"\n },\n "raw_result": {\n "anyOf": [\n {\n "$ref": "#/$defs/__schema0"\n },\n {\n "type": "null"\n }\n ]\n },\n "subject": {\n "anyOf": [\n {\n "additionalProperties": false,\n "properties": {\n "architecture": {\n "anyOf": [\n {\n "enum": [\n "x86",\n "x86_64",\n "arm",\n "arm64"\n ],\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "digest": {\n "additionalProperties": false,\n "properties": {\n "sha256": {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n }\n },\n "required": [\n "sha256"\n ],\n "type": "object"\n },\n "format": {\n "enum": [\n "hopper",\n "analysis-database",\n "mach-o",\n "elf",\n "pe",\n "dos-mz",\n "dos-com",\n "zip",\n "ipa",\n "apk",\n "msix",\n "appx",\n "asar",\n "dmg",\n "pkg",\n "plist",\n "javascript",\n "source-map",\n "directory",\n "file",\n "unknown",\n "mach-o-universal",\n "javascript-bundle",\n "entitlements"\n ],\n "type": "string"\n },\n "local_path": {\n "type": "string"\n },\n "name": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "name",\n "digest",\n "format",\n "architecture",\n "local_path"\n ],\n "type": "object"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "evidence_id",\n "subject",\n "provider",\n "predicate_type",\n "operation",\n "parameters",\n "raw_result",\n "normalized_result",\n "confidence",\n "authority",\n "environment",\n "limitations",\n "locations",\n "evidence_links"\n ],\n "type": "object"\n },\n "evidence_id": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "result": {\n "additionalProperties": false,\n "properties": {\n "class_count": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "engine": {\n "additionalProperties": false,\n "properties": {\n "artifact_sha256": {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n },\n "heap_limit_mib": {\n "anyOf": [\n {\n "exclusiveMinimum": 0,\n "maximum": 9007199254740991,\n "type": "integer"\n },\n {\n "type": "null"\n }\n ]\n },\n "name": {\n "minLength": 1,\n "type": "string"\n },\n "source_revision": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "version": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "worker_count": {\n "exclusiveMinimum": 0,\n "maximum": 9007199254740991,\n "type": "integer"\n }\n },\n "required": [\n "name",\n "version",\n "artifact_sha256",\n "source_revision",\n "worker_count",\n "heap_limit_mib"\n ],\n "type": "object"\n },\n "manifest": {\n "additionalProperties": false,\n "properties": {\n "reported_total_bytes": {\n "anyOf": [\n {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n {\n "type": "null"\n }\n ]\n },\n "status": {\n "enum": [\n "complete",\n "partial"\n ],\n "type": "string"\n },\n "text": {\n "type": "string"\n }\n },\n "required": [\n "status",\n "text",\n "reported_total_bytes"\n ],\n "type": "object"\n },\n "min_sdk": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "package_name": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "permissions": {\n "items": {\n "type": "string"\n },\n "type": "array"\n },\n "resource_count": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "signature_verification": {\n "const": "not_performed",\n "type": "string"\n },\n "target_sdk": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "version_code": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "version_name": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "engine",\n "package_name",\n "version_name",\n "version_code",\n "min_sdk",\n "target_sdk",\n "permissions",\n "manifest",\n "class_count",\n "resource_count",\n "signature_verification"\n ],\n "type": "object"\n }\n },\n "required": [\n "result",\n "evidence_id",\n "evidence"\n ],\n "type": "object"\n },\n "requiresSession": false,\n "title": "Inspect Android Package"\n },\n {\n "analysisOperation": null,\n "annotations": {\n "destructiveHint": false,\n "idempotentHint": true,\n "openWorldHint": true,\n "readOnlyHint": false\n },\n "description": "Search complete decompiler class names in an explicit local APK by case-sensitive substring. Empty query inventories all classes. Retains artifact and engine identity; no APK execution.",\n "effects": {\n "accessesNetwork": false,\n "changesUiState": false,\n "idempotent": true,\n "launchesProcess": true,\n "mayDiscardData": false,\n "mutatesSession": true,\n "mutatesTarget": false,\n "writesFilesystem": true\n },\n "inputSchema": {\n "$schema": "https://json-schema.org/draft/2020-12/schema",\n "additionalProperties": false,\n "examples": [\n {\n "path": "/tmp/Example.apk",\n "query": "Activity"\n }\n ],\n "properties": {\n "path": {\n "description": "Local APK path; the target is never executed",\n "minLength": 1,\n "type": "string"\n },\n "query": {\n "description": "Case-sensitive class-name substring; empty lists all classes",\n "type": "string"\n }\n },\n "required": [\n "path",\n "query"\n ],\n "type": "object"\n },\n "kind": "android-provider",\n "name": "search_android_classes",\n "outputSchema": {\n "$defs": {\n "__schema0": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "number"\n },\n {\n "type": "boolean"\n },\n {\n "type": "null"\n },\n {\n "items": {\n "$ref": "#/$defs/__schema0"\n },\n "type": "array"\n },\n {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n }\n ]\n }\n },\n "$schema": "https://json-schema.org/draft/2020-12/schema",\n "additionalProperties": false,\n "properties": {\n "evidence": {\n "additionalProperties": false,\n "properties": {\n "analysis_profile": {\n "additionalProperties": false,\n "properties": {\n "digest": {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n },\n "parameters": {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n },\n "provider": {\n "additionalProperties": false,\n "properties": {\n "id": {\n "minLength": 1,\n "type": "string"\n },\n "name": {\n "minLength": 1,\n "type": "string"\n },\n "version": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "id",\n "name",\n "version"\n ],\n "type": "object"\n }\n },\n "required": [\n "provider",\n "parameters",\n "digest"\n ],\n "type": "object"\n },\n "authority": {\n "enum": [\n "shipped-artifact",\n "controlled-replay",\n "historical-reference",\n "external-service",\n "analyst-inference"\n ],\n "type": "string"\n },\n "confidence": {\n "enum": [\n "observed",\n "derived",\n "inferred"\n ],\n "type": "string"\n },\n "environment": {\n "anyOf": [\n {\n "additionalProperties": false,\n "properties": {\n "architecture": {\n "minLength": 1,\n "type": "string"\n },\n "id": {\n "minLength": 1,\n "type": "string"\n },\n "isolation": {\n "enum": [\n "none",\n "process",\n "container",\n "virtual-machine"\n ],\n "type": "string"\n },\n "platform": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "id",\n "platform",\n "architecture",\n "isolation"\n ],\n "type": "object"\n },\n {\n "type": "null"\n }\n ]\n },\n "evidence_id": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "evidence_links": {\n "items": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "type": "array"\n },\n "limitations": {\n "items": {\n "type": "string"\n },\n "type": "array"\n },\n "locations": {\n "items": {\n "oneOf": [\n {\n "additionalProperties": false,\n "properties": {\n "address": {\n "minLength": 1,\n "type": "string"\n },\n "kind": {\n "const": "address",\n "type": "string"\n }\n },\n "required": [\n "kind",\n "address"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "end": {\n "minLength": 1,\n "type": "string"\n },\n "kind": {\n "const": "address-range",\n "type": "string"\n },\n "start": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "kind",\n "start",\n "end"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "kind": {\n "const": "artifact-path",\n "type": "string"\n },\n "path": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "kind",\n "path"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "kind": {\n "const": "file-offset",\n "type": "string"\n },\n "offset": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "kind",\n "offset"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "end": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "kind": {\n "const": "file-offset-range",\n "type": "string"\n },\n "start": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "kind",\n "start",\n "end"\n ],\n "type": "object"\n }\n ]\n },\n "type": "array"\n },\n "normalized_result": {\n "$ref": "#/$defs/__schema0"\n },\n "operation": {\n "minLength": 1,\n "type": "string"\n },\n "parameters": {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n },\n "predicate_type": {\n "minLength": 1,\n "type": "string"\n },\n "provider": {\n "additionalProperties": false,\n "properties": {\n "id": {\n "minLength": 1,\n "type": "string"\n },\n "name": {\n "minLength": 1,\n "type": "string"\n },\n "version": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "id",\n "name",\n "version"\n ],\n "type": "object"\n },\n "raw_result": {\n "anyOf": [\n {\n "$ref": "#/$defs/__schema0"\n },\n {\n "type": "null"\n }\n ]\n },\n "subject": {\n "anyOf": [\n {\n "additionalProperties": false,\n "properties": {\n "architecture": {\n "anyOf": [\n {\n "enum": [\n "x86",\n "x86_64",\n "arm",\n "arm64"\n ],\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "digest": {\n "additionalProperties": false,\n "properties": {\n "sha256": {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n }\n },\n "required": [\n "sha256"\n ],\n "type": "object"\n },\n "format": {\n "enum": [\n "hopper",\n "analysis-database",\n "mach-o",\n "elf",\n "pe",\n "dos-mz",\n "dos-com",\n "zip",\n "ipa",\n "apk",\n "msix",\n "appx",\n "asar",\n "dmg",\n "pkg",\n "plist",\n "javascript",\n "source-map",\n "directory",\n "file",\n "unknown",\n "mach-o-universal",\n "javascript-bundle",\n "entitlements"\n ],\n "type": "string"\n },\n "local_path": {\n "type": "string"\n },\n "name": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "name",\n "digest",\n "format",\n "architecture",\n "local_path"\n ],\n "type": "object"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "evidence_id",\n "subject",\n "provider",\n "predicate_type",\n "operation",\n "parameters",\n "raw_result",\n "normalized_result",\n "confidence",\n "authority",\n "environment",\n "limitations",\n "locations",\n "evidence_links"\n ],\n "type": "object"\n },\n "evidence_id": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "result": {\n "additionalProperties": false,\n "properties": {\n "coverage": {\n "const": "complete",\n "type": "string"\n },\n "engine": {\n "additionalProperties": false,\n "properties": {\n "artifact_sha256": {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n },\n "heap_limit_mib": {\n "anyOf": [\n {\n "exclusiveMinimum": 0,\n "maximum": 9007199254740991,\n "type": "integer"\n },\n {\n "type": "null"\n }\n ]\n },\n "name": {\n "minLength": 1,\n "type": "string"\n },\n "source_revision": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "version": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "worker_count": {\n "exclusiveMinimum": 0,\n "maximum": 9007199254740991,\n "type": "integer"\n }\n },\n "required": [\n "name",\n "version",\n "artifact_sha256",\n "source_revision",\n "worker_count",\n "heap_limit_mib"\n ],\n "type": "object"\n },\n "matches": {\n "items": {\n "type": "string"\n },\n "type": "array"\n },\n "query": {\n "type": "string"\n },\n "total_classes": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "engine",\n "query",\n "total_classes",\n "matches",\n "coverage"\n ],\n "type": "object"\n }\n },\n "required": [\n "result",\n "evidence_id",\n "evidence"\n ],\n "type": "object"\n },\n "requiresSession": false,\n "title": "Search Android Classes"\n },\n {\n "analysisOperation": null,\n "annotations": {\n "destructiveHint": false,\n "idempotentHint": true,\n "openWorldHint": true,\n "readOnlyHint": false\n },\n "description": "Inspect one exact Android class\'s parsed methods, fields and inner classes, including synthetic members. Returns display signatures and explicit unknown DEX descriptors without generating source. Overload indices remain consistent within the artifact and engine session.",\n "effects": {\n "accessesNetwork": false,\n "changesUiState": false,\n "idempotent": true,\n "launchesProcess": true,\n "mayDiscardData": false,\n "mutatesSession": true,\n "mutatesTarget": false,\n "writesFilesystem": true\n },\n "inputSchema": {\n "$schema": "https://json-schema.org/draft/2020-12/schema",\n "additionalProperties": false,\n "examples": [\n {\n "class_name": "example.MainActivity",\n "path": "/tmp/Example.apk"\n }\n ],\n "properties": {\n "class_name": {\n "description": "Exact fully qualified class name",\n "minLength": 1,\n "type": "string"\n },\n "path": {\n "description": "Local APK path; the target is never executed",\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "path",\n "class_name"\n ],\n "type": "object"\n },\n "kind": "android-provider",\n "name": "inspect_android_class",\n "outputSchema": {\n "$defs": {\n "__schema0": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "number"\n },\n {\n "type": "boolean"\n },\n {\n "type": "null"\n },\n {\n "items": {\n "$ref": "#/$defs/__schema0"\n },\n "type": "array"\n },\n {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n }\n ]\n }\n },\n "$schema": "https://json-schema.org/draft/2020-12/schema",\n "additionalProperties": false,\n "properties": {\n "evidence": {\n "additionalProperties": false,\n "properties": {\n "analysis_profile": {\n "additionalProperties": false,\n "properties": {\n "digest": {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n },\n "parameters": {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n },\n "provider": {\n "additionalProperties": false,\n "properties": {\n "id": {\n "minLength": 1,\n "type": "string"\n },\n "name": {\n "minLength": 1,\n "type": "string"\n },\n "version": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "id",\n "name",\n "version"\n ],\n "type": "object"\n }\n },\n "required": [\n "provider",\n "parameters",\n "digest"\n ],\n "type": "object"\n },\n "authority": {\n "enum": [\n "shipped-artifact",\n "controlled-replay",\n "historical-reference",\n "external-service",\n "analyst-inference"\n ],\n "type": "string"\n },\n "confidence": {\n "enum": [\n "observed",\n "derived",\n "inferred"\n ],\n "type": "string"\n },\n "environment": {\n "anyOf": [\n {\n "additionalProperties": false,\n "properties": {\n "architecture": {\n "minLength": 1,\n "type": "string"\n },\n "id": {\n "minLength": 1,\n "type": "string"\n },\n "isolation": {\n "enum": [\n "none",\n "process",\n "container",\n "virtual-machine"\n ],\n "type": "string"\n },\n "platform": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "id",\n "platform",\n "architecture",\n "isolation"\n ],\n "type": "object"\n },\n {\n "type": "null"\n }\n ]\n },\n "evidence_id": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "evidence_links": {\n "items": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "type": "array"\n },\n "limitations": {\n "items": {\n "type": "string"\n },\n "type": "array"\n },\n "locations": {\n "items": {\n "oneOf": [\n {\n "additionalProperties": false,\n "properties": {\n "address": {\n "minLength": 1,\n "type": "string"\n },\n "kind": {\n "const": "address",\n "type": "string"\n }\n },\n "required": [\n "kind",\n "address"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "end": {\n "minLength": 1,\n "type": "string"\n },\n "kind": {\n "const": "address-range",\n "type": "string"\n },\n "start": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "kind",\n "start",\n "end"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "kind": {\n "const": "artifact-path",\n "type": "string"\n },\n "path": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "kind",\n "path"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "kind": {\n "const": "file-offset",\n "type": "string"\n },\n "offset": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "kind",\n "offset"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "end": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "kind": {\n "const": "file-offset-range",\n "type": "string"\n },\n "start": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "kind",\n "start",\n "end"\n ],\n "type": "object"\n }\n ]\n },\n "type": "array"\n },\n "normalized_result": {\n "$ref": "#/$defs/__schema0"\n },\n "operation": {\n "minLength": 1,\n "type": "string"\n },\n "parameters": {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n },\n "predicate_type": {\n "minLength": 1,\n "type": "string"\n },\n "provider": {\n "additionalProperties": false,\n "properties": {\n "id": {\n "minLength": 1,\n "type": "string"\n },\n "name": {\n "minLength": 1,\n "type": "string"\n },\n "version": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "id",\n "name",\n "version"\n ],\n "type": "object"\n },\n "raw_result": {\n "anyOf": [\n {\n "$ref": "#/$defs/__schema0"\n },\n {\n "type": "null"\n }\n ]\n },\n "subject": {\n "anyOf": [\n {\n "additionalProperties": false,\n "properties": {\n "architecture": {\n "anyOf": [\n {\n "enum": [\n "x86",\n "x86_64",\n "arm",\n "arm64"\n ],\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "digest": {\n "additionalProperties": false,\n "properties": {\n "sha256": {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n }\n },\n "required": [\n "sha256"\n ],\n "type": "object"\n },\n "format": {\n "enum": [\n "hopper",\n "analysis-database",\n "mach-o",\n "elf",\n "pe",\n "dos-mz",\n "dos-com",\n "zip",\n "ipa",\n "apk",\n "msix",\n "appx",\n "asar",\n "dmg",\n "pkg",\n "plist",\n "javascript",\n "source-map",\n "directory",\n "file",\n "unknown",\n "mach-o-universal",\n "javascript-bundle",\n "entitlements"\n ],\n "type": "string"\n },\n "local_path": {\n "type": "string"\n },\n "name": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "name",\n "digest",\n "format",\n "architecture",\n "local_path"\n ],\n "type": "object"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "evidence_id",\n "subject",\n "provider",\n "predicate_type",\n "operation",\n "parameters",\n "raw_result",\n "normalized_result",\n "confidence",\n "authority",\n "environment",\n "limitations",\n "locations",\n "evidence_links"\n ],\n "type": "object"\n },\n "evidence_id": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "result": {\n "additionalProperties": false,\n "properties": {\n "class_name": {\n "type": "string"\n },\n "engine": {\n "additionalProperties": false,\n "properties": {\n "artifact_sha256": {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n },\n "heap_limit_mib": {\n "anyOf": [\n {\n "exclusiveMinimum": 0,\n "maximum": 9007199254740991,\n "type": "integer"\n },\n {\n "type": "null"\n }\n ]\n },\n "name": {\n "minLength": 1,\n "type": "string"\n },\n "source_revision": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "version": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "worker_count": {\n "exclusiveMinimum": 0,\n "maximum": 9007199254740991,\n "type": "integer"\n }\n },\n "required": [\n "name",\n "version",\n "artifact_sha256",\n "source_revision",\n "worker_count",\n "heap_limit_mib"\n ],\n "type": "object"\n },\n "fields": {\n "items": {\n "additionalProperties": false,\n "properties": {\n "name": {\n "type": "string"\n },\n "reported_type": {\n "type": "string"\n }\n },\n "required": [\n "name",\n "reported_type"\n ],\n "type": "object"\n },\n "type": "array"\n },\n "inner_classes": {\n "items": {\n "type": "string"\n },\n "type": "array"\n },\n "methods": {\n "items": {\n "additionalProperties": false,\n "properties": {\n "dex_descriptor": {\n "type": "null"\n },\n "is_constructor": {\n "type": "boolean"\n },\n "name": {\n "type": "string"\n },\n "overload_index": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "reported_signature": {\n "type": "string"\n }\n },\n "required": [\n "name",\n "reported_signature",\n "overload_index",\n "is_constructor",\n "dex_descriptor"\n ],\n "type": "object"\n },\n "type": "array"\n }\n },\n "required": [\n "engine",\n "class_name",\n "methods",\n "fields",\n "inner_classes"\n ],\n "type": "object"\n }\n },\n "required": [\n "result",\n "evidence_id",\n "evidence"\n ],\n "type": "object"\n },\n "requiresSession": false,\n "title": "Inspect Android Class"\n },\n {\n "analysisOperation": null,\n "annotations": {\n "destructiveHint": false,\n "idempotentHint": true,\n "openWorldHint": true,\n "readOnlyHint": false\n },\n "description": "Decompile one Android method with smali fallback. Requires explicit overload_index when multiple methods share a name. Reports representation, fallback markers and source truncation; never treats display signatures as exact DEX identities.",\n "effects": {\n "accessesNetwork": false,\n "changesUiState": false,\n "idempotent": true,\n "launchesProcess": true,\n "mayDiscardData": false,\n "mutatesSession": true,\n "mutatesTarget": false,\n "writesFilesystem": true\n },\n "inputSchema": {\n "$schema": "https://json-schema.org/draft/2020-12/schema",\n "additionalProperties": false,\n "examples": [\n {\n "class_name": "example.MainActivity",\n "method_name": "onCreate",\n "path": "/tmp/Example.apk"\n }\n ],\n "properties": {\n "class_name": {\n "description": "Exact fully qualified class name",\n "minLength": 1,\n "type": "string"\n },\n "method_name": {\n "description": "Value for method name.",\n "minLength": 1,\n "type": "string"\n },\n "overload_index": {\n "description": "Explicit index among same-name methods; required when ambiguous",\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "path": {\n "description": "Local APK path; the target is never executed",\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "path",\n "class_name",\n "method_name"\n ],\n "type": "object"\n },\n "kind": "android-provider",\n "name": "inspect_android_method",\n "outputSchema": {\n "$defs": {\n "__schema0": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "number"\n },\n {\n "type": "boolean"\n },\n {\n "type": "null"\n },\n {\n "items": {\n "$ref": "#/$defs/__schema0"\n },\n "type": "array"\n },\n {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n }\n ]\n }\n },\n "$schema": "https://json-schema.org/draft/2020-12/schema",\n "additionalProperties": false,\n "properties": {\n "evidence": {\n "additionalProperties": false,\n "properties": {\n "analysis_profile": {\n "additionalProperties": false,\n "properties": {\n "digest": {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n },\n "parameters": {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n },\n "provider": {\n "additionalProperties": false,\n "properties": {\n "id": {\n "minLength": 1,\n "type": "string"\n },\n "name": {\n "minLength": 1,\n "type": "string"\n },\n "version": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "id",\n "name",\n "version"\n ],\n "type": "object"\n }\n },\n "required": [\n "provider",\n "parameters",\n "digest"\n ],\n "type": "object"\n },\n "authority": {\n "enum": [\n "shipped-artifact",\n "controlled-replay",\n "historical-reference",\n "external-service",\n "analyst-inference"\n ],\n "type": "string"\n },\n "confidence": {\n "enum": [\n "observed",\n "derived",\n "inferred"\n ],\n "type": "string"\n },\n "environment": {\n "anyOf": [\n {\n "additionalProperties": false,\n "properties": {\n "architecture": {\n "minLength": 1,\n "type": "string"\n },\n "id": {\n "minLength": 1,\n "type": "string"\n },\n "isolation": {\n "enum": [\n "none",\n "process",\n "container",\n "virtual-machine"\n ],\n "type": "string"\n },\n "platform": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "id",\n "platform",\n "architecture",\n "isolation"\n ],\n "type": "object"\n },\n {\n "type": "null"\n }\n ]\n },\n "evidence_id": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "evidence_links": {\n "items": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "type": "array"\n },\n "limitations": {\n "items": {\n "type": "string"\n },\n "type": "array"\n },\n "locations": {\n "items": {\n "oneOf": [\n {\n "additionalProperties": false,\n "properties": {\n "address": {\n "minLength": 1,\n "type": "string"\n },\n "kind": {\n "const": "address",\n "type": "string"\n }\n },\n "required": [\n "kind",\n "address"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "end": {\n "minLength": 1,\n "type": "string"\n },\n "kind": {\n "const": "address-range",\n "type": "string"\n },\n "start": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "kind",\n "start",\n "end"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "kind": {\n "const": "artifact-path",\n "type": "string"\n },\n "path": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "kind",\n "path"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "kind": {\n "const": "file-offset",\n "type": "string"\n },\n "offset": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "kind",\n "offset"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "end": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "kind": {\n "const": "file-offset-range",\n "type": "string"\n },\n "start": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "kind",\n "start",\n "end"\n ],\n "type": "object"\n }\n ]\n },\n "type": "array"\n },\n "normalized_result": {\n "$ref": "#/$defs/__schema0"\n },\n "operation": {\n "minLength": 1,\n "type": "string"\n },\n "parameters": {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n },\n "predicate_type": {\n "minLength": 1,\n "type": "string"\n },\n "provider": {\n "additionalProperties": false,\n "properties": {\n "id": {\n "minLength": 1,\n "type": "string"\n },\n "name": {\n "minLength": 1,\n "type": "string"\n },\n "version": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "id",\n "name",\n "version"\n ],\n "type": "object"\n },\n "raw_result": {\n "anyOf": [\n {\n "$ref": "#/$defs/__schema0"\n },\n {\n "type": "null"\n }\n ]\n },\n "subject": {\n "anyOf": [\n {\n "additionalProperties": false,\n "properties": {\n "architecture": {\n "anyOf": [\n {\n "enum": [\n "x86",\n "x86_64",\n "arm",\n "arm64"\n ],\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "digest": {\n "additionalProperties": false,\n "properties": {\n "sha256": {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n }\n },\n "required": [\n "sha256"\n ],\n "type": "object"\n },\n "format": {\n "enum": [\n "hopper",\n "analysis-database",\n "mach-o",\n "elf",\n "pe",\n "dos-mz",\n "dos-com",\n "zip",\n "ipa",\n "apk",\n "msix",\n "appx",\n "asar",\n "dmg",\n "pkg",\n "plist",\n "javascript",\n "source-map",\n "directory",\n "file",\n "unknown",\n "mach-o-universal",\n "javascript-bundle",\n "entitlements"\n ],\n "type": "string"\n },\n "local_path": {\n "type": "string"\n },\n "name": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "name",\n "digest",\n "format",\n "architecture",\n "local_path"\n ],\n "type": "object"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "evidence_id",\n "subject",\n "provider",\n "predicate_type",\n "operation",\n "parameters",\n "raw_result",\n "normalized_result",\n "confidence",\n "authority",\n "environment",\n "limitations",\n "locations",\n "evidence_links"\n ],\n "type": "object"\n },\n "evidence_id": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "result": {\n "additionalProperties": false,\n "properties": {\n "body_status": {\n "enum": [\n "available",\n "not_available"\n ],\n "type": "string"\n },\n "class_name": {\n "type": "string"\n },\n "engine": {\n "additionalProperties": false,\n "properties": {\n "artifact_sha256": {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n },\n "heap_limit_mib": {\n "anyOf": [\n {\n "exclusiveMinimum": 0,\n "maximum": 9007199254740991,\n "type": "integer"\n },\n {\n "type": "null"\n }\n ]\n },\n "name": {\n "minLength": 1,\n "type": "string"\n },\n "source_revision": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "version": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "worker_count": {\n "exclusiveMinimum": 0,\n "maximum": 9007199254740991,\n "type": "integer"\n }\n },\n "required": [\n "name",\n "version",\n "artifact_sha256",\n "source_revision",\n "worker_count",\n "heap_limit_mib"\n ],\n "type": "object"\n },\n "fell_back": {\n "type": "boolean"\n },\n "markers": {\n "items": {\n "type": "string"\n },\n "type": "array"\n },\n "method": {\n "additionalProperties": false,\n "properties": {\n "dex_descriptor": {\n "type": "null"\n },\n "is_constructor": {\n "type": "boolean"\n },\n "name": {\n "type": "string"\n },\n "overload_index": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "reported_signature": {\n "type": "string"\n }\n },\n "required": [\n "name",\n "reported_signature",\n "overload_index",\n "is_constructor",\n "dex_descriptor"\n ],\n "type": "object"\n },\n "overload_count": {\n "exclusiveMinimum": 0,\n "maximum": 9007199254740991,\n "type": "integer"\n },\n "representation": {\n "enum": [\n "java",\n "smali"\n ],\n "type": "string"\n },\n "source": {\n "additionalProperties": false,\n "properties": {\n "reported_total_bytes": {\n "anyOf": [\n {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n {\n "type": "null"\n }\n ]\n },\n "status": {\n "enum": [\n "complete",\n "partial"\n ],\n "type": "string"\n },\n "text": {\n "type": "string"\n }\n },\n "required": [\n "status",\n "text",\n "reported_total_bytes"\n ],\n "type": "object"\n }\n },\n "required": [\n "engine",\n "class_name",\n "method",\n "overload_count",\n "representation",\n "body_status",\n "fell_back",\n "markers",\n "source"\n ],\n "type": "object"\n }\n },\n "required": [\n "result",\n "evidence_id",\n "evidence"\n ],\n "type": "object"\n },\n "requiresSession": false,\n "title": "Inspect Android Method"\n },\n {\n "analysisOperation": null,\n "annotations": {\n "destructiveHint": false,\n "idempotentHint": true,\n "openWorldHint": true,\n "readOnlyHint": false\n },\n "description": "Trace incoming static references to an exact Android class or unique method. Overloaded method reference queries are explicitly unsupported by the current engine. Source lines and DEX offsets remain unknown; no runtime calls are inferred.",\n "effects": {\n "accessesNetwork": false,\n "changesUiState": false,\n "idempotent": true,\n "launchesProcess": true,\n "mayDiscardData": false,\n "mutatesSession": true,\n "mutatesTarget": false,\n "writesFilesystem": true\n },\n "inputSchema": {\n "$schema": "https://json-schema.org/draft/2020-12/schema",\n "additionalProperties": false,\n "examples": [\n {\n "class_name": "example.MainActivity",\n "path": "/tmp/Example.apk"\n }\n ],\n "properties": {\n "class_name": {\n "description": "Exact fully qualified class name",\n "minLength": 1,\n "type": "string"\n },\n "method_name": {\n "description": "Omit for class references; ambiguous overloaded methods are unsupported",\n "minLength": 1,\n "type": "string"\n },\n "path": {\n "description": "Local APK path; the target is never executed",\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "path",\n "class_name"\n ],\n "type": "object"\n },\n "kind": "android-provider",\n "name": "trace_android_references",\n "outputSchema": {\n "$defs": {\n "__schema0": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "number"\n },\n {\n "type": "boolean"\n },\n {\n "type": "null"\n },\n {\n "items": {\n "$ref": "#/$defs/__schema0"\n },\n "type": "array"\n },\n {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n }\n ]\n }\n },\n "$schema": "https://json-schema.org/draft/2020-12/schema",\n "additionalProperties": false,\n "properties": {\n "evidence": {\n "additionalProperties": false,\n "properties": {\n "analysis_profile": {\n "additionalProperties": false,\n "properties": {\n "digest": {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n },\n "parameters": {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n },\n "provider": {\n "additionalProperties": false,\n "properties": {\n "id": {\n "minLength": 1,\n "type": "string"\n },\n "name": {\n "minLength": 1,\n "type": "string"\n },\n "version": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "id",\n "name",\n "version"\n ],\n "type": "object"\n }\n },\n "required": [\n "provider",\n "parameters",\n "digest"\n ],\n "type": "object"\n },\n "authority": {\n "enum": [\n "shipped-artifact",\n "controlled-replay",\n "historical-reference",\n "external-service",\n "analyst-inference"\n ],\n "type": "string"\n },\n "confidence": {\n "enum": [\n "observed",\n "derived",\n "inferred"\n ],\n "type": "string"\n },\n "environment": {\n "anyOf": [\n {\n "additionalProperties": false,\n "properties": {\n "architecture": {\n "minLength": 1,\n "type": "string"\n },\n "id": {\n "minLength": 1,\n "type": "string"\n },\n "isolation": {\n "enum": [\n "none",\n "process",\n "container",\n "virtual-machine"\n ],\n "type": "string"\n },\n "platform": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "id",\n "platform",\n "architecture",\n "isolation"\n ],\n "type": "object"\n },\n {\n "type": "null"\n }\n ]\n },\n "evidence_id": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "evidence_links": {\n "items": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "type": "array"\n },\n "limitations": {\n "items": {\n "type": "string"\n },\n "type": "array"\n },\n "locations": {\n "items": {\n "oneOf": [\n {\n "additionalProperties": false,\n "properties": {\n "address": {\n "minLength": 1,\n "type": "string"\n },\n "kind": {\n "const": "address",\n "type": "string"\n }\n },\n "required": [\n "kind",\n "address"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "end": {\n "minLength": 1,\n "type": "string"\n },\n "kind": {\n "const": "address-range",\n "type": "string"\n },\n "start": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "kind",\n "start",\n "end"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "kind": {\n "const": "artifact-path",\n "type": "string"\n },\n "path": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "kind",\n "path"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "kind": {\n "const": "file-offset",\n "type": "string"\n },\n "offset": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "kind",\n "offset"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "end": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "kind": {\n "const": "file-offset-range",\n "type": "string"\n },\n "start": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "kind",\n "start",\n "end"\n ],\n "type": "object"\n }\n ]\n },\n "type": "array"\n },\n "normalized_result": {\n "$ref": "#/$defs/__schema0"\n },\n "operation": {\n "minLength": 1,\n "type": "string"\n },\n "parameters": {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n },\n "predicate_type": {\n "minLength": 1,\n "type": "string"\n },\n "provider": {\n "additionalProperties": false,\n "properties": {\n "id": {\n "minLength": 1,\n "type": "string"\n },\n "name": {\n "minLength": 1,\n "type": "string"\n },\n "version": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "id",\n "name",\n "version"\n ],\n "type": "object"\n },\n "raw_result": {\n "anyOf": [\n {\n "$ref": "#/$defs/__schema0"\n },\n {\n "type": "null"\n }\n ]\n },\n "subject": {\n "anyOf": [\n {\n "additionalProperties": false,\n "properties": {\n "architecture": {\n "anyOf": [\n {\n "enum": [\n "x86",\n "x86_64",\n "arm",\n "arm64"\n ],\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "digest": {\n "additionalProperties": false,\n "properties": {\n "sha256": {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n }\n },\n "required": [\n "sha256"\n ],\n "type": "object"\n },\n "format": {\n "enum": [\n "hopper",\n "analysis-database",\n "mach-o",\n "elf",\n "pe",\n "dos-mz",\n "dos-com",\n "zip",\n "ipa",\n "apk",\n "msix",\n "appx",\n "asar",\n "dmg",\n "pkg",\n "plist",\n "javascript",\n "source-map",\n "directory",\n "file",\n "unknown",\n "mach-o-universal",\n "javascript-bundle",\n "entitlements"\n ],\n "type": "string"\n },\n "local_path": {\n "type": "string"\n },\n "name": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "name",\n "digest",\n "format",\n "architecture",\n "local_path"\n ],\n "type": "object"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "evidence_id",\n "subject",\n "provider",\n "predicate_type",\n "operation",\n "parameters",\n "raw_result",\n "normalized_result",\n "confidence",\n "authority",\n "environment",\n "limitations",\n "locations",\n "evidence_links"\n ],\n "type": "object"\n },\n "evidence_id": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "result": {\n "additionalProperties": false,\n "properties": {\n "class_name": {\n "type": "string"\n },\n "coverage": {\n "const": "complete",\n "type": "string"\n },\n "engine": {\n "additionalProperties": false,\n "properties": {\n "artifact_sha256": {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n },\n "heap_limit_mib": {\n "anyOf": [\n {\n "exclusiveMinimum": 0,\n "maximum": 9007199254740991,\n "type": "integer"\n },\n {\n "type": "null"\n }\n ]\n },\n "name": {\n "minLength": 1,\n "type": "string"\n },\n "source_revision": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "version": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "worker_count": {\n "exclusiveMinimum": 0,\n "maximum": 9007199254740991,\n "type": "integer"\n }\n },\n "required": [\n "name",\n "version",\n "artifact_sha256",\n "source_revision",\n "worker_count",\n "heap_limit_mib"\n ],\n "type": "object"\n },\n "method_name": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "references": {\n "items": {\n "additionalProperties": false,\n "properties": {\n "containing_class": {\n "type": "string"\n },\n "dex_offset": {\n "type": "null"\n },\n "kind": {\n "type": "string"\n },\n "name": {\n "type": "string"\n },\n "reported_full_name": {\n "type": "string"\n },\n "source_line": {\n "type": "null"\n },\n "top_class": {\n "type": "string"\n }\n },\n "required": [\n "kind",\n "name",\n "reported_full_name",\n "containing_class",\n "top_class",\n "source_line",\n "dex_offset"\n ],\n "type": "object"\n },\n "type": "array"\n },\n "total": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "engine",\n "class_name",\n "method_name",\n "total",\n "references",\n "coverage"\n ],\n "type": "object"\n }\n },\n "required": [\n "result",\n "evidence_id",\n "evidence"\n ],\n "type": "object"\n },\n "requiresSession": false,\n "title": "Trace Android References"\n },\n {\n "analysisOperation": null,\n "annotations": {\n "destructiveHint": false,\n "idempotentHint": true,\n "openWorldHint": true,\n "readOnlyHint": false\n },\n "description": "Inspect signature candidates in a local firmware file with Binwalk 3.1.x (verified with 3.1.0). Returns offsets, reported lengths, descriptions and raw confidence values. Length validation and runtime addresses remain unknown. No extraction or target execution. Linux, caller-supplied tool and util-linux prlimit required; 128 MiB input limit, one worker and 120-second deadline.",\n "effects": {\n "accessesNetwork": false,\n "changesUiState": false,\n "idempotent": true,\n "launchesProcess": true,\n "mayDiscardData": false,\n "mutatesSession": true,\n "mutatesTarget": false,\n "writesFilesystem": true\n },\n "inputSchema": {\n "$schema": "https://json-schema.org/draft/2020-12/schema",\n "additionalProperties": false,\n "examples": [\n {\n "path": "/tmp/firmware.bin"\n }\n ],\n "properties": {\n "path": {\n "description": "Local firmware file; never executed",\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "path"\n ],\n "type": "object"\n },\n "kind": "firmware-provider",\n "name": "inspect_firmware_regions",\n "outputSchema": {\n "$defs": {\n "__schema0": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "number"\n },\n {\n "type": "boolean"\n },\n {\n "type": "null"\n },\n {\n "items": {\n "$ref": "#/$defs/__schema0"\n },\n "type": "array"\n },\n {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n }\n ]\n }\n },\n "$schema": "https://json-schema.org/draft/2020-12/schema",\n "additionalProperties": false,\n "properties": {\n "evidence": {\n "additionalProperties": false,\n "properties": {\n "analysis_profile": {\n "additionalProperties": false,\n "properties": {\n "digest": {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n },\n "parameters": {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n },\n "provider": {\n "additionalProperties": false,\n "properties": {\n "id": {\n "minLength": 1,\n "type": "string"\n },\n "name": {\n "minLength": 1,\n "type": "string"\n },\n "version": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "id",\n "name",\n "version"\n ],\n "type": "object"\n }\n },\n "required": [\n "provider",\n "parameters",\n "digest"\n ],\n "type": "object"\n },\n "authority": {\n "enum": [\n "shipped-artifact",\n "controlled-replay",\n "historical-reference",\n "external-service",\n "analyst-inference"\n ],\n "type": "string"\n },\n "confidence": {\n "enum": [\n "observed",\n "derived",\n "inferred"\n ],\n "type": "string"\n },\n "environment": {\n "anyOf": [\n {\n "additionalProperties": false,\n "properties": {\n "architecture": {\n "minLength": 1,\n "type": "string"\n },\n "id": {\n "minLength": 1,\n "type": "string"\n },\n "isolation": {\n "enum": [\n "none",\n "process",\n "container",\n "virtual-machine"\n ],\n "type": "string"\n },\n "platform": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "id",\n "platform",\n "architecture",\n "isolation"\n ],\n "type": "object"\n },\n {\n "type": "null"\n }\n ]\n },\n "evidence_id": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "evidence_links": {\n "items": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "type": "array"\n },\n "limitations": {\n "items": {\n "type": "string"\n },\n "type": "array"\n },\n "locations": {\n "items": {\n "oneOf": [\n {\n "additionalProperties": false,\n "properties": {\n "address": {\n "minLength": 1,\n "type": "string"\n },\n "kind": {\n "const": "address",\n "type": "string"\n }\n },\n "required": [\n "kind",\n "address"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "end": {\n "minLength": 1,\n "type": "string"\n },\n "kind": {\n "const": "address-range",\n "type": "string"\n },\n "start": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "kind",\n "start",\n "end"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "kind": {\n "const": "artifact-path",\n "type": "string"\n },\n "path": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "kind",\n "path"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "kind": {\n "const": "file-offset",\n "type": "string"\n },\n "offset": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "kind",\n "offset"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "end": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "kind": {\n "const": "file-offset-range",\n "type": "string"\n },\n "start": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "kind",\n "start",\n "end"\n ],\n "type": "object"\n }\n ]\n },\n "type": "array"\n },\n "normalized_result": {\n "$ref": "#/$defs/__schema0"\n },\n "operation": {\n "minLength": 1,\n "type": "string"\n },\n "parameters": {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n },\n "predicate_type": {\n "minLength": 1,\n "type": "string"\n },\n "provider": {\n "additionalProperties": false,\n "properties": {\n "id": {\n "minLength": 1,\n "type": "string"\n },\n "name": {\n "minLength": 1,\n "type": "string"\n },\n "version": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "id",\n "name",\n "version"\n ],\n "type": "object"\n },\n "raw_result": {\n "anyOf": [\n {\n "$ref": "#/$defs/__schema0"\n },\n {\n "type": "null"\n }\n ]\n },\n "subject": {\n "anyOf": [\n {\n "additionalProperties": false,\n "properties": {\n "architecture": {\n "anyOf": [\n {\n "enum": [\n "x86",\n "x86_64",\n "arm",\n "arm64"\n ],\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "digest": {\n "additionalProperties": false,\n "properties": {\n "sha256": {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n }\n },\n "required": [\n "sha256"\n ],\n "type": "object"\n },\n "format": {\n "enum": [\n "hopper",\n "analysis-database",\n "mach-o",\n "elf",\n "pe",\n "dos-mz",\n "dos-com",\n "zip",\n "ipa",\n "apk",\n "msix",\n "appx",\n "asar",\n "dmg",\n "pkg",\n "plist",\n "javascript",\n "source-map",\n "directory",\n "file",\n "unknown",\n "mach-o-universal",\n "javascript-bundle",\n "entitlements"\n ],\n "type": "string"\n },\n "local_path": {\n "type": "string"\n },\n "name": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "name",\n "digest",\n "format",\n "architecture",\n "local_path"\n ],\n "type": "object"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "evidence_id",\n "subject",\n "provider",\n "predicate_type",\n "operation",\n "parameters",\n "raw_result",\n "normalized_result",\n "confidence",\n "authority",\n "environment",\n "limitations",\n "locations",\n "evidence_links"\n ],\n "type": "object"\n },\n "evidence_id": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "result": {\n "additionalProperties": false,\n "properties": {\n "coverage": {\n "const": "signature_scan",\n "type": "string"\n },\n "engine": {\n "additionalProperties": false,\n "properties": {\n "executable_path": {\n "type": "string"\n },\n "executable_sha256": {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n },\n "name": {\n "type": "string"\n },\n "source_revision": {\n "type": "null"\n },\n "version": {\n "type": "string"\n },\n "worker_count": {\n "const": 1,\n "type": "number"\n }\n },\n "required": [\n "name",\n "version",\n "executable_path",\n "executable_sha256",\n "source_revision",\n "worker_count"\n ],\n "type": "object"\n },\n "input_size": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "regions": {\n "items": {\n "additionalProperties": false,\n "properties": {\n "description": {\n "type": "string"\n },\n "offset": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "provider_id": {\n "type": "string"\n },\n "reported_confidence": {\n "maximum": 255,\n "minimum": 0,\n "type": "integer"\n },\n "reported_size": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "signature": {\n "type": "string"\n },\n "size_basis": {\n "const": "provider_reported_validation_unknown",\n "type": "string"\n }\n },\n "required": [\n "provider_id",\n "offset",\n "reported_size",\n "signature",\n "description",\n "reported_confidence",\n "size_basis"\n ],\n "type": "object"\n },\n "type": "array"\n }\n },\n "required": [\n "engine",\n "input_size",\n "regions",\n "coverage"\n ],\n "type": "object"\n }\n },\n "required": [\n "result",\n "evidence_id",\n "evidence"\n ],\n "type": "object"\n },\n "requiresSession": false,\n "title": "Inspect Firmware Regions"\n },\n {\n "analysisOperation": null,\n "annotations": {\n "destructiveHint": false,\n "idempotentHint": false,\n "openWorldHint": true,\n "readOnlyHint": false\n },\n "description": "Extract caller-selected firmware bytes with Unblob 26.6.x (verified with 26.6.4) into an absent output directory. Returns verified child paths/digests, task derivations, unknown chunks and extraction diagnostics inline. Preserves the default sandbox; publishes regular files only. Linux, caller-supplied tool, format-specific extractors and util-linux prlimit required. No mounts or extracted-code execution. Select a returned native file with open_binary for Ghidra analysis; decompressed offsets are not original-file addresses.",\n "effects": {\n "accessesNetwork": false,\n "changesUiState": false,\n "idempotent": false,\n "launchesProcess": true,\n "mayDiscardData": false,\n "mutatesSession": true,\n "mutatesTarget": false,\n "writesFilesystem": true\n },\n "inputSchema": {\n "$schema": "https://json-schema.org/draft/2020-12/schema",\n "additionalProperties": false,\n "examples": [\n {\n "output_directory": "/tmp/firmware-output",\n "path": "/tmp/firmware.bin",\n "range": {\n "length": 4096,\n "offset": 64\n }\n }\n ],\n "properties": {\n "max_depth": {\n "default": 3,\n "description": "Extraction depth; reaching it yields partial analysis",\n "maximum": 10,\n "minimum": 1,\n "type": "integer"\n },\n "max_output_bytes": {\n "default": 268435456,\n "description": "Staging file-byte budget, checked during extraction; transient overshoot is possible",\n "maximum": 536870912,\n "minimum": 1,\n "type": "integer"\n },\n "max_output_files": {\n "default": 10000,\n "description": "Staging entry budget, including directories and links",\n "maximum": 100000,\n "minimum": 1,\n "type": "integer"\n },\n "output_directory": {\n "description": "Absolute, absent output directory; parent must exist",\n "minLength": 1,\n "type": "string"\n },\n "path": {\n "description": "Local firmware file; never executed",\n "minLength": 1,\n "type": "string"\n },\n "range": {\n "additionalProperties": false,\n "description": "Explicit file-byte interval; omit to extract the whole file",\n "properties": {\n "length": {\n "description": "Value for length.",\n "exclusiveMinimum": 0,\n "maximum": 9007199254740991,\n "type": "integer"\n },\n "offset": {\n "description": "Value for offset.",\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "offset",\n "length"\n ],\n "type": "object"\n }\n },\n "required": [\n "path",\n "output_directory"\n ],\n "type": "object"\n },\n "kind": "firmware-provider",\n "name": "extract_firmware",\n "outputSchema": {\n "$defs": {\n "__schema0": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "number"\n },\n {\n "type": "boolean"\n },\n {\n "type": "null"\n },\n {\n "items": {\n "$ref": "#/$defs/__schema0"\n },\n "type": "array"\n },\n {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n }\n ]\n }\n },\n "$schema": "https://json-schema.org/draft/2020-12/schema",\n "additionalProperties": false,\n "properties": {\n "evidence": {\n "additionalProperties": false,\n "properties": {\n "analysis_profile": {\n "additionalProperties": false,\n "properties": {\n "digest": {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n },\n "parameters": {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n },\n "provider": {\n "additionalProperties": false,\n "properties": {\n "id": {\n "minLength": 1,\n "type": "string"\n },\n "name": {\n "minLength": 1,\n "type": "string"\n },\n "version": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "id",\n "name",\n "version"\n ],\n "type": "object"\n }\n },\n "required": [\n "provider",\n "parameters",\n "digest"\n ],\n "type": "object"\n },\n "authority": {\n "enum": [\n "shipped-artifact",\n "controlled-replay",\n "historical-reference",\n "external-service",\n "analyst-inference"\n ],\n "type": "string"\n },\n "confidence": {\n "enum": [\n "observed",\n "derived",\n "inferred"\n ],\n "type": "string"\n },\n "environment": {\n "anyOf": [\n {\n "additionalProperties": false,\n "properties": {\n "architecture": {\n "minLength": 1,\n "type": "string"\n },\n "id": {\n "minLength": 1,\n "type": "string"\n },\n "isolation": {\n "enum": [\n "none",\n "process",\n "container",\n "virtual-machine"\n ],\n "type": "string"\n },\n "platform": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "id",\n "platform",\n "architecture",\n "isolation"\n ],\n "type": "object"\n },\n {\n "type": "null"\n }\n ]\n },\n "evidence_id": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "evidence_links": {\n "items": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "type": "array"\n },\n "limitations": {\n "items": {\n "type": "string"\n },\n "type": "array"\n },\n "locations": {\n "items": {\n "oneOf": [\n {\n "additionalProperties": false,\n "properties": {\n "address": {\n "minLength": 1,\n "type": "string"\n },\n "kind": {\n "const": "address",\n "type": "string"\n }\n },\n "required": [\n "kind",\n "address"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "end": {\n "minLength": 1,\n "type": "string"\n },\n "kind": {\n "const": "address-range",\n "type": "string"\n },\n "start": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "kind",\n "start",\n "end"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "kind": {\n "const": "artifact-path",\n "type": "string"\n },\n "path": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "kind",\n "path"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "kind": {\n "const": "file-offset",\n "type": "string"\n },\n "offset": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "kind",\n "offset"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "end": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "kind": {\n "const": "file-offset-range",\n "type": "string"\n },\n "start": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "kind",\n "start",\n "end"\n ],\n "type": "object"\n }\n ]\n },\n "type": "array"\n },\n "normalized_result": {\n "$ref": "#/$defs/__schema0"\n },\n "operation": {\n "minLength": 1,\n "type": "string"\n },\n "parameters": {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n },\n "predicate_type": {\n "minLength": 1,\n "type": "string"\n },\n "provider": {\n "additionalProperties": false,\n "properties": {\n "id": {\n "minLength": 1,\n "type": "string"\n },\n "name": {\n "minLength": 1,\n "type": "string"\n },\n "version": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "id",\n "name",\n "version"\n ],\n "type": "object"\n },\n "raw_result": {\n "anyOf": [\n {\n "$ref": "#/$defs/__schema0"\n },\n {\n "type": "null"\n }\n ]\n },\n "subject": {\n "anyOf": [\n {\n "additionalProperties": false,\n "properties": {\n "architecture": {\n "anyOf": [\n {\n "enum": [\n "x86",\n "x86_64",\n "arm",\n "arm64"\n ],\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "digest": {\n "additionalProperties": false,\n "properties": {\n "sha256": {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n }\n },\n "required": [\n "sha256"\n ],\n "type": "object"\n },\n "format": {\n "enum": [\n "hopper",\n "analysis-database",\n "mach-o",\n "elf",\n "pe",\n "dos-mz",\n "dos-com",\n "zip",\n "ipa",\n "apk",\n "msix",\n "appx",\n "asar",\n "dmg",\n "pkg",\n "plist",\n "javascript",\n "source-map",\n "directory",\n "file",\n "unknown",\n "mach-o-universal",\n "javascript-bundle",\n "entitlements"\n ],\n "type": "string"\n },\n "local_path": {\n "type": "string"\n },\n "name": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "name",\n "digest",\n "format",\n "architecture",\n "local_path"\n ],\n "type": "object"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "evidence_id",\n "subject",\n "provider",\n "predicate_type",\n "operation",\n "parameters",\n "raw_result",\n "normalized_result",\n "confidence",\n "authority",\n "environment",\n "limitations",\n "locations",\n "evidence_links"\n ],\n "type": "object"\n },\n "evidence_id": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "result": {\n "additionalProperties": false,\n "properties": {\n "chunks": {\n "items": {\n "additionalProperties": false,\n "properties": {\n "encrypted": {\n "anyOf": [\n {\n "type": "boolean"\n },\n {\n "type": "null"\n }\n ]\n },\n "handler": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "input_path": {\n "type": "string"\n },\n "provider_id": {\n "type": "string"\n },\n "range": {\n "additionalProperties": false,\n "properties": {\n "length": {\n "exclusiveMinimum": 0,\n "maximum": 9007199254740991,\n "type": "integer"\n },\n "offset": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "offset",\n "length"\n ],\n "type": "object"\n },\n "root_file_range": {\n "anyOf": [\n {\n "additionalProperties": false,\n "properties": {\n "length": {\n "exclusiveMinimum": 0,\n "maximum": 9007199254740991,\n "type": "integer"\n },\n "offset": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "offset",\n "length"\n ],\n "type": "object"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "input_path",\n "provider_id",\n "range",\n "handler",\n "encrypted",\n "root_file_range"\n ],\n "type": "object"\n },\n "type": "array"\n },\n "coverage": {\n "enum": [\n "complete",\n "partial"\n ],\n "type": "string"\n },\n "depth_limited_paths": {\n "items": {\n "type": "string"\n },\n "type": "array"\n },\n "derivations": {\n "items": {\n "additionalProperties": false,\n "properties": {\n "child_path": {\n "type": "string"\n },\n "handler": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "parent_file_range": {\n "anyOf": [\n {\n "additionalProperties": false,\n "properties": {\n "length": {\n "exclusiveMinimum": 0,\n "maximum": 9007199254740991,\n "type": "integer"\n },\n "offset": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "offset",\n "length"\n ],\n "type": "object"\n },\n {\n "type": "null"\n }\n ]\n },\n "parent_path": {\n "type": "string"\n },\n "provider_blob_id": {\n "type": "string"\n }\n },\n "required": [\n "parent_path",\n "child_path",\n "provider_blob_id",\n "handler",\n "parent_file_range"\n ],\n "type": "object"\n },\n "type": "array"\n },\n "diagnostics": {\n "items": {\n "$ref": "#/$defs/__schema0"\n },\n "type": "array"\n },\n "engine": {\n "additionalProperties": false,\n "properties": {\n "executable_path": {\n "type": "string"\n },\n "executable_sha256": {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n },\n "name": {\n "type": "string"\n },\n "source_revision": {\n "type": "null"\n },\n "version": {\n "type": "string"\n },\n "worker_count": {\n "const": 1,\n "type": "number"\n }\n },\n "required": [\n "name",\n "version",\n "executable_path",\n "executable_sha256",\n "source_revision",\n "worker_count"\n ],\n "type": "object"\n },\n "files": {\n "items": {\n "additionalProperties": false,\n "properties": {\n "analysis_depth": {\n "anyOf": [\n {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n {\n "type": "null"\n }\n ]\n },\n "mime_type": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "original_file_range": {\n "type": "null"\n },\n "path": {\n "type": "string"\n },\n "relative_path": {\n "type": "string"\n },\n "reported_sha256": {\n "anyOf": [\n {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "runtime_address": {\n "type": "null"\n },\n "sha256": {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n },\n "size": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "relative_path",\n "path",\n "size",\n "sha256",\n "reported_sha256",\n "mime_type",\n "analysis_depth",\n "runtime_address",\n "original_file_range"\n ],\n "type": "object"\n },\n "type": "array"\n },\n "output_directory": {\n "type": "string"\n },\n "published_bytes": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "selection": {\n "additionalProperties": false,\n "properties": {\n "length": {\n "exclusiveMinimum": 0,\n "maximum": 9007199254740991,\n "type": "integer"\n },\n "offset": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "sha256": {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n }\n },\n "required": [\n "offset",\n "length",\n "sha256"\n ],\n "type": "object"\n },\n "unpublished_entries": {\n "items": {\n "additionalProperties": false,\n "properties": {\n "kind": {\n "enum": [\n "symlink",\n "special"\n ],\n "type": "string"\n },\n "link_target": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "relative_path": {\n "type": "string"\n }\n },\n "required": [\n "relative_path",\n "kind",\n "link_target"\n ],\n "type": "object"\n },\n "type": "array"\n }\n },\n "required": [\n "engine",\n "selection",\n "output_directory",\n "coverage",\n "files",\n "unpublished_entries",\n "chunks",\n "derivations",\n "depth_limited_paths",\n "diagnostics",\n "published_bytes"\n ],\n "type": "object"\n }\n },\n "required": [\n "result",\n "evidence_id",\n "evidence"\n ],\n "type": "object"\n },\n "requiresSession": false,\n "title": "Extract Firmware"\n },\n {\n "analysisOperation": null,\n "annotations": {\n "destructiveHint": false,\n "idempotentHint": true,\n "openWorldHint": false,\n "readOnlyHint": false\n },\n "description": "Compare two authenticated inspect_managed_members Evidence records using unique-only tiers: exact CIL/signature, exact declared type, name, and raw signature (decoded or not), and decoded structural method shape. Names alone are never a matching basis; a member whose signature was not decoded, or whose same-named counterpart\'s was not, stays unknown rather than added or removed. Metadata tokens remain build-local coordinates bound to each artifact SHA-256 and MVID, and the tuple digest does not itself remap them.",\n "effects": {\n "accessesNetwork": false,\n "changesUiState": false,\n "idempotent": true,\n "launchesProcess": false,\n "mayDiscardData": false,\n "mutatesSession": true,\n "mutatesTarget": false,\n "writesFilesystem": false\n },\n "inputSchema": {\n "$defs": {\n "__schema0": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "number"\n },\n {\n "type": "boolean"\n },\n {\n "type": "null"\n },\n {\n "items": {\n "$ref": "#/$defs/__schema0"\n },\n "type": "array"\n },\n {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n }\n ]\n }\n },\n "$schema": "https://json-schema.org/draft/2020-12/schema",\n "additionalProperties": false,\n "examples": [\n {\n "left": {\n "authority": "shipped-artifact",\n "confidence": "observed",\n "environment": null,\n "evidence_id": "ev_b3525a33f9aecdcfeac8372301c13cb9153b189d93ef337eee0fef9425171ce3",\n "evidence_links": [],\n "limitations": [\n "Artifact identity is unavailable for this observation."\n ],\n "locations": [],\n "normalized_result": {\n "artifact": {\n "byte_length": 4096,\n "format": "pe",\n "path": "/examples/00000000.dll",\n "sha256": "0000000000000000000000000000000000000000000000000000000000000000"\n },\n "call_edges": [],\n "coverage": {\n "issues": [],\n "state": "complete"\n },\n "field_accesses": [],\n "fields": [],\n "identity_scope": {\n "requires_artifact_sha256": "0000000000000000000000000000000000000000000000000000000000000000",\n "requires_mvid": "00112233-4455-6677-8899-aabbccddeeff",\n "token_identity": "build-local"\n },\n "limitations": [],\n "member_refs": [],\n "metadata": {\n "status": "complete",\n "table_row_counts": {},\n "version": "v4.0.30319"\n },\n "methods": [],\n "module": {\n "enc_base_id": null,\n "enc_id": null,\n "generation": 0,\n "mvid": "00112233-4455-6677-8899-aabbccddeeff",\n "name": "Example.dll",\n "row_offset": 0,\n "token": "0x00000001"\n },\n "types": []\n },\n "operation": "inspect_managed_members",\n "parameters": {},\n "predicate_type": "rea.analysis",\n "provider": {\n "id": "rea-dotnet-static",\n "name": "REA managed static analysis provider",\n "version": "1"\n },\n "raw_result": null,\n "subject": null\n },\n "right": {\n "authority": "shipped-artifact",\n "confidence": "observed",\n "environment": null,\n "evidence_id": "ev_8f79f99bceb5bf3d5e5af7fd678ac07b67427756eca0784cd56ffa6b9c4dbda4",\n "evidence_links": [],\n "limitations": [\n "Artifact identity is unavailable for this observation."\n ],\n "locations": [],\n "normalized_result": {\n "artifact": {\n "byte_length": 4096,\n "format": "pe",\n "path": "/examples/11111111.dll",\n "sha256": "1111111111111111111111111111111111111111111111111111111111111111"\n },\n "call_edges": [],\n "coverage": {\n "issues": [],\n "state": "complete"\n },\n "field_accesses": [],\n "fields": [],\n "identity_scope": {\n "requires_artifact_sha256": "1111111111111111111111111111111111111111111111111111111111111111",\n "requires_mvid": "ffeeddcc-bbaa-4988-9766-554433221100",\n "token_identity": "build-local"\n },\n "limitations": [],\n "member_refs": [],\n "metadata": {\n "status": "complete",\n "table_row_counts": {},\n "version": "v4.0.30319"\n },\n "methods": [],\n "module": {\n "enc_base_id": null,\n "enc_id": null,\n "generation": 0,\n "mvid": "ffeeddcc-bbaa-4988-9766-554433221100",\n "name": "Example.dll",\n "row_offset": 0,\n "token": "0x00000001"\n },\n "types": []\n },\n "operation": "inspect_managed_members",\n "parameters": {},\n "predicate_type": "rea.analysis",\n "provider": {\n "id": "rea-dotnet-static",\n "name": "REA managed static analysis provider",\n "version": "1"\n },\n "raw_result": null,\n "subject": null\n }\n }\n ],\n "properties": {\n "left": {\n "additionalProperties": false,\n "description": "Left-hand input used for comparison or differential execution.",\n "properties": {\n "analysis_profile": {\n "description": "Value for analysis profile.",\n "properties": {\n "digest": {\n "description": "Value for digest.",\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n },\n "parameters": {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "description": "Value for parameters.",\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n },\n "provider": {\n "description": "Value for provider.",\n "properties": {\n "id": {\n "description": "Value for id.",\n "minLength": 1,\n "type": "string"\n },\n "name": {\n "description": "Exact name used by this operation.",\n "minLength": 1,\n "type": "string"\n },\n "version": {\n "description": "Value for version.",\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "id",\n "name",\n "version"\n ],\n "type": "object"\n }\n },\n "required": [\n "provider",\n "parameters",\n "digest"\n ],\n "type": "object"\n },\n "authority": {\n "description": "Value for authority.",\n "enum": [\n "shipped-artifact",\n "controlled-replay",\n "historical-reference",\n "external-service",\n "analyst-inference"\n ],\n "type": "string"\n },\n "confidence": {\n "description": "Value for confidence.",\n "enum": [\n "observed",\n "derived",\n "inferred"\n ],\n "type": "string"\n },\n "environment": {\n "anyOf": [\n {\n "properties": {\n "architecture": {\n "description": "Value for architecture.",\n "minLength": 1,\n "type": "string"\n },\n "id": {\n "description": "Value for id.",\n "minLength": 1,\n "type": "string"\n },\n "isolation": {\n "description": "Value for isolation.",\n "enum": [\n "none",\n "process",\n "container",\n "virtual-machine"\n ],\n "type": "string"\n },\n "platform": {\n "description": "Value for platform.",\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "id",\n "platform",\n "architecture",\n "isolation"\n ],\n "type": "object"\n },\n {\n "type": "null"\n }\n ],\n "description": "Value for environment."\n },\n "evidence_id": {\n "description": "Stable identifier of the recorded Evidence observation.",\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "evidence_links": {\n "description": "Value for evidence links.",\n "items": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "type": "array"\n },\n "limitations": {\n "description": "Value for limitations.",\n "items": {\n "type": "string"\n },\n "type": "array"\n },\n "locations": {\n "description": "Value for locations.",\n "items": {\n "oneOf": [\n {\n "properties": {\n "address": {\n "description": "Value for address.",\n "minLength": 1,\n "type": "string"\n },\n "kind": {\n "const": "address",\n "description": "Value for kind.",\n "type": "string"\n }\n },\n "required": [\n "kind",\n "address"\n ],\n "type": "object"\n },\n {\n "properties": {\n "end": {\n "description": "Value for end.",\n "minLength": 1,\n "type": "string"\n },\n "kind": {\n "const": "address-range",\n "description": "Value for kind.",\n "type": "string"\n },\n "start": {\n "description": "Value for start.",\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "kind",\n "start",\n "end"\n ],\n "type": "object"\n },\n {\n "properties": {\n "kind": {\n "const": "artifact-path",\n "description": "Value for kind.",\n "type": "string"\n },\n "path": {\n "description": "Local filesystem path used by this operation.",\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "kind",\n "path"\n ],\n "type": "object"\n },\n {\n "properties": {\n "kind": {\n "const": "file-offset",\n "description": "Value for kind.",\n "type": "string"\n },\n "offset": {\n "description": "Value for offset.",\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "kind",\n "offset"\n ],\n "type": "object"\n },\n {\n "properties": {\n "end": {\n "description": "Value for end.",\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "kind": {\n "const": "file-offset-range",\n "description": "Value for kind.",\n "type": "string"\n },\n "start": {\n "description": "Value for start.",\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "kind",\n "start",\n "end"\n ],\n "type": "object"\n }\n ]\n },\n "type": "array"\n },\n "normalized_result": {\n "$ref": "#/$defs/__schema0",\n "description": "Value for normalized result."\n },\n "operation": {\n "description": "Value for operation.",\n "minLength": 1,\n "type": "string"\n },\n "parameters": {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "description": "Value for parameters.",\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n },\n "predicate_type": {\n "description": "Value for predicate type.",\n "minLength": 1,\n "type": "string"\n },\n "provider": {\n "description": "Value for provider.",\n "properties": {\n "id": {\n "description": "Value for id.",\n "minLength": 1,\n "type": "string"\n },\n "name": {\n "description": "Exact name used by this operation.",\n "minLength": 1,\n "type": "string"\n },\n "version": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ],\n "description": "Value for version."\n }\n },\n "required": [\n "id",\n "name",\n "version"\n ],\n "type": "object"\n },\n "raw_result": {\n "anyOf": [\n {\n "$ref": "#/$defs/__schema0"\n },\n {\n "type": "null"\n }\n ],\n "description": "Value for raw result."\n },\n "subject": {\n "anyOf": [\n {\n "properties": {\n "architecture": {\n "anyOf": [\n {\n "enum": [\n "x86",\n "x86_64",\n "arm",\n "arm64"\n ],\n "type": "string"\n },\n {\n "type": "null"\n }\n ],\n "description": "Value for architecture."\n },\n "digest": {\n "description": "Value for digest.",\n "properties": {\n "sha256": {\n "description": "Value for sha256.",\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n }\n },\n "required": [\n "sha256"\n ],\n "type": "object"\n },\n "format": {\n "description": "Declared input artifact format.",\n "enum": [\n "hopper",\n "analysis-database",\n "mach-o",\n "elf",\n "pe",\n "dos-mz",\n "dos-com",\n "zip",\n "ipa",\n "apk",\n "msix",\n "appx",\n "asar",\n "dmg",\n "pkg",\n "plist",\n "javascript",\n "source-map",\n "directory",\n "file",\n "unknown",\n "mach-o-universal",\n "javascript-bundle",\n "entitlements"\n ],\n "type": "string"\n },\n "local_path": {\n "description": "Local filesystem path for local.",\n "type": "string"\n },\n "name": {\n "description": "Exact name used by this operation.",\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "name",\n "digest",\n "format",\n "architecture",\n "local_path"\n ],\n "type": "object"\n },\n {\n "type": "null"\n }\n ],\n "description": "Value for subject."\n }\n },\n "required": [\n "evidence_id",\n "subject",\n "provider",\n "predicate_type",\n "operation",\n "parameters",\n "raw_result",\n "normalized_result",\n "confidence",\n "authority",\n "environment",\n "limitations",\n "locations",\n "evidence_links"\n ],\n "type": "object"\n },\n "right": {\n "additionalProperties": false,\n "description": "Right-hand input used for comparison or differential execution.",\n "properties": {\n "analysis_profile": {\n "description": "Value for analysis profile.",\n "properties": {\n "digest": {\n "description": "Value for digest.",\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n },\n "parameters": {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "description": "Value for parameters.",\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n },\n "provider": {\n "description": "Value for provider.",\n "properties": {\n "id": {\n "description": "Value for id.",\n "minLength": 1,\n "type": "string"\n },\n "name": {\n "description": "Exact name used by this operation.",\n "minLength": 1,\n "type": "string"\n },\n "version": {\n "description": "Value for version.",\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "id",\n "name",\n "version"\n ],\n "type": "object"\n }\n },\n "required": [\n "provider",\n "parameters",\n "digest"\n ],\n "type": "object"\n },\n "authority": {\n "description": "Value for authority.",\n "enum": [\n "shipped-artifact",\n "controlled-replay",\n "historical-reference",\n "external-service",\n "analyst-inference"\n ],\n "type": "string"\n },\n "confidence": {\n "description": "Value for confidence.",\n "enum": [\n "observed",\n "derived",\n "inferred"\n ],\n "type": "string"\n },\n "environment": {\n "anyOf": [\n {\n "properties": {\n "architecture": {\n "description": "Value for architecture.",\n "minLength": 1,\n "type": "string"\n },\n "id": {\n "description": "Value for id.",\n "minLength": 1,\n "type": "string"\n },\n "isolation": {\n "description": "Value for isolation.",\n "enum": [\n "none",\n "process",\n "container",\n "virtual-machine"\n ],\n "type": "string"\n },\n "platform": {\n "description": "Value for platform.",\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "id",\n "platform",\n "architecture",\n "isolation"\n ],\n "type": "object"\n },\n {\n "type": "null"\n }\n ],\n "description": "Value for environment."\n },\n "evidence_id": {\n "description": "Stable identifier of the recorded Evidence observation.",\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "evidence_links": {\n "description": "Value for evidence links.",\n "items": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "type": "array"\n },\n "limitations": {\n "description": "Value for limitations.",\n "items": {\n "type": "string"\n },\n "type": "array"\n },\n "locations": {\n "description": "Value for locations.",\n "items": {\n "oneOf": [\n {\n "properties": {\n "address": {\n "description": "Value for address.",\n "minLength": 1,\n "type": "string"\n },\n "kind": {\n "const": "address",\n "description": "Value for kind.",\n "type": "string"\n }\n },\n "required": [\n "kind",\n "address"\n ],\n "type": "object"\n },\n {\n "properties": {\n "end": {\n "description": "Value for end.",\n "minLength": 1,\n "type": "string"\n },\n "kind": {\n "const": "address-range",\n "description": "Value for kind.",\n "type": "string"\n },\n "start": {\n "description": "Value for start.",\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "kind",\n "start",\n "end"\n ],\n "type": "object"\n },\n {\n "properties": {\n "kind": {\n "const": "artifact-path",\n "description": "Value for kind.",\n "type": "string"\n },\n "path": {\n "description": "Local filesystem path used by this operation.",\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "kind",\n "path"\n ],\n "type": "object"\n },\n {\n "properties": {\n "kind": {\n "const": "file-offset",\n "description": "Value for kind.",\n "type": "string"\n },\n "offset": {\n "description": "Value for offset.",\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "kind",\n "offset"\n ],\n "type": "object"\n },\n {\n "properties": {\n "end": {\n "description": "Value for end.",\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "kind": {\n "const": "file-offset-range",\n "description": "Value for kind.",\n "type": "string"\n },\n "start": {\n "description": "Value for start.",\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "kind",\n "start",\n "end"\n ],\n "type": "object"\n }\n ]\n },\n "type": "array"\n },\n "normalized_result": {\n "$ref": "#/$defs/__schema0",\n "description": "Value for normalized result."\n },\n "operation": {\n "description": "Value for operation.",\n "minLength": 1,\n "type": "string"\n },\n "parameters": {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "description": "Value for parameters.",\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n },\n "predicate_type": {\n "description": "Value for predicate type.",\n "minLength": 1,\n "type": "string"\n },\n "provider": {\n "description": "Value for provider.",\n "properties": {\n "id": {\n "description": "Value for id.",\n "minLength": 1,\n "type": "string"\n },\n "name": {\n "description": "Exact name used by this operation.",\n "minLength": 1,\n "type": "string"\n },\n "version": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ],\n "description": "Value for version."\n }\n },\n "required": [\n "id",\n "name",\n "version"\n ],\n "type": "object"\n },\n "raw_result": {\n "anyOf": [\n {\n "$ref": "#/$defs/__schema0"\n },\n {\n "type": "null"\n }\n ],\n "description": "Value for raw result."\n },\n "subject": {\n "anyOf": [\n {\n "properties": {\n "architecture": {\n "anyOf": [\n {\n "enum": [\n "x86",\n "x86_64",\n "arm",\n "arm64"\n ],\n "type": "string"\n },\n {\n "type": "null"\n }\n ],\n "description": "Value for architecture."\n },\n "digest": {\n "description": "Value for digest.",\n "properties": {\n "sha256": {\n "description": "Value for sha256.",\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n }\n },\n "required": [\n "sha256"\n ],\n "type": "object"\n },\n "format": {\n "description": "Declared input artifact format.",\n "enum": [\n "hopper",\n "analysis-database",\n "mach-o",\n "elf",\n "pe",\n "dos-mz",\n "dos-com",\n "zip",\n "ipa",\n "apk",\n "msix",\n "appx",\n "asar",\n "dmg",\n "pkg",\n "plist",\n "javascript",\n "source-map",\n "directory",\n "file",\n "unknown",\n "mach-o-universal",\n "javascript-bundle",\n "entitlements"\n ],\n "type": "string"\n },\n "local_path": {\n "description": "Local filesystem path for local.",\n "type": "string"\n },\n "name": {\n "description": "Exact name used by this operation.",\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "name",\n "digest",\n "format",\n "architecture",\n "local_path"\n ],\n "type": "object"\n },\n {\n "type": "null"\n }\n ],\n "description": "Value for subject."\n }\n },\n "required": [\n "evidence_id",\n "subject",\n "provider",\n "predicate_type",\n "operation",\n "parameters",\n "raw_result",\n "normalized_result",\n "confidence",\n "authority",\n "environment",\n "limitations",\n "locations",\n "evidence_links"\n ],\n "type": "object"\n }\n },\n "required": [\n "left",\n "right"\n ],\n "type": "object"\n },\n "kind": "application",\n "name": "compare_managed_members",\n "outputSchema": {\n "$defs": {\n "__schema0": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "number"\n },\n {\n "type": "boolean"\n },\n {\n "type": "null"\n },\n {\n "items": {\n "$ref": "#/$defs/__schema0"\n },\n "type": "array"\n },\n {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n }\n ]\n }\n },\n "$schema": "https://json-schema.org/draft/2020-12/schema",\n "additionalProperties": false,\n "properties": {\n "evidence": {\n "additionalProperties": false,\n "properties": {\n "analysis_profile": {\n "additionalProperties": false,\n "properties": {\n "digest": {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n },\n "parameters": {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n },\n "provider": {\n "additionalProperties": false,\n "properties": {\n "id": {\n "minLength": 1,\n "type": "string"\n },\n "name": {\n "minLength": 1,\n "type": "string"\n },\n "version": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "id",\n "name",\n "version"\n ],\n "type": "object"\n }\n },\n "required": [\n "provider",\n "parameters",\n "digest"\n ],\n "type": "object"\n },\n "authority": {\n "enum": [\n "shipped-artifact",\n "controlled-replay",\n "historical-reference",\n "external-service",\n "analyst-inference"\n ],\n "type": "string"\n },\n "confidence": {\n "enum": [\n "observed",\n "derived",\n "inferred"\n ],\n "type": "string"\n },\n "environment": {\n "anyOf": [\n {\n "additionalProperties": false,\n "properties": {\n "architecture": {\n "minLength": 1,\n "type": "string"\n },\n "id": {\n "minLength": 1,\n "type": "string"\n },\n "isolation": {\n "enum": [\n "none",\n "process",\n "container",\n "virtual-machine"\n ],\n "type": "string"\n },\n "platform": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "id",\n "platform",\n "architecture",\n "isolation"\n ],\n "type": "object"\n },\n {\n "type": "null"\n }\n ]\n },\n "evidence_id": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "evidence_links": {\n "items": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "type": "array"\n },\n "limitations": {\n "items": {\n "type": "string"\n },\n "type": "array"\n },\n "locations": {\n "items": {\n "oneOf": [\n {\n "additionalProperties": false,\n "properties": {\n "address": {\n "minLength": 1,\n "type": "string"\n },\n "kind": {\n "const": "address",\n "type": "string"\n }\n },\n "required": [\n "kind",\n "address"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "end": {\n "minLength": 1,\n "type": "string"\n },\n "kind": {\n "const": "address-range",\n "type": "string"\n },\n "start": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "kind",\n "start",\n "end"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "kind": {\n "const": "artifact-path",\n "type": "string"\n },\n "path": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "kind",\n "path"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "kind": {\n "const": "file-offset",\n "type": "string"\n },\n "offset": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "kind",\n "offset"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "end": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "kind": {\n "const": "file-offset-range",\n "type": "string"\n },\n "start": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "kind",\n "start",\n "end"\n ],\n "type": "object"\n }\n ]\n },\n "type": "array"\n },\n "normalized_result": {\n "$ref": "#/$defs/__schema0"\n },\n "operation": {\n "minLength": 1,\n "type": "string"\n },\n "parameters": {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n },\n "predicate_type": {\n "minLength": 1,\n "type": "string"\n },\n "provider": {\n "additionalProperties": false,\n "properties": {\n "id": {\n "minLength": 1,\n "type": "string"\n },\n "name": {\n "minLength": 1,\n "type": "string"\n },\n "version": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "id",\n "name",\n "version"\n ],\n "type": "object"\n },\n "raw_result": {\n "anyOf": [\n {\n "$ref": "#/$defs/__schema0"\n },\n {\n "type": "null"\n }\n ]\n },\n "subject": {\n "anyOf": [\n {\n "additionalProperties": false,\n "properties": {\n "architecture": {\n "anyOf": [\n {\n "enum": [\n "x86",\n "x86_64",\n "arm",\n "arm64"\n ],\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "digest": {\n "additionalProperties": false,\n "properties": {\n "sha256": {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n }\n },\n "required": [\n "sha256"\n ],\n "type": "object"\n },\n "format": {\n "enum": [\n "hopper",\n "analysis-database",\n "mach-o",\n "elf",\n "pe",\n "dos-mz",\n "dos-com",\n "zip",\n "ipa",\n "apk",\n "msix",\n "appx",\n "asar",\n "dmg",\n "pkg",\n "plist",\n "javascript",\n "source-map",\n "directory",\n "file",\n "unknown",\n "mach-o-universal",\n "javascript-bundle",\n "entitlements"\n ],\n "type": "string"\n },\n "local_path": {\n "type": "string"\n },\n "name": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "name",\n "digest",\n "format",\n "architecture",\n "local_path"\n ],\n "type": "object"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "evidence_id",\n "subject",\n "provider",\n "predicate_type",\n "operation",\n "parameters",\n "raw_result",\n "normalized_result",\n "confidence",\n "authority",\n "environment",\n "limitations",\n "locations",\n "evidence_links"\n ],\n "type": "object"\n },\n "evidence_id": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "result": {\n "additionalProperties": false,\n "properties": {\n "algorithm": {\n "additionalProperties": false,\n "properties": {\n "name": {\n "const": "rea-managed-member-comparison",\n "type": "string"\n },\n "name_matching": {\n "const": "exact-signature-fallback",\n "type": "string"\n },\n "token_identity": {\n "const": "build-local",\n "type": "string"\n }\n },\n "required": [\n "name",\n "token_identity",\n "name_matching"\n ],\n "type": "object"\n },\n "comparison_id": {\n "pattern": "^mmc_[a-f0-9]{64}$",\n "type": "string"\n },\n "coverage": {\n "additionalProperties": false,\n "properties": {\n "left_status": {\n "enum": [\n "complete",\n "partial",\n "unavailable"\n ],\n "type": "string"\n },\n "right_status": {\n "enum": [\n "complete",\n "partial",\n "unavailable"\n ],\n "type": "string"\n },\n "status": {\n "enum": [\n "complete-within-inputs",\n "partial"\n ],\n "type": "string"\n }\n },\n "required": [\n "status",\n "left_status",\n "right_status"\n ],\n "type": "object"\n },\n "evidence_links": {\n "items": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "maxItems": 2,\n "minItems": 2,\n "type": "array"\n },\n "fields": {\n "items": {\n "anyOf": [\n {\n "additionalProperties": false,\n "properties": {\n "evidence_links": {\n "items": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "maxItems": 2,\n "minItems": 2,\n "type": "array"\n },\n "item_id": {\n "pattern": "^mmc_field_[a-f0-9]{64}$",\n "type": "string"\n },\n "left": {\n "additionalProperties": false,\n "properties": {\n "declaring_type": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "name": {\n "type": "string"\n },\n "signature_sha256": {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n },\n "token": {\n "pattern": "^0x[0-9a-f]{8}$",\n "type": "string"\n }\n },\n "required": [\n "token",\n "declaring_type",\n "name",\n "signature_sha256"\n ],\n "type": "object"\n },\n "limitations": {\n "items": {\n "minLength": 1,\n "type": "string"\n },\n "type": "array"\n },\n "match": {\n "additionalProperties": false,\n "properties": {\n "basis": {\n "enum": [\n "exact-il-signature",\n "exact-signature",\n "structural-method-shape",\n "field-signature"\n ],\n "type": "string"\n },\n "candidate_left_tokens": {\n "items": {\n "not": {}\n },\n "maxItems": 0,\n "minItems": 0,\n "type": "array"\n },\n "candidate_right_tokens": {\n "items": {\n "not": {}\n },\n "maxItems": 0,\n "minItems": 0,\n "type": "array"\n },\n "confidence": {\n "enum": [\n "exact",\n "high"\n ],\n "type": "string"\n },\n "status": {\n "const": "matched",\n "type": "string"\n }\n },\n "required": [\n "status",\n "basis",\n "confidence",\n "candidate_left_tokens",\n "candidate_right_tokens"\n ],\n "type": "object"\n },\n "right": {\n "additionalProperties": false,\n "properties": {\n "declaring_type": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "name": {\n "type": "string"\n },\n "signature_sha256": {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n },\n "token": {\n "pattern": "^0x[0-9a-f]{8}$",\n "type": "string"\n }\n },\n "required": [\n "token",\n "declaring_type",\n "name",\n "signature_sha256"\n ],\n "type": "object"\n },\n "status": {\n "enum": [\n "unchanged",\n "changed",\n "unknown"\n ],\n "type": "string"\n }\n },\n "required": [\n "evidence_links",\n "limitations",\n "item_id",\n "status",\n "left",\n "right",\n "match"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "evidence_links": {\n "items": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "maxItems": 2,\n "minItems": 2,\n "type": "array"\n },\n "item_id": {\n "pattern": "^mmc_field_[a-f0-9]{64}$",\n "type": "string"\n },\n "left": {\n "additionalProperties": false,\n "properties": {\n "declaring_type": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "name": {\n "type": "string"\n },\n "signature_sha256": {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n },\n "token": {\n "pattern": "^0x[0-9a-f]{8}$",\n "type": "string"\n }\n },\n "required": [\n "token",\n "declaring_type",\n "name",\n "signature_sha256"\n ],\n "type": "object"\n },\n "limitations": {\n "items": {\n "minLength": 1,\n "type": "string"\n },\n "type": "array"\n },\n "match": {\n "additionalProperties": false,\n "properties": {\n "basis": {\n "const": "none",\n "type": "string"\n },\n "candidate_left_tokens": {\n "items": {\n "not": {}\n },\n "maxItems": 0,\n "minItems": 0,\n "type": "array"\n },\n "candidate_right_tokens": {\n "items": {\n "not": {}\n },\n "maxItems": 0,\n "minItems": 0,\n "type": "array"\n },\n "confidence": {\n "const": "unknown",\n "type": "string"\n },\n "status": {\n "const": "unmatched",\n "type": "string"\n }\n },\n "required": [\n "status",\n "basis",\n "confidence",\n "candidate_left_tokens",\n "candidate_right_tokens"\n ],\n "type": "object"\n },\n "right": {\n "type": "null"\n },\n "status": {\n "enum": [\n "removed",\n "unknown"\n ],\n "type": "string"\n }\n },\n "required": [\n "evidence_links",\n "limitations",\n "item_id",\n "status",\n "left",\n "right",\n "match"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "evidence_links": {\n "items": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "maxItems": 2,\n "minItems": 2,\n "type": "array"\n },\n "item_id": {\n "pattern": "^mmc_field_[a-f0-9]{64}$",\n "type": "string"\n },\n "left": {\n "type": "null"\n },\n "limitations": {\n "items": {\n "minLength": 1,\n "type": "string"\n },\n "type": "array"\n },\n "match": {\n "additionalProperties": false,\n "properties": {\n "basis": {\n "const": "none",\n "type": "string"\n },\n "candidate_left_tokens": {\n "items": {\n "not": {}\n },\n "maxItems": 0,\n "minItems": 0,\n "type": "array"\n },\n "candidate_right_tokens": {\n "items": {\n "not": {}\n },\n "maxItems": 0,\n "minItems": 0,\n "type": "array"\n },\n "confidence": {\n "const": "unknown",\n "type": "string"\n },\n "status": {\n "const": "unmatched",\n "type": "string"\n }\n },\n "required": [\n "status",\n "basis",\n "confidence",\n "candidate_left_tokens",\n "candidate_right_tokens"\n ],\n "type": "object"\n },\n "right": {\n "additionalProperties": false,\n "properties": {\n "declaring_type": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "name": {\n "type": "string"\n },\n "signature_sha256": {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n },\n "token": {\n "pattern": "^0x[0-9a-f]{8}$",\n "type": "string"\n }\n },\n "required": [\n "token",\n "declaring_type",\n "name",\n "signature_sha256"\n ],\n "type": "object"\n },\n "status": {\n "enum": [\n "added",\n "unknown"\n ],\n "type": "string"\n }\n },\n "required": [\n "evidence_links",\n "limitations",\n "item_id",\n "status",\n "left",\n "right",\n "match"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "evidence_links": {\n "items": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "maxItems": 2,\n "minItems": 2,\n "type": "array"\n },\n "item_id": {\n "pattern": "^mmc_field_[a-f0-9]{64}$",\n "type": "string"\n },\n "left": {\n "type": "null"\n },\n "limitations": {\n "items": {\n "minLength": 1,\n "type": "string"\n },\n "type": "array"\n },\n "match": {\n "additionalProperties": false,\n "properties": {\n "basis": {\n "enum": [\n "exact-il-signature",\n "exact-signature",\n "structural-method-shape",\n "field-signature"\n ],\n "type": "string"\n },\n "candidate_left_tokens": {\n "items": {\n "pattern": "^0x[0-9a-f]{8}$",\n "type": "string"\n },\n "minItems": 1,\n "type": "array"\n },\n "candidate_right_tokens": {\n "items": {\n "pattern": "^0x[0-9a-f]{8}$",\n "type": "string"\n },\n "minItems": 1,\n "type": "array"\n },\n "confidence": {\n "const": "unknown",\n "type": "string"\n },\n "status": {\n "const": "ambiguous",\n "type": "string"\n }\n },\n "required": [\n "status",\n "basis",\n "confidence",\n "candidate_left_tokens",\n "candidate_right_tokens"\n ],\n "type": "object"\n },\n "right": {\n "type": "null"\n },\n "status": {\n "const": "unknown",\n "type": "string"\n }\n },\n "required": [\n "evidence_links",\n "limitations",\n "item_id",\n "status",\n "left",\n "right",\n "match"\n ],\n "type": "object"\n }\n ]\n },\n "type": "array"\n },\n "left": {\n "additionalProperties": false,\n "properties": {\n "artifact_sha256": {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n },\n "evidence_id": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "fields_total": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "metadata_status": {\n "enum": [\n "absent",\n "complete",\n "partial",\n "malformed"\n ],\n "type": "string"\n },\n "methods_total": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "module_name": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "mvid": {\n "anyOf": [\n {\n "pattern": "^[0-9a-fA-F]{8}(?:-[0-9a-fA-F]{4}){3}-[0-9a-fA-F]{12}$",\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "evidence_id",\n "artifact_sha256",\n "mvid",\n "module_name",\n "metadata_status",\n "methods_total",\n "fields_total"\n ],\n "type": "object"\n },\n "limitations": {\n "items": {\n "minLength": 1,\n "type": "string"\n },\n "type": "array"\n },\n "matching": {\n "additionalProperties": false,\n "properties": {\n "ambiguous": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "exact_il_signature": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "exact_signature": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "field_signature": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "structural_method_shape": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "unmatched": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "exact_il_signature",\n "exact_signature",\n "structural_method_shape",\n "field_signature",\n "ambiguous",\n "unmatched"\n ],\n "type": "object"\n },\n "methods": {\n "items": {\n "anyOf": [\n {\n "additionalProperties": false,\n "properties": {\n "dimensions": {\n "items": {\n "enum": [\n "metadata",\n "signature",\n "cil",\n "opcode-shape",\n "call-shape",\n "field-shape",\n "exception-shape",\n "availability",\n "body-coverage"\n ],\n "type": "string"\n },\n "type": "array"\n },\n "evidence_links": {\n "items": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "maxItems": 2,\n "minItems": 2,\n "type": "array"\n },\n "item_id": {\n "pattern": "^mmc_method_[a-f0-9]{64}$",\n "type": "string"\n },\n "left": {\n "additionalProperties": false,\n "properties": {\n "declaring_type": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "name": {\n "type": "string"\n },\n "normalized_il_sha256": {\n "anyOf": [\n {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "signature_sha256": {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n },\n "token": {\n "pattern": "^0x[0-9a-f]{8}$",\n "type": "string"\n }\n },\n "required": [\n "token",\n "declaring_type",\n "name",\n "signature_sha256",\n "normalized_il_sha256"\n ],\n "type": "object"\n },\n "limitations": {\n "items": {\n "minLength": 1,\n "type": "string"\n },\n "type": "array"\n },\n "match": {\n "additionalProperties": false,\n "properties": {\n "basis": {\n "enum": [\n "exact-il-signature",\n "exact-signature",\n "structural-method-shape",\n "field-signature"\n ],\n "type": "string"\n },\n "candidate_left_tokens": {\n "items": {\n "not": {}\n },\n "maxItems": 0,\n "minItems": 0,\n "type": "array"\n },\n "candidate_right_tokens": {\n "items": {\n "not": {}\n },\n "maxItems": 0,\n "minItems": 0,\n "type": "array"\n },\n "confidence": {\n "enum": [\n "exact",\n "high"\n ],\n "type": "string"\n },\n "status": {\n "const": "matched",\n "type": "string"\n }\n },\n "required": [\n "status",\n "basis",\n "confidence",\n "candidate_left_tokens",\n "candidate_right_tokens"\n ],\n "type": "object"\n },\n "right": {\n "additionalProperties": false,\n "properties": {\n "declaring_type": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "name": {\n "type": "string"\n },\n "normalized_il_sha256": {\n "anyOf": [\n {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "signature_sha256": {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n },\n "token": {\n "pattern": "^0x[0-9a-f]{8}$",\n "type": "string"\n }\n },\n "required": [\n "token",\n "declaring_type",\n "name",\n "signature_sha256",\n "normalized_il_sha256"\n ],\n "type": "object"\n },\n "status": {\n "enum": [\n "unchanged",\n "changed",\n "unknown"\n ],\n "type": "string"\n }\n },\n "required": [\n "evidence_links",\n "limitations",\n "item_id",\n "dimensions",\n "status",\n "left",\n "right",\n "match"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "dimensions": {\n "items": {\n "enum": [\n "metadata",\n "signature",\n "cil",\n "opcode-shape",\n "call-shape",\n "field-shape",\n "exception-shape",\n "availability",\n "body-coverage"\n ],\n "type": "string"\n },\n "type": "array"\n },\n "evidence_links": {\n "items": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "maxItems": 2,\n "minItems": 2,\n "type": "array"\n },\n "item_id": {\n "pattern": "^mmc_method_[a-f0-9]{64}$",\n "type": "string"\n },\n "left": {\n "additionalProperties": false,\n "properties": {\n "declaring_type": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "name": {\n "type": "string"\n },\n "normalized_il_sha256": {\n "anyOf": [\n {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "signature_sha256": {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n },\n "token": {\n "pattern": "^0x[0-9a-f]{8}$",\n "type": "string"\n }\n },\n "required": [\n "token",\n "declaring_type",\n "name",\n "signature_sha256",\n "normalized_il_sha256"\n ],\n "type": "object"\n },\n "limitations": {\n "items": {\n "minLength": 1,\n "type": "string"\n },\n "type": "array"\n },\n "match": {\n "additionalProperties": false,\n "properties": {\n "basis": {\n "const": "none",\n "type": "string"\n },\n "candidate_left_tokens": {\n "items": {\n "not": {}\n },\n "maxItems": 0,\n "minItems": 0,\n "type": "array"\n },\n "candidate_right_tokens": {\n "items": {\n "not": {}\n },\n "maxItems": 0,\n "minItems": 0,\n "type": "array"\n },\n "confidence": {\n "const": "unknown",\n "type": "string"\n },\n "status": {\n "const": "unmatched",\n "type": "string"\n }\n },\n "required": [\n "status",\n "basis",\n "confidence",\n "candidate_left_tokens",\n "candidate_right_tokens"\n ],\n "type": "object"\n },\n "right": {\n "type": "null"\n },\n "status": {\n "enum": [\n "removed",\n "unknown"\n ],\n "type": "string"\n }\n },\n "required": [\n "evidence_links",\n "limitations",\n "item_id",\n "dimensions",\n "status",\n "left",\n "right",\n "match"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "dimensions": {\n "items": {\n "enum": [\n "metadata",\n "signature",\n "cil",\n "opcode-shape",\n "call-shape",\n "field-shape",\n "exception-shape",\n "availability",\n "body-coverage"\n ],\n "type": "string"\n },\n "type": "array"\n },\n "evidence_links": {\n "items": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "maxItems": 2,\n "minItems": 2,\n "type": "array"\n },\n "item_id": {\n "pattern": "^mmc_method_[a-f0-9]{64}$",\n "type": "string"\n },\n "left": {\n "type": "null"\n },\n "limitations": {\n "items": {\n "minLength": 1,\n "type": "string"\n },\n "type": "array"\n },\n "match": {\n "additionalProperties": false,\n "properties": {\n "basis": {\n "const": "none",\n "type": "string"\n },\n "candidate_left_tokens": {\n "items": {\n "not": {}\n },\n "maxItems": 0,\n "minItems": 0,\n "type": "array"\n },\n "candidate_right_tokens": {\n "items": {\n "not": {}\n },\n "maxItems": 0,\n "minItems": 0,\n "type": "array"\n },\n "confidence": {\n "const": "unknown",\n "type": "string"\n },\n "status": {\n "const": "unmatched",\n "type": "string"\n }\n },\n "required": [\n "status",\n "basis",\n "confidence",\n "candidate_left_tokens",\n "candidate_right_tokens"\n ],\n "type": "object"\n },\n "right": {\n "additionalProperties": false,\n "properties": {\n "declaring_type": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "name": {\n "type": "string"\n },\n "normalized_il_sha256": {\n "anyOf": [\n {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "signature_sha256": {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n },\n "token": {\n "pattern": "^0x[0-9a-f]{8}$",\n "type": "string"\n }\n },\n "required": [\n "token",\n "declaring_type",\n "name",\n "signature_sha256",\n "normalized_il_sha256"\n ],\n "type": "object"\n },\n "status": {\n "enum": [\n "added",\n "unknown"\n ],\n "type": "string"\n }\n },\n "required": [\n "evidence_links",\n "limitations",\n "item_id",\n "dimensions",\n "status",\n "left",\n "right",\n "match"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "dimensions": {\n "items": {\n "enum": [\n "metadata",\n "signature",\n "cil",\n "opcode-shape",\n "call-shape",\n "field-shape",\n "exception-shape",\n "availability",\n "body-coverage"\n ],\n "type": "string"\n },\n "type": "array"\n },\n "evidence_links": {\n "items": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "maxItems": 2,\n "minItems": 2,\n "type": "array"\n },\n "item_id": {\n "pattern": "^mmc_method_[a-f0-9]{64}$",\n "type": "string"\n },\n "left": {\n "type": "null"\n },\n "limitations": {\n "items": {\n "minLength": 1,\n "type": "string"\n },\n "type": "array"\n },\n "match": {\n "additionalProperties": false,\n "properties": {\n "basis": {\n "enum": [\n "exact-il-signature",\n "exact-signature",\n "structural-method-shape",\n "field-signature"\n ],\n "type": "string"\n },\n "candidate_left_tokens": {\n "items": {\n "pattern": "^0x[0-9a-f]{8}$",\n "type": "string"\n },\n "minItems": 1,\n "type": "array"\n },\n "candidate_right_tokens": {\n "items": {\n "pattern": "^0x[0-9a-f]{8}$",\n "type": "string"\n },\n "minItems": 1,\n "type": "array"\n },\n "confidence": {\n "const": "unknown",\n "type": "string"\n },\n "status": {\n "const": "ambiguous",\n "type": "string"\n }\n },\n "required": [\n "status",\n "basis",\n "confidence",\n "candidate_left_tokens",\n "candidate_right_tokens"\n ],\n "type": "object"\n },\n "right": {\n "type": "null"\n },\n "status": {\n "const": "unknown",\n "type": "string"\n }\n },\n "required": [\n "evidence_links",\n "limitations",\n "item_id",\n "dimensions",\n "status",\n "left",\n "right",\n "match"\n ],\n "type": "object"\n }\n ]\n },\n "type": "array"\n },\n "right": {\n "additionalProperties": false,\n "properties": {\n "artifact_sha256": {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n },\n "evidence_id": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "fields_total": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "metadata_status": {\n "enum": [\n "absent",\n "complete",\n "partial",\n "malformed"\n ],\n "type": "string"\n },\n "methods_total": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "module_name": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "mvid": {\n "anyOf": [\n {\n "pattern": "^[0-9a-fA-F]{8}(?:-[0-9a-fA-F]{4}){3}-[0-9a-fA-F]{12}$",\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "evidence_id",\n "artifact_sha256",\n "mvid",\n "module_name",\n "metadata_status",\n "methods_total",\n "fields_total"\n ],\n "type": "object"\n },\n "summary": {\n "additionalProperties": false,\n "properties": {\n "added": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "changed": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "removed": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "unchanged": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "unknown": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "unchanged",\n "changed",\n "added",\n "removed",\n "unknown"\n ],\n "type": "object"\n }\n },\n "required": [\n "comparison_id",\n "algorithm",\n "left",\n "right",\n "summary",\n "matching",\n "methods",\n "fields",\n "coverage",\n "evidence_links",\n "limitations"\n ],\n "type": "object"\n }\n },\n "required": [\n "result",\n "evidence_id",\n "evidence"\n ],\n "type": "object"\n },\n "requiresSession": true,\n "title": "Compare Managed Members"\n },\n {\n "analysisOperation": null,\n "annotations": {\n "destructiveHint": false,\n "idempotentHint": true,\n "openWorldHint": false,\n "readOnlyHint": false\n },\n "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.",\n "effects": {\n "accessesNetwork": false,\n "changesUiState": false,\n "idempotent": true,\n "launchesProcess": false,\n "mayDiscardData": false,\n "mutatesSession": true,\n "mutatesTarget": false,\n "writesFilesystem": false\n },\n "inputSchema": {\n "$defs": {\n "__schema0": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "number"\n },\n {\n "type": "boolean"\n },\n {\n "type": "null"\n },\n {\n "items": {\n "$ref": "#/$defs/__schema0"\n },\n "type": "array"\n },\n {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n }\n ]\n }\n },\n "$schema": "https://json-schema.org/draft/2020-12/schema",\n "additionalProperties": false,\n "examples": [\n {\n "managed_boundaries": {\n "authority": "shipped-artifact",\n "confidence": "observed",\n "environment": null,\n "evidence_id": "ev_0b4af8f787323ba7fb52a35b1c21115b2c53d55d61ff9de4a16b006b818a2ba2",\n "evidence_links": [],\n "limitations": [\n "Artifact identity is unavailable for this observation."\n ],\n "locations": [],\n "normalized_result": {\n "artifact": {\n "byte_length": 8192,\n "format": "pe",\n "path": "/examples/ManagedInterop.exe",\n "sha256": "6666666666666666666666666666666666666666666666666666666666666666"\n },\n "cli_native": {\n "il_only": true,\n "managed_native_header_rva": 0,\n "managed_native_header_size": 0,\n "native_entry_point": false,\n "ready_to_run_signature": false,\n "requires_32bit": false,\n "strong_name_signed": false\n },\n "coverage": {\n "issues": [],\n "state": "complete"\n },\n "identity_scope": {\n "requires_artifact_sha256": "6666666666666666666666666666666666666666666666666666666666666666",\n "requires_mvid": "00112233-4455-4677-8899-aabbccddeeff",\n "token_identity": "build-local"\n },\n "limitations": [],\n "metadata": {\n "status": "complete",\n "table_row_counts": {},\n "version": "v4.0.30319"\n },\n "module": {\n "enc_base_id": null,\n "enc_id": null,\n "generation": 0,\n "mvid": "00112233-4455-4677-8899-aabbccddeeff",\n "name": "ManagedInterop.exe",\n "row_offset": 0,\n "token": "0x00000001"\n },\n "module_refs": [\n {\n "name": "nativehelper.dll",\n "row_offset": 256,\n "token": "0x1a000001"\n }\n ],\n "native_implementations": [],\n "pinvoke_imports": [\n {\n "best_fit": "assembly-default",\n "call_convention": "cdecl",\n "char_set": "not-specified",\n "import_name": "open_native",\n "import_scope_name": "nativehelper.dll",\n "import_scope_token": "0x1a000001",\n "mapping_flags": 0,\n "mapping_flags_hex": "0x0000",\n "member_kind": "method",\n "member_name": "OpenNative",\n "member_token": "0x06000001",\n "no_mangle": true,\n "row_offset": 288,\n "supports_last_error": false,\n "throw_on_unmappable_char": "assembly-default",\n "token": "0x1c000001",\n "verification": "managed-declaration-only"\n }\n ],\n "summary": {\n "mixed_mode_or_native_header": false,\n "module_ref_count": 1,\n "native_implementation_count": 0,\n "pinvoke_import_count": 1,\n "ready_to_run": false\n }\n },\n "operation": "inspect_managed_native_boundaries",\n "parameters": {},\n "predicate_type": "rea.analysis",\n "provider": {\n "id": "rea-dotnet-static",\n "name": "REA managed static analysis provider",\n "version": "1"\n },\n "raw_result": null,\n "subject": null\n },\n "native_observations": [\n {\n "authority": "shipped-artifact",\n "confidence": "observed",\n "environment": null,\n "evidence_id": "ev_9ec8ff855a81995540b10a08acf864e2003b588f92dd88cd2b796e3ad288fdc9",\n "evidence_links": [],\n "limitations": [],\n "locations": [],\n "normalized_result": {\n "architectures": {\n "exhaustive": true,\n "items": [],\n "limitations": [],\n "total": 0\n },\n "build_metadata": {\n "exhaustive": true,\n "items": [],\n "limitations": [],\n "total": 0\n },\n "dependencies": {\n "exhaustive": true,\n "items": [],\n "limitations": [],\n "total": 0\n },\n "endian": "little",\n "entrypoints": {\n "exhaustive": true,\n "items": [],\n "limitations": [],\n "total": 0\n },\n "exports": {\n "exhaustive": true,\n "items": [\n {\n "address": "0x1000",\n "name": "open_native",\n "reexport": false,\n "source": "nm",\n "weak": false\n }\n ],\n "limitations": [],\n "total": 1\n },\n "file_type": "dylib",\n "flags": [],\n "format": "mach-o",\n "imports": {\n "exhaustive": true,\n "items": [],\n "limitations": [],\n "total": 0\n },\n "limitations": [],\n "load_commands": {\n "exhaustive": true,\n "items": [],\n "limitations": [],\n "total": 0\n },\n "provenance": [],\n "segments": {\n "exhaustive": true,\n "items": [],\n "limitations": [],\n "total": 0\n },\n "uuid": null,\n "word_size": 64\n },\n "operation": "inspect_macho",\n "parameters": {},\n "predicate_type": "rea.analysis",\n "provider": {\n "id": "native-macos",\n "name": "REA native macOS provider",\n "version": "1"\n },\n "raw_result": null,\n "subject": {\n "architecture": "x86_64",\n "digest": {\n "sha256": "7777777777777777777777777777777777777777777777777777777777777777"\n },\n "format": "mach-o",\n "local_path": "/examples/nativehelper.dll",\n "name": "nativehelper.dll"\n }\n }\n ]\n }\n ],\n "properties": {\n "managed_boundaries": {\n "additionalProperties": false,\n "description": "Value for managed boundaries.",\n "properties": {\n "analysis_profile": {\n "description": "Value for analysis profile.",\n "properties": {\n "digest": {\n "description": "Value for digest.",\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n },\n "parameters": {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "description": "Value for parameters.",\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n },\n "provider": {\n "description": "Value for provider.",\n "properties": {\n "id": {\n "description": "Value for id.",\n "minLength": 1,\n "type": "string"\n },\n "name": {\n "description": "Exact name used by this operation.",\n "minLength": 1,\n "type": "string"\n },\n "version": {\n "description": "Value for version.",\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "id",\n "name",\n "version"\n ],\n "type": "object"\n }\n },\n "required": [\n "provider",\n "parameters",\n "digest"\n ],\n "type": "object"\n },\n "authority": {\n "description": "Value for authority.",\n "enum": [\n "shipped-artifact",\n "controlled-replay",\n "historical-reference",\n "external-service",\n "analyst-inference"\n ],\n "type": "string"\n },\n "confidence": {\n "description": "Value for confidence.",\n "enum": [\n "observed",\n "derived",\n "inferred"\n ],\n "type": "string"\n },\n "environment": {\n "anyOf": [\n {\n "properties": {\n "architecture": {\n "description": "Value for architecture.",\n "minLength": 1,\n "type": "string"\n },\n "id": {\n "description": "Value for id.",\n "minLength": 1,\n "type": "string"\n },\n "isolation": {\n "description": "Value for isolation.",\n "enum": [\n "none",\n "process",\n "container",\n "virtual-machine"\n ],\n "type": "string"\n },\n "platform": {\n "description": "Value for platform.",\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "id",\n "platform",\n "architecture",\n "isolation"\n ],\n "type": "object"\n },\n {\n "type": "null"\n }\n ],\n "description": "Value for environment."\n },\n "evidence_id": {\n "description": "Stable identifier of the recorded Evidence observation.",\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "evidence_links": {\n "description": "Value for evidence links.",\n "items": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "type": "array"\n },\n "limitations": {\n "description": "Value for limitations.",\n "items": {\n "type": "string"\n },\n "type": "array"\n },\n "locations": {\n "description": "Value for locations.",\n "items": {\n "oneOf": [\n {\n "properties": {\n "address": {\n "description": "Value for address.",\n "minLength": 1,\n "type": "string"\n },\n "kind": {\n "const": "address",\n "description": "Value for kind.",\n "type": "string"\n }\n },\n "required": [\n "kind",\n "address"\n ],\n "type": "object"\n },\n {\n "properties": {\n "end": {\n "description": "Value for end.",\n "minLength": 1,\n "type": "string"\n },\n "kind": {\n "const": "address-range",\n "description": "Value for kind.",\n "type": "string"\n },\n "start": {\n "description": "Value for start.",\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "kind",\n "start",\n "end"\n ],\n "type": "object"\n },\n {\n "properties": {\n "kind": {\n "const": "artifact-path",\n "description": "Value for kind.",\n "type": "string"\n },\n "path": {\n "description": "Local filesystem path used by this operation.",\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "kind",\n "path"\n ],\n "type": "object"\n },\n {\n "properties": {\n "kind": {\n "const": "file-offset",\n "description": "Value for kind.",\n "type": "string"\n },\n "offset": {\n "description": "Value for offset.",\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "kind",\n "offset"\n ],\n "type": "object"\n },\n {\n "properties": {\n "end": {\n "description": "Value for end.",\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "kind": {\n "const": "file-offset-range",\n "description": "Value for kind.",\n "type": "string"\n },\n "start": {\n "description": "Value for start.",\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "kind",\n "start",\n "end"\n ],\n "type": "object"\n }\n ]\n },\n "type": "array"\n },\n "normalized_result": {\n "$ref": "#/$defs/__schema0",\n "description": "Value for normalized result."\n },\n "operation": {\n "description": "Value for operation.",\n "minLength": 1,\n "type": "string"\n },\n "parameters": {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "description": "Value for parameters.",\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n },\n "predicate_type": {\n "description": "Value for predicate type.",\n "minLength": 1,\n "type": "string"\n },\n "provider": {\n "description": "Value for provider.",\n "properties": {\n "id": {\n "description": "Value for id.",\n "minLength": 1,\n "type": "string"\n },\n "name": {\n "description": "Exact name used by this operation.",\n "minLength": 1,\n "type": "string"\n },\n "version": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ],\n "description": "Value for version."\n }\n },\n "required": [\n "id",\n "name",\n "version"\n ],\n "type": "object"\n },\n "raw_result": {\n "anyOf": [\n {\n "$ref": "#/$defs/__schema0"\n },\n {\n "type": "null"\n }\n ],\n "description": "Value for raw result."\n },\n "subject": {\n "anyOf": [\n {\n "properties": {\n "architecture": {\n "anyOf": [\n {\n "enum": [\n "x86",\n "x86_64",\n "arm",\n "arm64"\n ],\n "type": "string"\n },\n {\n "type": "null"\n }\n ],\n "description": "Value for architecture."\n },\n "digest": {\n "description": "Value for digest.",\n "properties": {\n "sha256": {\n "description": "Value for sha256.",\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n }\n },\n "required": [\n "sha256"\n ],\n "type": "object"\n },\n "format": {\n "description": "Declared input artifact format.",\n "enum": [\n "hopper",\n "analysis-database",\n "mach-o",\n "elf",\n "pe",\n "dos-mz",\n "dos-com",\n "zip",\n "ipa",\n "apk",\n "msix",\n "appx",\n "asar",\n "dmg",\n "pkg",\n "plist",\n "javascript",\n "source-map",\n "directory",\n "file",\n "unknown",\n "mach-o-universal",\n "javascript-bundle",\n "entitlements"\n ],\n "type": "string"\n },\n "local_path": {\n "description": "Local filesystem path for local.",\n "type": "string"\n },\n "name": {\n "description": "Exact name used by this operation.",\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "name",\n "digest",\n "format",\n "architecture",\n "local_path"\n ],\n "type": "object"\n },\n {\n "type": "null"\n }\n ],\n "description": "Value for subject."\n }\n },\n "required": [\n "evidence_id",\n "subject",\n "provider",\n "predicate_type",\n "operation",\n "parameters",\n "raw_result",\n "normalized_result",\n "confidence",\n "authority",\n "environment",\n "limitations",\n "locations",\n "evidence_links"\n ],\n "type": "object"\n },\n "native_observations": {\n "description": "Native function or export Evidence records",\n "items": {\n "additionalProperties": false,\n "properties": {\n "analysis_profile": {\n "description": "Value for analysis profile.",\n "properties": {\n "digest": {\n "description": "Value for digest.",\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n },\n "parameters": {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "description": "Value for parameters.",\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n },\n "provider": {\n "description": "Value for provider.",\n "properties": {\n "id": {\n "description": "Value for id.",\n "minLength": 1,\n "type": "string"\n },\n "name": {\n "description": "Exact name used by this operation.",\n "minLength": 1,\n "type": "string"\n },\n "version": {\n "description": "Value for version.",\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "id",\n "name",\n "version"\n ],\n "type": "object"\n }\n },\n "required": [\n "provider",\n "parameters",\n "digest"\n ],\n "type": "object"\n },\n "authority": {\n "description": "Value for authority.",\n "enum": [\n "shipped-artifact",\n "controlled-replay",\n "historical-reference",\n "external-service",\n "analyst-inference"\n ],\n "type": "string"\n },\n "confidence": {\n "description": "Value for confidence.",\n "enum": [\n "observed",\n "derived",\n "inferred"\n ],\n "type": "string"\n },\n "environment": {\n "anyOf": [\n {\n "properties": {\n "architecture": {\n "description": "Value for architecture.",\n "minLength": 1,\n "type": "string"\n },\n "id": {\n "description": "Value for id.",\n "minLength": 1,\n "type": "string"\n },\n "isolation": {\n "description": "Value for isolation.",\n "enum": [\n "none",\n "process",\n "container",\n "virtual-machine"\n ],\n "type": "string"\n },\n "platform": {\n "description": "Value for platform.",\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "id",\n "platform",\n "architecture",\n "isolation"\n ],\n "type": "object"\n },\n {\n "type": "null"\n }\n ],\n "description": "Value for environment."\n },\n "evidence_id": {\n "description": "Stable identifier of the recorded Evidence observation.",\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "evidence_links": {\n "description": "Value for evidence links.",\n "items": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "type": "array"\n },\n "limitations": {\n "description": "Value for limitations.",\n "items": {\n "type": "string"\n },\n "type": "array"\n },\n "locations": {\n "description": "Value for locations.",\n "items": {\n "oneOf": [\n {\n "properties": {\n "address": {\n "description": "Value for address.",\n "minLength": 1,\n "type": "string"\n },\n "kind": {\n "const": "address",\n "description": "Value for kind.",\n "type": "string"\n }\n },\n "required": [\n "kind",\n "address"\n ],\n "type": "object"\n },\n {\n "properties": {\n "end": {\n "description": "Value for end.",\n "minLength": 1,\n "type": "string"\n },\n "kind": {\n "const": "address-range",\n "description": "Value for kind.",\n "type": "string"\n },\n "start": {\n "description": "Value for start.",\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "kind",\n "start",\n "end"\n ],\n "type": "object"\n },\n {\n "properties": {\n "kind": {\n "const": "artifact-path",\n "description": "Value for kind.",\n "type": "string"\n },\n "path": {\n "description": "Local filesystem path used by this operation.",\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "kind",\n "path"\n ],\n "type": "object"\n },\n {\n "properties": {\n "kind": {\n "const": "file-offset",\n "description": "Value for kind.",\n "type": "string"\n },\n "offset": {\n "description": "Value for offset.",\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "kind",\n "offset"\n ],\n "type": "object"\n },\n {\n "properties": {\n "end": {\n "description": "Value for end.",\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "kind": {\n "const": "file-offset-range",\n "description": "Value for kind.",\n "type": "string"\n },\n "start": {\n "description": "Value for start.",\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "kind",\n "start",\n "end"\n ],\n "type": "object"\n }\n ]\n },\n "type": "array"\n },\n "normalized_result": {\n "$ref": "#/$defs/__schema0",\n "description": "Value for normalized result."\n },\n "operation": {\n "description": "Value for operation.",\n "minLength": 1,\n "type": "string"\n },\n "parameters": {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "description": "Value for parameters.",\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n },\n "predicate_type": {\n "description": "Value for predicate type.",\n "minLength": 1,\n "type": "string"\n },\n "provider": {\n "description": "Value for provider.",\n "properties": {\n "id": {\n "description": "Value for id.",\n "minLength": 1,\n "type": "string"\n },\n "name": {\n "description": "Exact name used by this operation.",\n "minLength": 1,\n "type": "string"\n },\n "version": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ],\n "description": "Value for version."\n }\n },\n "required": [\n "id",\n "name",\n "version"\n ],\n "type": "object"\n },\n "raw_result": {\n "anyOf": [\n {\n "$ref": "#/$defs/__schema0"\n },\n {\n "type": "null"\n }\n ],\n "description": "Value for raw result."\n },\n "subject": {\n "anyOf": [\n {\n "properties": {\n "architecture": {\n "anyOf": [\n {\n "enum": [\n "x86",\n "x86_64",\n "arm",\n "arm64"\n ],\n "type": "string"\n },\n {\n "type": "null"\n }\n ],\n "description": "Value for architecture."\n },\n "digest": {\n "description": "Value for digest.",\n "properties": {\n "sha256": {\n "description": "Value for sha256.",\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n }\n },\n "required": [\n "sha256"\n ],\n "type": "object"\n },\n "format": {\n "description": "Declared input artifact format.",\n "enum": [\n "hopper",\n "analysis-database",\n "mach-o",\n "elf",\n "pe",\n "dos-mz",\n "dos-com",\n "zip",\n "ipa",\n "apk",\n "msix",\n "appx",\n "asar",\n "dmg",\n "pkg",\n "plist",\n "javascript",\n "source-map",\n "directory",\n "file",\n "unknown",\n "mach-o-universal",\n "javascript-bundle",\n "entitlements"\n ],\n "type": "string"\n },\n "local_path": {\n "description": "Local filesystem path for local.",\n "type": "string"\n },\n "name": {\n "description": "Exact name used by this operation.",\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "name",\n "digest",\n "format",\n "architecture",\n "local_path"\n ],\n "type": "object"\n },\n {\n "type": "null"\n }\n ],\n "description": "Value for subject."\n }\n },\n "required": [\n "evidence_id",\n "subject",\n "provider",\n "predicate_type",\n "operation",\n "parameters",\n "raw_result",\n "normalized_result",\n "confidence",\n "authority",\n "environment",\n "limitations",\n "locations",\n "evidence_links"\n ],\n "type": "object"\n },\n "minItems": 1,\n "type": "array"\n }\n },\n "required": [\n "managed_boundaries",\n "native_observations"\n ],\n "type": "object"\n },\n "kind": "application",\n "name": "verify_managed_native_boundaries",\n "outputSchema": {\n "$defs": {\n "__schema0": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "number"\n },\n {\n "type": "boolean"\n },\n {\n "type": "null"\n },\n {\n "items": {\n "$ref": "#/$defs/__schema0"\n },\n "type": "array"\n },\n {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n }\n ]\n }\n },\n "$schema": "https://json-schema.org/draft/2020-12/schema",\n "additionalProperties": false,\n "properties": {\n "evidence": {\n "additionalProperties": false,\n "properties": {\n "analysis_profile": {\n "additionalProperties": false,\n "properties": {\n "digest": {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n },\n "parameters": {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n },\n "provider": {\n "additionalProperties": false,\n "properties": {\n "id": {\n "minLength": 1,\n "type": "string"\n },\n "name": {\n "minLength": 1,\n "type": "string"\n },\n "version": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "id",\n "name",\n "version"\n ],\n "type": "object"\n }\n },\n "required": [\n "provider",\n "parameters",\n "digest"\n ],\n "type": "object"\n },\n "authority": {\n "enum": [\n "shipped-artifact",\n "controlled-replay",\n "historical-reference",\n "external-service",\n "analyst-inference"\n ],\n "type": "string"\n },\n "confidence": {\n "enum": [\n "observed",\n "derived",\n "inferred"\n ],\n "type": "string"\n },\n "environment": {\n "anyOf": [\n {\n "additionalProperties": false,\n "properties": {\n "architecture": {\n "minLength": 1,\n "type": "string"\n },\n "id": {\n "minLength": 1,\n "type": "string"\n },\n "isolation": {\n "enum": [\n "none",\n "process",\n "container",\n "virtual-machine"\n ],\n "type": "string"\n },\n "platform": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "id",\n "platform",\n "architecture",\n "isolation"\n ],\n "type": "object"\n },\n {\n "type": "null"\n }\n ]\n },\n "evidence_id": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "evidence_links": {\n "items": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "type": "array"\n },\n "limitations": {\n "items": {\n "type": "string"\n },\n "type": "array"\n },\n "locations": {\n "items": {\n "oneOf": [\n {\n "additionalProperties": false,\n "properties": {\n "address": {\n "minLength": 1,\n "type": "string"\n },\n "kind": {\n "const": "address",\n "type": "string"\n }\n },\n "required": [\n "kind",\n "address"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "end": {\n "minLength": 1,\n "type": "string"\n },\n "kind": {\n "const": "address-range",\n "type": "string"\n },\n "start": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "kind",\n "start",\n "end"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "kind": {\n "const": "artifact-path",\n "type": "string"\n },\n "path": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "kind",\n "path"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "kind": {\n "const": "file-offset",\n "type": "string"\n },\n "offset": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "kind",\n "offset"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "end": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "kind": {\n "const": "file-offset-range",\n "type": "string"\n },\n "start": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "kind",\n "start",\n "end"\n ],\n "type": "object"\n }\n ]\n },\n "type": "array"\n },\n "normalized_result": {\n "$ref": "#/$defs/__schema0"\n },\n "operation": {\n "minLength": 1,\n "type": "string"\n },\n "parameters": {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n },\n "predicate_type": {\n "minLength": 1,\n "type": "string"\n },\n "provider": {\n "additionalProperties": false,\n "properties": {\n "id": {\n "minLength": 1,\n "type": "string"\n },\n "name": {\n "minLength": 1,\n "type": "string"\n },\n "version": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "id",\n "name",\n "version"\n ],\n "type": "object"\n },\n "raw_result": {\n "anyOf": [\n {\n "$ref": "#/$defs/__schema0"\n },\n {\n "type": "null"\n }\n ]\n },\n "subject": {\n "anyOf": [\n {\n "additionalProperties": false,\n "properties": {\n "architecture": {\n "anyOf": [\n {\n "enum": [\n "x86",\n "x86_64",\n "arm",\n "arm64"\n ],\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "digest": {\n "additionalProperties": false,\n "properties": {\n "sha256": {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n }\n },\n "required": [\n "sha256"\n ],\n "type": "object"\n },\n "format": {\n "enum": [\n "hopper",\n "analysis-database",\n "mach-o",\n "elf",\n "pe",\n "dos-mz",\n "dos-com",\n "zip",\n "ipa",\n "apk",\n "msix",\n "appx",\n "asar",\n "dmg",\n "pkg",\n "plist",\n "javascript",\n "source-map",\n "directory",\n "file",\n "unknown",\n "mach-o-universal",\n "javascript-bundle",\n "entitlements"\n ],\n "type": "string"\n },\n "local_path": {\n "type": "string"\n },\n "name": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "name",\n "digest",\n "format",\n "architecture",\n "local_path"\n ],\n "type": "object"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "evidence_id",\n "subject",\n "provider",\n "predicate_type",\n "operation",\n "parameters",\n "raw_result",\n "normalized_result",\n "confidence",\n "authority",\n "environment",\n "limitations",\n "locations",\n "evidence_links"\n ],\n "type": "object"\n },\n "evidence_id": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "result": {\n "additionalProperties": false,\n "properties": {\n "algorithm": {\n "additionalProperties": false,\n "properties": {\n "name": {\n "const": "rea-managed-native-verification",\n "type": "string"\n },\n "token_identity": {\n "const": "build-local",\n "type": "string"\n },\n "token_to_address_mapping": {\n "const": "not-inferred",\n "type": "string"\n }\n },\n "required": [\n "name",\n "token_identity",\n "token_to_address_mapping"\n ],\n "type": "object"\n },\n "coverage": {\n "additionalProperties": false,\n "properties": {\n "status": {\n "enum": [\n "complete-within-inputs",\n "partial"\n ],\n "type": "string"\n }\n },\n "required": [\n "status"\n ],\n "type": "object"\n },\n "evidence_links": {\n "items": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "minItems": 2,\n "type": "array"\n },\n "limitations": {\n "items": {\n "minLength": 1,\n "type": "string"\n },\n "type": "array"\n },\n "managed_boundary": {\n "additionalProperties": false,\n "properties": {\n "artifact_path": {\n "minLength": 1,\n "type": "string"\n },\n "artifact_sha256": {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n },\n "coverage_state": {\n "enum": [\n "complete",\n "partial",\n "unavailable"\n ],\n "type": "string"\n },\n "evidence_id": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "metadata_status": {\n "enum": [\n "absent",\n "complete",\n "partial",\n "malformed"\n ],\n "type": "string"\n },\n "mvid": {\n "anyOf": [\n {\n "pattern": "^[0-9a-fA-F]{8}(?:-[0-9a-fA-F]{4}){3}-[0-9a-fA-F]{12}$",\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "native_implementations_total": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "pinvoke_imports_total": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "evidence_id",\n "artifact_sha256",\n "artifact_path",\n "mvid",\n "metadata_status",\n "pinvoke_imports_total",\n "native_implementations_total",\n "coverage_state"\n ],\n "type": "object"\n },\n "native_implementations": {\n "additionalProperties": false,\n "properties": {\n "reason": {\n "minLength": 1,\n "type": "string"\n },\n "unresolved": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "unresolved",\n "reason"\n ],\n "type": "object"\n },\n "native_observations": {\n "additionalProperties": false,\n "properties": {\n "accepted": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "symbols": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "total": {\n "maximum": 9007199254740991,\n "minimum": 1,\n "type": "integer"\n },\n "unsupported": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "total",\n "accepted",\n "unsupported",\n "symbols"\n ],\n "type": "object"\n },\n "pinvoke_imports": {\n "items": {\n "oneOf": [\n {\n "additionalProperties": false,\n "properties": {\n "basis": {\n "enum": [\n "exact-export-name",\n "exact-function-name"\n ],\n "type": "string"\n },\n "candidates": {\n "items": {\n "additionalProperties": false,\n "properties": {\n "address": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "evidence_id": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "module_name": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "module_path": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "name": {\n "minLength": 1,\n "type": "string"\n },\n "operation": {\n "minLength": 1,\n "type": "string"\n },\n "source": {\n "enum": [\n "macho-export",\n "function-dossier"\n ],\n "type": "string"\n }\n },\n "required": [\n "evidence_id",\n "operation",\n "name",\n "address",\n "module_name",\n "module_path",\n "source"\n ],\n "type": "object"\n },\n "prefixItems": [\n {\n "additionalProperties": false,\n "properties": {\n "address": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "evidence_id": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "module_name": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "module_path": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "name": {\n "minLength": 1,\n "type": "string"\n },\n "operation": {\n "minLength": 1,\n "type": "string"\n },\n "source": {\n "enum": [\n "macho-export",\n "function-dossier"\n ],\n "type": "string"\n }\n },\n "required": [\n "evidence_id",\n "operation",\n "name",\n "address",\n "module_name",\n "module_path",\n "source"\n ],\n "type": "object"\n }\n ],\n "type": "array"\n },\n "confidence": {\n "const": "observed",\n "type": "string"\n },\n "evidence_links": {\n "items": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "minItems": 1,\n "type": "array"\n },\n "item_id": {\n "pattern": "^mnv_pinvoke_[a-f0-9]{64}$",\n "type": "string"\n },\n "limitations": {\n "items": {\n "minLength": 1,\n "type": "string"\n },\n "type": "array"\n },\n "managed": {\n "additionalProperties": false,\n "properties": {\n "call_convention": {\n "enum": [\n "not-specified",\n "winapi",\n "cdecl",\n "stdcall",\n "thiscall",\n "fastcall",\n "unknown"\n ],\n "type": "string"\n },\n "char_set": {\n "enum": [\n "not-specified",\n "ansi",\n "unicode",\n "auto",\n "unknown"\n ],\n "type": "string"\n },\n "declaration_verification": {\n "const": "managed-declaration-only",\n "type": "string"\n },\n "import_name": {\n "minLength": 1,\n "type": "string"\n },\n "import_scope_name": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "member_name": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "member_token": {\n "anyOf": [\n {\n "pattern": "^0x[0-9a-f]{8}$",\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "no_mangle": {\n "type": "boolean"\n },\n "token": {\n "pattern": "^0x[0-9a-f]{8}$",\n "type": "string"\n }\n },\n "required": [\n "token",\n "member_token",\n "member_name",\n "import_name",\n "import_scope_name",\n "no_mangle",\n "char_set",\n "call_convention",\n "declaration_verification"\n ],\n "type": "object"\n },\n "matched_native": {\n "additionalProperties": false,\n "properties": {\n "address": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "evidence_id": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "module_name": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "module_path": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "name": {\n "minLength": 1,\n "type": "string"\n },\n "operation": {\n "minLength": 1,\n "type": "string"\n },\n "source": {\n "enum": [\n "macho-export",\n "function-dossier"\n ],\n "type": "string"\n }\n },\n "required": [\n "evidence_id",\n "operation",\n "name",\n "address",\n "module_name",\n "module_path",\n "source"\n ],\n "type": "object"\n },\n "status": {\n "const": "verified",\n "type": "string"\n }\n },\n "required": [\n "item_id",\n "managed",\n "evidence_links",\n "limitations",\n "status",\n "basis",\n "confidence",\n "matched_native",\n "candidates"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "basis": {\n "const": "decorated-name-candidate",\n "type": "string"\n },\n "candidates": {\n "items": {\n "additionalProperties": false,\n "properties": {\n "address": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "evidence_id": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "module_name": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "module_path": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "name": {\n "minLength": 1,\n "type": "string"\n },\n "operation": {\n "minLength": 1,\n "type": "string"\n },\n "source": {\n "enum": [\n "macho-export",\n "function-dossier"\n ],\n "type": "string"\n }\n },\n "required": [\n "evidence_id",\n "operation",\n "name",\n "address",\n "module_name",\n "module_path",\n "source"\n ],\n "type": "object"\n },\n "prefixItems": [\n {\n "additionalProperties": false,\n "properties": {\n "address": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "evidence_id": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "module_name": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "module_path": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "name": {\n "minLength": 1,\n "type": "string"\n },\n "operation": {\n "minLength": 1,\n "type": "string"\n },\n "source": {\n "enum": [\n "macho-export",\n "function-dossier"\n ],\n "type": "string"\n }\n },\n "required": [\n "evidence_id",\n "operation",\n "name",\n "address",\n "module_name",\n "module_path",\n "source"\n ],\n "type": "object"\n }\n ],\n "type": "array"\n },\n "confidence": {\n "const": "inferred",\n "type": "string"\n },\n "evidence_links": {\n "items": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "minItems": 1,\n "type": "array"\n },\n "item_id": {\n "pattern": "^mnv_pinvoke_[a-f0-9]{64}$",\n "type": "string"\n },\n "limitations": {\n "items": {\n "minLength": 1,\n "type": "string"\n },\n "type": "array"\n },\n "managed": {\n "additionalProperties": false,\n "properties": {\n "call_convention": {\n "enum": [\n "not-specified",\n "winapi",\n "cdecl",\n "stdcall",\n "thiscall",\n "fastcall",\n "unknown"\n ],\n "type": "string"\n },\n "char_set": {\n "enum": [\n "not-specified",\n "ansi",\n "unicode",\n "auto",\n "unknown"\n ],\n "type": "string"\n },\n "declaration_verification": {\n "const": "managed-declaration-only",\n "type": "string"\n },\n "import_name": {\n "minLength": 1,\n "type": "string"\n },\n "import_scope_name": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "member_name": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "member_token": {\n "anyOf": [\n {\n "pattern": "^0x[0-9a-f]{8}$",\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "no_mangle": {\n "type": "boolean"\n },\n "token": {\n "pattern": "^0x[0-9a-f]{8}$",\n "type": "string"\n }\n },\n "required": [\n "token",\n "member_token",\n "member_name",\n "import_name",\n "import_scope_name",\n "no_mangle",\n "char_set",\n "call_convention",\n "declaration_verification"\n ],\n "type": "object"\n },\n "matched_native": {\n "additionalProperties": false,\n "properties": {\n "address": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "evidence_id": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "module_name": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "module_path": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "name": {\n "minLength": 1,\n "type": "string"\n },\n "operation": {\n "minLength": 1,\n "type": "string"\n },\n "source": {\n "enum": [\n "macho-export",\n "function-dossier"\n ],\n "type": "string"\n }\n },\n "required": [\n "evidence_id",\n "operation",\n "name",\n "address",\n "module_name",\n "module_path",\n "source"\n ],\n "type": "object"\n },\n "status": {\n "const": "inferred",\n "type": "string"\n }\n },\n "required": [\n "item_id",\n "managed",\n "evidence_links",\n "limitations",\n "status",\n "basis",\n "confidence",\n "matched_native",\n "candidates"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "basis": {\n "enum": [\n "no-native-candidate",\n "unsupported-native-evidence"\n ],\n "type": "string"\n },\n "candidates": {\n "items": {\n "not": {}\n },\n "maxItems": 0,\n "minItems": 0,\n "type": "array"\n },\n "confidence": {\n "const": "unknown",\n "type": "string"\n },\n "evidence_links": {\n "items": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "minItems": 1,\n "type": "array"\n },\n "item_id": {\n "pattern": "^mnv_pinvoke_[a-f0-9]{64}$",\n "type": "string"\n },\n "limitations": {\n "items": {\n "minLength": 1,\n "type": "string"\n },\n "type": "array"\n },\n "managed": {\n "additionalProperties": false,\n "properties": {\n "call_convention": {\n "enum": [\n "not-specified",\n "winapi",\n "cdecl",\n "stdcall",\n "thiscall",\n "fastcall",\n "unknown"\n ],\n "type": "string"\n },\n "char_set": {\n "enum": [\n "not-specified",\n "ansi",\n "unicode",\n "auto",\n "unknown"\n ],\n "type": "string"\n },\n "declaration_verification": {\n "const": "managed-declaration-only",\n "type": "string"\n },\n "import_name": {\n "minLength": 1,\n "type": "string"\n },\n "import_scope_name": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "member_name": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "member_token": {\n "anyOf": [\n {\n "pattern": "^0x[0-9a-f]{8}$",\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "no_mangle": {\n "type": "boolean"\n },\n "token": {\n "pattern": "^0x[0-9a-f]{8}$",\n "type": "string"\n }\n },\n "required": [\n "token",\n "member_token",\n "member_name",\n "import_name",\n "import_scope_name",\n "no_mangle",\n "char_set",\n "call_convention",\n "declaration_verification"\n ],\n "type": "object"\n },\n "matched_native": {\n "type": "null"\n },\n "status": {\n "const": "unresolved",\n "type": "string"\n }\n },\n "required": [\n "item_id",\n "managed",\n "evidence_links",\n "limitations",\n "status",\n "basis",\n "confidence",\n "matched_native",\n "candidates"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "basis": {\n "const": "module-mismatch",\n "type": "string"\n },\n "candidates": {\n "items": {\n "additionalProperties": false,\n "properties": {\n "address": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "evidence_id": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "module_name": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "module_path": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "name": {\n "minLength": 1,\n "type": "string"\n },\n "operation": {\n "minLength": 1,\n "type": "string"\n },\n "source": {\n "enum": [\n "macho-export",\n "function-dossier"\n ],\n "type": "string"\n }\n },\n "required": [\n "evidence_id",\n "operation",\n "name",\n "address",\n "module_name",\n "module_path",\n "source"\n ],\n "type": "object"\n },\n "prefixItems": [\n {\n "additionalProperties": false,\n "properties": {\n "address": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "evidence_id": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "module_name": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "module_path": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "name": {\n "minLength": 1,\n "type": "string"\n },\n "operation": {\n "minLength": 1,\n "type": "string"\n },\n "source": {\n "enum": [\n "macho-export",\n "function-dossier"\n ],\n "type": "string"\n }\n },\n "required": [\n "evidence_id",\n "operation",\n "name",\n "address",\n "module_name",\n "module_path",\n "source"\n ],\n "type": "object"\n }\n ],\n "type": "array"\n },\n "confidence": {\n "const": "unknown",\n "type": "string"\n },\n "evidence_links": {\n "items": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "minItems": 1,\n "type": "array"\n },\n "item_id": {\n "pattern": "^mnv_pinvoke_[a-f0-9]{64}$",\n "type": "string"\n },\n "limitations": {\n "items": {\n "minLength": 1,\n "type": "string"\n },\n "type": "array"\n },\n "managed": {\n "additionalProperties": false,\n "properties": {\n "call_convention": {\n "enum": [\n "not-specified",\n "winapi",\n "cdecl",\n "stdcall",\n "thiscall",\n "fastcall",\n "unknown"\n ],\n "type": "string"\n },\n "char_set": {\n "enum": [\n "not-specified",\n "ansi",\n "unicode",\n "auto",\n "unknown"\n ],\n "type": "string"\n },\n "declaration_verification": {\n "const": "managed-declaration-only",\n "type": "string"\n },\n "import_name": {\n "minLength": 1,\n "type": "string"\n },\n "import_scope_name": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "member_name": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "member_token": {\n "anyOf": [\n {\n "pattern": "^0x[0-9a-f]{8}$",\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "no_mangle": {\n "type": "boolean"\n },\n "token": {\n "pattern": "^0x[0-9a-f]{8}$",\n "type": "string"\n }\n },\n "required": [\n "token",\n "member_token",\n "member_name",\n "import_name",\n "import_scope_name",\n "no_mangle",\n "char_set",\n "call_convention",\n "declaration_verification"\n ],\n "type": "object"\n },\n "matched_native": {\n "additionalProperties": false,\n "properties": {\n "address": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "evidence_id": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "module_name": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "module_path": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "name": {\n "minLength": 1,\n "type": "string"\n },\n "operation": {\n "minLength": 1,\n "type": "string"\n },\n "source": {\n "enum": [\n "macho-export",\n "function-dossier"\n ],\n "type": "string"\n }\n },\n "required": [\n "evidence_id",\n "operation",\n "name",\n "address",\n "module_name",\n "module_path",\n "source"\n ],\n "type": "object"\n },\n "status": {\n "const": "contradicted",\n "type": "string"\n }\n },\n "required": [\n "item_id",\n "managed",\n "evidence_links",\n "limitations",\n "status",\n "basis",\n "confidence",\n "matched_native",\n "candidates"\n ],\n "type": "object"\n }\n ]\n },\n "type": "array"\n },\n "summary": {\n "additionalProperties": false,\n "properties": {\n "contradicted": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "inferred": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "native_body_unresolved": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "unresolved": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "verified": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "verified",\n "inferred",\n "unresolved",\n "contradicted",\n "native_body_unresolved"\n ],\n "type": "object"\n },\n "verification_id": {\n "pattern": "^mnv_[a-f0-9]{64}$",\n "type": "string"\n }\n },\n "required": [\n "verification_id",\n "algorithm",\n "managed_boundary",\n "native_observations",\n "summary",\n "pinvoke_imports",\n "native_implementations",\n "coverage",\n "evidence_links",\n "limitations"\n ],\n "type": "object"\n }\n },\n "required": [\n "result",\n "evidence_id",\n "evidence"\n ],\n "type": "object"\n },\n "requiresSession": true,\n "title": "Verify Managed Native Boundaries"\n },\n {\n "analysisOperation": null,\n "annotations": {\n "destructiveHint": false,\n "idempotentHint": true,\n "openWorldHint": false,\n "readOnlyHint": false\n },\n "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 decoded-IL tuple hash, records the decompiler identity and options, and marks C# or pseudocode as analyst inference rather than canonical byte observation.",\n "effects": {\n "accessesNetwork": false,\n "changesUiState": false,\n "idempotent": true,\n "launchesProcess": false,\n "mayDiscardData": false,\n "mutatesSession": true,\n "mutatesTarget": false,\n "writesFilesystem": false\n },\n "inputSchema": {\n "$defs": {\n "__schema0": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "number"\n },\n {\n "type": "boolean"\n },\n {\n "type": "null"\n },\n {\n "items": {\n "$ref": "#/$defs/__schema0"\n },\n "type": "array"\n },\n {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n }\n ]\n }\n },\n "$schema": "https://json-schema.org/draft/2020-12/schema",\n "additionalProperties": false,\n "examples": [\n {\n "decompiler": {\n "executable_sha256": null,\n "family": "ilspy",\n "name": "ilspycmd",\n "options": [\n "--disable-updatecheck",\n "--type",\n "Example.Program"\n ],\n "version": "9.1.0.7988"\n },\n "methods": [\n {\n "normalized_il_sha256": "5555555555555555555555555555555555555555555555555555555555555555",\n "reconstruction": {\n "end_line": 1,\n "kind": "decompiled-csharp",\n "language": "csharp",\n "source_path": "/examples/Example.Program.cs",\n "start_line": 1,\n "text": "internal static void Main() { }"\n },\n "signature_sha256": "3333333333333333333333333333333333333333333333333333333333333333",\n "token": "0x06000001"\n }\n ],\n "notes": [\n "Synthetic example only; decompiler output is imported as inference."\n ],\n "static_members": {\n "authority": "shipped-artifact",\n "confidence": "observed",\n "environment": null,\n "evidence_id": "ev_cf07661a99083e446ac5f18af3ca331cb1af7c3cd6cb7c9dc8bff880a1ed8bb9",\n "evidence_links": [],\n "limitations": [\n "Artifact identity is unavailable for this observation."\n ],\n "locations": [],\n "normalized_result": {\n "artifact": {\n "byte_length": 4096,\n "format": "pe",\n "path": "/examples/22222222.dll",\n "sha256": "2222222222222222222222222222222222222222222222222222222222222222"\n },\n "call_edges": [],\n "coverage": {\n "issues": [],\n "state": "complete"\n },\n "field_accesses": [],\n "fields": [],\n "identity_scope": {\n "requires_artifact_sha256": "2222222222222222222222222222222222222222222222222222222222222222",\n "requires_mvid": "11112222-3333-4444-9555-666677778888",\n "token_identity": "build-local"\n },\n "limitations": [],\n "member_refs": [],\n "metadata": {\n "status": "complete",\n "table_row_counts": {},\n "version": "v4.0.30319"\n },\n "methods": [\n {\n "body": {\n "anchors": [],\n "decoded_instruction_count": 1,\n "exception_regions": [],\n "file_offset": 512,\n "header_format": "tiny",\n "il_sha256": "4444444444444444444444444444444444444444444444444444444444444444",\n "il_size": 1,\n "init_locals": false,\n "instruction_count": 1,\n "issue": null,\n "local_var_sig_token": null,\n "max_stack": 8,\n "normalized_il_sha256": "5555555555555555555555555555555555555555555555555555555555555555",\n "opcode_counts": {\n "ret": 1\n },\n "rva": 8192,\n "status": "present",\n "truncated_instructions": 0\n },\n "declaring_type": "Example.Program",\n "declaring_type_token": "0x02000001",\n "flags": 22,\n "impl_flags": 0,\n "name": "Main",\n "row_offset": 128,\n "rva": 8192,\n "signature": {\n "calling_convention": "default",\n "field_type": null,\n "generic_parameter_count": 0,\n "issue": null,\n "kind": "method",\n "parameter_count": 0,\n "parameter_types": [],\n "parse_status": "decoded",\n "raw_length": 3,\n "raw_sha256": "3333333333333333333333333333333333333333333333333333333333333333",\n "return_type": "void"\n },\n "token": "0x06000001"\n }\n ],\n "module": {\n "enc_base_id": null,\n "enc_id": null,\n "generation": 0,\n "mvid": "11112222-3333-4444-9555-666677778888",\n "name": "Example.dll",\n "row_offset": 0,\n "token": "0x00000001"\n },\n "types": []\n },\n "operation": "inspect_managed_members",\n "parameters": {},\n "predicate_type": "rea.analysis",\n "provider": {\n "id": "rea-dotnet-static",\n "name": "REA managed static analysis provider",\n "version": "1"\n },\n "raw_result": null,\n "subject": null\n }\n }\n ],\n "properties": {\n "decompiler": {\n "additionalProperties": false,\n "description": "Value for decompiler.",\n "properties": {\n "executable_sha256": {\n "anyOf": [\n {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n },\n {\n "type": "null"\n }\n ],\n "default": null,\n "description": "Exact SHA-256 digest of executable."\n },\n "family": {\n "description": "Value for family.",\n "enum": [\n "ilspy",\n "dnspy",\n "dnlib",\n "mono-cecil",\n "other"\n ],\n "type": "string"\n },\n "name": {\n "description": "Exact name used by this operation.",\n "minLength": 1,\n "type": "string"\n },\n "options": {\n "default": [],\n "description": "Value for options.",\n "items": {\n "type": "string"\n },\n "type": "array"\n },\n "version": {\n "anyOf": [\n {\n "minLength": 1,\n "type": "string"\n },\n {\n "type": "null"\n }\n ],\n "default": null,\n "description": "Value for version."\n }\n },\n "required": [\n "name",\n "family"\n ],\n "type": "object"\n },\n "methods": {\n "description": "Value for methods.",\n "items": {\n "additionalProperties": false,\n "properties": {\n "normalized_il_sha256": {\n "anyOf": [\n {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n },\n {\n "type": "null"\n }\n ],\n "description": "Exact SHA-256 digest of normalized il."\n },\n "reconstruction": {\n "additionalProperties": false,\n "description": "Value for reconstruction.",\n "properties": {\n "end_line": {\n "anyOf": [\n {\n "maximum": 9007199254740991,\n "minimum": 1,\n "type": "integer"\n },\n {\n "type": "null"\n }\n ],\n "description": "Value for end line."\n },\n "kind": {\n "description": "Value for kind.",\n "enum": [\n "decompiled-csharp",\n "decompiled-il",\n "semantic-pseudocode"\n ],\n "type": "string"\n },\n "language": {\n "description": "Value for language.",\n "enum": [\n "csharp",\n "il",\n "pseudocode"\n ],\n "type": "string"\n },\n "source_path": {\n "anyOf": [\n {\n "minLength": 1,\n "type": "string"\n },\n {\n "type": "null"\n }\n ],\n "description": "Local filesystem path for source."\n },\n "start_line": {\n "anyOf": [\n {\n "maximum": 9007199254740991,\n "minimum": 1,\n "type": "integer"\n },\n {\n "type": "null"\n }\n ],\n "description": "Value for start line."\n },\n "text": {\n "description": "Value for text.",\n "minLength": 1,\n "type": "string"\n },\n "text_sha256": {\n "description": "Exact SHA-256 digest of text.",\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n }\n },\n "required": [\n "kind",\n "language",\n "text"\n ],\n "type": "object"\n },\n "signature_sha256": {\n "description": "Exact SHA-256 digest of signature.",\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n },\n "token": {\n "description": "Value for token.",\n "pattern": "^0x[0-9a-f]{8}$",\n "type": "string"\n }\n },\n "required": [\n "token",\n "signature_sha256",\n "normalized_il_sha256",\n "reconstruction"\n ],\n "type": "object"\n },\n "minItems": 1,\n "type": "array"\n },\n "notes": {\n "default": [],\n "description": "Value for notes.",\n "items": {\n "minLength": 1,\n "type": "string"\n },\n "type": "array"\n },\n "static_members": {\n "additionalProperties": false,\n "description": "Value for static members.",\n "properties": {\n "analysis_profile": {\n "description": "Value for analysis profile.",\n "properties": {\n "digest": {\n "description": "Value for digest.",\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n },\n "parameters": {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "description": "Value for parameters.",\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n },\n "provider": {\n "description": "Value for provider.",\n "properties": {\n "id": {\n "description": "Value for id.",\n "minLength": 1,\n "type": "string"\n },\n "name": {\n "description": "Exact name used by this operation.",\n "minLength": 1,\n "type": "string"\n },\n "version": {\n "description": "Value for version.",\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "id",\n "name",\n "version"\n ],\n "type": "object"\n }\n },\n "required": [\n "provider",\n "parameters",\n "digest"\n ],\n "type": "object"\n },\n "authority": {\n "description": "Value for authority.",\n "enum": [\n "shipped-artifact",\n "controlled-replay",\n "historical-reference",\n "external-service",\n "analyst-inference"\n ],\n "type": "string"\n },\n "confidence": {\n "description": "Value for confidence.",\n "enum": [\n "observed",\n "derived",\n "inferred"\n ],\n "type": "string"\n },\n "environment": {\n "anyOf": [\n {\n "properties": {\n "architecture": {\n "description": "Value for architecture.",\n "minLength": 1,\n "type": "string"\n },\n "id": {\n "description": "Value for id.",\n "minLength": 1,\n "type": "string"\n },\n "isolation": {\n "description": "Value for isolation.",\n "enum": [\n "none",\n "process",\n "container",\n "virtual-machine"\n ],\n "type": "string"\n },\n "platform": {\n "description": "Value for platform.",\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "id",\n "platform",\n "architecture",\n "isolation"\n ],\n "type": "object"\n },\n {\n "type": "null"\n }\n ],\n "description": "Value for environment."\n },\n "evidence_id": {\n "description": "Stable identifier of the recorded Evidence observation.",\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "evidence_links": {\n "description": "Value for evidence links.",\n "items": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "type": "array"\n },\n "limitations": {\n "description": "Value for limitations.",\n "items": {\n "type": "string"\n },\n "type": "array"\n },\n "locations": {\n "description": "Value for locations.",\n "items": {\n "oneOf": [\n {\n "properties": {\n "address": {\n "description": "Value for address.",\n "minLength": 1,\n "type": "string"\n },\n "kind": {\n "const": "address",\n "description": "Value for kind.",\n "type": "string"\n }\n },\n "required": [\n "kind",\n "address"\n ],\n "type": "object"\n },\n {\n "properties": {\n "end": {\n "description": "Value for end.",\n "minLength": 1,\n "type": "string"\n },\n "kind": {\n "const": "address-range",\n "description": "Value for kind.",\n "type": "string"\n },\n "start": {\n "description": "Value for start.",\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "kind",\n "start",\n "end"\n ],\n "type": "object"\n },\n {\n "properties": {\n "kind": {\n "const": "artifact-path",\n "description": "Value for kind.",\n "type": "string"\n },\n "path": {\n "description": "Local filesystem path used by this operation.",\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "kind",\n "path"\n ],\n "type": "object"\n },\n {\n "properties": {\n "kind": {\n "const": "file-offset",\n "description": "Value for kind.",\n "type": "string"\n },\n "offset": {\n "description": "Value for offset.",\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "kind",\n "offset"\n ],\n "type": "object"\n },\n {\n "properties": {\n "end": {\n "description": "Value for end.",\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "kind": {\n "const": "file-offset-range",\n "description": "Value for kind.",\n "type": "string"\n },\n "start": {\n "description": "Value for start.",\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "kind",\n "start",\n "end"\n ],\n "type": "object"\n }\n ]\n },\n "type": "array"\n },\n "normalized_result": {\n "$ref": "#/$defs/__schema0",\n "description": "Value for normalized result."\n },\n "operation": {\n "description": "Value for operation.",\n "minLength": 1,\n "type": "string"\n },\n "parameters": {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "description": "Value for parameters.",\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n },\n "predicate_type": {\n "description": "Value for predicate type.",\n "minLength": 1,\n "type": "string"\n },\n "provider": {\n "description": "Value for provider.",\n "properties": {\n "id": {\n "description": "Value for id.",\n "minLength": 1,\n "type": "string"\n },\n "name": {\n "description": "Exact name used by this operation.",\n "minLength": 1,\n "type": "string"\n },\n "version": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ],\n "description": "Value for version."\n }\n },\n "required": [\n "id",\n "name",\n "version"\n ],\n "type": "object"\n },\n "raw_result": {\n "anyOf": [\n {\n "$ref": "#/$defs/__schema0"\n },\n {\n "type": "null"\n }\n ],\n "description": "Value for raw result."\n },\n "subject": {\n "anyOf": [\n {\n "properties": {\n "architecture": {\n "anyOf": [\n {\n "enum": [\n "x86",\n "x86_64",\n "arm",\n "arm64"\n ],\n "type": "string"\n },\n {\n "type": "null"\n }\n ],\n "description": "Value for architecture."\n },\n "digest": {\n "description": "Value for digest.",\n "properties": {\n "sha256": {\n "description": "Value for sha256.",\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n }\n },\n "required": [\n "sha256"\n ],\n "type": "object"\n },\n "format": {\n "description": "Declared input artifact format.",\n "enum": [\n "hopper",\n "analysis-database",\n "mach-o",\n "elf",\n "pe",\n "dos-mz",\n "dos-com",\n "zip",\n "ipa",\n "apk",\n "msix",\n "appx",\n "asar",\n "dmg",\n "pkg",\n "plist",\n "javascript",\n "source-map",\n "directory",\n "file",\n "unknown",\n "mach-o-universal",\n "javascript-bundle",\n "entitlements"\n ],\n "type": "string"\n },\n "local_path": {\n "description": "Local filesystem path for local.",\n "type": "string"\n },\n "name": {\n "description": "Exact name used by this operation.",\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "name",\n "digest",\n "format",\n "architecture",\n "local_path"\n ],\n "type": "object"\n },\n {\n "type": "null"\n }\n ],\n "description": "Value for subject."\n }\n },\n "required": [\n "evidence_id",\n "subject",\n "provider",\n "predicate_type",\n "operation",\n "parameters",\n "raw_result",\n "normalized_result",\n "confidence",\n "authority",\n "environment",\n "limitations",\n "locations",\n "evidence_links"\n ],\n "type": "object"\n }\n },\n "required": [\n "static_members",\n "decompiler",\n "methods"\n ],\n "type": "object"\n },\n "kind": "application",\n "name": "import_managed_reconstruction",\n "outputSchema": {\n "$defs": {\n "__schema0": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "number"\n },\n {\n "type": "boolean"\n },\n {\n "type": "null"\n },\n {\n "items": {\n "$ref": "#/$defs/__schema0"\n },\n "type": "array"\n },\n {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n }\n ]\n }\n },\n "$schema": "https://json-schema.org/draft/2020-12/schema",\n "additionalProperties": false,\n "properties": {\n "evidence": {\n "additionalProperties": false,\n "properties": {\n "analysis_profile": {\n "additionalProperties": false,\n "properties": {\n "digest": {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n },\n "parameters": {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n },\n "provider": {\n "additionalProperties": false,\n "properties": {\n "id": {\n "minLength": 1,\n "type": "string"\n },\n "name": {\n "minLength": 1,\n "type": "string"\n },\n "version": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "id",\n "name",\n "version"\n ],\n "type": "object"\n }\n },\n "required": [\n "provider",\n "parameters",\n "digest"\n ],\n "type": "object"\n },\n "authority": {\n "enum": [\n "shipped-artifact",\n "controlled-replay",\n "historical-reference",\n "external-service",\n "analyst-inference"\n ],\n "type": "string"\n },\n "confidence": {\n "enum": [\n "observed",\n "derived",\n "inferred"\n ],\n "type": "string"\n },\n "environment": {\n "anyOf": [\n {\n "additionalProperties": false,\n "properties": {\n "architecture": {\n "minLength": 1,\n "type": "string"\n },\n "id": {\n "minLength": 1,\n "type": "string"\n },\n "isolation": {\n "enum": [\n "none",\n "process",\n "container",\n "virtual-machine"\n ],\n "type": "string"\n },\n "platform": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "id",\n "platform",\n "architecture",\n "isolation"\n ],\n "type": "object"\n },\n {\n "type": "null"\n }\n ]\n },\n "evidence_id": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "evidence_links": {\n "items": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "type": "array"\n },\n "limitations": {\n "items": {\n "type": "string"\n },\n "type": "array"\n },\n "locations": {\n "items": {\n "oneOf": [\n {\n "additionalProperties": false,\n "properties": {\n "address": {\n "minLength": 1,\n "type": "string"\n },\n "kind": {\n "const": "address",\n "type": "string"\n }\n },\n "required": [\n "kind",\n "address"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "end": {\n "minLength": 1,\n "type": "string"\n },\n "kind": {\n "const": "address-range",\n "type": "string"\n },\n "start": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "kind",\n "start",\n "end"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "kind": {\n "const": "artifact-path",\n "type": "string"\n },\n "path": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "kind",\n "path"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "kind": {\n "const": "file-offset",\n "type": "string"\n },\n "offset": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "kind",\n "offset"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "end": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "kind": {\n "const": "file-offset-range",\n "type": "string"\n },\n "start": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "kind",\n "start",\n "end"\n ],\n "type": "object"\n }\n ]\n },\n "type": "array"\n },\n "normalized_result": {\n "$ref": "#/$defs/__schema0"\n },\n "operation": {\n "minLength": 1,\n "type": "string"\n },\n "parameters": {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n },\n "predicate_type": {\n "minLength": 1,\n "type": "string"\n },\n "provider": {\n "additionalProperties": false,\n "properties": {\n "id": {\n "minLength": 1,\n "type": "string"\n },\n "name": {\n "minLength": 1,\n "type": "string"\n },\n "version": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "id",\n "name",\n "version"\n ],\n "type": "object"\n },\n "raw_result": {\n "anyOf": [\n {\n "$ref": "#/$defs/__schema0"\n },\n {\n "type": "null"\n }\n ]\n },\n "subject": {\n "anyOf": [\n {\n "additionalProperties": false,\n "properties": {\n "architecture": {\n "anyOf": [\n {\n "enum": [\n "x86",\n "x86_64",\n "arm",\n "arm64"\n ],\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "digest": {\n "additionalProperties": false,\n "properties": {\n "sha256": {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n }\n },\n "required": [\n "sha256"\n ],\n "type": "object"\n },\n "format": {\n "enum": [\n "hopper",\n "analysis-database",\n "mach-o",\n "elf",\n "pe",\n "dos-mz",\n "dos-com",\n "zip",\n "ipa",\n "apk",\n "msix",\n "appx",\n "asar",\n "dmg",\n "pkg",\n "plist",\n "javascript",\n "source-map",\n "directory",\n "file",\n "unknown",\n "mach-o-universal",\n "javascript-bundle",\n "entitlements"\n ],\n "type": "string"\n },\n "local_path": {\n "type": "string"\n },\n "name": {\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "name",\n "digest",\n "format",\n "architecture",\n "local_path"\n ],\n "type": "object"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "evidence_id",\n "subject",\n "provider",\n "predicate_type",\n "operation",\n "parameters",\n "raw_result",\n "normalized_result",\n "confidence",\n "authority",\n "environment",\n "limitations",\n "locations",\n "evidence_links"\n ],\n "type": "object"\n },\n "evidence_id": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "result": {\n "additionalProperties": false,\n "properties": {\n "decompiler": {\n "additionalProperties": false,\n "properties": {\n "executable_sha256": {\n "anyOf": [\n {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n },\n {\n "type": "null"\n }\n ],\n "default": null\n },\n "family": {\n "enum": [\n "ilspy",\n "dnspy",\n "dnlib",\n "mono-cecil",\n "other"\n ],\n "type": "string"\n },\n "name": {\n "minLength": 1,\n "type": "string"\n },\n "options": {\n "default": [],\n "items": {\n "type": "string"\n },\n "type": "array"\n },\n "options_sha256": {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n },\n "version": {\n "anyOf": [\n {\n "minLength": 1,\n "type": "string"\n },\n {\n "type": "null"\n }\n ],\n "default": null\n }\n },\n "required": [\n "name",\n "version",\n "family",\n "executable_sha256",\n "options",\n "options_sha256"\n ],\n "type": "object"\n },\n "evidence_links": {\n "items": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "maxItems": 1,\n "minItems": 1,\n "type": "array"\n },\n "executed": {\n "const": false,\n "type": "boolean"\n },\n "limitations": {\n "items": {\n "minLength": 1,\n "type": "string"\n },\n "type": "array"\n },\n "methods": {\n "items": {\n "additionalProperties": false,\n "properties": {\n "body_sha256": {\n "anyOf": [\n {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "declaring_type": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "il_size": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "name": {\n "type": "string"\n },\n "normalized_il_sha256": {\n "anyOf": [\n {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "reconstruction": {\n "additionalProperties": false,\n "properties": {\n "end_line": {\n "anyOf": [\n {\n "maximum": 9007199254740991,\n "minimum": 1,\n "type": "integer"\n },\n {\n "type": "null"\n }\n ]\n },\n "kind": {\n "enum": [\n "decompiled-csharp",\n "decompiled-il",\n "semantic-pseudocode"\n ],\n "type": "string"\n },\n "language": {\n "enum": [\n "csharp",\n "il",\n "pseudocode"\n ],\n "type": "string"\n },\n "line_count": {\n "maximum": 9007199254740991,\n "minimum": 1,\n "type": "integer"\n },\n "source_path": {\n "anyOf": [\n {\n "minLength": 1,\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "start_line": {\n "anyOf": [\n {\n "maximum": 9007199254740991,\n "minimum": 1,\n "type": "integer"\n },\n {\n "type": "null"\n }\n ]\n },\n "text": {\n "minLength": 1,\n "type": "string"\n },\n "text_length": {\n "maximum": 9007199254740991,\n "minimum": 1,\n "type": "integer"\n },\n "text_sha256": {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n }\n },\n "required": [\n "kind",\n "language",\n "text",\n "text_sha256",\n "text_length",\n "line_count",\n "source_path",\n "start_line",\n "end_line"\n ],\n "type": "object"\n },\n "signature_sha256": {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n },\n "token": {\n "pattern": "^0x[0-9a-f]{8}$",\n "type": "string"\n },\n "validation": {\n "additionalProperties": false,\n "properties": {\n "canonical_observation": {\n "const": false,\n "type": "boolean"\n },\n "confidence_floor": {\n "const": "inference",\n "type": "string"\n },\n "exact_build_required": {\n "const": true,\n "type": "boolean"\n },\n "matched_static_member": {\n "const": true,\n "type": "boolean"\n }\n },\n "required": [\n "matched_static_member",\n "exact_build_required",\n "canonical_observation",\n "confidence_floor"\n ],\n "type": "object"\n }\n },\n "required": [\n "token",\n "declaring_type",\n "name",\n "signature_sha256",\n "normalized_il_sha256",\n "body_sha256",\n "il_size",\n "reconstruction",\n "validation"\n ],\n "type": "object"\n },\n "minItems": 1,\n "type": "array"\n },\n "notes": {\n "items": {\n "minLength": 1,\n "type": "string"\n },\n "type": "array"\n },\n "phase": {\n "const": "reconstruction-import",\n "type": "string"\n },\n "reconstruction_id": {\n "pattern": "^mre_[a-f0-9]{64}$",\n "type": "string"\n },\n "static_observation": {\n "additionalProperties": false,\n "properties": {\n "artifact_path": {\n "minLength": 1,\n "type": "string"\n },\n "artifact_sha256": {\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n },\n "byte_length": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "evidence_id": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "metadata_status": {\n "enum": [\n "absent",\n "complete",\n "partial",\n "malformed"\n ],\n "type": "string"\n },\n "module_name": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n },\n "mvid": {\n "anyOf": [\n {\n "pattern": "^[0-9a-fA-F]{8}(?:-[0-9a-fA-F]{4}){3}-[0-9a-fA-F]{12}$",\n "type": "string"\n },\n {\n "type": "null"\n }\n ]\n }\n },\n "required": [\n "evidence_id",\n "artifact_sha256",\n "artifact_path",\n "byte_length",\n "module_name",\n "mvid",\n "metadata_status"\n ],\n "type": "object"\n },\n "summary": {\n "additionalProperties": false,\n "properties": {\n "decompiled_csharp_methods": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "decompiled_il_methods": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "imported_methods": {\n "maximum": 9007199254740991,\n "minimum": 1,\n "type": "integer"\n },\n "pseudocode_methods": {\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "total_text_bytes": {\n "maximum": 9007199254740991,\n "minimum": 1,\n "type": "integer"\n }\n },\n "required": [\n "imported_methods",\n "decompiled_csharp_methods",\n "decompiled_il_methods",\n "pseudocode_methods",\n "total_text_bytes"\n ],\n "type": "object"\n }\n },\n "required": [\n "reconstruction_id",\n "phase",\n "executed",\n "static_observation",\n "decompiler",\n "summary",\n "methods",\n "notes",\n "evidence_links",\n "limitations"\n ],\n "type": "object"\n }\n },\n "required": [\n "result",\n "evidence_id",\n "evidence"\n ],\n "type": "object"\n },\n "requiresSession": true,\n "title": "Import Managed Reconstruction"\n },\n {\n "analysisOperation": null,\n "annotations": {\n "destructiveHint": false,\n "idempotentHint": true,\n "openWorldHint": false,\n "readOnlyHint": false\n },\n "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.",\n "effects": {\n "accessesNetwork": false,\n "changesUiState": false,\n "idempotent": true,\n "launchesProcess": false,\n "mayDiscardData": false,\n "mutatesSession": true,\n "mutatesTarget": false,\n "writesFilesystem": false\n },\n "inputSchema": {\n "$defs": {\n "__schema0": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "number"\n },\n {\n "type": "boolean"\n },\n {\n "type": "null"\n },\n {\n "items": {\n "$ref": "#/$defs/__schema0"\n },\n "type": "array"\n },\n {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n }\n ]\n }\n },\n "$schema": "https://json-schema.org/draft/2020-12/schema",\n "anyOf": [\n {\n "additionalProperties": false,\n "properties": {\n "managed_artifact": {\n "additionalProperties": false,\n "description": "Value for managed artifact.",\n "properties": {\n "analysis_profile": {\n "description": "Value for analysis profile.",\n "properties": {\n "digest": {\n "description": "Value for digest.",\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n },\n "parameters": {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "description": "Value for parameters.",\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n },\n "provider": {\n "description": "Value for provider.",\n "properties": {\n "id": {\n "description": "Value for id.",\n "minLength": 1,\n "type": "string"\n },\n "name": {\n "description": "Exact name used by this operation.",\n "minLength": 1,\n "type": "string"\n },\n "version": {\n "description": "Value for version.",\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "id",\n "name",\n "version"\n ],\n "type": "object"\n }\n },\n "required": [\n "provider",\n "parameters",\n "digest"\n ],\n "type": "object"\n },\n "authority": {\n "description": "Value for authority.",\n "enum": [\n "shipped-artifact",\n "controlled-replay",\n "historical-reference",\n "external-service",\n "analyst-inference"\n ],\n "type": "string"\n },\n "confidence": {\n "description": "Value for confidence.",\n "enum": [\n "observed",\n "derived",\n "inferred"\n ],\n "type": "string"\n },\n "environment": {\n "anyOf": [\n {\n "properties": {\n "architecture": {\n "description": "Value for architecture.",\n "minLength": 1,\n "type": "string"\n },\n "id": {\n "description": "Value for id.",\n "minLength": 1,\n "type": "string"\n },\n "isolation": {\n "description": "Value for isolation.",\n "enum": [\n "none",\n "process",\n "container",\n "virtual-machine"\n ],\n "type": "string"\n },\n "platform": {\n "description": "Value for platform.",\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "id",\n "platform",\n "architecture",\n "isolation"\n ],\n "type": "object"\n },\n {\n "type": "null"\n }\n ],\n "description": "Value for environment."\n },\n "evidence_id": {\n "description": "Stable identifier of the recorded Evidence observation.",\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "evidence_links": {\n "description": "Value for evidence links.",\n "items": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "type": "array"\n },\n "limitations": {\n "description": "Value for limitations.",\n "items": {\n "type": "string"\n },\n "type": "array"\n },\n "locations": {\n "description": "Value for locations.",\n "items": {\n "oneOf": [\n {\n "properties": {\n "address": {\n "description": "Value for address.",\n "minLength": 1,\n "type": "string"\n },\n "kind": {\n "const": "address",\n "description": "Value for kind.",\n "type": "string"\n }\n },\n "required": [\n "kind",\n "address"\n ],\n "type": "object"\n },\n {\n "properties": {\n "end": {\n "description": "Value for end.",\n "minLength": 1,\n "type": "string"\n },\n "kind": {\n "const": "address-range",\n "description": "Value for kind.",\n "type": "string"\n },\n "start": {\n "description": "Value for start.",\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "kind",\n "start",\n "end"\n ],\n "type": "object"\n },\n {\n "properties": {\n "kind": {\n "const": "artifact-path",\n "description": "Value for kind.",\n "type": "string"\n },\n "path": {\n "description": "Local filesystem path used by this operation.",\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "kind",\n "path"\n ],\n "type": "object"\n },\n {\n "properties": {\n "kind": {\n "const": "file-offset",\n "description": "Value for kind.",\n "type": "string"\n },\n "offset": {\n "description": "Value for offset.",\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "kind",\n "offset"\n ],\n "type": "object"\n },\n {\n "properties": {\n "end": {\n "description": "Value for end.",\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "kind": {\n "const": "file-offset-range",\n "description": "Value for kind.",\n "type": "string"\n },\n "start": {\n "description": "Value for start.",\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "kind",\n "start",\n "end"\n ],\n "type": "object"\n }\n ]\n },\n "type": "array"\n },\n "normalized_result": {\n "$ref": "#/$defs/__schema0",\n "description": "Value for normalized result."\n },\n "operation": {\n "description": "Value for operation.",\n "minLength": 1,\n "type": "string"\n },\n "parameters": {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "description": "Value for parameters.",\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n },\n "predicate_type": {\n "description": "Value for predicate type.",\n "minLength": 1,\n "type": "string"\n },\n "provider": {\n "description": "Value for provider.",\n "properties": {\n "id": {\n "description": "Value for id.",\n "minLength": 1,\n "type": "string"\n },\n "name": {\n "description": "Exact name used by this operation.",\n "minLength": 1,\n "type": "string"\n },\n "version": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ],\n "description": "Value for version."\n }\n },\n "required": [\n "id",\n "name",\n "version"\n ],\n "type": "object"\n },\n "raw_result": {\n "anyOf": [\n {\n "$ref": "#/$defs/__schema0"\n },\n {\n "type": "null"\n }\n ],\n "description": "Value for raw result."\n },\n "subject": {\n "anyOf": [\n {\n "properties": {\n "architecture": {\n "anyOf": [\n {\n "enum": [\n "x86",\n "x86_64",\n "arm",\n "arm64"\n ],\n "type": "string"\n },\n {\n "type": "null"\n }\n ],\n "description": "Value for architecture."\n },\n "digest": {\n "description": "Value for digest.",\n "properties": {\n "sha256": {\n "description": "Value for sha256.",\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n }\n },\n "required": [\n "sha256"\n ],\n "type": "object"\n },\n "format": {\n "description": "Declared input artifact format.",\n "enum": [\n "hopper",\n "analysis-database",\n "mach-o",\n "elf",\n "pe",\n "dos-mz",\n "dos-com",\n "zip",\n "ipa",\n "apk",\n "msix",\n "appx",\n "asar",\n "dmg",\n "pkg",\n "plist",\n "javascript",\n "source-map",\n "directory",\n "file",\n "unknown",\n "mach-o-universal",\n "javascript-bundle",\n "entitlements"\n ],\n "type": "string"\n },\n "local_path": {\n "description": "Local filesystem path for local.",\n "type": "string"\n },\n "name": {\n "description": "Exact name used by this operation.",\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "name",\n "digest",\n "format",\n "architecture",\n "local_path"\n ],\n "type": "object"\n },\n {\n "type": "null"\n }\n ],\n "description": "Value for subject."\n }\n },\n "required": [\n "evidence_id",\n "subject",\n "provider",\n "predicate_type",\n "operation",\n "parameters",\n "raw_result",\n "normalized_result",\n "confidence",\n "authority",\n "environment",\n "limitations",\n "locations",\n "evidence_links"\n ],\n "type": "object"\n },\n "managed_members": {\n "additionalProperties": false,\n "description": "Value for managed members.",\n "properties": {\n "analysis_profile": {\n "description": "Value for analysis profile.",\n "properties": {\n "digest": {\n "description": "Value for digest.",\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n },\n "parameters": {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "description": "Value for parameters.",\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n },\n "provider": {\n "description": "Value for provider.",\n "properties": {\n "id": {\n "description": "Value for id.",\n "minLength": 1,\n "type": "string"\n },\n "name": {\n "description": "Exact name used by this operation.",\n "minLength": 1,\n "type": "string"\n },\n "version": {\n "description": "Value for version.",\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "id",\n "name",\n "version"\n ],\n "type": "object"\n }\n },\n "required": [\n "provider",\n "parameters",\n "digest"\n ],\n "type": "object"\n },\n "authority": {\n "description": "Value for authority.",\n "enum": [\n "shipped-artifact",\n "controlled-replay",\n "historical-reference",\n "external-service",\n "analyst-inference"\n ],\n "type": "string"\n },\n "confidence": {\n "description": "Value for confidence.",\n "enum": [\n "observed",\n "derived",\n "inferred"\n ],\n "type": "string"\n },\n "environment": {\n "anyOf": [\n {\n "properties": {\n "architecture": {\n "description": "Value for architecture.",\n "minLength": 1,\n "type": "string"\n },\n "id": {\n "description": "Value for id.",\n "minLength": 1,\n "type": "string"\n },\n "isolation": {\n "description": "Value for isolation.",\n "enum": [\n "none",\n "process",\n "container",\n "virtual-machine"\n ],\n "type": "string"\n },\n "platform": {\n "description": "Value for platform.",\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "id",\n "platform",\n "architecture",\n "isolation"\n ],\n "type": "object"\n },\n {\n "type": "null"\n }\n ],\n "description": "Value for environment."\n },\n "evidence_id": {\n "description": "Stable identifier of the recorded Evidence observation.",\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "evidence_links": {\n "description": "Value for evidence links.",\n "items": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "type": "array"\n },\n "limitations": {\n "description": "Value for limitations.",\n "items": {\n "type": "string"\n },\n "type": "array"\n },\n "locations": {\n "description": "Value for locations.",\n "items": {\n "oneOf": [\n {\n "properties": {\n "address": {\n "description": "Value for address.",\n "minLength": 1,\n "type": "string"\n },\n "kind": {\n "const": "address",\n "description": "Value for kind.",\n "type": "string"\n }\n },\n "required": [\n "kind",\n "address"\n ],\n "type": "object"\n },\n {\n "properties": {\n "end": {\n "description": "Value for end.",\n "minLength": 1,\n "type": "string"\n },\n "kind": {\n "const": "address-range",\n "description": "Value for kind.",\n "type": "string"\n },\n "start": {\n "description": "Value for start.",\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "kind",\n "start",\n "end"\n ],\n "type": "object"\n },\n {\n "properties": {\n "kind": {\n "const": "artifact-path",\n "description": "Value for kind.",\n "type": "string"\n },\n "path": {\n "description": "Local filesystem path used by this operation.",\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "kind",\n "path"\n ],\n "type": "object"\n },\n {\n "properties": {\n "kind": {\n "const": "file-offset",\n "description": "Value for kind.",\n "type": "string"\n },\n "offset": {\n "description": "Value for offset.",\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "kind",\n "offset"\n ],\n "type": "object"\n },\n {\n "properties": {\n "end": {\n "description": "Value for end.",\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "kind": {\n "const": "file-offset-range",\n "description": "Value for kind.",\n "type": "string"\n },\n "start": {\n "description": "Value for start.",\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "kind",\n "start",\n "end"\n ],\n "type": "object"\n }\n ]\n },\n "type": "array"\n },\n "normalized_result": {\n "$ref": "#/$defs/__schema0",\n "description": "Value for normalized result."\n },\n "operation": {\n "description": "Value for operation.",\n "minLength": 1,\n "type": "string"\n },\n "parameters": {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "description": "Value for parameters.",\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n },\n "predicate_type": {\n "description": "Value for predicate type.",\n "minLength": 1,\n "type": "string"\n },\n "provider": {\n "description": "Value for provider.",\n "properties": {\n "id": {\n "description": "Value for id.",\n "minLength": 1,\n "type": "string"\n },\n "name": {\n "description": "Exact name used by this operation.",\n "minLength": 1,\n "type": "string"\n },\n "version": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ],\n "description": "Value for version."\n }\n },\n "required": [\n "id",\n "name",\n "version"\n ],\n "type": "object"\n },\n "raw_result": {\n "anyOf": [\n {\n "$ref": "#/$defs/__schema0"\n },\n {\n "type": "null"\n }\n ],\n "description": "Value for raw result."\n },\n "subject": {\n "anyOf": [\n {\n "properties": {\n "architecture": {\n "anyOf": [\n {\n "enum": [\n "x86",\n "x86_64",\n "arm",\n "arm64"\n ],\n "type": "string"\n },\n {\n "type": "null"\n }\n ],\n "description": "Value for architecture."\n },\n "digest": {\n "description": "Value for digest.",\n "properties": {\n "sha256": {\n "description": "Value for sha256.",\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n }\n },\n "required": [\n "sha256"\n ],\n "type": "object"\n },\n "format": {\n "description": "Declared input artifact format.",\n "enum": [\n "hopper",\n "analysis-database",\n "mach-o",\n "elf",\n "pe",\n "dos-mz",\n "dos-com",\n "zip",\n "ipa",\n "apk",\n "msix",\n "appx",\n "asar",\n "dmg",\n "pkg",\n "plist",\n "javascript",\n "source-map",\n "directory",\n "file",\n "unknown",\n "mach-o-universal",\n "javascript-bundle",\n "entitlements"\n ],\n "type": "string"\n },\n "local_path": {\n "description": "Local filesystem path for local.",\n "type": "string"\n },\n "name": {\n "description": "Exact name used by this operation.",\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "name",\n "digest",\n "format",\n "architecture",\n "local_path"\n ],\n "type": "object"\n },\n {\n "type": "null"\n }\n ],\n "description": "Value for subject."\n }\n },\n "required": [\n "evidence_id",\n "subject",\n "provider",\n "predicate_type",\n "operation",\n "parameters",\n "raw_result",\n "normalized_result",\n "confidence",\n "authority",\n "environment",\n "limitations",\n "locations",\n "evidence_links"\n ],\n "type": "object"\n },\n "managed_native_boundaries": {\n "additionalProperties": false,\n "description": "Value for managed native boundaries.",\n "properties": {\n "analysis_profile": {\n "description": "Value for analysis profile.",\n "properties": {\n "digest": {\n "description": "Value for digest.",\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n },\n "parameters": {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "description": "Value for parameters.",\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n },\n "provider": {\n "description": "Value for provider.",\n "properties": {\n "id": {\n "description": "Value for id.",\n "minLength": 1,\n "type": "string"\n },\n "name": {\n "description": "Exact name used by this operation.",\n "minLength": 1,\n "type": "string"\n },\n "version": {\n "description": "Value for version.",\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "id",\n "name",\n "version"\n ],\n "type": "object"\n }\n },\n "required": [\n "provider",\n "parameters",\n "digest"\n ],\n "type": "object"\n },\n "authority": {\n "description": "Value for authority.",\n "enum": [\n "shipped-artifact",\n "controlled-replay",\n "historical-reference",\n "external-service",\n "analyst-inference"\n ],\n "type": "string"\n },\n "confidence": {\n "description": "Value for confidence.",\n "enum": [\n "observed",\n "derived",\n "inferred"\n ],\n "type": "string"\n },\n "environment": {\n "anyOf": [\n {\n "properties": {\n "architecture": {\n "description": "Value for architecture.",\n "minLength": 1,\n "type": "string"\n },\n "id": {\n "description": "Value for id.",\n "minLength": 1,\n "type": "string"\n },\n "isolation": {\n "description": "Value for isolation.",\n "enum": [\n "none",\n "process",\n "container",\n "virtual-machine"\n ],\n "type": "string"\n },\n "platform": {\n "description": "Value for platform.",\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "id",\n "platform",\n "architecture",\n "isolation"\n ],\n "type": "object"\n },\n {\n "type": "null"\n }\n ],\n "description": "Value for environment."\n },\n "evidence_id": {\n "description": "Stable identifier of the recorded Evidence observation.",\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "evidence_links": {\n "description": "Value for evidence links.",\n "items": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "type": "array"\n },\n "limitations": {\n "description": "Value for limitations.",\n "items": {\n "type": "string"\n },\n "type": "array"\n },\n "locations": {\n "description": "Value for locations.",\n "items": {\n "oneOf": [\n {\n "properties": {\n "address": {\n "description": "Value for address.",\n "minLength": 1,\n "type": "string"\n },\n "kind": {\n "const": "address",\n "description": "Value for kind.",\n "type": "string"\n }\n },\n "required": [\n "kind",\n "address"\n ],\n "type": "object"\n },\n {\n "properties": {\n "end": {\n "description": "Value for end.",\n "minLength": 1,\n "type": "string"\n },\n "kind": {\n "const": "address-range",\n "description": "Value for kind.",\n "type": "string"\n },\n "start": {\n "description": "Value for start.",\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "kind",\n "start",\n "end"\n ],\n "type": "object"\n },\n {\n "properties": {\n "kind": {\n "const": "artifact-path",\n "description": "Value for kind.",\n "type": "string"\n },\n "path": {\n "description": "Local filesystem path used by this operation.",\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "kind",\n "path"\n ],\n "type": "object"\n },\n {\n "properties": {\n "kind": {\n "const": "file-offset",\n "description": "Value for kind.",\n "type": "string"\n },\n "offset": {\n "description": "Value for offset.",\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "kind",\n "offset"\n ],\n "type": "object"\n },\n {\n "properties": {\n "end": {\n "description": "Value for end.",\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n },\n "kind": {\n "const": "file-offset-range",\n "description": "Value for kind.",\n "type": "string"\n },\n "start": {\n "description": "Value for start.",\n "maximum": 9007199254740991,\n "minimum": 0,\n "type": "integer"\n }\n },\n "required": [\n "kind",\n "start",\n "end"\n ],\n "type": "object"\n }\n ]\n },\n "type": "array"\n },\n "normalized_result": {\n "$ref": "#/$defs/__schema0",\n "description": "Value for normalized result."\n },\n "operation": {\n "description": "Value for operation.",\n "minLength": 1,\n "type": "string"\n },\n "parameters": {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "description": "Value for parameters.",\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n },\n "predicate_type": {\n "description": "Value for predicate type.",\n "minLength": 1,\n "type": "string"\n },\n "provider": {\n "description": "Value for provider.",\n "properties": {\n "id": {\n "description": "Value for id.",\n "minLength": 1,\n "type": "string"\n },\n "name": {\n "description": "Exact name used by this operation.",\n "minLength": 1,\n "type": "string"\n },\n "version": {\n "anyOf": [\n {\n "type": "string"\n },\n {\n "type": "null"\n }\n ],\n "description": "Value for version."\n }\n },\n "required": [\n "id",\n "name",\n "version"\n ],\n "type": "object"\n },\n "raw_result": {\n "anyOf": [\n {\n "$ref": "#/$defs/__schema0"\n },\n {\n "type": "null"\n }\n ],\n "description": "Value for raw result."\n },\n "subject": {\n "anyOf": [\n {\n "properties": {\n "architecture": {\n "anyOf": [\n {\n "enum": [\n "x86",\n "x86_64",\n "arm",\n "arm64"\n ],\n "type": "string"\n },\n {\n "type": "null"\n }\n ],\n "description": "Value for architecture."\n },\n "digest": {\n "description": "Value for digest.",\n "properties": {\n "sha256": {\n "description": "Value for sha256.",\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n }\n },\n "required": [\n "sha256"\n ],\n "type": "object"\n },\n "format": {\n "description": "Declared input artifact format.",\n "enum": [\n "hopper",\n "analysis-database",\n "mach-o",\n "elf",\n "pe",\n "dos-mz",\n "dos-com",\n "zip",\n "ipa",\n "apk",\n "msix",\n "appx",\n "asar",\n "dmg",\n "pkg",\n "plist",\n "javascript",\n "source-map",\n "directory",\n "file",\n "unknown",\n "mach-o-universal",\n "javascript-bundle",\n "entitlements"\n ],\n "type": "string"\n },\n "local_path": {\n "description": "Local filesystem path for local.",\n "type": "string"\n },\n "name": {\n "description": "Exact name used by this operation.",\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "name",\n "digest",\n "format",\n "architecture",\n "local_path"\n ],\n "type": "object"\n },\n {\n "type": "null"\n }\n ],\n "description": "Value for subject."\n }\n },\n "required": [\n "evidence_id",\n "subject",\n "provider",\n "predicate_type",\n "operation",\n "parameters",\n "raw_result",\n "normalized_result",\n "confidence",\n "authority",\n "environment",\n "limitations",\n "locations",\n "evidence_links"\n ],\n "type": "object"\n }\n },\n "required": [\n "managed_artifact"\n ],\n "type": "object"\n },\n {\n "additionalProperties": false,\n "properties": {\n "managed_artifact": {\n "additionalProperties": false,\n "description": "Value for managed artifact.",\n "properties": {\n "analysis_profile": {\n "description": "Value for analysis profile.",\n "properties": {\n "digest": {\n "description": "Value for digest.",\n "pattern": "^[a-f0-9]{64}$",\n "type": "string"\n },\n "parameters": {\n "additionalProperties": {\n "$ref": "#/$defs/__schema0"\n },\n "description": "Value for parameters.",\n "propertyNames": {\n "type": "string"\n },\n "type": "object"\n },\n "provider": {\n "description": "Value for provider.",\n "properties": {\n "id": {\n "description": "Value for id.",\n "minLength": 1,\n "type": "string"\n },\n "name": {\n "description": "Exact name used by this operation.",\n "minLength": 1,\n "type": "string"\n },\n "version": {\n "description": "Value for version.",\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "id",\n "name",\n "version"\n ],\n "type": "object"\n }\n },\n "required": [\n "provider",\n "parameters",\n "digest"\n ],\n "type": "object"\n },\n "authority": {\n "description": "Value for authority.",\n "enum": [\n "shipped-artifact",\n "controlled-replay",\n "historical-reference",\n "external-service",\n "analyst-inference"\n ],\n "type": "string"\n },\n "confidence": {\n "description": "Value for confidence.",\n "enum": [\n "observed",\n "derived",\n "inferred"\n ],\n "type": "string"\n },\n "environment": {\n "anyOf": [\n {\n "properties": {\n "architecture": {\n "description": "Value for architecture.",\n "minLength": 1,\n "type": "string"\n },\n "id": {\n "description": "Value for id.",\n "minLength": 1,\n "type": "string"\n },\n "isolation": {\n "description": "Value for isolation.",\n "enum": [\n "none",\n "process",\n "container",\n "virtual-machine"\n ],\n "type": "string"\n },\n "platform": {\n "description": "Value for platform.",\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "id",\n "platform",\n "architecture",\n "isolation"\n ],\n "type": "object"\n },\n {\n "type": "null"\n }\n ],\n "description": "Value for environment."\n },\n "evidence_id": {\n "description": "Stable identifier of the recorded Evidence observation.",\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "evidence_links": {\n "description": "Value for evidence links.",\n "items": {\n "pattern": "^ev_[a-f0-9]{64}$",\n "type": "string"\n },\n "type": "array"\n },\n "limitations": {\n "description": "Value for limitations.",\n "items": {\n "type": "string"\n },\n "type": "array"\n },\n "locations": {\n "description": "Value for locations.",\n "items": {\n "oneOf": [\n {\n "properties": {\n "address": {\n "description": "Value for address.",\n "minLength": 1,\n "type": "string"\n },\n "kind": {\n "const": "address",\n "description": "Value for kind.",\n "type": "string"\n }\n },\n "required": [\n "kind",\n "address"\n ],\n "type": "object"\n },\n {\n "properties": {\n "end": {\n "description": "Value for end.",\n "minLength": 1,\n "type": "string"\n },\n "kind": {\n "const": "address-range",\n "description": "Value for kind.",\n "type": "string"\n },\n "start": {\n "description": "Value for start.",\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "kind",\n "start",\n "end"\n ],\n "type": "object"\n },\n {\n "properties": {\n "kind": {\n "const": "artifact-path",\n "description": "Value for kind.",\n "type": "string"\n },\n "path": {\n "description": "Local filesystem path used by this operation.",\n "minLength": 1,\n "type": "string"\n }\n },\n "required": [\n "kind",\n "path"\n ],\n "type": "object"\n },\n {\n "properties": {\n "kind": {\n "const": "file-offset",\n "description": "Value for kind.",\n "type": "string"\n },\n "offset": {\n "description": "Value for offset.",\n "maximum": 9007199254740991,\n "minim