From 778b995bbfd4b4bb28ace9bf0f7428e50cd1be50 Mon Sep 17 00:00:00 2001 From: N0zoM1z0 <1705004398@qq.com> Date: Thu, 16 Jul 2026 10:21:41 +0800 Subject: [PATCH] feat(application): add cross-layer graph workflows --- .github/pull_request_template.md | 2 +- AGENTS.md | 6 +- CONTRIBUTING.md | 4 +- README.md | 12 +- README_ar.md | 7 +- README_ja.md | 7 +- README_ko.md | 7 +- README_zh.md | 7 +- docs/api/assets/hierarchy.js | 2 +- docs/api/assets/navigation.js | 2 +- docs/api/assets/search.js | 2 +- ...or.JavaScriptArtifactGraphAccumulator.html | 16 +- ...rmissionAuthority.PermissionPathError.html | 2 +- ...ocessCaptureError.ProcessCaptureError.html | 2 +- ...sionStore.ProjectPermissionStoreError.html | 2 +- ...permissionPolicy.PermissionGrantError.html | 2 +- ...idra_GhidraLauncher.GhidraLaunchError.html | 2 +- ...GhidraSessionError.GhidraSessionError.html | 2 +- .../ghidra_protocol.GhidraRemoteError.html | 2 +- ...ityInventory.buildCapabilityInventory.html | 4 +- .../application_Doctor.runDoctor.html | 4 +- ...raphContext.electronFindingSourceNode.html | 4 +- ...e.createJavaScriptApplicationEvidence.html | 4 +- ...ceGraph.parseApplicationGraphEvidence.html | 44 +++ ...eGraph.parseNativeApplicationEvidence.html | 44 +++ ...createApplicationFeatureTraceEvidence.html | 45 +++ ...eApplicationVersionComparisonEvidence.html | 45 +++ ...ce.compareApplicationVersionsEvidence.html | 44 +++ ...rvice.traceApplicationFeatureEvidence.html | 44 +++ ...hBuilder.buildJavaScriptArtifactGraph.html | 4 +- ...ctGraphContext.createElectronRoleNode.html | 4 +- ...iptArtifactGraphContext.sourceNodeFor.html | 4 +- ...hEvidence.artifactObservationEvidence.html | 4 +- ...tGraphEvidence.astObservationEvidence.html | 4 +- ...GraphEvidence.staticInferenceEvidence.html | 4 +- ...tGraphEvidence.unavailableAstEvidence.html | 4 +- ...phStructure.addJavaScriptPackageNodes.html | 4 +- ...ture.createJavaScriptArtifactRootNode.html | 4 +- ...vaScriptRuntimeReconciliationEvidence.html | 4 +- docs/api/functions/cli.createCli.html | 2 +- ...buildJavaScriptApplicationChangeGraph.html | 44 +++ ...Graph.createJavaScriptApplicationEdge.html | 4 +- ...raph.createJavaScriptApplicationGraph.html | 4 +- ...Graph.createJavaScriptApplicationNode.html | 4 +- ...Graph.parseJavaScriptApplicationGraph.html | 4 +- ....compareJavaScriptApplicationVersions.html | 44 +++ ...classifyJavaScriptApplicationVersions.html | 45 +++ ...ys.matchJavaScriptApplicationVersions.html | 45 +++ ...atureSeed.findApplicationFeatureSeeds.html | 45 +++ ...tFeatureTrace.traceApplicationFeature.html | 44 +++ ...eTraversal.traverseApplicationFeature.html | 47 +++ ...Handoff.buildJavaScriptNativeHandoffs.html | 46 +++ ...nciliation.reconcileJavaScriptRuntime.html | 4 +- ...JavaScriptRuntimeReconciliationResult.html | 4 +- ...ndidates.staticNodeWithinRuntimeScope.html | 4 +- .../server_createServer.createServer.html | 2 +- ...icationTools.registerApplicationTools.html | 45 +++ docs/api/hierarchy.html | 56 +-- docs/api/index.html | 4 +- ...ation_AnalysisProvider.AnalysisClient.html | 2 +- ...nalysisProvider.AnalysisOperationPort.html | 2 +- ...ion_AnalysisProvider.AnalysisProvider.html | 2 +- ...sisProvider.AnalysisProviderCandidate.html | 2 +- ...n_BinarySessionPort.BinarySessionPort.html | 2 +- ...ryGraphContext.ElectronGraphEdgeInput.html | 6 +- ...eGraph.ApplicationGraphEvidenceSource.html | 76 ++++ ...riptArtifactGraphContext.AstEdgeInput.html | 8 +- ...rtifactGraphContext.ContainsEdgeInput.html | 6 +- ...tifactGraphContext.InferenceEdgeInput.html | 8 +- ...ontext.JavaScriptArtifactGraphContext.html | 12 +- ...tifactGraphContext.RoleAssetLinkInput.html | 4 +- ...actGraphContext.UnavailableParseInput.html | 4 +- ...avaScriptArtifactReconstructionResult.html | 4 +- .../application_Setup.SetupHost.html | 6 +- .../application_Setup.SetupResult.html | 4 +- ...tracts_toolContractTypes.ToolContract.html | 16 +- ...raph.ApplicationChangeGraphProjection.html | 76 ++++ ...ationVersionComparisonProjectionInput.html | 82 ++++ ...tems.ApplicationVersionItemProjection.html | 64 +++ ....ApplicationVersionMatchingProjection.html | 82 ++++ ...ersionKeys.ApplicationVersionNodePair.html | 76 ++++ ...atureSeed.ApplicationFeatureSeedMatch.html | 76 ++++ ...pplicationFeatureTraceProjectionInput.html | 88 +++++ ...Traversal.ApplicationFeatureTraversal.html | 94 +++++ ....ReconciledApplicationGraphProjection.html | 4 +- ...ionMatching.RuntimeMatchingProjection.html | 4 +- ...conciliationParsing.ParsedStaticLayer.html | 6 +- ...conciliationRuntime.RuntimeProjection.html | 8 +- ...onRuntime.RuntimeReconciliationEntity.html | 4 +- ...aticCandidates.StaticRuntimeCandidate.html | 4 +- ...main_permissionPolicy.PermissionGrant.html | 2 +- ...in_permissionPolicy.PermissionRequest.html | 2 +- ...main_permissionPolicy.PermissionScope.html | 2 +- ...domain_webInventory.StableWebResource.html | 2 +- ...ebInventory.WebInventoryResourceInput.html | 2 +- .../ghidra_GhidraLauncher.GhidraLaunch.html | 2 +- ...essionError.GhidraSessionErrorOptions.html | 2 +- .../hopper_BridgeLauncher.BridgeLaunch.html | 2 +- ...ProviderProcess.ProviderProcessLaunch.html | 2 +- ...rver_createServer.CreateServerOptions.html | 22 +- .../application_InvestigationProviders.html | 4 +- ...on_JavaScriptApplicationEvidenceGraph.html | 40 ++ ...JavaScriptApplicationWorkflowEvidence.html | 36 ++ ..._JavaScriptApplicationWorkflowService.html | 36 ++ .../contracts_applicationToolContracts.html | 36 ++ ...javascriptApplicationWorkflowExamples.html | 36 ++ ...avascriptRuntimeReconciliationExample.html | 4 +- ...main_javascriptApplicationChangeGraph.html | 40 ++ ...avascriptApplicationVersionComparison.html | 40 ++ ...ptApplicationVersionComparisonSchemas.html | 40 ++ ...ain_javascriptApplicationVersionItems.html | 40 ++ ...main_javascriptApplicationVersionKeys.html | 40 ++ .../modules/domain_javascriptFeatureSeed.html | 40 ++ .../domain_javascriptFeatureTrace.html | 40 ++ .../domain_javascriptFeatureTraceSchemas.html | 40 ++ .../domain_javascriptFeatureTraversal.html | 40 ++ .../domain_javascriptNativeHandoff.html | 36 ++ .../server_registerApplicationTools.html | 36 ++ .../contracts_toolContractTypes.ToolKind.html | 2 +- ...tracts_toolContracts.OfficialToolName.html | 2 +- ...denceSchemas.ApplicationGraphEvidence.html | 2 +- ...idenceSchemas.ApplicationNodeIdentity.html | 2 +- ...emas.ApplicationVersionComparisonItem.html | 33 ++ ...as.ApplicationVersionComparisonResult.html | 33 ++ ...nSchemas.ApplicationVersionMatchBasis.html | 33 ++ ...hemas.CompareApplicationVersionsInput.html | 33 ++ ...reTraceSchemas.ApplicationFeatureSeed.html | 33 ++ ...Schemas.ApplicationFeatureTraceResult.html | 33 ++ ...eSchemas.TraceApplicationFeatureInput.html | 33 ++ ...roviders.ARTIFACT_COMPARISON_PROVIDER.html | 2 +- ...nProviders.BUNDLE_COMPARISON_PROVIDER.html | 2 +- ...stigationProviders.CALL_PATH_PROVIDER.html | 2 +- ...onProviders.CHANGED_BEHAVIOR_PROVIDER.html | 2 +- ...roviders.FUNCTION_COMPARISON_PROVIDER.html | 2 +- ...ASCRIPT_APPLICATION_WORKFLOW_PROVIDER.html | 44 +++ ...tionProviders.RECONSTRUCTION_PROVIDER.html | 2 +- ...tionProviders.STATIC_RUNTIME_PROVIDER.html | 2 +- ...lContracts.APPLICATION_TOOL_CONTRACTS.html | 35 ++ ...PPLICATION_VERSION_COMPARISON_EXAMPLE.html | 42 ++ ...ples.JAVASCRIPT_FEATURE_TRACE_EXAMPLE.html | 44 +++ ...VASCRIPT_APPLICATION_EVIDENCE_EXAMPLE.html | 35 ++ ...SCRIPT_RUNTIME_RECONCILIATION_EXAMPLE.html | 2 +- ...acts_promptContracts.PROMPT_CONTRACTS.html | 2 +- ...toolContracts.ENHANCED_TOOL_CONTRACTS.html | 2 +- ...toolContracts.OFFICIAL_TOOL_CONTRACTS.html | 2 +- ..._toolContracts.SESSION_TOOL_CONTRACTS.html | 2 +- ...ontracts_toolContracts.TOOL_CONTRACTS.html | 4 +- ...oolContracts.binarySessionInputSchema.html | 2 +- ...scriptApplicationAnalysisResultSchema.html | 2 +- ...enceSchemas.applicationCoverageSchema.html | 2 +- ...chemas.applicationGraphEvidenceSchema.html | 4 +- ...Schemas.applicationNodeIdentitySchema.html | 2 +- ...raph.javascriptApplicationGraphSchema.html | 2 +- ...aphSchemas.applicationEdgeInputSchema.html | 2 +- ...ionGraphSchemas.applicationEdgeSchema.html | 2 +- ...aphSchemas.applicationNodeInputSchema.html | 2 +- ...emas.applicationNodeObservationSchema.html | 2 +- ...ionGraphSchemas.applicationNodeSchema.html | 2 +- ...javascriptApplicationGraphInputSchema.html | 2 +- ...avascriptApplicationGraphRecordSchema.html | 2 +- ...licationVersionComparisonResultSchema.html | 35 ++ ...compareApplicationVersionsInputSchema.html | 35 ++ ...s.applicationFeatureTraceResultSchema.html | 35 ++ ...as.traceApplicationFeatureInputSchema.html | 35 ++ ...riptRuntimeReconciliationResultSchema.html | 2 +- docs/architecture.mermaid | 2 +- docs/javascript-application-workflows.md | 74 ++++ docs/mcp-prompts.md | 2 +- docs/product-catalog.json | 41 +- package.json | 1 + scripts/lib/product-catalog.mjs | 25 ++ .../verify-local-application-workflows.mjs | 134 +++++++ skills/rea-analysis/SKILL.md | 22 +- src/application/InvestigationProviders.ts | 7 + .../JavaScriptApplicationEvidenceGraph.ts | 141 +++++++ .../JavaScriptApplicationWorkflowEvidence.ts | 45 +++ .../JavaScriptApplicationWorkflowService.ts | 121 ++++++ src/cli.ts | 2 + src/cliApplicationCommands.ts | 68 ++++ src/cliCommandNames.ts | 2 + src/cliElectronCommands.ts | 64 +-- src/cliJsonInput.ts | 63 +++ src/contracts/applicationToolContracts.ts | 65 +++ .../javascriptApplicationWorkflowExamples.ts | 64 +++ .../javascriptRuntimeReconciliationExample.ts | 3 + src/contracts/promptContracts.ts | 22 +- src/contracts/toolContractTypes.ts | 1 + src/contracts/toolContracts.ts | 2 + .../javascriptApplicationChangeGraph.ts | 324 +++++++++++++++ .../javascriptApplicationEvidenceSchemas.ts | 10 + .../javascriptApplicationVersionComparison.ts | 187 +++++++++ ...riptApplicationVersionComparisonSchemas.ts | 161 ++++++++ .../javascriptApplicationVersionItems.ts | 371 ++++++++++++++++++ .../javascriptApplicationVersionKeys.ts | 273 +++++++++++++ src/domain/javascriptFeatureSeed.ts | 191 +++++++++ src/domain/javascriptFeatureTrace.ts | 349 ++++++++++++++++ src/domain/javascriptFeatureTraceSchemas.ts | 157 ++++++++ src/domain/javascriptFeatureTraversal.ts | 143 +++++++ src/domain/javascriptNativeHandoff.ts | 132 +++++++ src/generatedPackageMetadata.ts | 2 +- src/server/createServer.ts | 17 + src/server/registerApplicationTools.ts | 131 +++++++ tests/applicationWorkflowCli.test.ts | 67 ++++ tests/applicationWorkflowMcp.test.ts | 78 ++++ tests/applicationWorkflowVerifier.test.ts | 61 +++ tests/browserMcp.test.ts | 2 +- tests/contractSnapshot.test.ts | 9 +- .../fixtures/javascriptArtifactApplication.ts | 95 +++++ tests/integration/serverIntegration.test.ts | 4 +- tests/javascriptApplicationWorkflows.test.ts | 291 ++++++++++++++ tests/productCatalog.test.ts | 7 + tests/promptMcp.test.ts | 2 +- tests/readmeConsistency.test.ts | 2 + tests/runtime.test.ts | 6 +- tests/serverIdentity.test.ts | 10 +- tests/sessionMcp.test.ts | 2 +- tests/setupSkill.test.ts | 2 +- tests/toolContracts.test.ts | 11 +- 218 files changed, 6783 insertions(+), 325 deletions(-) create mode 100644 docs/api/functions/application_JavaScriptApplicationEvidenceGraph.parseApplicationGraphEvidence.html create mode 100644 docs/api/functions/application_JavaScriptApplicationEvidenceGraph.parseNativeApplicationEvidence.html create mode 100644 docs/api/functions/application_JavaScriptApplicationWorkflowEvidence.createApplicationFeatureTraceEvidence.html create mode 100644 docs/api/functions/application_JavaScriptApplicationWorkflowEvidence.createApplicationVersionComparisonEvidence.html create mode 100644 docs/api/functions/application_JavaScriptApplicationWorkflowService.compareApplicationVersionsEvidence.html create mode 100644 docs/api/functions/application_JavaScriptApplicationWorkflowService.traceApplicationFeatureEvidence.html create mode 100644 docs/api/functions/domain_javascriptApplicationChangeGraph.buildJavaScriptApplicationChangeGraph.html create mode 100644 docs/api/functions/domain_javascriptApplicationVersionComparison.compareJavaScriptApplicationVersions.html create mode 100644 docs/api/functions/domain_javascriptApplicationVersionItems.classifyJavaScriptApplicationVersions.html create mode 100644 docs/api/functions/domain_javascriptApplicationVersionKeys.matchJavaScriptApplicationVersions.html create mode 100644 docs/api/functions/domain_javascriptFeatureSeed.findApplicationFeatureSeeds.html create mode 100644 docs/api/functions/domain_javascriptFeatureTrace.traceApplicationFeature.html create mode 100644 docs/api/functions/domain_javascriptFeatureTraversal.traverseApplicationFeature.html create mode 100644 docs/api/functions/domain_javascriptNativeHandoff.buildJavaScriptNativeHandoffs.html create mode 100644 docs/api/functions/server_registerApplicationTools.registerApplicationTools.html create mode 100644 docs/api/interfaces/application_JavaScriptApplicationEvidenceGraph.ApplicationGraphEvidenceSource.html create mode 100644 docs/api/interfaces/domain_javascriptApplicationChangeGraph.ApplicationChangeGraphProjection.html create mode 100644 docs/api/interfaces/domain_javascriptApplicationVersionComparison.ApplicationVersionComparisonProjectionInput.html create mode 100644 docs/api/interfaces/domain_javascriptApplicationVersionItems.ApplicationVersionItemProjection.html create mode 100644 docs/api/interfaces/domain_javascriptApplicationVersionKeys.ApplicationVersionMatchingProjection.html create mode 100644 docs/api/interfaces/domain_javascriptApplicationVersionKeys.ApplicationVersionNodePair.html create mode 100644 docs/api/interfaces/domain_javascriptFeatureSeed.ApplicationFeatureSeedMatch.html create mode 100644 docs/api/interfaces/domain_javascriptFeatureTrace.ApplicationFeatureTraceProjectionInput.html create mode 100644 docs/api/interfaces/domain_javascriptFeatureTraversal.ApplicationFeatureTraversal.html create mode 100644 docs/api/modules/application_JavaScriptApplicationEvidenceGraph.html create mode 100644 docs/api/modules/application_JavaScriptApplicationWorkflowEvidence.html create mode 100644 docs/api/modules/application_JavaScriptApplicationWorkflowService.html create mode 100644 docs/api/modules/contracts_applicationToolContracts.html create mode 100644 docs/api/modules/contracts_javascriptApplicationWorkflowExamples.html create mode 100644 docs/api/modules/domain_javascriptApplicationChangeGraph.html create mode 100644 docs/api/modules/domain_javascriptApplicationVersionComparison.html create mode 100644 docs/api/modules/domain_javascriptApplicationVersionComparisonSchemas.html create mode 100644 docs/api/modules/domain_javascriptApplicationVersionItems.html create mode 100644 docs/api/modules/domain_javascriptApplicationVersionKeys.html create mode 100644 docs/api/modules/domain_javascriptFeatureSeed.html create mode 100644 docs/api/modules/domain_javascriptFeatureTrace.html create mode 100644 docs/api/modules/domain_javascriptFeatureTraceSchemas.html create mode 100644 docs/api/modules/domain_javascriptFeatureTraversal.html create mode 100644 docs/api/modules/domain_javascriptNativeHandoff.html create mode 100644 docs/api/modules/server_registerApplicationTools.html create mode 100644 docs/api/types/domain_javascriptApplicationVersionComparisonSchemas.ApplicationVersionComparisonItem.html create mode 100644 docs/api/types/domain_javascriptApplicationVersionComparisonSchemas.ApplicationVersionComparisonResult.html create mode 100644 docs/api/types/domain_javascriptApplicationVersionComparisonSchemas.ApplicationVersionMatchBasis.html create mode 100644 docs/api/types/domain_javascriptApplicationVersionComparisonSchemas.CompareApplicationVersionsInput.html create mode 100644 docs/api/types/domain_javascriptFeatureTraceSchemas.ApplicationFeatureSeed.html create mode 100644 docs/api/types/domain_javascriptFeatureTraceSchemas.ApplicationFeatureTraceResult.html create mode 100644 docs/api/types/domain_javascriptFeatureTraceSchemas.TraceApplicationFeatureInput.html create mode 100644 docs/api/variables/application_InvestigationProviders.JAVASCRIPT_APPLICATION_WORKFLOW_PROVIDER.html create mode 100644 docs/api/variables/contracts_applicationToolContracts.APPLICATION_TOOL_CONTRACTS.html create mode 100644 docs/api/variables/contracts_javascriptApplicationWorkflowExamples.JAVASCRIPT_APPLICATION_VERSION_COMPARISON_EXAMPLE.html create mode 100644 docs/api/variables/contracts_javascriptApplicationWorkflowExamples.JAVASCRIPT_FEATURE_TRACE_EXAMPLE.html create mode 100644 docs/api/variables/contracts_javascriptRuntimeReconciliationExample.JAVASCRIPT_APPLICATION_EVIDENCE_EXAMPLE.html create mode 100644 docs/api/variables/domain_javascriptApplicationVersionComparisonSchemas.applicationVersionComparisonResultSchema.html create mode 100644 docs/api/variables/domain_javascriptApplicationVersionComparisonSchemas.compareApplicationVersionsInputSchema.html create mode 100644 docs/api/variables/domain_javascriptFeatureTraceSchemas.applicationFeatureTraceResultSchema.html create mode 100644 docs/api/variables/domain_javascriptFeatureTraceSchemas.traceApplicationFeatureInputSchema.html create mode 100644 docs/javascript-application-workflows.md create mode 100644 scripts/verify-local-application-workflows.mjs create mode 100644 src/application/JavaScriptApplicationEvidenceGraph.ts create mode 100644 src/application/JavaScriptApplicationWorkflowEvidence.ts create mode 100644 src/application/JavaScriptApplicationWorkflowService.ts create mode 100644 src/cliApplicationCommands.ts create mode 100644 src/cliJsonInput.ts create mode 100644 src/contracts/applicationToolContracts.ts create mode 100644 src/contracts/javascriptApplicationWorkflowExamples.ts create mode 100644 src/domain/javascriptApplicationChangeGraph.ts create mode 100644 src/domain/javascriptApplicationVersionComparison.ts create mode 100644 src/domain/javascriptApplicationVersionComparisonSchemas.ts create mode 100644 src/domain/javascriptApplicationVersionItems.ts create mode 100644 src/domain/javascriptApplicationVersionKeys.ts create mode 100644 src/domain/javascriptFeatureSeed.ts create mode 100644 src/domain/javascriptFeatureTrace.ts create mode 100644 src/domain/javascriptFeatureTraceSchemas.ts create mode 100644 src/domain/javascriptFeatureTraversal.ts create mode 100644 src/domain/javascriptNativeHandoff.ts create mode 100644 src/server/registerApplicationTools.ts create mode 100644 tests/applicationWorkflowCli.test.ts create mode 100644 tests/applicationWorkflowMcp.test.ts create mode 100644 tests/applicationWorkflowVerifier.test.ts create mode 100644 tests/javascriptApplicationWorkflows.test.ts diff --git a/.github/pull_request_template.md b/.github/pull_request_template.md index 457c811c6..c94765858 100644 --- a/.github/pull_request_template.md +++ b/.github/pull_request_template.md @@ -27,7 +27,7 @@ ## Tool Contract Impact - + ## Related Issues diff --git a/AGENTS.md b/AGENTS.md index 66033dcf4..1c2353288 100644 --- a/AGENTS.md +++ b/AGENTS.md @@ -26,7 +26,7 @@ See [docs/architecture.mermaid](docs/architecture.mermaid) for a visual architec - `src/cli.ts`: one-shot CLI adapter for setup, diagnostics, analysis, and decompilation. - `src/config.ts`: Zod-validated parsing of environment configuration into `AppConfig`. - `src/domain/`: pure, side-effect-free modules. `errors.ts` owns the tagged error algebra; `result.ts` owns `Result`/`ok`/`err`; `hopperValues.ts` owns shared function-dossier values plus Hopper boundary parsers; `symbolAnalysis.ts` parses Swift/ObjC names; `javascriptApplicationGraph.ts` validates and canonically commits the provider-neutral JavaScript Application Graph; `javascriptStaticAnalysis.ts` performs bounded AST-only JavaScript structure recovery. -- `src/contracts/`: caller-visible schemas for 33 direct, 10 enhanced, 5 native, 2 artifact, 8 browser, 4 Electron, and 18 session tools; `enhancedInputs.ts` owns enhanced input parsing. +- `src/contracts/`: caller-visible schemas for 33 direct, 10 enhanced, 5 native, 2 artifact, 8 browser, 4 Electron, 2 application, and 18 session tools; `enhancedInputs.ts` owns enhanced input parsing. - `src/process/`: provider-neutral process ownership and lifecycle primitives. It owns private runtime roots, absolute startup deadlines, correlated request waits, bounded output capture, and TERM-to-KILL cleanup without defining any provider wire protocol. - `src/browser/`: loopback CDP discovery, bounded WebSocket transport, exact-origin target authorization, and passive browser observation normalization. - `src/hopper/`: Hopper launch and Unix-socket protocol mechanics. `BridgeLauncher.ts` spawns the Hopper app with the in-process bridge, `HopperClient.ts` correlates request/response over the socket with timeouts and cancellation, `protocol.ts` frames bridge messages. @@ -58,7 +58,7 @@ See [docs/architecture.mermaid](docs/architecture.mermaid) for a visual architec - `npm run verify:hopper`: build and run the real-Hopper verifier with two distinct binaries. - `npm run verify:ghidra`: build and run the real-Ghidra verifier against `GHIDRA_INSTALL_DIR` and optional `GHIDRA_TARGET_PATH`. - `npm run verify:browser`: build and run the real Chrome verifier against `REA_BROWSER_EXECUTABLE` or a platform-default Chrome-family executable. -- `npm run verify:package`: pack and test the CLI, setup transaction, skill, and 80-tool target-free MCP server in an isolated environment. +- `npm run verify:package`: pack and test the CLI, setup transaction, skill, and 82-tool target-free MCP server in an isolated environment. - `npm run docs:generate`: generate API documentation from JSDoc comments into `docs/api/` using TypeDoc. - `npm run docs:check`: verify generated package metadata, the canonical product catalog, caller-visible documentation facts, TypeDoc output, and the error JSON schema without rewriting them. - `npm run config:print -- /path/to/binary`: print an MCP server config with absolute paths. @@ -89,7 +89,7 @@ Use ESM TypeScript, two-space indentation, and Prettier defaults. Keep compiler ## Testing Guidelines -Name tests `*.test.ts`. Use Vitest and production seams (`tests/fixtures/`) rather than module mocks. Domain tests assert pure behavior; adapter tests use fake launcher/socket seams; MCP tests connect with the beta.3 client. Preserve the 33 direct, 10 enhanced, 5 native, 2 artifact, 8 browser, 4 Electron, and 18 session tool inventory (80 total). Cover malformed input, cancellation, timeouts, process exit, concurrency, limits, and clean shutdown. Real Hopper, Ghidra, and browser claims cannot be replaced by mocks; use `npm run verify:hopper` with two distinct binaries, `npm run verify:ghidra` with the exact supported BYO installation, and `npm run verify:browser` with Chrome. +Name tests `*.test.ts`. Use Vitest and production seams (`tests/fixtures/`) rather than module mocks. Domain tests assert pure behavior; adapter tests use fake launcher/socket seams; MCP tests connect with the beta.3 client. Preserve the 33 direct, 10 enhanced, 5 native, 2 artifact, 8 browser, 4 Electron, 2 application, and 18 session tool inventory (82 total). Cover malformed input, cancellation, timeouts, process exit, concurrency, limits, and clean shutdown. Real Hopper, Ghidra, and browser claims cannot be replaced by mocks; use `npm run verify:hopper` with two distinct binaries, `npm run verify:ghidra` with the exact supported BYO installation, and `npm run verify:browser` with Chrome. ## Commit & Pull Request Guidelines diff --git a/CONTRIBUTING.md b/CONTRIBUTING.md index 2ed47b710..666caaedf 100644 --- a/CONTRIBUTING.md +++ b/CONTRIBUTING.md @@ -17,7 +17,7 @@ the package `prepare` lifecycle, and prepares the Husky hook. Run `npm run build` again after source changes when you need the standalone CLI or MCP server without running the test prebuild. -Keep dependencies flowing inward through the existing domain, contracts, provider, application, server, and adapter layers. Parse unknown values at process and protocol boundaries, model expected failures with `Result`, and preserve the 33 direct, 10 enhanced, 5 native, 2 artifact, 8 browser, 4 Electron, and 18 session tools (80 total) unless a deliberate contract change updates every verifier and snapshot. +Keep dependencies flowing inward through the existing domain, contracts, provider, application, server, and adapter layers. Parse unknown values at process and protocol boundaries, model expected failures with `Result`, and preserve the 33 direct, 10 enhanced, 5 native, 2 artifact, 8 browser, 4 Electron, 2 application workflow, and 18 session tools (82 total) unless a deliberate contract change updates every verifier and snapshot. Before submitting a pull request, run: @@ -75,7 +75,7 @@ Publish the public package: npm publish --access public ``` -After npm registry propagation, verify the published CLI and connect a beta.3 MCP client to the published server to confirm all 80 tools: +After npm registry propagation, verify the published CLI and connect a beta.3 MCP client to the published server to confirm all 82 tools: ```bash npx -y rea-agents --help diff --git a/README.md b/README.md index 3feee1f3b..ceda38ae5 100644 --- a/README.md +++ b/README.md @@ -10,11 +10,11 @@ [![npm version](https://img.shields.io/npm/v/rea-agents?style=flat-square&color=cb3837)](https://www.npmjs.com/package/rea-agents) [![CI](https://img.shields.io/github/actions/workflow/status/morluto/rea/ci.yml?branch=main&style=flat-square&label=CI)](https://github.com/morluto/rea/actions/workflows/ci.yml) -[![80 MCP tools](https://img.shields.io/badge/MCP_tools-80-5c4ee5?style=flat-square)](#80-tools-for-investigation) +[![82 MCP tools](https://img.shields.io/badge/MCP_tools-82-5c4ee5?style=flat-square)](#82-tools-for-investigation) [![Node.js 22+](https://img.shields.io/badge/Node.js-22.19%2B-339933?style=flat-square&logo=nodedotjs&logoColor=white)](https://nodejs.org/) [![MIT license](https://img.shields.io/badge/license-MIT-f4c430?style=flat-square)](LICENSE) -[Quick start](#quick-start) · [Current status](#current-status) · [Investigation model](#the-investigation-model) · [80 tools](#80-tools-for-investigation) · [Roadmap](#roadmap) · [How it works](#how-it-works) +[Quick start](#quick-start) · [Current status](#current-status) · [Investigation model](#the-investigation-model) · [82 tools](#82-tools-for-investigation) · [Roadmap](#roadmap) · [How it works](#how-it-works)
@@ -320,7 +320,7 @@ REA handles the app analysis in steps 1–5. The agent performs step 6 with its - Analyze Swift and Objective-C metadata without manually untangling every mangled symbol. - Leave names, comments, and bookmarks in Hopper so human and agent analysis reinforce each other. -## 80 tools for investigation +## 82 tools for investigation | Tool family | Count | Examples | | ------------------------- | ----: | -------------------------------------------------------------------------------------------------------------------------------- | @@ -330,6 +330,7 @@ REA handles the app analysis in steps 1–5. The agent performs step 6 with its | Artifact graph | 2 | deterministic directory, ZIP/APK/IPA, and ASAR inventory; explicitly selected extraction into an absent owned tree | | Browser observation | 8 | exact-origin CDP capture, bundle and source-map analysis, WebMCP discovery, session timelines, capture diff, and visual evidence | | Electron analysis | 4 | passive root-confined observation, bounded static application mapping, and evidence-backed static/runtime reconciliation | +| Application workflows | 2 | bounded cross-layer feature traces and unique-only cross-version graph matching with native provider handoffs | | Workspace and observation | 18 | target lifecycle, Evidence v2 bundles, process/artifact/function comparison, evidence-linked residual-unknown lifecycle | The public interface describes what the agent is trying to learn. Providers decide how to answer. macOS utilities handle common semantic inspection without launching Hopper; Hopper handles deeper native analysis; the process harness implements controlled behavioral capture. @@ -345,6 +346,7 @@ REA is already useful for native application, browser, and Electron investigatio - Validate and canonically serialize a provider-neutral [JavaScript Application Graph v1](docs/javascript-application-graph.md) spanning packages, ASAR entries, Electron roles, JavaScript/source-map entities, browser/runtime instances, IPC, endpoints, storage, and native add-ons. This shipped domain contract performs no extraction or I/O by itself. - Reconstruct bounded static package, entrypoint, Webpack/Rspack module, import, worker, endpoint, storage, source-map, BrowserWindow, preload, contextBridge, IPC, utility-process, and native-add-on structure from an approved local directory or ASAR through `analyze_javascript_application` or `rea analyze-javascript-application`. The AST-only [application service](docs/javascript-artifact-reconstruction.md) never executes bootstrap code, pairs only unique exact literal IPC channels, and reports dynamic or ambiguous channels as unresolved. - Reconcile that static graph with existing passive web or Electron Evidence through `reconcile_javascript_runtime` or `rea reconcile-javascript-runtime`. Exact captured bytes outrank caller-declared file/URL mappings; target, frame, script, worker, cache, and asset ambiguity stays explicit, source-map authority stays separate, and a module resident in an observed bundle is never reported as executed. See [JavaScript static/runtime reconciliation](docs/javascript-runtime-reconciliation.md). +- Trace a literal route, string, API, IPC channel, module, or native export through authenticated application Evidence with explicit traversal bounds, then hand exact native artifact digests and requested exports to retained Ghidra or Hopper Evidence without automatic provider switching. Compare application versions using unique-only digest, source-map, structural, and semantic tiers; duplicate, incomplete, and truncated matches stay unknown. See [cross-layer JavaScript application workflows](docs/javascript-application-workflows.md). - Traverse content-addressed artifact graphs without extraction; on macOS, read-only DMG traversal additionally requires `native_mount_approved: true` and `REA_ARTIFACT_NATIVE_MOUNT_ENABLED=true`. Materialize only approved occurrences into absent output roots. - Build bounded function dossiers with pseudocode, assembly, CFG edges, comments, calls, references, strings, and names. - Search and trace features across symbols, strings, metadata, references, and call paths. @@ -393,8 +395,8 @@ REA is growing into a toolkit for understanding software across static artifacts ### Next -1. **Cross-layer tracing and version comparison** — trace renderer behavior through preload, IPC, main-process, storage, network, and native boundaries, then compare those paths across application versions. -2. **Deeper JavaScript and source recovery** — add historical-source matching and rechunked/minified cross-version matching on top of the shipped AST-only reconstruction and exact static/runtime reconciliation. +1. **Deeper JavaScript and source recovery** — add historical-source matching on top of the shipped AST-only reconstruction, exact static/runtime reconciliation, and rechunked/minified cross-version matching. +2. **Broader application graph evidence** — extend authenticated cross-layer traces with additional static extractors and separately approved runtime authorities. 3. **Deterministic behavior harnesses** — extend process ownership, protocol fixtures, filesystem observation, reconnects, and cross-version behavioral comparison. ### Later diff --git a/README_ar.md b/README_ar.md index 531003116..a8a578436 100644 --- a/README_ar.md +++ b/README_ar.md @@ -10,11 +10,11 @@ [![npm version](https://img.shields.io/npm/v/rea-agents?style=flat-square&color=cb3837)](https://www.npmjs.com/package/rea-agents) [![CI](https://img.shields.io/github/actions/workflow/status/morluto/rea/ci.yml?branch=main&style=flat-square&label=CI)](https://github.com/morluto/rea/actions/workflows/ci.yml) -[![80 MCP tools](https://img.shields.io/badge/MCP_tools-80-5c4ee5?style=flat-square)](#منصة-من-80-أداة) +[![82 MCP tools](https://img.shields.io/badge/MCP_tools-82-5c4ee5?style=flat-square)](#منصة-من-82-أداة) [![Node.js 22+](https://img.shields.io/badge/Node.js-22.19%2B-339933?style=flat-square&logo=nodedotjs&logoColor=white)](https://nodejs.org/) [![MIT license](https://img.shields.io/badge/license-MIT-f4c430?style=flat-square)](LICENSE) -[البدء السريع](#البدء-السريع) · [من الملف التنفيذي إلى السلوك](#من-الملف-التنفيذي-إلى-السلوك) · [80 أداة](#منصة-من-80-أداة) · [كيف يعمل](#كيف-يعمل) · [الأسئلة الشائعة](#الأسئلة-الشائعة) +[البدء السريع](#البدء-السريع) · [من الملف التنفيذي إلى السلوك](#من-الملف-التنفيذي-إلى-السلوك) · [82 أداة](#منصة-من-82-أداة) · [كيف يعمل](#كيف-يعمل) · [الأسئلة الشائعة](#الأسئلة-الشائعة)
@@ -157,7 +157,7 @@ rea uninstall --purge-data افحص التحقق من الإدخال، والتشفير، والصلاحيات، والتخزين، ومسارات الأخطاء من دون رفع الملف التنفيذي إلى خدمة بعيدة. -## منصة من 80 أداة +## منصة من 82 أداة | عائلة الأدوات | العدد | أمثلة | | --------------------- | ----: | ----------------------------------------------------------------------------------------------------- | @@ -167,6 +167,7 @@ rea uninstall --purge-data | رسم القطع الأثرية | 2 | جرد حتمي للدلائل وZIP/APK/IPA وASAR واستخراج معاملاتي محدد صراحة | | مراقبة المتصفح | 8 | التقاط CDP محدود الأصل وتحليل الحزم وخرائط المصدر واكتشاف WebMCP والفروق والأدلة المرئية | | تحليل Electron | 4 | مراقبة سلبية ضمن جذور canonical، ورسم ثابت ومحدود للتطبيق، ومطابقة ثابتة/وقت تشغيل قائمة على Evidence | +| سير عمل التطبيقات | 2 | تتبع محدود عبر الطبقات ومقارنة إصدارات ذات مطابقة فريدة مع تسليم للتحليل الأصلي | | جلسة الملف التنفيذي | 18 | فتح الأهداف وحزم الأدلة ومقارنة العمليات والقطع والدوال وسجل المجهولات المتبقية | ## استخدام REA مع وكلاء برمجة آخرين diff --git a/README_ja.md b/README_ja.md index f57e6df7a..3174ea626 100644 --- a/README_ja.md +++ b/README_ja.md @@ -10,11 +10,11 @@ [![npm version](https://img.shields.io/npm/v/rea-agents?style=flat-square&color=cb3837)](https://www.npmjs.com/package/rea-agents) [![CI](https://img.shields.io/github/actions/workflow/status/morluto/rea/ci.yml?branch=main&style=flat-square&label=CI)](https://github.com/morluto/rea/actions/workflows/ci.yml) -[![80 MCP tools](https://img.shields.io/badge/MCP_tools-80-5c4ee5?style=flat-square)](#80-ツールのワークベンチ) +[![82 MCP tools](https://img.shields.io/badge/MCP_tools-82-5c4ee5?style=flat-square)](#82-ツールのワークベンチ) [![Node.js 22+](https://img.shields.io/badge/Node.js-22.19%2B-339933?style=flat-square&logo=nodedotjs&logoColor=white)](https://nodejs.org/) [![MIT license](https://img.shields.io/badge/license-MIT-f4c430?style=flat-square)](LICENSE) -[クイックスタート](#クイックスタート) · [バイナリから動作へ](#バイナリから動作へ) · [80 ツール](#80-ツールのワークベンチ) · [仕組み](#仕組み) · [FAQ](#faq) +[クイックスタート](#クイックスタート) · [バイナリから動作へ](#バイナリから動作へ) · [82 ツール](#82-ツールのワークベンチ) · [仕組み](#仕組み) · [FAQ](#faq)
@@ -147,7 +147,7 @@ REA は手順 1〜5 のバイナリ解析を処理し、手順 6 はエージェ - Swift / Objective-C のメタデータを解析する。 - Hopper に名前、コメント、ブックマークを残し、人間とエージェントの調査を共有する。 -## 80 ツールのワークベンチ +## 82 ツールのワークベンチ | ツール群 | 数 | 例 | | ---------------------- | --: | ------------------------------------------------------------------------------------------------------------------- | @@ -157,6 +157,7 @@ REA は手順 1〜5 のバイナリ解析を処理し、手順 6 はエージェ | アーティファクトグラフ | 2 | ディレクトリ、ZIP/APK/IPA、ASAR の決定的一覧と明示選択されたトランザクション抽出 | | ブラウザ観察 | 8 | origin 限定 CDP 取得、bundle/source map 解析、WebMCP 検出、セッション、capture diff、視覚証拠 | | Electron 解析 | 4 | canonical ファイルルート内の受動観察、有界な静的アプリマッピング、Evidence に基づく静的/実行時の照合 | +| アプリケーション | 2 | 有界なクロスレイヤー機能追跡と、ネイティブ解析への引き継ぎを含む一意限定のバージョン比較 | | バイナリセッション | 18 | `open_binary`、`binary_session`、証拠バンドル、プロセス/成果物/関数比較、残余未知レジストリ | ## 他のコーディングエージェントで使う diff --git a/README_ko.md b/README_ko.md index 224c8df47..2bd0281c8 100644 --- a/README_ko.md +++ b/README_ko.md @@ -10,11 +10,11 @@ [![npm version](https://img.shields.io/npm/v/rea-agents?style=flat-square&color=cb3837)](https://www.npmjs.com/package/rea-agents) [![CI](https://img.shields.io/github/actions/workflow/status/morluto/rea/ci.yml?branch=main&style=flat-square&label=CI)](https://github.com/morluto/rea/actions/workflows/ci.yml) -[![80 MCP tools](https://img.shields.io/badge/MCP_tools-80-5c4ee5?style=flat-square)](#80개-도구로-구성된-워크벤치) +[![82 MCP tools](https://img.shields.io/badge/MCP_tools-82-5c4ee5?style=flat-square)](#82개-도구로-구성된-워크벤치) [![Node.js 22+](https://img.shields.io/badge/Node.js-22.19%2B-339933?style=flat-square&logo=nodedotjs&logoColor=white)](https://nodejs.org/) [![MIT license](https://img.shields.io/badge/license-MIT-f4c430?style=flat-square)](LICENSE) -[빠른 시작](#빠른-시작) · [바이너리에서 동작까지](#바이너리에서-동작까지) · [80개 도구](#80개-도구로-구성된-워크벤치) · [작동 방식](#작동-방식) · [FAQ](#faq) +[빠른 시작](#빠른-시작) · [바이너리에서 동작까지](#바이너리에서-동작까지) · [82개 도구](#82개-도구로-구성된-워크벤치) · [작동 방식](#작동-방식) · [FAQ](#faq)
@@ -147,7 +147,7 @@ REA는 1–5단계의 바이너리 분석을 처리합니다. 6단계는 에이 - Swift 및 Objective-C 메타데이터를 분석합니다. - Hopper에 이름, 주석, 북마크를 남겨 사람과 에이전트의 분석을 연결합니다. -## 80개 도구로 구성된 워크벤치 +## 82개 도구로 구성된 워크벤치 | 도구 그룹 | 수 | 예시 | | ------------------- | --: | -------------------------------------------------------------------------------------------------------------------- | @@ -157,6 +157,7 @@ REA는 1–5단계의 바이너리 분석을 처리합니다. 6단계는 에이 | 아티팩트 그래프 | 2 | 디렉터리, ZIP/APK/IPA, ASAR 결정적 인벤토리와 명시적으로 선택한 트랜잭션 추출 | | 브라우저 관찰 | 8 | origin 제한 CDP 캡처, bundle/source map 분석, WebMCP 검색, 세션 타임라인, capture diff 및 시각 증거 | | Electron 분석 | 4 | canonical 파일 루트 내 수동 관찰, 제한된 정적 앱 매핑, Evidence 기반 정적/런타임 조정 | +| 애플리케이션 | 2 | 제한된 교차 계층 기능 추적과 네이티브 분석 인계를 포함한 고유 일치 버전 비교 | | 바이너리 세션 | 18 | `open_binary`, `binary_session`, 증거 번들, 프로세스·아티팩트·함수 비교, 잔여 미지수 레지스트리 | ## 다른 코딩 에이전트에서 사용하기 diff --git a/README_zh.md b/README_zh.md index 49ab3316a..1f3baf74c 100644 --- a/README_zh.md +++ b/README_zh.md @@ -10,11 +10,11 @@ [![npm version](https://img.shields.io/npm/v/rea-agents?style=flat-square&color=cb3837)](https://www.npmjs.com/package/rea-agents) [![CI](https://img.shields.io/github/actions/workflow/status/morluto/rea/ci.yml?branch=main&style=flat-square&label=CI)](https://github.com/morluto/rea/actions/workflows/ci.yml) -[![80 MCP tools](https://img.shields.io/badge/MCP_tools-80-5c4ee5?style=flat-square)](#80-个工具组成的工作台) +[![82 MCP tools](https://img.shields.io/badge/MCP_tools-82-5c4ee5?style=flat-square)](#82-个工具组成的工作台) [![Node.js 22+](https://img.shields.io/badge/Node.js-22.19%2B-339933?style=flat-square&logo=nodedotjs&logoColor=white)](https://nodejs.org/) [![MIT license](https://img.shields.io/badge/license-MIT-f4c430?style=flat-square)](LICENSE) -[快速开始](#快速开始) · [从二进制到行为](#从二进制到行为) · [80 个工具](#80-个工具组成的工作台) · [工作原理](#工作原理) · [常见问题](#常见问题) +[快速开始](#快速开始) · [从二进制到行为](#从二进制到行为) · [82 个工具](#82-个工具组成的工作台) · [工作原理](#工作原理) · [常见问题](#常见问题)
@@ -147,7 +147,7 @@ REA 负责第 1–5 步中的二进制分析。第 6 步由智能体使用其常 - 分析 Swift 和 Objective-C 元数据。 - 在 Hopper 中留下名称、注释与书签,使人与智能体的分析互相增强。 -## 80 个工具组成的工作台 +## 82 个工具组成的工作台 | 工具类别 | 数量 | 示例 | | -------------- | ---: | -------------------------------------------------------------------------------------------------------------------- | @@ -157,6 +157,7 @@ REA 负责第 1–5 步中的二进制分析。第 6 步由智能体使用其常 | 制品图谱 | 2 | 确定性目录、ZIP/APK/IPA 与 ASAR 清单,以及显式选择的事务式提取 | | 浏览器观察 | 8 | 精确来源 CDP 抓取、bundle/source map 分析、WebMCP 发现、会话时间线、capture diff 与视觉证据 | | Electron 分析 | 4 | 限定 canonical 文件根的被动观察、有界静态应用映射,以及基于 Evidence 的静态/运行时对账 | +| 应用工作流 | 2 | 有界跨层功能追踪,以及带原生分析交接的唯一匹配跨版本图比较 | | 二进制会话 | 18 | `open_binary`、`binary_session`、证据包、进程、制品与函数比较、残余未知项注册表 | ## 与其他编程智能体一起使用 diff --git a/docs/api/assets/hierarchy.js b/docs/api/assets/hierarchy.js index aee4534d3..0aff83122 100644 --- a/docs/api/assets/hierarchy.js +++ b/docs/api/assets/hierarchy.js @@ -1 +1 @@ -window.hierarchyData = "eJy1mVFv3CgQx7+LnznfGmPAeUtXuTan6hIlrfpwiiJikw2qF3yYTS+q+t1PeDcJXnCMHd1LEhP/Z37AMMD4Z6KVMl1y8jcqSAlyTBGxP0sMClJgCnKYQQIQIiUERVbgFcghxhRkGKEVyPMMUgAzROkNSDS/b3hlhJJdcvIzsRbtb8m2PDlJTiVrnjrRnWmtdAKS70LWyYnVJzvdJCdJ1bCu493vtdoyIW+5fa9LB7L0wWybBOxfTU4S09W/WTu/7RtAUj2IptZc9h0qM4DwKgcIZwVAGGKAcF4ChAvbhu0PSgAi9hWSUYBIngFEigIggu0/SAn6jiO6KgCiNAOIljlA5SoDqIQY4BXF5c0vkFhnTl8/qbblemZPHdGsftIMA0Rt72iOALIziCi2rAT2bHiVB+bhUiujKtUsnI+BfIK3h8iKAMS5bHdmIcGrNsY9xAH3Fzuz3L8jjgHIQ4thzVp2Jxphnr5K9shEw+4avpBn3FYMXhGKkTWTFW8aXi9GcvUxGDiE8UVsuVo8T646BoESB+FSq0dRc33ND6ltJkRYH4FBBov22cxpzVozO7OE1DEIGXUQPmj1o+P64q7j+pEtGIoRAzEguZtcT7UR96wyFy3XSzjC+hiMwk1hZ3ZIZcXPpeEbLczTTIywPgYDkwDGZ7EVc1eIr41xP9jVn038IWbnLU8a47yEjvNz+cg7Izb9LH5T+nvXsmouxhtGIoDoyo2Jr/K7VD/kFd+Izui5ERFSxyBk2Dt6LMuYvjbGPfTdL903QuoYhBx5CAuPNwFxDAAiHsAV3yozNxg9aYxz7B89L7WqeDf3rO1rY9wT6Lm/NkwvC75XZYxr6vZ8reS92OwW7Qm+NsZ96W7Rf6kPQjL9dNHyud49aYTzcuX2fa//wvSGzx13TxrjfLDmL7neiq4TSl7xf3ZCz172IwamQfpbaJDkulItfyGABX4mENJwfc+qV4j2RXSpGlE9pUdWRjFeTA0vZBaqvyAX9ObASEdHi3fm3ZQHOxGce5wijPNRM/l+mN5KHEpfN3BQvvE7uxlLo/TTFe/UTtvTUbuLhPrhyNNRW3NnE2bFKrvpaYvBkrs29n71jd89m19A6dmIGzhblFkNjuai3vDPbCerhwmKhz7L3roKrlP3MR6BjCBw/W4IPr74R+Yphxnq56n/w9uRTtu2EVWf3j3IQH4KE46ams5UOYRkFdqm+4tZBMpQkB49RvjHhXtu//ggas2iQmbTv3rrKrhO3cfYkMGYjiBMhsw0xJKQwRTtQwZT5JF94qxueNfFxMtbeMd2YiaLZNDjiQmWAcdLdBw9Tvu3Zd1A9eFwMoyKmnb/7u2RNg3aWrDYYV+JLvrqa57DQflqXbeHYkPMmN3tX731VWmgaXrwClKQIcyZrf1oJWfSHMvSUNs0Dx7eTl7Kl8/lj0ulp3ZY9prybp0C8J4gaHD2jGJqq/IQovxmDx0uSDaCTx5Somj3liIzl/0gEi6hD+fzHTyTEzoycPbyC0GOy8PuZ/94A3XNZC1qZqZOK7OYX4zOX8ckg6DfG3v4EpHcu9Vc8/5g+daicWkHonT4NH2zsQE4RjBzoXja1G+ZO152gPpvOkeVML+2Ohc2aCBQs12EbfPzzaFSAwdX9m2rOmF4TGZ0cT1h6rdMTnb/PdOtZR5y6/JRHLGQjrXPHUe7tdhx7L/Nuqu8M2f1Juqy5OL+yR7ZdaVFa55r4h81ax/WShr+r0ldq3NRC0JztEcdVufO5T3Xtuz7PwD7tuPye/8Zd3jesWeTNWvNTk+X8FzCgDQNtU0E569f/wGGhs0E" \ No newline at end of file +window.hierarchyData = "eJy1mVFPpTgUx78Lzx22QFvAN8e4zmwmq9GZ+LAxpkK9NsOlbOnVNRO/+6Tg1WKLtJh9cS4M/3N+nJ6etodfkRRC9dHBPwjnJUCIZFj/LRAgpEgJyMoywQCnuIAAlxkqAIIIE5AmCUYAwTIhICUpTK9AJNltwyrFRdtHB78ibVH/29Itiw6iw5Y2jz3vj6UUMgLRT97W0UGSFiDaySY6iKqG9j3r/6jFlvL2munn+ngii+/UtonA+Gh0EKm+/qTtfBpvgKi6400tWTu8UJkARGAGEEkwQCQlAJGsBIhgfY/oP0UOUK4fyZMCoDxLAMoxBign+j90RPIyBaiAGKCiSAAqygygEiYAlSkBOUzS/OoJRNqZ8a5fRNcxGfimhijoPYuEAKTHChUZAqhAOUAF0ax5OrARmDnG4UwKJSrRrByPiXyBd4BIsAPia9vt1EqCV62P+5Q43J/u1Hr/htgHIHNNhiPa0RvecPX4o6X3lDf0pmEreeZt+eBhV44c0bZiTcPq1Uim3geDuDC+8y0Tq8fJVPsgFLmBcCbFPa+ZvGDPpS0Qwq33wMgnk3Zv5rCmnQquLC61D0JSGAifpXjomTy96Zm8pytCMWPAByQzi+uhVPyWVuq0Y3INh1vvg4HNEnasQ9pW7Gur2EZy9RiI4db7YJDcgfGNb3noDLG1Pu4nq/rexJ88uG5ZUh/nZWo4/9res17xzTCKl0L+7DtahWK8Y8QDqIBmTvxof7bioT1nG94rGZoRLrUPQkKsrce6imlrfdyntvu164ZL7YOQIQth5fbGIfYBQLkFcM62QoUmoyX1cU7sreeZFBXrQ/fattbHfZ5a7i8UleuS71Xp47ow3/xItLd8s1u1JthaH/eluUT/LT7zlsrH046FerekHs5LaL77qP9O5YaFxt2S+jifzPkzJre877loz9m/Oy6Dp/2MgWWQ4RTqJLmoRMdeCFJM9gS8VUze0uoVonsRnYmGV4/xGyuzGC+mpgeyNElIqg/I4/FruJyNFuvVhymf7Xhwjji5G+dE0vbjMIMVTxTdNzBQLtmNXoxbJeTjOevFTurdUbfzhHow5PGsreDRJGmCr0bayRH2Qunz1SW72ZtfQWnZ8AtcVpZwujXn9YZ9o7u2uluguBuq7LWpYDI2L70RJtGYGvwwBJuf/DPjlJVlWl6NZGlprUiHXdfwaijvFqSjPrkJZ015lEwIceFapoeDmQfKVBC/ufTwjyZ7lJM7XkvqlTKb4dFrU8FkbF76pczQOJxBWEyZZYjwlEEQPXfI9A+L7AujdcP63idf3sN7a8dnsDCEFo9Pskw4XrLjzaWH/3Jyptgrn3eGXlnTjc9ev9HGTlsrJjscOtFo7L4mEE12gnX33GzwidnN+Oi1rYodt5aDl2GEpzDHuvcjRRtI81YWu+4t8+ievqv3uW9/nAm5tMLS15J3bTSARwKnweC5iAhKAIYwS65G6MmIvjQUG84WNyletKMlz8qlP4i4W+jT8fwAz+KAzgQOkySDAKF8XP2GH++gHtG25jVVS7uVIOYXo+EVGEMIhrVxgM9TYp9qLtiwsXxv0pi0E1E8vVqcLEMCzhEEThRLG9t3QuOlA6QjNXyQe7c5GwrrNODo2a7C1vV5wNbJOjmybzvRc8V8KqOJawlj+87yYOvvmWYv87m2ro/ijIV47n5oHPXSouM4fJs1Z3mvjuuN12HJxP2L3tOLSvJO7XviJ5J2d0eiVew/FZtWQ1FJDsthbzX8mPRsb5nUbd//Adi27Vffh8+40/2O3psc0U7t5HILzyR0SGPXvYXkfHr6DUfhzKI=" \ No newline at end of file diff --git a/docs/api/assets/navigation.js b/docs/api/assets/navigation.js index 50d656812..29b666914 100644 --- a/docs/api/assets/navigation.js +++ b/docs/api/assets/navigation.js @@ -1 +1 @@ -window.navigationData = "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" \ No newline at end of file +window.navigationData = "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" \ No newline at end of file diff --git a/docs/api/assets/search.js b/docs/api/assets/search.js index c96510a0e..a9a57800f 100644 --- a/docs/api/assets/search.js +++ b/docs/api/assets/search.js @@ -1 +1 @@ -window.searchData = "eJzUvVt33DiSNfpfKl+nZ7qqq2qm502W5HJ2yZK+lFw+s85DLohEptBmkmyQKVv1rfPfz+IdIHEJAAHK89TVMrFj70ggAARu//cHXnytfvjv//f//vCF5ekP//3Tv/2QkxP94b9/IGWZsYTUrMj/4+Kp4DV5yug9L06soj/82w9nnv3w3z+civSc0eo/hI/384///bk+ZT/82w9JRqqKVj/89w8//H//Ntj722Tw4t3d7vH6asR+IZw1MBb0vpjCyr/9UBJO89omZmLz688jm6+E1e8LPn480jqc86TBsdCal0fhp/l1cpK9Vqy658ULSyk3/zqzj42/zk+//Dr9PH3By4w1nAcbLK8pP5DEZkYu7uCNuTiB3V9//q+RXpIVQr0MYLUZkNy5zeB0VOk3mpxrHLIT1kS3rtK/sOovLH+mnNU0RaCvqAfXrWVW5N46RgSU2vDjX3+aWi+ZvjuwzN/VMsXNAFuOsAGVZHKgRkTGTqxuQSosATJkVPJFgkxdAIxJvJxH0UDeAl5M2px83dHqnPlH5hlvTr7yATAqcVzWa1Cuzk//pAka5wkOmbQqbN+VlLdQ9wX3VyCh4HfmoT3kkp6yo3R2suw8s6P7rmdHqyIL6ycXSPj9ZVKcSlKzJ5ax+hWZ6GYOHvADLJ2qj+JBHb9GCkrHbxIBqkl3ZVjPqgPEr1cVO+Yki0N0M4Jj/haDb60/SdggwTD9Cp0IkZK0TY3RoBoy0dvMIMPcbSbPKalp4BRzRr6FTAbIiORZSvM6MH4KxAW4iKR5U/Nf6Kw9IEnowVGnTSpBhhZ6SfKUpSRgMLFA+s7brMxT33iD0wRLF6/RqufydM17PXlo7X4mTRkAVpSVVyVN6osXwjISPjJUKuxMENkEQnCAinsk/Ejrh3NZhsyGzOrq1kY12lhDXqSoPhMYM7wrJQpxfpzv+g6G5wD4g9+SF0dOKyRqGwHOw78Lf+GO2NWUQ0boBsJiPRi+3/oG4TkAfj1gKQ6pTQvk4cqFjzRE2//BodpDRST7Qnnlk1VR853QcCn/9Ne//+ePv/y0GJ52g6H3JKkLPtXZ+rV0WwTqAZBGpGqqY9LLh+ZYOArFy2Fs+3pFq4Szsi64C0tV+ShEh0+UgykAUVX5qETVAyMHphIAClVhcb4b9C9T35Y1+jlXDQyOY0FL9dcvJDvLjQuyaD8Vc16+X4yvFBSAoVRgAUD396rAUJe+9p3ke0jYiMZCxEAsRsnXe4kOzuHjCPfM6/tIDpnO4IitalKfnacPPlpHSytKFeI57f6dagEcI7vAyQqNHJdgcX9Hj6yqhZEfJOoPhYwx/8ef/ksb8xdWewSYVQc6QAeOfCb6v/z4kxDk8qrm50Qc1OEx3sjw/uy1ZvTZ3r7qVVFkiegrqkppkhFO03HEH0XdYKUQrayq8kDOWf1AMxqrXvYmqsnEivr6nDOLUzcl9BVVdb6MoWhEXlHNOX8qzvnU0K45j1MTe0NjW6O9ochaDbOWdyxPWX50HRJpzfd4qF0Y3kAdRBthaG6zo09s+uVcYbqC1r99JXnOL2CKQmYUAYK61EQsRQP6epK6mMuK/KE48yTSbzUaqQYjUQWCUjUPXvNBLYsZbrwgSAKWkJ3Yb4JXkqHm9Jko/50cblKDN2WFSkWPLEqZcSIMUGIXBKjz+p2bRMHK+hLrkB0QbjrDN0J4iDUF1ochxqPpHhHjBdMn5CGwTHkzwSP+PJOjbQl8vKA50xUrLWKVxum/zrSqaTqU2OKFk5nG0dQQND03DDiJNSc8H3JSVs9FfUmSZ8uxYVUJ51Sn2p5pTizbg7KweFKmgZPehBL1TmwCDOhP31KCraKHXIU/zWsOzXmBFUyg62j4JnXhOBK+OffVAQrYCV/BiLmKgqwovpxLXAUj5ioKTqROnrFbwgS6igZOk4KnuBJGzFUUOCSswQo8UtUhCmpyxO2ANwNkLP7CgvTsI8gFIEqTChy8wQRs5PWeZUJzhoy82hLGkdev4vCWpHMAR1d19lRA/r7qVKtvdmnOTaBQViLhcdb8vrxmB5LU199qTuTZq/LHXXwO3zK2KLrNy7M9SbC0qEFycNVStG5NogF+X/ATwSa6aaEPA7QPaR2+Ucw9qZ+jSCk74DWEtPeOYIsYQFcTYE9O+CgADouCJRRJcuac5gndpuhKJnCWribocKgoeq0aUVeRcK7Lc70rCnwZLTLvkCNJEXfwdR8NZWzd6dLaDACpazB3ob9xUj5fDtkSaE+6KAXuUD+e23vd7sa2Av3RlyYXUO4OW6rXLd/1BfaAg0yOhDcydgD5pQHTlozmHB1N9xX7E/032CzxV5E17IyLI2qOvookmif8tYSsv7nKEZFXklLz1337D/haBOh1xLQnZaRJMZoYEXoVMc+ket4Dd9q7qpGxV5Hjcmmgqxzn2wMR5BRHlpBsXzpMguB6ZPBVBE0D5Rjd6Rx9FUkd7j6uMo2RVQR2W8D2ww2U6NqW+LFkiWcoGxPs8DoAXRZ5Ld7PYh65L81q8HDHpQb+UpoklHwDFo95d+x0mLekRyE/60x8ibUS79sitebEgbQbqMisFXMuP86xZlwLxk1SAMHHA0w0tik70qq+JHmRN52pN90ZTjS+LE/pt+lXrN69BkUONVw09idSU85Ixv6kV4y3B4Rem5/XP4JoEaNpyCnhtKrvOyhf3hJKNK4lOdK7gzfJrng0dpx+oa9C5fPmOQeKx7go6snOe2HrkzPlOVI0znVx1yZTb+Q1AFfCMgwuW3Oec5u/0Fy6aMaU3xy/dl4o3OY1PXJWv94XGUvsW/0XBjVA7r6aFOtymmWzRxKeWYJx3AiwHmR12PqkUjPQx9Ywoa4g4US+fWTVfNMRjpAT+XYSsdeQIw7YkFR0kHHIq1txX36xN8JD0AwqQkum0vwJieJmQA1z+9yR2mX+/vfZJ0Vec5KyxCmBB1ZlMLSKUI/kJFibb3IyVE4kJauJOJGcHWiF3so3AvAqQnJpGoSlYkBdRUKhGMpjCZGxV5HTjoVy4rDQDVYjQccSo+odb0nNXujH4pzXoaPcBVSE3jGfbFwED3nVhDedjVPzZ6Tx79LJdnnXoYNhuzqckbFJnJSn6gsO5YATz8ngAgGnfsnZEZYLidzlRBPKVYuEzrlKSB7OV4kSheuYEcUhrYfDYa/JRJzr54KzP2nqmJPQl4NuUG9/KYB5jRMNBCzIDv400LN59h3LCX99oFVl278mfQk+WKnGV53nkPFt1jSukM2FHZy0EXI+KGkABF+S4EXU6RIEGEvpsE6zb/KFdlf2hjHtkOoBKQ7b6VSydFePH+EezOVuHg/O8vO0frUV/C6tBz/a1K88oe9et+aDc1aaA9LTK3CDhg/b2fuAfkQdXgT04tgcPNWeM/Kk3GAOVbaaMCMquB5qxjlPQxtbhzjWkAExCvtnUg3Uw0g/k4pOQFG4doeUcetKh7lWXemsYdaVDnGdutLMlKqaHVuAzwX/UpUktNpImF8FzBUVmI9xe0qApY88NGSsqj/lX/Liq+XuWCvxBuk8IUVhW+TiYwyXzyQ/0sCus8jF+8uSETIO/5KGjec3PUI0dpfKuzO9qbrfk+nBuxwv+ZldjRk07ne6CtODdXe5AU532WHF7jFlxp9Z/dxHDkzyX1n9fB5hI+pA5B6db01Yvo3QX3bI6/aas2MfXrwdjnd4MDyXzZ1lKPWjg4pcP14oZ4fXnq/i7XMv5h1oz5yLoFgafv7x7z//7a8/q7Ne9+KlRLDMWnONHuGvVfcn8A1EWhfbU39uJO/VjzKpl770djRrLEtTEOMQn7TWXZJYgQwD81lqZNe8VrCG0BSXmww51RVK3jPr5UZZmf0KZR6WCHMUMEuIBXNX5MagLw8HyTDmQcJV4aREfERpUiM4kkKzJG6CVJm1UB1BSTY3+pZkW6gSrLybj6hIlQwnFecoyDzFCJaENM/AEGXd6xWoymNy4iZLmbgL1RKWw3MTYM7lhSpBSus5ShLTe8EKvDJ97oTVGT8M9oHJPzcp2iRgqJLwfKCbEE1eMFRGaIowRIQqVYirJyhr6CMtjpzVJAASiuGKMHOLbgJhV8uApfimG91Iq9OOodwDM5BuEmyZyFAxaElJuyx19q95mo+m/6iK3H7F7/xjl9t9hbKWzZILK7PiDkm/uTj9Tb79p4/0m22H9ILevDwKP82vxYuvVfNk8KwrVf5Y8rfQ36q770FnSOOSmSklhoNbZsaBXrl7qih/af9kT2Mri8Bz2WaLuqCgNgrmYnbXnIwpPfwndG7vzHjT47tM712MaNPFpKzPnD4knNIclIlxl9bbqEQba8lrJh6cXvYMYojrLCSThXWlTb9cRHWVZGQlgSmrkuKF8s/06WNSPhZFFkPhYOUrfTolZd1bWUki9AlXD11uk1QUMXlV0ubyrmOM+Nijl9BHKFAkNVmwbkkzRtVr0OsRfSVJRfsZHVa58VX1BqrRQERhwGHNA+UvDDbsW5aCDgD7DvwzfZqNEYxjP4W9OVDIiGZQrh6ydn3WZ/qk6P5dWavA4jHvuqXP9Knv2d0G3Cr6OsQVNEwOQ5SxBI2mxNRRuwpQYEXj3Xcpn+mT1Ge5UpZhorFteou+yLxLcmW8hIrGuu8Nmgo563FcSS+QcDmr+5LL4ZnnV9iJWcX35snxX//+nz/+MtluKry4GLajREz81K8lwKAaBO4ulWjlj/t0ZllqcpH6N1Zx1kFhsdb8vBmjeXNX7oEdpXsolb/t7GN4Fq8qshcqFn/kJK+65zIA118uDNsRHdw2dwHMZ/0jtV1jknPset8tC4EzR1armgGs1rADI6PnFJQ0h5GT9vs4hDcjuD9vrQWtoOJ0IvYnFXwVjeirSmraAei+e29ZooUVpXF6oilrP4wkTbaworRmVc6ac/AUNWDHlTNb9NGVsN4xq+VgRkUNeppuo2vOD8/stKNlRizjqPnX8I5Ca0dXLxamIMZ17llY11TZJ5ZDXhaEkmtOPMBDih1Ue91jM7Kyd7pQ1iNcVNI1P+cJATxkBOYtIkal3tDFIt1hYdN1P3wAJgw/fOBG+Vep5+C1PmRoguzCmhoGJ2xow2lZVKym9/MrbjThVP4afAGR3o7qLNnSDsSy3ikz02EXEkHJOV9MBAC2XVBkPgUJZi7CYfOeLxt3k21mueUA7nQZMS77dp/FpTwfC2PfIrpMwvzZLxYNg5g7rRMGsO5zFhcOt0eBNfTYPift3BTN0vfSZ4vtxtrOY2ZQi4QTKnX9RzMNPXOaNk/UWJI38rfgHVHDXYfsT6ozp/ORbNCA5OIjmYLVQ7yoqj8or9qnd0HJX1UJ8MRlLDGs1zSrCfahttKmGsvBV0rtunu46cGe1XKluelRPblqoLW5EXZ8jqBhgI0mQqw/89IPCcnvyhpy27vaugEwUk1ief8cdyTGm9YAL6DbmJyt6IX1N/9H0zXhryiraaOgLIafqgYentRAEwV6VsBXEvxxATRBbRSK+DO1+Ov/ThU75sSeHfHTNILHFaSI38OJ6LAaOKJ8d32+kmBob7/wHX4/r+Yd2sMbiM+3BqhqVC7kYxR7A8A1M3fKy1gqyt8mzhefHu8+XjxuL/e7T7f7m+3H7ePF4/budiT9QjhrbvWHENeB4TFfHOewjMk1sxclexNgFAX8nN8oHvxx4SxDRGHZ3OI++5J5elgNFZt1MNc4DLt9xfYXHtX0xtJ43GCT7PGAqNNEeywFXyXUIVy3V+9A1si1HOzY/l6d/KPp4cjwmMG2nUtRYl/0ChWyGW1206vOZoA2gGGr/PEU8+fmlOGKPhhPNn/tDb+NI/yn0u7aA2fVOHL7CXDz7j3LzxT4HhGG+N5y0lt2eaYohitKXhw5rVb43QVLbyO1gh1iCVfqcpglilCvua6HTv9pr6dMUKd8d66T4hQjivfIETtk4Z6VmOQ3Tve5+BvT7y48V1HCrSRytPIWEr9CL0YJVel2OQqKUHneaB+VwyYTExUTKG7jc5xngK6EsJZ2uyRieGasvW+Ls0rBwtG/sxsk9AYQfK24XmKhsL/D7R19Ji+sgF6HAZWnQY+jzbE+Qfa2msu67HQtM1rT1ETANURN2+e02Ah+Nm965Gf/IR2U/6YzEqzBaCleTwKWidSXuIkVM2U0o10gslZVx6AwbL20GohRX9VR4YoeKOc0bS4lGl6VtGeztKXAkUBEaPMdauOaSqa3b8aF+1XvF2saB5K9CRIgZG7ACRtfg5qLAwYCTaEmY9dckjgAyQ5QNxE9HTs07o+oUtUkoe4pPzHI8V+AFBkPl7+mWTNOk/HKanNblj4FnxA95xobGi/JVhbFHZwim9WxG7YVevObA6Az7M+Ezw6FQulJpRG4aepRIe1RV9af9hN44G8/v3ymyRdrkOyQhRIOOjvi2nOtpKrYof/Yk8dmgQKlJULpKKbNDaTW/JmO2lgak1L7P56E+rKYdArfCrRpS2JScTioquPkehLVSG7Z4D4UlXUXiQTZFEBrbuM+5g9FWVIO2dmlJrOZoJ5bKPAmrgWetpYXKe0H1J4cG4SXEQGRWpmR+lDwkycvoXgYKemUxBOnX4N/1gYE8QednfCbn/+1LjTpKl+LxGdIiFS7V3SaxThPhhIAIjGWVzXJsrZU8zP7elDEKXscfJo0ffjCsiysFY9YVYOF1Z5nd/Xl529X9FTsznnNTu10x5oH09BtsVJ6KniHxXssdLpN3WdPoA0nRqoyDiLNE0mKKuy3byGi/OQnkp9JNsVL34bU4UwhE7khjQ9SdBeFBcTM8QUKCQmRanUu28eG0pumWnWe9eQ6QrU19HmAQiT7QjKWwl4c1HBsERyeFzRSWwwTh0mv+/xMKvkdzNOWfILna7JztGPd1K3zVhHtMGLQ85hWKgj6Ti9BFJ2nmQqCftNNED3HaaeCnM/0E0TNdxqq4Bg0HdWR1cebqZ/xIj4Vx4o8/QNcjgNxDZ+NiObpS8FDusjTeNutm9bxHaHikR3n8TiERbhopBkOWeDrrp4khwGXzwhYx3jA9B4Sw+mLs+vr/IXxIj8B7iAEyRCxqYSNKUeMcg+vVU1P0+ALeLq5N6YpjRXj/Af5JmKhI36dy7TLUJ1Gy/pJhz1+HuBCcafAjCqMxLxUABf1os11s72AF3n75hDhr6BlQF0h8MLOALAtk3vCOMuPtsqkNbmEgvtIK17TCJ5Jc2G9dcboynUz4fpzVoDrL4wjeTVfsMbSMgOPJchcmx4gN2Y6GG7x4tWrhOQpa16vs8ZUL84bCR/1F+kcbbi31H6FsZ8kh5cKseREajaCqJhtZy5N04B27fOcGPI6pHiNRrpfC4fnBnyvFhxYTz9Pkfo9WcEAu4aIL9S6BOEqoIOMRP7XRbrwddlSbPtrtJYNkKjNQLqmLWu+X2j216ADjKWgOp9OpNn4NitmPyav1WCAjKXinJPTEzuei3OFWKHMqKhaYLOD3zgpza9IKEtANwqSNA2uBZ1BJZK/wzrdXt5qTuyKr8eCndYXdJ5TtYWv02N3RN41PEum1ZCBbhwcYkr2gY4U+lLfSCbCVGjs6MW9UA54QDBA2mhgVWE+gzGwKO9RWYCgTHG3DLYu2caq8oqSctDaj7c40cKq0kremJZubsbWJplYVRxvjgZG0zWgryuJZnFromBgVWFVceYRe7ERflVRNWg/ircoh80qYaLUo86Lqm4+9hlyDpaXaOjjJTX3bX6gvBnUICqQMGPqoH2J91364qGt27fi9hgPIVrQNZQIrzECr04HaVHArqFm1/QMzZeEWa+EA+mQAFdT8DtF+REGLHTeDvPKbZm4zym3ZeIxF9+WSdh0vDGrwwv0YeMGL//dkpq9mO/FMJTz8GJXMMyRvXEDaqA7e694efQzy9Piq9vKsVjQw6ddyTCfDtYNsIFOHRwD9Sro0pb5x253tGhNmR03u6kEwMHiJ/CNJEMBof+7LzgsrTYr45xR09m0DH7nZuF0LE6b89EdcJkPOxD5ur2r42jBcGKn2SR075BAc9PU4Zeu+bNAWc1z5fMnzzFlNfj1iB9VFrTpDu+TO7be4a10YKjrf88BSKo35jinsKkAC2q5xmflm59sKDOvGs7MFWDIzDW/e/5M8oSmzXvtllGB+KXx1xXf7lPj98UM+DZrOk9I5iZKPm/12Qg5v9FnADSfHzU/UWblOYGgcVTXpX6c8O7c7JTr35O0VCplEfAwqb1bjsog1eXsSXBNW1RbNkI61EO1K9ST32/NGTVlCT8NBsA4CtgJWYEBEFEBpBY3N/W4VOH2e/CdO5SkcnEnd3W2liC+Luq0Kpm291IFU1WgYHE1/5Y3ND1anqeVP4X3b2oLyjgtW7AatPihtxjYx1k5ufdyJkj9lQ6UhDPtQSJx7MJqKMkRJRJLceHHkyJ4cceH3zOxDAPt/DqISPy6rieU4ogSiWUzXfiUf8mLr3mwOxus84QViTGX9yx7ch1RorLsPYtD9jyCReXc3KqIyvsrq5+jcz+XzYkHJN4dWHTOL5Szw2vPedc8+yzfneLJvoPt2XMRFlGHmDiVProBvThptNNBIAxkpL0MJ/Lt3Svk0A2Q2uZEvj29gk/Z2FENxOfbvBGo8xESm7x6BN2Os9vzjcP7gMZR9PJzcCJ/KLCj1Tmz5u8VhmQAeD1USDRsoLT+mjBmmwHLh98MUH8W6pwnpLafyAdSFvFwaYtHDYZvAG+0K0xIxZHqgLplPBcn2txyZ2wPw0fQjEDJiyf6YY6sVj9iS4XgmkcBNqXSNeTDSXlzUkRdxOgF8cnO3eP2/cXl4/7y7uP9xW77cHe7v9/d/bG9ut6NZtXPdmoMmxDhHtM4wn65BC5X6H0TPvj7ffOGK+gmH2RR4Bt+8GW9zG7WQFbmcskGijhVU/ptd3H/AasVyWDfbQNS0MRqOzPo6M1GJQWtxTiJwWksKj2Y7cQmSWgi7z7dXt1c4/U1erzvraFYmAa2FQN6rOZiExTaYrwlBTUamyqEduMiTGg6lxc3N/v7i8fQjmWJ8701FQ3DwCaiQI3VNHQCQpuEs4SgpqBTgdAEIELEqv/h4va366v9u+sPF39s73ahLUAH9901BCPR0PagBY/WLMxygluHp6CwRmLWhNFW4LKEJvP+0+3l4/buFm+oZUL83hqOlWtg2zHix2o+dlGhLShAVlAjsitDaEdu4oSm9I+LPy4eLnfb+8f9xf39zfbyooUJa00W0O+tQUHoBrYpm4lYzQokLbRlhYkLalwgfQjty1miuontPt0+bj9e73fXl3e3l9ubLXJrs+B/xw0PwhyvDdqsrdAcQYIRW2aYZKxGClKN216dhQtNd3d9sf98t/v9/c3d58BWqoT63hqknmRg21MDx2pmBhmhLcpHSFDjMWhBaCdAOVKTuLy7fXjcfbpE6Lo0YN9fs9DTDG4Yauh4TcMgJbxx+IgJbB4GPSgNBChJaCIPjxeP28ux4wlrIhqw762JmGgGNhEddKwmYpQS2kT8xAQ1EaMehCYCliQeAyr4l0NWfB3uJr3nhXSpoHqjkoaABgyxiQC2M30u+JeqJAl9qAtuPutsKOdy4EsN4+LCmW09qKcrZz7RHwhDl2JAxdairhv/IC/kIeGsrC+mv4Ku+jCWdLv3A0ZC7V0zDQA+3M9mml6ehlw5YCoIvp2mCTl/qh3h4+DBvAk30LHQA/1CYV6zA0lq0Gsx+mL+Pu2B5CO0Vq/OzZtxvbw6d4y/Tx9fS8vxYEtZ8Pb4i84NqdoPth3eNhZmdAwnd54KuJkYQQL8kuIwYzqZ/yQvpGq/XkOsZG1FyWKtBUQjTw84BSz82hqbv8P5EH9LeoHtXZwraBztvIXMhsO+ayHRpc5svYVch9vSQ9W6XpqOL7bvimMLncy8hciSJF/IMb5Kwc7byOQV3R8Iy858DbEza28hubs3fH8iZXS9sqm3EDueK9xXSVHG/4UV9t5C9gurWEOCVPU+L9L4ulUGVxKuHhN+qE9Z91/CzXV4XlDCRx8dtj19SernNYRsRGuYv6X6p9GNLIpktZ9uIxh7M8HdQG69X1m2t6ZsdcO97wYEUVrtEjt6k52Gq9FlbCRbmL+k4jfR3kzBVhDaW3kbidIyYjSJ4FXFGBJxg49OYoSQA5fIaZ5Sbn/LO1ymYOltpFbP5Kdffo0vdLTzRjJBr00jyIS/PB1D5nzhP5pOl30ASELVI4Lu3Z6PpIwyJlCh/68cFWiFxBsXKH8ZjeTixOp2XtyWQWynet1Lk28lHrdD1SuO0KW6yMTuafRCo/Q1TlLXq8ZvX32xu1aD1hidq0Wqrdfh7MhyksWQ30NH72+S5qWxPHhp2CZhM9mJ8/sNP4VZ5j5eHFKp3UcORhbRsGdGg8U6PDeKIxK6X8Z+jb6mDHh/zLJ8/3Chz/SxM22ADAkG86vrpYryBLnr1JfwBn7xqYcJ7d70/IXmdcFf96QvsmfWKym9JeqsrSrZbygJVBgwfvQW5BusgZKCgrOLKHPE8NtJp7MfunNuzTgx7RqLESJMe+KS4VfyHhDYNSlsrCUvcvCbNK4R90xC2z9F0NXjriUDN3JPMiIEbZOMeG1p9RbUvr4cQUiPu5aMc97sorLfxe0jRcCOKMfedz5Q5F/qgTrc4+7Yg46dAnI3OnDeSAawf5fG1bjbk0GaQnYle8ph+QvJWLo/14f/2sfUpjS0otB2BWA/5MOb8BRVrsHciqJXk/vWQssiY8lrY7mmfA3BRoMrCm/ttrOKfXNSNZLapZW1Jbau3Ve0eYsXu5uXZS4sxZX601///p8//vKTpe//XRz/NyfIQ/Q2YJgd/+wIti0/CT2jOD3ACc9eemuAplp/46R8vkiS8+mcEfH9R1jWdV7cmIAVX8J0YNJjuTLxIgv294LtJNPnZU08Pc4vcKKYlgKA8PoZSdPrVHijPbJ2kqa0M/f2um+LdE3deWfujXU33jc/MYmoejD2xprl0xiRNYecxEDU3I+PhdX31TzQmy5k02/gD5ce9t2ZZanlTWlzUejFCk/N5xoo5yGLRMCEHNyVDg7y9G+zeiNm/hz82xeFX61Q1U2Xts3Ls0f+SjIpQgV7cHCBNoH1Qjk5eqxYmSlvBOBQ7hI67u0PFhEBVz04Cyh5UVJeM5+5vEWGBL2KGE7yCHVqQF1Fgu9uG4uGoN01ziJqwo8++XSLiBE2lggxsvZL8BVWeF3gxY6xCKFJzRktPi1drMu0lpR77maH6BHh1xOF0tI1ivCaO1gOSpvXyMFr+CY5Yuvf5gfKm8vgsJr/EvB/yRhLQ1w90qqr9C+s+gvLn2lzHWLq+SspvB8vyOkELqLc6uLQxmY6iZoR2upCMcZtOo3L0dv68miG0XtpFU7wwfERLgql+9JJUvRfq/9qKB2aTqCiR1tDoHkfjDJ54afbOb2B2vURxcJNNB0b2VpwE/SU7H03obveydRbia0qWt/63TvkLrcxFpzpDhM87sdaS/Ro8I2FN4OwtTQ3tr4DudW713uvnbxegqun14D9vUiSvTZf+snFmUb6SWUI80iI0MHOG8nsljvWarWdtTdut7wo1vhhezNvJLLKSVk9ryJUMLWeWHFwvCsyetF0/Dcs/4KR/1kCRh8E58lz8PhXQ3szggf/PApPx01o6SRhLh3CRfkd2gEJwurX4WIw8jg6NWircA5yiuDkolZNgbOEYhQzD2hNl4wVy0as/zVhTGaMHMEm18YPXjMh2HHLKiWlSUY4TRFmKQo5Azpm9LJK8jsBapMScP7TXcKJJs8kZ9UJX4cIvY4YrI5kJgS1D7GLoFWRvcRqJwN67HYidiKfcvJCWNa8A3jfXDWP0ZkoMaN3KlUVnHLQE98M8ME/itrh8dZCDZqwNn04SQq5xxAqLPj2Qn95WPtaDOpQ97bYxNmPW/Vws7EQ5MwVbE7fAUcIH+JrcWk6fCxuJ/Hbzzwo0oDGV1Ihi6jW5f/QNN1EWvQM1qDAjK5DaFqd+baBPTSPfATrMWBH1tV/eVMkJNumNK9Z/RooRwUZV0X38uh1c2SVF/kwTgqTocaMq2N6VG+4Lm8RiL206HHj63mQ7N40Xbn7WdiFGhVqXC0Zy7+IteGxuJCGqF5SNKBxlXTrMTdF8eVc/k4DW/sMLC7zfkY1FJCmbV7sFYBxFXTbpppI8l5ImXlxl6AisHY6UHVVJOcTzYWm7XCkaiwMPbRGUuFgWfPITNN2PKPKZFyNGuzZyTV2LYvbUHFFLeGjqHOqOa7vn6vKgg/jDQVC0iKjUQks2JGKt80x09MG1ij5aTW+PWvguwHBpCf8gVAPSaGZApMglBSBm5yAVU+TktBcqJuIkCS1SUVwltpNhu99i1YdQdctwoTME047Ol44wop8KOWfbxoJmIFjhGfFNFq44GDRrzl14KMsA3JsTVUMOUrQyEqS4lRmtKZyFQmbWo/UzeCRlZVN9SBZFGFG7Mi6qll+D6fyaVAjazlPub3mUDOOFDVoDCVOg/n3LE9ZfvSaBQ5lvSaBXdZ0Yd7JuSMBA3Kwh0eKnh5+aFvimXvNl8bCXj6erX6Id9s6+XliYYEPdvbkLLg6v8v6IMKCL+1z1vTunKfZ/EgKhiQReFVF/eOB+IpE4NiKuqWFZdldUdT+CxeTMBt+FH3QKCaPJxyjmFw44PkeGWhHq3PmkQ+a0YGZCfH+zHma+SLtVxT21fl0Ivx1TWEbhfFwpUAG2n03BT+RVX/fzWjyzcUfuXiV2xraB4tvLr09ZrX3S2UF6JfMfgdOGN5uaX8X75dwghyiofAdOedEcnagld8LOii+kRm8uWuCcvQBDgnP3qO6oTnRN7169AaNR0PgzR3TZlOqmiXrVg/J7Fs4QdqPMH65hHEexc+IGcGjDCL9hvDyWqrPOF63gOqybdXECbKYoGLky9vzl5gvnfxt0its4NIXfUie6YmMql8IZ01+0Ee5g714+lXbFNuNXu8LrplF+jW1TrPFRjydtma3O+c1O3ULDAnLmHo9xtzwjBjQbOA8rwAjZvtNzNScbPr8RmYRgb/SA+UvLOxH6iGgvxHvCy9dhvPDDHTsdtB+jMGJtt/ihuXnbx+KsrRcnC58B84gtWWuWFVz9nSuAbs8RCOLwnDXiJp0UxjrfMXOZQOcchiR9FtJ2tTqe3JimTUXBeDa4x0GvEi0q3NZFhzw2hKAsogVie4L5VXTuWDQ7bGQK8WiPXVlroqveVbY3+5amJGLo7Yp0APIEEIOLx5b4LT7zr6g8GxhMElqfu1tXtUkyz4UlTUfq7ElIIT+5tIbJUlGSX4ukVhtJjhvr4q+0pFuh0eP9FQWnPDXK8Zp85KTe5jVqWjx6wE/FfBjykpDelqNlBlmVPphIW1JfcKLSZt1n/RLoVjke9RyRI0pISPnPHmmvNm1cfaN4AsJA2o1oMaU8LW5W/aCJ8/sBe03aDHJiIlOX87OLAvMFliXCRmzPdeFU12019K8UVcbME+5fBSi98pRNIChVDCU2q8/z6OFatalnlmKzJaFEZll0wfvWE7468NiKG9nqAeJw3SoQoBDbRqaIgI2x74SfSQ5OVJ+WZxOJE9tO3AWPNUo2FwfnpvbiW7YEyec0epi2CjpylaHg8i3bI5563MLdqJqAESGzfuzIQSV5YMDpDr/UxTlE0m+7GiZkVdzCkj6FJ4FUlvQdc6yEatNnQtko7o9Py/S6UtvSpsRyJXZv8OIPtd1+YlnCEwbpDP3cSKQas3PeUIgGSA7WRErEt2v9Kkqki+0xnHvCIft49msu6jsw1w72wEHj6Z8HIHXmsavCYGyEQUAQgBQh8GPJAEkwcevwMFvLOGQwpmsqErDXTBp0lQjUpbdnmQERhtSlk8DmAM3JWJgtglC1yXT5Em2zQJ9LM55Dc4wgZi3uKcG1y2zFCLDPVkGl+KZKPOTk9KqZjmB5MggCmS4FUhff2OVfcjiSJ0OoNEEAHN7IN4ueT0/uv1EGy849oDRA+SQc9tRkqK00AGQ94CxiLfhDIPwABSLaFHS/GJCwaDcQBIJMhb5c47m5wkqFtkXkrEUrwm2cNEbYJszBq4FQFi3eC6rAA605Xzp/HNr9llvyTXzrBqoLnOmyyG6ehYx8ZoXDBw6KycO95SfWNUs/F+c6+eCizcBqqYQiu+Nk4kff5oql8lWX9hqC2Zf4xYVgYnqLz9OLhq37gkXdoVS3MigXnRV4NrpUffBnxRPgQgZnX8zxeEPtP34N07ETFf4T9FgVx32ccCOroh+KzPCcjwZE2B07q2X8JgPcNF5cyoN3IOJj3grMC8zktCL9MTyJo/evGSJ3Q56G0S0sV576K1fFvmBHc/N2xVFxhK8TmGQl4wGysHAWtruefFP2p6gjvG7lR36mr/YS/EFsUMZ8WIwV489mpXSa86DOvYR4/sde8gUkccekw81yxL7mhzxyPdo0VlLh4aDWYPPAgey5pRURcigYsZ7xIvBXDxZQvIiZwnJ2J90KnRJWQa4zkdl2QyI1VStCnb0X2da2Y4CwgX0eDH4t/lr07TMgbsOC4u3bf46jCLkvJZ5DiuVgZ62acZ/wpAlwHuyeSuujydlr1i9yYuEVtUlKZuLXoAZAXUZ8G1TVUV5fVvUlyRPaJZZ92vp7C2BHPyl0W1gvKMkawIc+Fc30l6gYXKH/NaXpCRPLHP7sadCTgd5rZaXyTqtXQdCIP8JbNSbt3jxRK0CIFVA4GoERVUCqQry4NheC3QDYc1A3GBLOXRR2ILZB3lpPj7xGog7UHQfiMPA/QfiLuThA/Ew1v3uhm0+XLSK6P8OmonQa+nZ0e79BksiwEMOF5Cjq4FMOFw0uEw4wpifK8ovSU2P4gaQYP4NajKhrqLiI60qcY0ORcRpBI2hQe5FpZ7KZ+TXmdQgYXUHkP7yhh1o8ppk5hP/mjLgnXh9+XtOS9KN5iF78XRW1Wi+Xps8ELbxzYOt00Y4N3zzjrIPxcm6Qu6lp0V/7tDXlTRukmvuDI2nbdwvxzszEUWKs7avhNWPzbw4J9n1N2bNz2hsLnAwG43A9+nMsrT/dLaXwY3wEigS46T7avDNe05O1vt6daSVWLF4t7Vyd84/9nfx+XKe40TiW7RvKdAHWtcZbZ5h8uS7wInEt2yb52x+68lZiRWJN6cZJdVgazl2d2OuQYvGvX3jbrLmHz9UUKgDBeMQ65kmX8qC2R6ZW37unJBQWDINqgVLIOMW/wjWcZIRdn7eqQgjtHaIMWv3odxHuMi8U1aV4mmlQN4TXGTeh2ZDh2U1E057RIvMuu+Thn4fi34PW0+wkXXUnB2PFK2lTnD4vMWRUAPODq/toxWvVU1P14cDTaxv9ypMaqGQQqO518gYqLfImOv0+zJjbYrg7lwDHpMU7CjLu/siY9oU4zytFcJp45XO0kFqjy9Lyf8gvgNUPLKnWcItiK5Pog1AeDkZ60s8JDQnnBVNawS25Yz9ux4jsOLOnmmbBvTDNZKQ93hEonoQPKb9XrvZbwAnqS4fyM8YBkHXxc6+NQZE4XLi+93d5fXDw/5+d/fH9up6Z7mBeG5lXtzZDbaXc4ULMgMYQa/ItILt982ato5s+z8YdHug6IT7uyJROE9YMWgvdzvJ+X7Y/bhzuyYojKpsbNYfCM9pBZoP959C9+KoAz7MN4MpNYazUwaRE8+ff/z7z3/7q+tODKBzNi1av5jUS0hENETiqhUnD7oCU+fRz5KkscbdNu8aZexPwNY6RQFo7cv7QmPdIc0CPXAYIFvUQDnXQlk4iPUj/QbMtJkpNzgx+HKaknYUUhdJkV3LNwg58FXhoPE11sb2x2T5EVIRh2/htz01d09dPrMs5dRlhXU0tABwdsqoT5dJ68FxmG0EOGeKS0xtQoRUX7ap9eIHIOcGjaVOm11AlMVTu9U2Z81byOxPmt7X8pqosZ2MllQQGLVBdVPb5bxSwCguyiPza+9AkoIwcMY0MlQgoLQoXYQ58naVo7310dovSx+75JLUVvSNQjYEsKx3iGxaf3qt4JDYByC2GcHc+S0QLS79VKakhiRp1Fa64ijulJNz/V5D6wUyEGYbES3Apb2vgvNddsKO6S4fuuUzsV8pByI7IEWjWs8XN0LYui5peBEuaiy2PRImVSEpVbGM5rU2vGqzFLIlNQpKUFBlI9RctZ2jTEqNgtMf6HrINos5HjB6qAvLu/TqIi7r84rioIMDKrMGOCe3qbwQvHLvQ9hnGd/RTsjhAi9JLucMkLTANrV7qXHb3+6vR3HOytRWlaes4NYRW8tsQmPhrQ2NKpJ6vFj8mwsNFiV+k25PcVSgR4yjobsEDPFHMAAiKlB3WM3Jyu4urIv2pKX0tLGqu1IVgKYwD4xX3WQ1bc5ipikXE/VqnyntKYHgvlKK1tTXf53ZaOGCc+stx0q+CpiIbJtr5Vme1I+EH2n9gVTP1jSxibUKLiL79z3Bq6KqmHXIZyI+Q4rI+b6i57RIitQWAUx0JxA0pro2f6C8WVJ7aDfZbk9SMkPd6BUloK2etV/PIKx+UhlUIrk4S6XbvGzxgVV1wZtLJ7pC9829aO8Jy84c0KhUImDQeKrm62vK7+3LbPoqsOHDP3WbtrtfCb7ohiLgroR0XW4SihEzXIRDS7zO6+ZtFXcpfUF4orWpcOkMam5dk88wEjABB1bsgZ5uz9wa7DeTlTAVRlM6iVnzFjeRa3scmbKlN5BaKoNtHLGtrcNk6w3kcpp13n5mZWy5c1vryJ0/82SJPQ7d6kDEAIseeZa7HxWGX/v6GyTKio6uzaG/mt1KCe6uunIOy4Lt2bZ5JZuNXl1aS0/ACBzo2N43ul2Yx7zg9lWvMPKbyUqQCLMpY2/lF8zgCkcjbyCQAw6DB8oDHwRHF1fRhNPoP99kZR2Jy8O35pjiELF7JiZY7IjiEKkfm5S2e6Bui4HjNGB+6VKNOuN60EB3di7R7ktIrYvm/qQ3PXwIc4ONwJ0LAbpc9jOgShPX2/BlQRfdQiVZG9M814EktYeN2qBIltk3dIUQ34wm8H+owe+63MO3JDuntLmnMupvs+kNlb2h1YUOCb6oIgUjbybwj9k5npg6Xc75IMsNGKNDVYaO0P3FlfLsNIY4h1cTkMV5Tz6g0sKmHv7CKnYEbAEMkjaaWEOcsAvv6vr9xaebx/3u+v317vr28nr/cPdpd3m93/52e7e73t9fPD5e724fLPvyDJygFpB7eojGm+3H7WMMaR1wPEX3F7uH64t3N9cK0xe3v326+O06QBYEHVmbNXmpmrg5zIQ7YVZoZFWgyfAfSXWRktJ2gEFbyuk27yXKNj9Mh0aXu8z0ZtVQ3h4U3KDda7Ys4lYXBPZqOFz26p+fn/Oancy7cPtvwEeB243F71hO+Gv/BpvFMYMBRUm4DwYlNsU98D0vmsPTfFecbZVdWQK8CdlsT7VZVG0PykLjHjUN7Y1becqazfIPNanPleXWaVe+mxG+muA9FajNaHWNb2RsU5rXtlck3YWN+GzCX0UZ644Lth/hauqReY+8ipqy/6r/lRh2BRzwmYi/irL+SkRcORPoKhrO+VNxztO7knY359oPVDgr6k0Ugwn4jikEfRk9EstTgs6CRsxVFFQ0o0ndDLNxVUi40ZQIOV7Vt7aZL9wqXu8pTdCfWJ6Klwzg8NxMsJie16ej+ytMAFvGXJXMsFeR09zzVbPZFS9Yembgawhi8wEMkpZIAxdtCpIXB2Z/5t5VxQS7hoguLAKy4a4yROBIQhSX+V9mTLwaHKuRtNjJgB1LjmbOVwtPSKjnePW5BK/jt19fAH/yBlgo4NLpNKw1dS6lNWHWLLDa+mYsDCQhIuiX+GrKAYlpDSWhOCKp9k9+hPqiiGTq9pCQJ52xcBihRS2GXFQkALpdS2SswXmRUuAqoorApinvsjI4A9H2SBmpDwU/eXESCocQmr2A04TMW0rTanzj04tcB5Q3QIkAhEd0AIV2ICqOA4ZTRwGil9KaJjVNO3aAQa2C3oCRjBh49ArpmL8TqwJ8gh9I5rk9N3cvPmrtQqgrDn7FGkiK5VVNsv5MnxevHuF5QMCm9vCFZS4d4IJZ1QOgEcuaG7qaU6qcPZ0dxysTuxYllVHQKJ5IUlQhHUELgNMTKLOQ1/kL40V+8o1pAw6VcNBotnWm7R62XSXyItmitH0DG1GCKM4HGsCdeQKi86Y743CDlM3vYD9RoCGwEco7+cW2n8ozqMkbpULimm27SXtBzBlwFkPHTkIIpLaoVrMHiuzUXJ8hslWqjNG0G2a71G2BxaYHISOIk496B+jyXs6DHZGZ5zDHQgmwc1zHB7orHEzGedQl0vEbd5kJlRnJ89Aa1YNEqVGcnmjKiONYQmQnIyBS65aTPVmNhcMIzfe4dLONYeLWlp+FrOU2lw5fW9I/ds3Jtf/eWuAn+RfVkVqUQCZzbxhzGTkpCvpTk14Z6Sek/6iKfDaxVe9m6UgpyuHyeSxOmQ+fqRwKn25GPJ9Tm5hIJVA48HPe/SvE/PAxiuXufaplIs1EYFbGn8f88o+E5EXe3pminRGYU9+bESFgNmAg2GNdSjyh3PrCMkUUWl1Mk5uShUzV/KdrispGoZsD9D/ZrJOA8OmG/72f+FDeIzDr11Dm7VxLS9+8zVHtSpOkMzSowZQOw7GBDZZB/uh/rPk9Blq3yN87bZaVakcPsJNvntR0kDOjeiBHT83EW3r2/rNLcfQPIzwvHpWmqRE60FXAYNEWux9DHTS0mBlhBQqai/VN5z4j5gdhxq+gQaRawBp80AJXBhMmva0RkEpgF9d+Bg6W9n7eILwzpcdwdEUnUH25nbG7t1JUFg9kp/mlzmV70HDR6yh/r9nHbpsGgEtjcxtCWQcPzGVpEzJNxwla7LHx6tfv4Cs/BkAd3WZ9lYS7cDPixKF5IvwLcAnNSrXDiurV9n+CifYoaBSFU2YPn+7v73aP11f7y5vt9e3j/ur6/fZ2+7i9s54HXBozYKG0L7FX0gUXTQCcc52XR+GnjoPD29k7mjfLVeZTMfOPwQditFZUW5QXVgBmNe5Y2J3o+dy5D2PmfMW+FVa7fwDw2jyQs8tL8958D5ycLOc6gHRHpIhsOa3YnyjOHZEisq35OW/e4U4xCItgETm3N71j8B2AkLkqI+annAEybONX4LHiWKJ5ifqhTRjaOufJiKIwPEpOirS7vErrpnM7l00P40BIhaVvriSVntP0J9pA1R1UPLJZCRgnwshm4GGiJ9lT8WIdKYKo9kCRiDbreQg0e5hIJNtYhVRRWyz8mqqKSpBNwwoDbssd9kgE29tgIuK0w0EDpN0+duZHekVqEkSwRUk7FHSKXRuE5SSMLDsghwURL6Kg7ZUAnvClIwBNVfvY+vXX2+Ce2uOIiImHy0ERDU5IvsFIDZxqcCQG20RipOawlcROTlnBYLveFOCuSxHWSsZqevLxlrj1ZsDwchfGliALv7Dfc0FQ3rmwnEKoE0MTslgo7Jdc7GRQ9/A2Qoqygd28ZrL1JS++5tfNPp88Ma+2zr41TryEJOOn299v7z7f7nfXv20fHnf/s7/f3f2xvbreWTKMc3NaHBe/yGqVv9pZ/uiG5V9sCcY5VRVEHJYfz92LGYsf0InoHAWDq6a+lUdOUks9674BT+xvy1O/ztaWtwamHn5WzEFzr0F7/Joe2LcQFpsRAkxmjgNzFWjOoTbgGJAWLpvfjdStR0KWdmyEph1X8Fm7HlJH+ZgVTyS7D/mtJ8YdWPivbie8A9zgCaQLvqsTSFYck3UlXKqnUAStWjKPqDLnsZmBwN0lOsFM8Ka99iuUYTagoFLsUIFH0bQUOxSX82g2ivI2pf6ru3Ndnk17k2ao3fdh9U1JxLpJakbEeQqyILLYfqzrVTUDi56PsiwSr2aMPhs+mMlMBZAY9INyRXQyE1mUC6oy06VIvPhaUf4fl2n5rvvPYcf+YnzVf7pffgpeYzZYGVaWDFZAhgUfGLS5rzG78wKtMes5KmB1AZLkJHv9k74756niajEP5j3g0wAYkXtCyuYM4kPCKc2rZ2FoEeL5DrQSQWNqaC6a4vSyt4pTd1rIZIKMz3/6DTAlVBJqRBUpq5LihfLP9OljUj4WRYYiY4D9Sp9OSVn3sBF1LK4QCyBvvTYMh3Felc1D7uIbPSGkO7jS9CAPCu+MVf0T4Sg1pYGrR7iIvIunqnl9Y36LcwD1HrEaEXHZC6m8y6v7/bvd3eeH692Yfdtvr65vH7eP/6NI55nEmKAQhgbKUVIf5C+LU5nRmua0Wu5LFjgrPncZLZmsKX5ulTUwCbV7VAyCRk+OHF1HUXB48Zf+9acffxZmL7w5JpI+FrVwbxqClB637nEjaZFGhnVNkueb5ikbxa6zACkdcDYCr6Cl8R72r7EO8/71K0zyE+QK/DmtqHFc7sp+AFyBe5WT0jatcKUvYK6gYNjoialAwFxBwTknL4RlyouvA0TIsJF0GMYAV0VyPikPJi1Fjd86HS7tC6c7WrUviMyyeSYz86KuHf4kTnPYrf3qIkmaIePs/uYpk2ViqIKIw/KqOPlxuyosG398Gb2Xd9k7kerKxuE11BZPamNxZHYnwvJW9ieu2o9hYiYWxWBlCgjXL8Bo0H3oMRGYWdAH0d4CwKTRA709jAG/iZHnIF8Dqb0V7Ejz+gMLd+CmRXpmph2q4WyzrPhK08/06aFIvlhSFCDSHeBX+lSNgJG4J27zVUvVkLCiMc6rAjQ8sdbjwmk44siTfqNJe9XnZZE3m8rfq49rOdIeUZMO1XJ0K1hFTl7YsV2cujpzlh/7QqEyJti0hU1G2Fg6aP214F+CeY8wkXgWnB1Z/gcrZguxnnw7uBcBLhJvTquyyCv6kdYkFbfsexIf8E4TXiTmVcJZGR6zJ5hIPKXeIIhqpH5Fmkg+0SPLL871c8HZnzRtg18o7xaTjJgHbtrAjqPgfXOYESnmtYCHBjBGtFseDX5f8Ie2UoYSb9EOBa8GtEisWX4UdzZ5sh1RorLc9fHpXZEal//gjIeI99QhRmLPBd47+q8zreptGhxRRO68Q2VpxOgiqvjklLICy/BLWQF0CDsfh8zPrJkK++X0AqSiwZNF48j1d6o8r+zCbTFu/UJ9KrnsLw39Z1IptxU78e1BohBk1cc23xBMklWnASgK0Yzkx7O4VcCXqAAUhyjNj+q95G40B5goJLuxeDDJESYKSU6+ipk7X5KcfD1z94gEJNkNRLbK+/SdaHZAzGVZ1I1om2P9SModjls7vBMpI/t3oI3KOSLhMwJPXHqm5PNDXXAxquqzz/2X8HsNlfim9PtgIbEZNHpjsAjT/wfJzhSSfO8+dFqH64+o7WhS8Ck+6BbhegNSIVftvRrlD9Inch9I8wT4nzSFLor0vBTFMdm1L0RT+ZoXACuhGCablGbk9TOrny9JnlD9QQQtLyUAJkNWfajr0vE3HAthMsnPpyfK2y9cuAjFMNnwtt1UznTEcvh8POlEYPOvM2uX96WQBCIklsTk1PXJ193OJCdOckl8TrOzUGBGkDNRjnzqZmHCuRYJxYLZqDvRIs9njyWretDxK6e16yW2KpUyYdssafROZrQ3E6luYoRy2AzFHZj8O4hXkV81hwzaz/zpFXkqokRg2Q5PQwjSF9NFRAHcKpqbt7caifWl0VkF/6TIv6aYJExL+dfUTHAk1LZEWHuU72Km9XNhnW9rKGzG0o6+6XTrbl4gnKgvzoFQGktjUuoPZdgTEzpWPQAwIWEkpuw7rjOa1LzIt925HUsfsvwaOhHtzwUJGPfWCanCmhoGXK0VaoH+gZysnX/r0s9q7SjizsIOzLbZJTjHa8HUXHeNQYBDDuXBibscywtiDTuY50Dc7WheCHfg4Tw4d8fjeY7cZ0fcrm+uLx93d7euZ9yWVo1gGE3UGLO6FKR9Y6vqe/DtS3LhK04OtnGJ0pwCxtk/kl60lUwnur6rmlAjASucbjqgq52hxIErn27kXVZBQwUAV0TdBLisjgYLgKyUOtIHr5qGkgctTrqRhy+khZIHLlq60XdZwPQQIA3pm01KCgzYqF4yqsXC6gQAHaVDHwl/hLFfG9QYAjhoPJ9jZwBxDNgnn4vmfSSQT/pPPX0yN2T0yWBKjeHsk8G2zSd5WhZM8ZSpyLD/BjxwEspc9deUWIcigw1VWbj4QY0mLNWzgbsvl43LgN2EpiP6or9Vzo2o7WK5UKJfh3NA4VTHndqYZDXVspvBeXDuCqJVyO6+AmrtJ81MNgKMl+d6d+gGsqH0gF22M7Ga1fbhtYXbgBGD3msZzK6DiEDOvovIxg06lHSmFhJTRILBAWVBc3EQPi3Hg5CLnnSxD0c0sSgWElLEEUhadqw/L5yoHn0M5pcFkRgNF5WpBhtmSoqSSJyeSXXp6yhl2RBeynHZXXvzVburZ36flmKEtvwaOmLtb9i6TMu5GaUXFIYWCGBfKDTavFI2H5PssjidiLC0qnKJ/CnYH0OxZslJNqJ2yMzMsjzcHTNxFl802fP5YS2FH4TP4OP3fqPnvT35I8KLxcCqRRm68cdyAc+DzEaCceElYdl3P3dHgmyTDDPXae/zhIZBeTlXta9VirBCocBfWFmnH8hheahWUanF76AtuyIHutMd3FUKl6yoioNdIOmy+WB55azKA+NXjrkJtQW1/smGqjBc/WTPor3rVQEdnvShS15CbUHdRGUjAKtq+bJJ/UUP881o3qQ2EpgbvwVi6PYPCF+nnSBgumLdb7bIaX99ZeWXzSgBgmuANO6geQhBVflgfso22t1jvMzrKVrp7FNopJJvTDZ7YW5CLgv2wFyUyQdDhrV9ADMpSv3wa/El1APTuX8RwuCJpSU1BMwhS4WaHqV/jWb4vnmCxZTtXrJUQ4SzXP5q9/nxD1adSXbFDgftLyZ9Be5ZuxvF7/Oj6qrypRtkI8rSMA/ImkzqH2hesZq9tK/H2mYNqo+hvujPy0gQBlcoTakwYA5RytQcVEhJUgfRVECgsFz+em2aoZ9evKd18mzYrKf4Fjw+Esv20xhT764ypYCAOUWlUTP0SGmSES4fMAuktxkwIUlNILCO/qEpgsm9BVyBeLf+btlW5MS8Q4RsJHKn/uvM4+LXpuissrQEwKjUwhbUjC0adJIxcAfEKambh5kVshqY8d/NrBsWSnZFfmDHJcH2z+DgclE2m7hFIKH29FjjNxaiHY5uTS09sZxVNSd1we8pP7F2XPsbJ5rnv5XGNxJMOcIcBxgTtQlLS7J5yqZi1WJTtJ1XX7KcSuJQeeivj27GU/dFxhJlOzeTGq6gPrCMlgNGID1eswNJ6m1e0yNn9WuzvZHlZ3qdN9tUlfNPDckeiQ1ISY9ERyQcqrek6d0/Fue89iaZtxinBgOLXh+VLrqD1nft1RoODaIv3p/TLsbiKKSEpRF3SklaUqEwCiFhccL5N+whigkC6yek/ZzHz11DaVR/UWEaJk8AwXyaaMEL00tMrmRCfr0BI8bP1z8m7BNih7KIofX4zFJO+vcMr5hDJ9SV7J/XTFl4J9QB/oO8kA/FSbnoZCLyT/JCngvDBYlQGs/NSyj8hpzzZqyme7NXTaUrm/VljS/0OtIpSEr5BT86NK2eTFuSdCUxqHSZwt9Z7tCeupLdjrkvzHCk1YeKz0/UUUH5gVj+0lz/193uu83Lc+0YAiUA1gDgBMKsON7QF6qcZKqZZMUx60uEmZ7GypeUZSx3qbZT2WQqi0Xnnhf/pEmteyjaxqjsihsfh/Ym1Vwq5BD2FqyqvnwgLV40r15cDyd9XPuovvx4Ugipn+L0QHnT93WTaVdWY/FuVd2flDDlLgmv6Gw+K0y6OwzhI8cJrTT5rjlJ6uo/hpnBZZswZlWRX38jzSX0qpl5V2avLWOctguHBi92j9v3F5eP+8u7j/cXu+3D3e3++v+5+Hh/c604MQgxbEC0OsnqCe1BIOHoHi7dTY/tzdloYb9vd4Dq2gU7PkfTNYCvJMxU45tHUy+HvwJqu/S9OUE129B5ISDcEmEg2m3mtJmaF3et0LJQc4N8vLu72V/e3T7uLi4fH0C1YEZWjRSB8/Dp9bf2q2Go9JA80xPxYG7Ei8h/mzdnrwr+ikNfBYfFXtWc+rQEtDWpPod2G8P7pw6VVGlOjQN1klKw2UfD5B/qJOX3UC+NB+gd3KQ2qEGCOkqt2uKp/Lm5ejBtK6/RRdKHTuH4ui9qDcczG/NyYD/ImpQ/mvRN12gr8y8mc1OVD+a3TOj/SffDeBSF3UaB6kZXjW0e4QxGq6/sULdf4vh6owaOL+iJ1MnzPqXNrg9xS0+QmCXoCkJYTvjrvtku9cLoVyQhC9D4Qg4sT/ffOD1U+7rY52KUCdKixI0v50jrfUKybH/kpHzGkbLAXEdG8fTPZD+YQhMyQ11RSsmLukiKDFuMiBtfThcxUX+WOWR8EQ0Q3R8okTbCBYmYQ0YRoRiHDGMcwHREY1JGCB6LKAeLnDcPNMmDJcVQUfgMOogeth5cN2X/UTW3QdgdIdrRAID9IEqzM+zzvSyQ5xwmkK3qNxsGei75Rm0Z6K/5/tPt5eP27tY136g3bECEOk3vCd98oz9daL7Rz0JovjFAFzTfiCRMVeOlxbge1RSulN8H1fTmGr3bS3NVV1s1wUHruVq/kv329o/rh8ftbxetzd7L5syFmrcaCIuxPGU5syztBrKluGyMQnazRPcir7NhbplJwTnNSE33VU1qluxJnu75Oa+ZZTrjrtNiakXR7QwreSb5kab7J/pMXphwhSuOWp2NFWW+UM4Or/vmxYb+XllbTsddps5GXJlCPLnf3V1ePzzsLy/uHz/trve768u724fH3ac2qHmoNQNGiIhLg++vd57BXIsVkzdKN2RAw+Ku6rmbDWDdYYJdF4maZ0TyhGVMRDF05TAAaN/+j4s/Lh4ud9v7x/3u0+3j9mNf/y63N1upURg9DOQENgb9AYDO1A0SuzJ7YfukOU0QReZGQwNHuwMZSzKl60Iz8ireE7iel+b23949qtbd7YWHLskpvnZadLodyxuXnFRm5KLQ9qaSpwwrtxeP2z+uXVYLlSRVKDhcVT9evydseErQGomV34NXVD/eP/7Pft59QoKt2qwRD+oztQd0I/mMkvxcRuG6mcC9OFtMmEMd/cbMuQNvVT3y+pKarfjVnhxqap52eCuTDbyVwCd6KCxZ8kCFo4U3kvha1fS0T55p8mV2pgZfrMrWm8qmhwNNVpA82XkDuZycLKtV/hIH7PVltVufux1weyo/hoEqUWlnfbkZO7EaMKPw1ikbWF/gieTsIN66gKpOQF9fWl7wE8nYn8SavfLWNzexvsgecV/Nlg5QZS6NvInQdstB1KizNLK+UE7zlHKa7mP2IEsjbyG0YumZZPtz9z54NKlLM+uLrdoF8P38ln1UpQsbbyCT1nVGTzSP1KFI+G8g75mdogYg2cD6Amt+zhNSC4fXUeWJ8KuI06SHTmUNyevNvgRfPHPflrvgx3NTU4fymuODGltqDIcEkKRRu4jbOFV3B6gXuY2E6chTA6y/lqt/oAmTvwwaV8DwBD0eewERnfqyiodU7UhVmvT8dUfA4Zw2IpSfMyNXYPyKayMsbVb3Zgrcmu5HsXhqtym+IPAUoeKQrWpaItTUASYOSe2jN24kze/eeJCcL6MNHw79j3RpyHwxTWdFLBwemuRdDx/vH4GraAt2s8LhzH6dzzh/O7OUpp0b1BcMaLgti4ez04zb2uvnHtqzg6rr2iWO8rduZ7JnV+V1KMJOL0VlmpnTQTi4ZibWWO/bb3e036B9WaT6VeQlV2V5DKKKHemDrW0K2Iy+pKqDicx2+PVQOMtgyMzHh7F31/+4HrbnXln2ySqqhAYGpfoq2nZ/H/8NO9DkNcmo9YivugB00b69XP9de/QPerBeY1CNBHWTRraSc3PfPgplJRAaY9WvWwubNwCb3FWfQ3/Zdo9Jnw7Y3/1xvdttbbVfaU6NA/WSUjDcR1DnuO0yujscWMJIZt1nJJuYF/PxgaZKd4dv+1cgoLVaZqeDQGR5ffvh4vby+splF5RMUoOAyPHu/fvt5fbixp+jBgGR48P1w8PW7eoJmaIaAJGhNzNcRj//+Pef//bXaXzetLyLPC/mC9GQ4LBp/kSkwpi0FgkgMKdkKolJyL7bT8OHjgV96dii+qN0l4SZWPstON+sqyDKqfrSzKy4T/XttOmzXN0Bjxf6QXyLM4DeRsB8ZqDVICuwdstLSk9lUdO8RmM/QcYm3wz2Phc8S9G4N4hfG8TY1Dkl6V2evaIxbwCLPHuNQHzeGmGJcbUF18Q4uB2SsBAxS4579ylLxOD0OISwW3rcjzCdT2682QpIcagyxXDbm20LVg1gcQh/YdoroB2Y9ihxKNpXRyAUG5S//BiNZHGuEX/5Dg3/p58H1Pm4zoGw/kBHWDhtK30ooc2A4uc5y9EOwMoNgCJ04QZKcZ6YaL4yrtWogV1WaEw/qm7cfic0FNu4XfoWfI9Mf6Om2pBu1imbUmK4eEU2brz3J4SnEgOZZ3dSLISlAgGZY9Fn00JYKjGQefZ53hCaKggMlr8u9s/cqbo01dLlkqQCAYOjKqb0+08dEuGaEtD48un299u7z7djYgp2aYrOqBYN6i+dfu3Ri6qGbQ32Y7yZG/DkbzBj2/+cFDwdGMRQuLCwtsRzmTbXtkSUuLCwtsT+HpMeds9pVWRn64kTT7UmYysIn0JLWpwIy/9DWNo+MEXWtftsP/vMdy9GU/ayOJ1YLW0w70aLGlPa4uaopdGnp9kB1+0OmH5nAs1rVr/CaGqLB9JU72k4tO9Xa1baNAyVxfHYJXMHuPLTAAQyFF9Ilz+qrv91JplitAHzX1ccj1334OqFpj1a2SmLhzYRXbQYnv20hYvhO694sTCibH+jiXkxJ+2jLTitdyxPWX70ZNeXjk3yOq+5JYBpKbZlYxPsXmTzZNgVDqWoiLDDV9AQNjJUA4QyVMSw/3Om/HWb2uPDglpfEpGTHHrUVc/Oz4CCyLV9XksbYewsleUR+VWUs+Y8cghHLQYmT00UBLDDjYAKTtfDi6kFbyu7B7k5RASWH5sHGGjl70AZIB5D8FBEx9BnMOLEcNaJOBPE6UcU/LyJ4TBajt8W765pR3CLL93GcIviO1qdM11HvzSmA4C5ZCnTmL6fvjNvYdTTNSJF5tw5BoW0CBXOWhwitP9Oh1+1MjSJJc954XBm2obxm/QAiqZNtB/5NocTWSyTKeFnRZw0dyrsdK7T43wPsZFL830cIuOjfJAwMSM1KxuFYPvdx/lNOwB2UsEo1MYXAd1dNysahd7t8iSTkdOt9eSSJ5G7JDnz9klfFzpTKVRS27ymR87q1y6ZmzL5OJyBmLpkEDnjq5tuvUvH0YyCzXVWi/2oKkHCfnJdHzOaGiYZtv5mUQC8rXgs+UCV+1yshkQAJ28sRZovsFDucXGntxHg/HhKmNpdgulRvUXQg/GAFZEuU8YMLAEjejJHjyhJda1fmAzIPX4o1BcX9oXxtt7Qh0I6L1K0Gj9gRaRbjN02FmkZEZf6Ij9p7Sm006alTTMiWlBfdHfdub5ZBmTWw4nfgDu1dyrg5Y8rYb8zG1pKlthrL6pJnllNE+k9QFcimxkKmJUEpaX4QljWDH8uBCumJmEjO+CRGR4u7UNzK6f/j7sZy+PS0m1gh5Eyblz3pSQ9SuVMyfjolC+l6pn89Muv/qTG8si0ijNP6H2QvzoMLK/NJ4XdZxeqqCJNCBXYYqGQ+DbviZSxdtH5SIQW5TD5XH+jybluAtAHSlLhCn0Ap3nZEF7L3o4XXyvK+9uHaE6r5bbQgdnyU6dk4juDKbmeKAwpCsP8oDBqpXjFi7Kk6XUzalAcD7DTnAOsQ9XdnVLpeCSvvyXZudImigwEx5IrkNtRUoVQ7MrHI/pADck2A8EH7T1UrsTECzSWH9oSWCqKWhgEtuIyToPCDq+mELSMxAq+BiCMH14Tne+md70swVn40ic2d/3FDdOtFSisLEq6+EEUZko6VyVN6s/06Z4cu3t/wPQUZfEJNrIlP1RuJDXl8Yk+kJzV7E+a9tY+8QxMUlEWn+D4O7W/mi3aifQWJcPJLcPdRZYVX2l6x9mR5dCAJ7I04MTge52n7bs7/kxlhBgcOyf4MxTLx+A3RTZ/jnMMVJ5sGeI8mGpRULlm6kjnwdeIhMr56zyyeLDVYITzFAY5rLphzdNF2U1RlE8k+fKhqGrpYgDdEEeqBzoUVK5V35ko+iEIyWVxhK5IM/jqb3izDLz6r9yuxWt50M/0SbxFztjjDWbURV2cMMgy9sWCp+ZuMLFTlgwjJx5kVmoHNsqBjAkEjelXlR8ciRowAn/uRX0/52l7Ts2yxXL+ndtEY1bYtPlnYUhdGOaGuTh1lz/7Claz5jQNKBG5wnaRWMk67yMxsF1upOx+QdOke85PLhjKaFHpE5JlUm59VtmHf3eq5Jd9IUM8H3Glb0HyRsp2AqbWtWDg0JoUFMQTlaIkW4UcaShKIXKBtY4FGefWoGAjtIKnM8vSy3mVWzSCkYb0vXflWNT5Z5IfafqOPpMXJtwtP6/68mduLUAua6yHMzPKojDtM13qCiF/BKujM4p6jGg8gfXXTNS9NmuZCpX6wPL0UlOlllV7xlBROJDZorq3F8HzIgdkURWfOlX76748JIelsqUuD3KISqWdqC3hayLpmPJ1I9irlx2i7U1VNHUIEcg2PpC9YkoAq8jqEBDIitdp9R++ZxndFUVtzWCqqGpA4jB1S7yY6HqnX5w5wxOGJr5eKUMwV6ZpHD6MzVi4vDNNO/HhbcbCCBO6nuih2a+bDKecbZ2R/LWxPxKzgfKv0oFIh1oWfbPGoBbJyUUzzc5e6lN9bs7qC3n6rC/t47TBsB4xwHmDK5x9uC0TN/9ty8TTd9vSq7I1BtVIAf5qZDv76pZIL/mB3NWV8fRYV9jHab1ZLV6A63ovOHtP/eKAUYXbwwOzFvWZ5Wnx9f3sToLlPkmTaRNkgAuNN/lmRSJPSJApbwQDvtyNVrSHRdqffP+FvkaTJplYVVzR3fe1/0qf9iWnB2o9sRGmVG9vXdntFfbVvqpJfY6odm5mVZElp1lB0r1lg3qYxJmRVQWuVWnfuLLOzMeutFpzsUWrOsXmuCT9Vr/jLD1SnE5RBRmrUyQlQ+g4tIw3E37wj6P0tFnWnn4r+WwxPZJC2dTqYlGanFkkXjNzEYc0atNLwxy1uQg70dMT5fF+sgl/XVlYg1GDMtTBqIu4YXAY+7db2llV5nDzdGyZSzurymzfN4smbkBfX9KeRVbVGYgtTDXa2pYJzhhrAoo1smpWTXOa4fLcTKjB7hd8aZaAN4rSqEEeO9mFPZNm1xLfWw5r+0iaQa8oBmmkpBOEOU6yi4okZl0RJzHBjCOgh1yHPM5ATiEBcfhmF1KUlMeoSyLuCjIqhl6Zesg45FXdd7fEcZGmRd5fSYzTm2txY3XuTx08Rgdi5r6ZWQr+rfQ/QdxIbJGJGZidJeLMcywKESc5vgL3NT/nCalp5DqrMvcGorE6MJta1P7MWWazEM0OTNiuEUWlaGYVkar+44HmKeV/kIylbbTA6T00qLH6DpofCp5Q6XUrfOIb2UzwT6ZzvU7kt2Z/RHCgMSucbKwtD6lTNMrD7BId5Z1oMzNn1SmmPtHI6gKx+gazQtSewVFidX76J02ihpjJxArilP1Bi9h/Gzp+k8GizRy6Jeb913aNOQLnzdJC+K8j+1mXLuzyufunNqG7JyWLIU9tZSWJTNjViSepQ11JQvf69Z40g6/9U7Sms9HZWUlm1QaU/csYUWJoVBpZSeC5ZhmrX/clLxLaGsTXp7IRT54qwn/qGNx3BHDG+0rM73zXqZ4z6jhR7W7zIAptdcigUWXqTcSGjxjtKpHGiz7yEHZi2vVh7cR0EtgcGmIJ3UuX9KArnFmJLlEVMptrpcbdkYFSJaxYIRLhJ1ny3GD9BLI7NRJeSHaOoGGAjSZCd1a5w/pDUqU8WGvv6FsQxKoDPBXTmnU8FtOVgZ4peirOeUrT62X3BzxL1Jtb4AQ4q1etuRYma8pIu24+zlY+3JgbECNpoIb66cZdgRSJc7+BQrrc2o2rgBCJY9Emcu55s6ZdGx7DNdKUQTCZLts85wXXt+72X43t+Mef/mvEHMxekjyhWUbT66b8CN6Xn4GrC8FEd+QnMr/8+JOYRKlqfk7qEAYbGQXARoOm6+/2NTkG0OuL4/NKMkryc7nNF0+Gefiww2K58r2wukr/wqq/sPyZctYtQmAq2NHuHYkqXAAXoOLzX+62cScO31njw/DcXApOanoshGe/3Uk2MMkEE9+zjcGPtKrIMaRWNyinESUOa2VsLclTO5f5lI8PBLnFWR3A28RcI5ug+Kt1FEYsNtP2isuufP1jtMXn6PHaU5l77AYJw4vjrrrcY7pZkH98d2Ve8qJ5ho5vUyTqAyDgBEQody6/kRLGewSLy9mrbzUzR+1nffS49rl2OVj9L0SNoi926XYDeljfTiqsP4rS9YB7GRx+rh0ItK8IZOfRuCHtGIGVWxMFtEYPToqG1l5x5tLapgJvMaidWQ8YxArCw+PBnJZHULDz8Y0MC58hD0LBzF1jhoY41iDTztt1UDkn7DuItDPziHNzcoiDFhhftwioooszKFGzVcTGu3PtGByFEm8RHefmA8KjqD08Pi6IeQRIACPfCLn0G3KIhHN3jZE66lhBEsDcNUouKPuGSQA3pwnqgpjXjBTAyiN6L7ghhm8gY7f4rSSME8A1fBUR/J4XdZEUmUsMl8qsO61cmvYJlLJo5FCpoIgdLF34u4ZLPX2sgAli7xEAFMwRQwCYtVsQ0JDGCQNazopA8MhOtHAby4lF3mIwt7AfMJqT5IfHqSU1jzAF4eQbpRS+Qw5SDuxdY5SWPFaIgnB3HdQtSfuO6iDs6u6bj/4u7RFOrtlHCDuP6L4kiBjcoZzdYruaMk5o1zEWIzuv2YEk9d1QzUCxXVlo1eiuZ+AT39VOCIjwBnouMd6JF+m/vqI1YZm1TRsoDkjpiITP1rlPMv3iWL2SjwJwv2QXENwzOfEH900G4s69kxNDWNrBQM8t8+DEzaV3MjDE6J+ceQN7KAvtwD7Kylropd6xnPDX7jkhSAe1+H7Nvklt3KNbWqr275E0pBw6IzAb18iu8xdSUHflDY3nZtqhoRzMWjrH58QUdDjPkY1DVNSwQgiITmxhsdBANiwMGrmKEbC76kF4Eg0UB9WlVo2GBgo+MVHjh4DIaCLoEh/dmDlHSaMfsWKllwZwxARICI6bbgqgY2AjdddBsCNH0CjYSNBpGOzIziXimzhixH135sDobyMe2AfYeQs9wWWRH9jxDM/WLAussxynsesSUxVakcKpjhxWJHVmDg2iFuKh8RPO26Hh6zgjtHk3vrDmbqIb1tLNbIVGft0cPcgT2jwHDWnji+/XHOKpjXsM7paq/aOPhpRD8AGzcY09On8hhR5X3tDIY6YdGnjArKFDNg1d18EamBdomKYh5TRAAzNyiNAaXggB2oktLD4byIaFZyNXRXTe5jU9cla/uoRoudA6QzGDbZ+IONONHBZVJLFjo5MC1wBpEIAVJWH8PQKAijtiFIDzdgsFOto48UDPWhEUbtiJgRYplgXeYtA2sx4wahOEh0eqOS2PKGXn4xuhFj5Djk5g5q6RSUMcKyrZeWfNF55kh7K4deBEvrHT+eTJaSqNy8ojcs+pIUZtGF+3iK2iixOt1WyFSP2hKMvGvQ53QKmKrBmttfY94rVSvn/E1lNziNkunFyjtsF3SHHbgz00clvJh8ZuF+4OUUnPGyEuuXKGRSYz5bDYZGO8iE7woLTiNHJucNnCXT0SoaFHa9/4zTpWa8ZtxDHaLmqTjdBS7Q20v6gZ3k7FAusPHRbWvQcOkvDQWLKk5TxogPDxiyQKn6EGFAfmbnFFSxwnvEB402+svhQfxXXj2xRPIA/guvI6EJadOQ2g1iNEYeccm5f00EI0lK9LpFbTdbuWx8xOFafBZ5cVJdYcWIWdW1bJxQ6Hsc4su3N3DoiRzis7MPdp3BHOKjsydmze+OeULXwXDX5HT0UN2jSx+H79YdncuPeoTFQdGocWpJyjEICNXwxa+gs1AsF5u8UfHW2c6ANhDR3vKCqk4zgHwCZl5JgXVc2S5skPP14TRt1hoDKsyIG6RL4FvQbAZ1wD4ObcjyzIofUiQLZBnsTqQTRcF/3HQ004aP12/vn6vcfMtnfnIUgO7TvmlJy7DjsXv55j4SvUjgPM2q3f0JDG6TbsnJ0jzZwvWqCBcXWJMyqqGGFGzXQRZRxu0lkWWD/SYNyioxAeGm2CbtCB8/GLOPFuz3Fm7hZ1ot2cA+cNvZlGR9j1Xho4M+eYGOVOGje+LnExxn00ZrZCbNzmL7Sq2bHdoP254F+qkiSgubyh5JrR0kbDI2yafOIfP61EHQKpB0PXiGr3K1Jo9dcCjbFQKaHB1kMJ9GiFVYLrIQsPrqDjFlaiTgcvPFg69BZWrgjdhqcCWP8BEhDWkQD5Cz3KbdHdsHBXUtBh2cX3a/YeauMefcZStX9PoSHl0D+A2bj2Cjp/IfUFrryhPYCZdmjcB7N2iE0axggRyYktLA4ZyIZFHyNXIebcU35i7fvOO/qvM+OwLcaaUmvGHxMFjyik84N/LDISdIhIjswSyjKWB5GbIGLwc4ybZqZI0dNPAzSGQiSERlJHBTRjCavbocnDuSwL3oF7qxDwKgEvQv1pvw2r3xNEBH6c/utMq0B3iiBROFZN5nf4NoxpC8UnqAh8HXp/I1mEMYAHc9hIwEo8bDwA4C2OCvr3RC9SUtawDf6qIquOB3T2fQYDKvkBIwEtNZdhgAMn5z5W7zusDtadPbh3tZEP7loduE87PfxpyxjYdQOaN9Pzc02YubADv4ysp+f8FrILP5eeSMsQoxty5Azsg4yUAzsgC2NF7/NAM5pAb45TF3qLHkjBIKAPmjkhvBdS0fPoh2C8EpKnLCU13abQgKh03wDDUteYCOTp2WMqySL3mU4KXHtNgwCsfhPG37VfUhH37ZlgDEGrOCZ6Tgs4rtz+2X0V8rtLIDE49pPae9dOXk22R/Pu72GsPXp8FV3EPh/O263X19F22xpsZyn09J/yL3nxNd/RI6tqDrqaTFVkzV5ea9+jj1fK9+/h9dQc+ncXTq69psF3SH2mB3toj2klH9pfunAH9UV6xk49kQsvh2ipZ4cQK105wyKlmXLY/MjC+Kdffh0JD0+mtd/c86LvtUfyLK8pP5BkwV9TEOHcaDL/zb04bJS/ut5nOkdADhZ5EoSfMHIkl85eQvPj5/gKmhvF06yR+FF0G044UuT0RFNGwpvDRkaKQrXmr+QpC/WniINDU4w1qrTNXSnPNLS8DYURYo4q1+pNBSnrOrjG7Ex5bOzsTmVxlCCuSNYEsMFL2yzdaskdhLDGySJYKM8GcCF8EdIKVrKL7EIYYZQ8g5W0Pt0Qxh438eAYMnYUPNzTl8UIFqDBlIWCy3jK4AnMDkLH1L9/gBNWrH558w2vnVa63jFsRjUsgKlo/vTXv//nj7/8pJ4xPQqJlOY8vnG09UiOfo1lTmH5cNLdotdSsTGUwyHWHXi6Ul9zoGKkKoBDZfHbvu/ur9rJFU1FylzUj96vUstsaplUNUY+h3PedWczTqpCfkx+/vHvP//trxOd5+n47rnslY50TkV6zhYOaltaV67qyh3GcmFkPijISHeWORKC9wliVZqifv9Ff8OylkX/74ofRN0TD1c2Cy3RFPoGeEUxWB0Y+GuCL+lr1T0vDsw8ibRR2QxY5YgFoqYC1NI9189F8yxBGFEBBZ1i0jx4JdcZH44SDDpJmr8wXuSnBiiEpYyDT3O83zz/Yhx82Yn2/5D1SOhU26v6iXV2YyUq4+DTLBIMkgIKOkXQNNxKET799qBYEk5OtKY8zI0SDD5JTlPWpMKloZgXzwEJdO+UB1VOvu5odc7CghEnX/mAgk8RgR8mOdWYYhi9urAcyqCMJphxxmk0vQHMMHUAOjrt/3gT6kvjUnqhvHIMbTKrCSCYmKoKPZyfmslG9zq7C0upIM7QlCfPrKZJLc5KvJhsZlBunpNdoiF7KPiJBDpsM4JEIFiS+jmQXg8RgVz1TH765ddAeiMIDsF5VmH4XpM/mMP6NgGd2Zt+yAU0P3zuS+NvPy0G4df5C82Kkj4kz/RERh4vhLNm3XDJRV0QkdEg0pmRXBCR0Y4mBU+d+YjFENk480BjMKSNwQzkAr4MhFRbwimp6aLRLpNsAwO5AAKDkvDKhYD0vXf40CWw3p3zNLOmsbqvnJNZzeux90XGEkheprexLOukudej22NCvr17rSlkemam0zx399QjOfBSwBmoXtES1DnbqaY9UjSqt0WK5NW8R4pG9aHmLD/e0PyI5NyqBcwGwDjEeVHUCA4eYNBI6sYls7iiHJXM8LVBxqG1K3q77htoj9OTUBUOY6btg2ae0nYEPTNVYTRm8jfvmwVKacJnI6cpj8ZP6gsdHacoi8aropyRjP3py01TPozfos8fWFwWp5JwJi56zvr95ZfGvl+s220J+n4QrHeBwsa8MEi/QpV+NXH58TYvz/UsOsC8sRn+nox/Zw1YNYDFpN3lRbF4dylIBOKAOnfbZDMy9qc8bbVSl4o51MYnltPL4oVycW8xoDLK9mZAnhVTlq5j3KyaKfbd+3CWoeKxHgp9JHXy7M9YgonHtomXNatfMZy8xIrIu7o418WtmL125ztixOOZ95/Qy8PRn6mIEo9rv4vGn2YPEI8hpwfKmw7+d5anGFVWA7iCAlT2azCv5KvLnMl25SPya6eeF3naNGgM72oAkRUARgnd+KaCjw/6AuAc1RU70by7saop2A4DDfNrvUEVkKe/BtHaHce9JVyeGxHXj7ESXLvXhB6QPb3pIVcif1mcjfujfBUkPe4aMkDbkryEwDcqYUkxbwLzEwHYDoZDf1jhqK7Y4WDco+EjZERPB/QVJHF2fMZuHwPmWvRjtPEWeMVGXtWkPmM3jRF0BQE1/VZf0awmyBoa3LTHjSNDnNGTvMhZQrJ/VG4js8GUBIA2svhVMa6YbbZz4DiDiMGyTb1k2YNcqR04SgAxGFbn04lw9qfT9HxgNxaOwezcZPiK7IWmV4sxpANHBQwaW8CcoMt2OswJ+gLmOcFsAWtUJuVZpPUrvSGpsKdrBpV6iu817nRlq8OJTnxZCR0Zh1a/JVVh4RC2RrBYQdSzNgKuo0C5XBAkQUTEqzC6IHBVVBWjfLFtRhMCZp+DkwJTi8gy6zlonbEliJN/5lK154lml2IFE9wob8eCM1XgajeE1/QEGZhCmQ94kWnXRU0yRNoDXmza/Jw3xzRMu/CdqQuY+PRVbfIhJ2X1XEAmZTpbA0Sc9jjoCKnYEsONjBnk5tF7liN1aNwFwKjEWX8tYrttl4TEa5m/gFt1uFFluCXkYBI8UnG+9EteJDQ1n8hwIy8ixqb+Yjkd5cx8AIxLvKLntLDclOJIXYSMSr7qjlegMZ/wsGnPt58Nn9q3cOuMKWGQ+qTFCNrlMgfVt06TZ+tlDdI8T2lOBwHyj1Ks8qc0umXxS6odA/OWM0vNT/gHyc5Um/wQvwFPdy7SlNOqoqmU61g2RQlcKuSgt+evO9XXofqT2EwIYDIyjOdxURsvyHlRECnlL3dvvjJTDXwP3cIG+eWeSfWxMHb8FhKbZ1KdCntHr4fxnWbaiIGmle60cvqtvjscKuNJWhu3BqQYQMIJipXrgR6bjYMPbUbadHRHQpZLoVUvmpumrTYGm6443D8z7TpS32hyri3Xq9q5iSjYFF2iloqcc9iC0eKUpKF+EzCw6bV3RYVwGwCwiX3lLLi+CRgI9LTJ/W5sahry9dCzEiEhQ5H87lFtOW+JkbIsEq/mcpzsj968EytFSSRO4yT7ssFhBwY7OC2xM2Jg89z22639GMqlkbhJ22mdeClKhnD6dTGavmJVTYxTVInPrBQSl3a2qx6vmuksC2IyuiqScxPYDFsJlmzGQphMdIETwAcxgs5Z3bBqtgkKwGcshMmkmQY5/UptAUwG90MAcaIxlcLksqNZs+wytAsnRvOymLz6cYITn6FMCI9FtoTlL7Sq2bHthT4X/EtVEv2Ksfprp6TXJS+q6o/u/qWtCCfvKZfGQRqzZiiQmzTy9fQlO7uzZk+GhvC88DoU528a+DB1edggmPDsGLUPX4eT1GF0l03Gma6pHXnQFQZbibGB2EZfGu4QUHQlbPb7enJXw8Rn200HsUiLaHG5j99iUJ+B4TBfXBQxjwTDLEbf02rruQluDfbL2BLAHTnKLJjf0CNJXpG9bwZFV9IOs5B+AgMWOm9OXxgacRMYOvPxKg8k8hY8pAHBfBD9T/JCqoSzsr4oy6xP6QxPDejG0sZCTkPqttCf9B/khTzMAQ2jajMBKyjIl2bPGC5GanZy8SJ/V5zztOnsZqsrDkI0UFHpK702lDNtPzdLAcCiyhKGBcRWHWwjBLMyIHwsdf+4+OPi4XK3vX/cX9zf32wvLx63d7f7i9uLm/952D7sr67fX3y6edzfbD9uHx98RbpZQdU6v9ZtT3jNDiSp9zSv+ev+SbrnL76ujYGDv2BXJvt9exe7yU1Vvc+l2/rW8o1g+HtySLPrvUmHsSLft08DrO0YFYHvyUGpdA3lSk4B3Vi5siOaRs3WbziT2e/JGQeWpyw/ru4Nwe735I5+KLy2Nyaz35Mz2pni/sSyjFU0KfJ0db8oGXxfLqqf32aMIln+nlxSFWee0P2JlP1/ru4aJYPvyUXNxQX75hG1t6k6S/PfpXPezi/fnUuaA4bTrORtKo2aw/fnpvZXfEMXSfbf0D1CFsFo6KY5XlaFZUnABmLlSYxFYKfmAxQ6H6IHp+9ACd3xrRvzxRqQsm7p3QnmN07KZ/MbOiDzOkh/r86dA5LTvIOwWCEKUiMixhAjZkSn74eLjr3q/lyNFnc9PVKdwBalAF9PmVg/sIUtsaM0J1Csap3sFKHaEk5xSZmslw3b23JnVg/l78KOCbwba7/3qhMdURsonpLlAwLNkc/7ghk3FBqoL1CicT3X6jWezk/yA3auCgDYcXS1WxWUpq9T0/5tkx4z5to65FaNJAS5fcOU3Irnq5GE3EIPXLvqaPNyyD+IBTOKjnFXBrIWAC6envkrI7pm7tbZboQBBO1golJVzyD8OR+bv0JvrwklLzVef8454MYOEFWHsZjPpFEs6DtjlKomcDimmFchdDrOM0ME2giR2U5bH3xcN19JMiyw6LLUE6bmh/ff3yMJ0qOuqAVdxqoK2ikm+q8xQ11Ry91TRflL+3/RFS2wV9SFLia+Ak0e/Pbu6nr/+/b2ynXXmxzLbOBvoGx3fdP+RwxhI3ZMXfpiSCECZOBtFMKeCA+R6PyauNMQwjBwrOr3LD9SXnImHCfWjxel7+GXWanNLO/J0FqyGja6SDavu19ETgiFkduMaF4c/x1GGXJ7rBNr8NWx7sSlW4yaqy+T629lwY0vJ2utSABRakOQa5f0EDwrO01D+0W+iS6M8wiGS1jK0ra36E6zj3mdMCVoZGs6KKzaIT6pOX0gzJsqw3UMWtY6KCzWhti/O+c1O9GbgqTNLwXIdcxLgON/VxPGcorX8EwVdWFWC+fotYUHNI2qOLG6pt03sLblSHnTW6gGC54C9GYMl2rF0rSKGDGWdHccvc6KgWLJwrYODK+G2VtmMyjME5YxUhueY7YUM7ZR6VRnV0rIbvd4Dv6bmdZj+rlx5hB/XwIXrPVlwZFvKEvT+TjdLwiquEBsYDh8npCWAslRcmlsJZvBXLAekE1Lx9DNUi0XmiI7oDfd+gF0F2oMZwjx4+nMslRf3DuIdLws6DFqt2tMaR9GZ/nRM6wMxeGRpUMZymGEk5GDFhvD0aOjdBe4pke3EYmXiM1gBkOK3pbv9cdIIjEig7/IPkYFRkao1t7a6pJVg6i+3HWzPY85DUE1RHTIkRqka/C7J7zyj319aXDoa77vpmMsuSGvxvdBgKYXkBiOHbyiC3T2d32C2IPf+fG1EmksaFGFMfRzlpQ1/7iFJQN9RLX4zCE5iCOLy7eDYKsa4dcVVRjv4g6UVNgv6UYXNPRCZSkd60bX1pU5TXZWldmd6/xIyh0lzRCfFy/A9LuP2M7aiZTtlfWTtdiS5xt6um97uEtS1uJrN5pdPADjMmCc3kx6p/pIq/pyeA7be8AziJjhReff3cEr+cx/1DaIUIGuo0SoekgyRMQ4GlzHnLObrdyGnNr7q0BbvCF8XL3dM3IwhfEz9KQDfoVZktjxZ9Cmg41JD4xkx2B6AYni1t4rcVIcZuoomQ2tCa2k+VQXXdVkYFVh8oVc2Kocb93CkdRnShbZCWxxvZ23+uXq9lruZkPju9fhEELIFM6itjPX/KBPr8PMO3hGBxGtCJAyyLV85jlUuAp8haCZzMbG0WRsJkuIP53yJ9FIPXByor/TFX6yTWvqS2vqjcS2f4ovtDfzRiKbd6JQxyt6oYKpNxKbm989xhLqdrIKW2SfLFmnlfbG3rSdVsgjbr3aydJbSW1zQw/wDcGBersLzRx3DKOLbmf4v68TjTtjq8dkMU/SDaWwcj4DDzVsnOGR61wdfCzUVNrz1g4lZLMy7JXrXB5b1OJjuN7lWCYkNxRBKl5KyEXsbHskksAZ6jqixt1FC0eDDtYapVmw4whUHm0y1B34+SajVgdb0XXrN6A6HlozKgZZiVSJrT1A15YuSZ6yVNoN/f9T93bNcdtcuvZ/iU49GYH4njPFVhLPdmyP5CT7qdSUqq2m5X7S6tZ0txz72fX+97cIsFvkwg0S4Iey95ETkVi4F3oRBHEtAH2dPy2YPEdbYcoTf3q/OGRlAgS1BtaGNWTQDJFB0MdF8xCV6QSfHQ2Pkx1ajznyME/Dn9V2Z3QjXDhyGkzV5Uf5hU3OG1XVwq+77S7rSzFH+FmjgpG/TKTFI455TDvugeny68n+s7q1zk0qy3LqaP1ZXcqdk8nyaNBMzEiHqo5ovsA7Wp/bpWhnd327fZjwB3Pm5u3kjttIv9+Vn1Zf87BSqvizYyUPT5VM+RP5Vu+KuB+++Z03Z/HO1fDxW/U4DSBHea6Fq3BxsOZMiQQKui1PHo9BykbHIzXEm4jNOf24pyOlUb9HaG1O7X6Sr3pefl8dPq82U/0OXXYn96fjE8uXSj96sX1/avJRcFqdN3PtJo1TmpFU22kvs/lICwxotR/pWUWJrXcsl9yKy6U7k7Fc1iXzW+5UZWBrVKudWiCm+83WbRwxie62rRl1f1pt3GaZ7QqTOq+I+ojFGX3woXhxePfp075MyuyLSG8bmlpx8rP2c7l+aCaEJj5qdbHOJ60x6Xb94eLD65c3V+9+/XB58/LizZubtxe/XCZtfIXrjRgc1YzHpsDP3O7u8b7cHFK378Wym1bm1/pbtVfLeLHOzHxqbxfrdVm+XaTtKoClPtmYUefnx82fR+A2XGnDyoxah+zKHhE8cmv2DNXL8lDeHn4rN8ttWoo6VtwyM5/acrN8qBrkon5MhgumlubTXH0mb3ffrsr/eVztRj5zoa05dVdL/OnwNBhlD/Chy+58/vi37I++BYfLb5mZW+373fah3B2+jYua0NZ8uusJoeX4J5RamlPzFK388Cztu1ts0k6XwCJd8ZnV/bjd+QH2iE6CGJpRcXm32h/cmdKbZg5hvuK2ofkU7xeb1WH1L4DhsjUHpmZU7bLqPpRfR/QITzZm1LndHcrlr5vV/4wZxjetzKnVpUeuV0Pmn56knozMqNTfutstvv3W3hkzXy81NbfqVurEQLkDEiaydG6rA+NaKaMDhJ6MzKl0t9rcjfxGbhiZWGnyDM512kadoFBy+k5jG9K6/MXt7eP943px2KYxcVR7p9VRrXndtXPnx932r325+321WW7/SiOSw9Sf1TX9dappuDPd1UVzTLab6pTaH3ar5V158ZCYxTTQ27qyj66yxUNOZtNkDi932wpmBTPLM7hbV/XpqarndvY4bTCrm81KntvB1cPtnK5588/tlO+gX24fEze9H+icr+a2rubvcXLWwHyq4rmd2ywOqy/lxXK53fzwDB2Nr25RVffx7+tsduWnclctX57V11Ytz+/i01fzzF62K3p2R7czP5vHCp7bsX1Zpq1FHOhXbf/53dosy91vi3U1LzJ3cPrKvrQqe3aHj7t+zevpcbevv8VF/4k7q3+nKp7fud3j7eFxt1h/8EecpK4RHuzpsb5Ds77ndjvvfJiBvg44NGYyBx83f262f22e4/Oqrupv/Lx6PKzWq8O397vtbekqntNbX9dDo67ndvfLar86lMu3yVsbDXS1ridzk6MxbuKZrMv6w7a9knO4wy17881eJe+Mkqs2czOUDPPRj8Ty9vNis9rfz+NP0/zzOZW8pibbn7wFNRO48qU1NT6pL0fTszqDn/v65fXSz1ZO4F7b4HxP/mLSKXeg+qxdwyS/DWntWE+w+Lq6f5yiH0BuPVl/Rpf27VT8aT06GZ/XIfwA/eIm3q5auR/D3WtYm+/RKSd5Z1KpZ+V0L8xmo8be/Im7SmU6kbV/1GgndiDzcEJnavMbb/65nNofFrsp3iSBO0fDMzqCn/Gr4zzsVKPjtsH/64fHQO6k42PSvvOOJZEzUw4m05zZP5S3q0+rxDX0+R417c/rVvORqRceBS/TwU7GDM73yGzbK5kmFXx2Mj7iJ4m28SzfLd3+ONv/xmZ3KCXGxvXNnVbni7Z69feYCeF+5WetWmb4pTp7ujEDtQTfRg/YBjk16l2U4NX4F9Igt+bpK+hMx1wdBnWt43gKNEWanfXo1SSYnrT/SM6E/FBtw5ebCekKDciE/OFxs1yXOz+qHhBBvt6IvVHt55sh9in89WG7G5Qy1i/47Mn4cOGxGnocuhkD39JduxmN3wY5mbVVeLZv+buDT+CSfzxvhr0sE5xq2X8+t/zU3M0+fZ/obM9oFc/o3Imz33xabe7K3cNutTncLNZ3293q8HnIBG6Kv/21/u1NMOvv3VPl3+/8YXF4nOmV0lflrM53vvmvGll80/netDrfKOCjr2xG2WdPVUz5E7UaPfaJWW2xUHX8E4Zk6F+rlud2cfrxQOjgTKOCFPeGp48nezcyfXyEc/UJWDfPE6awtud2eUd2TZnBz6cqntu5OlPtmX5PWNszuBzhRNt1+nbe3dUfTc330puw02yJnbynPLXqDIlT3Z6MzpnKdmXKr0Diy+QfgH3OJO+vnuNG3ubq4xxIPiU9x4G809GzHcAdk9+50m1YNYFDDWvzdU+32/Xj/RSdE1V7drI8yW/QbNpYT7vaTBFHgSO13Rnd6IqmoSlPuObxKU/d87yD8iD6pI5JeeqwPXViTa8boxJr0hyJRFLL0hSuta7OPmNwM3aRZIL+s1hd0/xa7V+geyOBm0/Dl7qkeAqqeUYny4qR7yYZECPnGuaf06kRuyIkeTV2Q4Rhbq1X96vDrE9du4ZndO1hsduXN+Vut93d3A7cFyHFQVTPs7s52Vx53MNp58bTnBu1PUCKa+N3Bhjo2HZd3qSfKzPAsWYFz+hYTRHvFw83j7v1XN6FtTyni4PXWCe5Nm559TCXvpDNkad16cn6c7rkF4TeLPaHm83A1adJzoF65nUz5RPgTfXWnd5lb3a+z4FluVhO9ZUfE37WqGSGH6pu+fiStIv9Yehq6HQf7xdfF/vDjPHY6+aI1fxZbs77jdPr5i+TMcVOLyfmijlObrZ/zeqdt/8cbnV1nMfVvpO5ejQ4X2c5cFFSgtxRi5K67T8DRUMOTc3S0pyakqghrybnaoluTUnXoF+TM7Y0x4am7af4NGpvgmR3urq408qzyTw8WZw1sXxX7vdT9gxt1WetGib8dZ6a+zn6b+LU9B14rzuT9+DEpXm68F63ZujsiGNz9Xa9ro1ZO5vk2ejFs+mOdXV81xNP2NT2/h8Z2TXVztAvHBv3uXqFljvz9Ak9Lk0/qmv5NNOgrs+p6bu5tlczdXI9bm2G7QiS4NCYzUBSXQmXKO63GzK1R9cjnu5IX3wYGgUt9WT3P7uqAI3wZD4+jfKqfOhOcotWX82OLOvSiToaJjok9U7SdUpKm3rLlHTtjgV5U27uRjSWP1tkfTQySmBjZfBqX93hT8km0RQuBH4yGxYbHlTwcbn+vGgcAQ6eFndD1sPiSiQ9Md42KZPsoJfevbnZD98OvVEaV3HcxOxjbSVNEjXVIzHl2e6XmPyMD5GY8qz3S0x+5vskFudWM1mEQXeSeKjeIB3qBsdY43Tl0+Xr28/l/eJUd3iq8qlWUmSwima/svlU7sIGgH2KF9EuMVgD7E3a5zqB3iR2ZlP3j9s2G/y43uh/dpjHLnmz0R/33cd/lreHlF/XV0vLTKXDXc6T0SgyWEXwA/sjMV5vqs/W1jcL+Z3pfVk/d13senW3WRwed5FfPaiCFkvyOnAoLuutu/Xl9v5+sVm+3nyhn23d6iKlx4psxMmyvF9Uo5brv1afekM20AdKT6ht5a//srj9vM2WFhaeXtn79Wqf32hh4emVneJ5qDpiYEKFldsXu9vPq+rY78dduc+WGLEw+tGl/dZDubtfuRns99v16vZbrN+i93X2W6wwp3renwr+tFtsDpdVruOpkrp0tBJUOKkJAreexEn21Ai3241fzT+FprO2tSx90Gps4HlzWNxNILc2M59Od+NmCqlPluZTuysX+8ZLa7jYk6FJtTY/JH/xzfFU4vp2+9A1VxVUhi2MfbRI1vuX1W67qc4mv6n+1PWNlKPvDBnOa+pI+0UxYnn7eHDd9WQutEzOKf6+J3s9S/Z9Sor6SMGb8vDXdvfnVJKfzM0pertb3a06l0FkiX4yN6fo3XbbOQmVJflobGLBzV6PdJA5yknRSfu528XD4qM7K2esorOWqSdxh/3y31b7f1ttPpe7ld/nLfdtMksnDX3o7p3ndGVYN42diPTPs8p/WO3K/c1idGCftUyNGoTExN5VF29WXaA5TWrD0CxC16tPZc8+L2lCG4ZmEZr9noYqwxf0jBE74E0NRaNX9Iyytw+lX797s1qWm8MU/TY0OUuYDBhoYMVghDFjm2cPNaDocIwxrWQ82CDzIlnio3MlI4Yb5WrdszYiTdBZw9LQWO2Rut3sH+/L5c2xl59CNLI5j3xXwwSST3bmkbkrv2z/nLaRkcnJxOOn7Kr8n8dyP/ANWBf+v2pY39Q0z8D+2GTzDu1bfsw5uO9zZ+zwvu3ILAP8HhdGjPFa4qce5fXIHjXOawmffqTXI32qsV7Li0lHe30OjBnvtVVPPuLrkT5izNcSPvWoL5SN30jZc+pzTqaPfRs1Zuoi76K8RuyeMJ/mzTPplP+8c/2TT/LPNbs/4bT+fPP5k07kzzeDP+nU/Vxz9hNO1nfM0pOEoKc7X4b9VisbqKOSp6Jje9IOef4TOF+bLzefsFfl7WofzaHqUHYsOFZa89ymdbnYXftljk8VdaRoB/IiFqbU6KcFnoznqKNlp9TlDqaKTiYliIMGJlRYVouLW1VkqAsLT6jMzT4MkkVKTqhpta/2+q3OpV6sNo2Dnfo1kZITatqV6+1iGXROOQ9ozMSkKqs5pUE/Jy06utsNkuB229tyv3+5eGhl1dIUuNZdyas+flyty2t3flzHa7tt+lQkzdO2+vgivcEKzu4TjkKMWYhvPti5sqNbUMoW5LmCeg9M6paUdvhRtqjVv4b/bHXhaQV9u1+vNn/eHBa7u84zenukUTOTiqxGS4Ol1YXHCqJ9wP7b/lDev/xc3v7Zt1sQsE5LT9gzLA43953fFIlqzo6GclsuaJnYx/mnT+Vt9+dPqtQnU3OJ/bTqmUNIlXo0NJfQnmXOyTpTFjWPkJlymGay1uQjM/MENx/515W6hRvZXH4pcx53WnLCR325OCxGCjmrbeQ0W9AWMXmr/cPicPu52hIzr1OKSA3tzSF7+3i43eY8RFjtk5k5RO6rZnhcT9W0oblZRFdz9d27TqWpfbIzh8y84QaWOGDU0SGvhTTw102vzna5CXuhajpo8/gwSsnZk5GcJnufJLD8usror5G62sL00txo4Gbx6dC581KCwrahuYR+LD9tR8bcGbE0k1T3Vr+5Pb3WM3rIqGhkc1b52SPkHunDhsmJsnd9aDBB6i4JBg6Rt3rqXG/KqncdKRXam1522qEcCXozzt4YJPR+sVl96sn46lfZsDK9xM12d79Yr/7VtwlZgk5qanqxdaGb/eL+IevLE8kNjc0i+LC93a4nebpCY9ML3pWbZbmrjkaaoOcKjc0heL9aPi7WN/UJraMlh+amF71369xvvpS7/einLrA1g9zycFiX91kf+FBq084MMj+v7id50NqGphc6YJoHyRw6wRMVCT6orl3nmK3TF/v75m9DGYMmbtuNEF0B4HZ1GSXuycbk8ryNm4fuhWy9Cltmphc5Vt1Msuohwt1u+/jQsxSwX2NobHLBe59/MlZqy8wUIknP4oYxmTPGrWJ/a89CZAztWRqNMMlMNlA2YBo7TdhqR3YAG6SuYWVyiffl4fM27ymg+k4mJheXPZkO1A2bSU+Sl5e1ALQNyFxIE1bfNE7ck5HJBebP5QOBAyfyYwKbfe9V/UX2oUoc2izWP+6ywCgsPmVffFtt6nXz8fHTp5yp37isM2oxp0FxY03zGumSPOB1kiXVn0s/jdgnW/PJfdztt7ubr9PofTI2t+DOVSy5gvvXsYwQXB32N004HC3NJnW3/WsapbWh2YTmvwk6xA58I2QK3q2q2dty6U4ynkp4YHRKB5qvtuvPq/vMT4pTkSlfYbu7x/u8Kai2jLOmhZzGemqAaV5RVNaA11KvpOy5EyJq2LxJr6zs8TmRNWxs3itrt308lDerzbLMeBkSaW0bk8rL7/KItoHdXK+wak3danN34z84t7uMNzNRiCyNldrsxAaOy2cbj+f1GBMNZpNeV3lzI0DZgLmRmV78073wYwIbuza3S/Rt2Uzso8Ljwk21Jqr3ZSSPK1w/Q4SFZcfpEswKft54Eh4Pn7e71b+OlVzflpvFbrXNWEdzdrJRX9w/2ZhG5O32virbbofoSUhIYm2hvnT7ZGFKgavqMInD4vBIdwxPFlhZ2DsL+6OFaQQuy93qy6kBidocnd7QsR2J6Onkru7K/eFJ7v3q0KK0KUKdiSehTyamkfjm8qeLl/+4eX/17uXl9fXNy4v3H369urz55fL6+uKnyxyl6/JucfvteOmmDs6b+3K/94cXTiO4lcWSH6Ct4hNHZ7OXG9IBufJzdT6nX/jdL+8vrl5fv3t78+r1L5dvr1+/e3udpfL4A5+empvl6r7c7PPTtLrasnVj41HP/sXbnWXjWZ/4x6edUrXMtkq2G6L1ZOT2ychEYeBvvHT7goSLwdM1lkcLD0cLkwr0uoItCNL1eVnLJwOTyhv0eM/0ZD+0JQ17zxBxM7xpiMzBD/JR4sTP75fFerWsthHAI9wEfUcL7Q5nsMCeFeK/+dqSH46n+5NXjb+PGHi933ceMx+tuNPggA+CRhtEMfNx9DGD2LNBY5vUKiahv3n+5HPhAc6o5Geu56uyUTc2NFVERZ/E02u67xE83dj57PEi9UssOhHwVBG2kNUkT+5BjWkjygSpnYamVJw4qEyQ3G1ptGaVPGkQfUZoJFALU2pM+yxPkNppaLTi2HOcOJg73pb7/oyNtaN996kibCCnHU6uxWaQ1+vtX+Xy8mlvw2nkndWGy5bhHMUR652OXH49lLvNYv22f7+/bFdq06lbAI5yptxU3U8CdkvS/2RtTsmnjSav+rYHzJF+spq2XeAoF2p4NKX+2uQ84oOd+zq/nNub9+G62kVH9jMReUFnmyKso+vNkdQYCiTOe8aGAidB3Xam09s17dkrEhSeTln3d32vNlh8pDqVAYZio5KTwJiF6TT2YYJeiRED0ynsnNnulYdKT6itd+K1X2DMxOQqOybpUlWGJsZ21HRYXM2S16fIrrabX+nCTTI6xnd3DpJbWzI2S79cL1b3QYVBy0Sq7LCV1EQRvxN0v99tP3Z9lCUJ9kZmVlrf+3O5WI7V2zQ1jeqeSPyt3K0+rW47Jz3jJVIj8ktV5ttVy05qS7XqQ4YGtFPL6/j8dbzQ683DIz09Pa/VztrXvzSuryrjaVPxg9y6iha6KveP6yjjGO7R7mj3OX8j78xcP5J3acJfKeNB9T4lvj1Awe7ZFvKNcRW+AfB3Rn+1wNTIh/fYElnySZSPd8IbfGZX3n3cl7sv5ZLMCI7ypm3zmR3q6IhGORXandyxxqcbGDDBjij4iOt3q8f083l1/VDeknLT+QWMP59nfe/40d5FKvh7PJwnMGM1TN+dhG/MT+WuyiG+3j7ubsuXVUUJo9uOQplvypTqSV/WVXmnwcTm7JKE4Zi/5xup/H0TkYMhe5fSDpNzebEsD+XtgVT4ZrG5e2ymLmT60Wl0Lk9W++vydlce3qz+HPUjUDuT6u17FH/aLR4+Jz6B7t6sB+/n1f6w3a1uF2tUW9cD5+uC5Ye0j684U6h7DYxV64w8h+Rf6P5++YKPJqaQ23jPfUbt0v9yQ7EXtzSFZpKJ8Hgo4U963T63ou9x99L7DU7tgTvIqPsJTJQet/QsmoPIHiN7yhhvKKeR+b7CAD8uVuvHXfm/yo4DqJLinFibWLtDFlMEStzQcygeGCadtibpuHtewa/vH7a7Q/UTN0/G634Vt8ok5+hcxYyU5LM+TATorL/P7pBWbLdKfD+5fXnzyT8YXXkM4+WfBXUN9qa3wvj+omu/lOfz6mFmb2lVz+IsfcJh0U6S06Gjw+KU8dn3tHevQYE3D32+e1PwcG3QypAm6s5Aul98/eHbIeep7dV3dr/4+rG2mS8UG+6Q/6p86MxOHyJ/Wdt8BvmXm8NuNXn7lyerz+BC9bk8RxBVawOeK5D6ThjO1p+UgDeB8L2btXi/OFTJopN64C0/PFmewRXQT/vdtmtUH++hW7dlE7vdsi7ZObvQriMsl9gdtz3qEoZ971HV1xJjJNV3dEO0toBWkanlPFRLbvJ/urDcSGGEH7TDon9Spa0uZmFKja2b8gWC4tOpewx+nVyBMQsjNQZzIrEnFIyB2wJh8enUef8Hq4PFxz66oGfvTJ6JfKJ2dpcdENyZy/rwjX8GlbtdZ2NWdZS73eh6tn/2VrP9c1gt4c/xuDms7svfyIET9Gdp3ZWaz7Z/fHBfdG+3y6CC0LF2FaBsmsdtfzo8r3ZcWd1e+ftfbnfHj+xYG8TuzwrW64iRriCOVtxtLKm5oo0Ae+jY3UmdddSNBKvP6Esa7c92JhvxJ3jTIiT+htLHxMVmWZeMP3BRF6K2ptIdPorf7j9u1xebxfrbfhVN2GvfldoJVeeg3LlVFNd/rT4dPlRPVkejtOtAhdNaoe1RZPHF/nb7pdy9+/jP25e1sVRhoOwsuo5bhw9Tdio9uTb3cwxttGbhccqCSP6r/PjD42a5LvuCObgx6zXiCv2r/P1opOMbKKwIFk5qh9C7uMTfoy3RIy8oOFpao9dfIN/7OvtQY4eZKdUGt+UrjZgY/3N3R/6/Grv0d0b+v0o0XsYL6vz99TYCy1Pjx5//sKqYjQHtUbnY3R51La9Wnz51NEbjrqw+wK8Zq2LwuLFCdy/QrCdSNrUVmo519gCoBbp0/d7XHBlygj1NAncTnqammk4rk2lt35MpERUepyzcD6Thf+eT1910I0MNPW3bzaHcHC52h9Wnjs3vwjuznrrfy48fyq9hLUFUkzpIuWT3iVOxkGnaTokZog5aGK8xmDiLtR6MH6IRWhivEYXS6021E3dzO/AwiE73JAPha7edxO/lx6ty7zBIB6VpVRAUTPX6yY8INbr1zXKzX/1rpJozYupJ2mG//LfV/t9Wm8/lbuXPpOySGtqPIsfVfXlTPXcjlTftPIPs7W51t+o6Hy1F88nIMwje1ddv/iy78hdSZBNTyfGbLnaCeHi+UKhUjtPqLcwjtdl3/d4odLy1Pdzs0R818Lf2Zd2q4n1aX7PGm2uqvqxHOe7TJped15f1aAZ92uSCJ2zi+Vs3o3vo0Uq7iSmkxrqH69vd6uEwuHNoFJ+ua1g+3Hxe7LvSw5L1nDWMDWvQZgNFBK/2N37EOYniprXZJK/pqrExihvG5hNcbu46MwYz5B5NzSa2HjbdLx5uBvYKgejA5Gzip1I8vUzwdX/s7tzq+NvVetWxLpXWhsuO6cbobjq3q3Vz8tJ71fkZ/SQwbmBqhYOVTa1oT4e33VNWT4rCglMr8n52rkbCik4FxyhCsx6/3D68qglZ18RH87asqbNjqd+djQ/b7bpnxrpVU6x0aiu0vOvsAWA7dGr7vbdVciQ1ZvaWEacTpvhagrrtTKeX3JQrExYf+wODSL++3ZXlZv952zVL/HRTHpbxnevvTQPdYd6oKFo4tREanqWQo6fbex7FpsZo6UlF/g5/pg5dv/f8ZBNJ6Z35j0nKnbLOl9aJ2WKyckAblNTkbLHwTegIGvp6zEymNhrImXJ77Eyl9y/6s+XJjBSfRd0IZROoQtip4wFG467mzxs3MZXKZXm7XZYvF5vtplr1/MNiXyqRqg8WHtfJnITdfV4td4t//8n9c8wCeb/bflqtwwOK/M038ObUHI8KEKy/lN0VPjVIZ5Vdtrrbp9Pt3nZ6uV6V4AisllZ/T2ersMKc7EPDdSlouKeWmK91DU8iJGv2l/WWU9vdMA1nbQvJer6PiCvOhWm8e9bramA7VNpivT744hPrWm/35VBRddlpFS1Xi7vNdn9Y3e4H6mpbmFbdQ3PfhTxZddFp9ewPi93AZ+7sWHYCRe1hn7/t3UO5Q7NTcXGnEmP6BLq3bPO2dw+H+jDOtM7vzF+4dX/ZngpPJ+vVKVRzNS2bJacTdFUd4L0f2lA7X3qOlrqugjWytXGPKhfnPbsXd0vqfJW2c/Y7NMXy8zG06orbxjR1tB5QPvux8q5Fkcrj5vZzI5N2jKqzhrU8echkVPL27m4ywUdb88ndbkD/MEr0djOs38iW/uCHo6/cARzTaK9NLo8mZxX/ZbUsd3RV4Fj5zuiXk9H5HKj74Q+r+3L7ePhlmo7jrLZ68Fbvs/r3bBdcp/34MLELtdXnceGw2N25TS8gxs0X7+11nkU6UHb43omMA9L1tw1M++bZr+42Cwht80WdnYwNalHSTrFIGBHFSPPo+I3KxkN58BqKjuWb1TyVGx0AWBgaFSYpaxQcLw2PDl+VnxbV6RLdQ8PjXZ3jwsZE5k8/v351dXFz8fbizT+uX1/ffHj9y+W7Xz/cXF++fPf2FTpeFlfXYyejUU5+dun94er1q58ub367vKoOr81V2S49tbZXl9UBu6/fXN5cXf7Xr5fXH06N8Ut2e3bZmk/3yCCIGppa8S8X//vm5ftfc/XVxeZQ8/Plxfshcqpyc+h58/rt5c0P//hwmf0jtkvPoe2/fr389fLVMbAHCSQmplY5/vmd/6m9/nBx9eHX9yM0hhbGaYy9v8BELH6FPd2YObvRKJk60mxWFjOS0xwNJzvnOaYTdnYymKcvajX+GVt+WW0fJ2zTs4bJ2cXnTCDkeJA9izDSjayphCxH8ucTxrhS711UHQM9oRu11Z23OrML+83ioZWwM15/w+TM4jOmE9Ll584pjHJg+2c55RNwtDe97CBFI/5GjND+ZoURE6PfUrH39rbFwPEr292Tmvaw2uwfytvD9bf9obz3Bt7XvU9vO/iKOizkNIP3DGp82G3/Wd4emje+9pXifd2Qyk4bY3RGfqkfazW/LdaPfQipfW9WzmfbQBKWJbVFLGQ0CXG1a4D8469vX354/e7tzbv3l1cX1X/1jpCp3KihKRS3jnXqa9tIwBHBUTsT63X72rdvbyfWpsmNmZlfLZnqGyw3e+YvqjfyaL/e7A+LdWTLxpbY5p2Zn0/Noi8/l7d/9r5cW5VFjGS0SsvL6MLnJVx1N0zXWW0uU1zMZkz0sjwsVv2EIV32yeDMwt0/08muzc0sejth4J45YzML3pX35ZIsvRuvvG11ehe6O5Cftwnf2T01VjbGdx+tBLfya3n76BaXTSburGVzfDu7lovlC+62H8v/XHxZTKfemfynNzmv+F25WFbbGU2nvbJ48Banl94Z3uBjYKA3gz4JUt6U9e5/P5eL5brc75O+9PO0ntVVfK6rSP/uT64n6tzDw7o+cvT9bvtQ7g6rch4Xnyp6OFX0nI7ubj+vqiNmH3eju6zAt7btZ3Hny2K1nqL7DXxpGH4OR26rt2H/XHimFyerz+HCyt/9atWfwpjpRm15uUpMaBztSvX+erm9v19sllP7Upm+PZl+Lmd+3o4feCNPPm8nGoGnuZHKKQZ4kgUqRjvzsF4cPm1391N70rD7LG5k8qNcb4ZApNFO7crFfnpfTlafx4V/+hteTjC9EXpSG59ssgM61D1gTgXyPTXnI/mkofKEg6wWU5p8hNXDxKZ7pbfcmPh93uPEVO+/lguTvvz6KP1EL4s2oJ/yTZGSs11NM7z7uC93XwbPTBETEz+1H1f49Mohqs5qY8OaljZVRPDngUENBY8K5kTB/1wOmkqFer2tWeXeL/65HdTxQcFHa7NK/jJ8IAZFjx15xWU3yOr1r+/fv7v6cPnqpkaj/3nxW5WQ+Z/vrvrQaqvKDjvju4ouvYl5491i89PHI0objPIuuC8jSaQlt9PSDJqrwLncfFnttpv75r4N6VqJhUk11gkj4PYcnVErE0CKGPetd7NLyekgNw9I6jhZSMrqoPXFbGS1TtvfrsSO129/u3z74d3VPzIyOwLJcVNTq/Ylftg+bpbl8vWy3BxWn1blLrp5UKfuTmPzKD/tuXOxXO7Kffx0pgTh2NYkukE6TUdUR5/6tuq4pak1N5JLTvcn5dRQyVFDz6E4La8mRXJ2Zk1cc6SLfUP3HYB96/GuzE2MjvAtqARurXKqBBfOaIVTfSM3N0pRlL/RUY/VaF4HmUIarjhrR5F0tS3aTdZ5DBebs74jo2WDWPU3Xe52mUHRKPf3RygVMzo4m63SNVtybOqL3d3jfcYeK5FfjJgZ17DtWZPdanlX+n2Vk4B5hsIzb3zvjKdD8rQa4sl1vr7tbnJ3nkw/lzPe1Jvt3eS++ILr7d1zuVKnvyct8MlxpLabvsRnnBs+Aub4RbzlZ/xFMpb85PiRu+gn24l4b3s0NbK3JWYm7G2HJGFliByegZVWydwvEejTpC+RRIeSmVOOI3nMKduB8LF4k7a2GA5xJgz623W52Dw+jNBx9mTiSU/XcW/9Q7hZ3rhNyeNfsN1Ct39tqm15b6uYWH0qq2WuY+RW5h68ufWTublbu65xjPAnE88gdugIhggeNWDpFjlqfNKUOX44EgiN9VAJmyZC02PnQLo+0IcIGfNtjuRFmuu63CdBQlhDXXjC7j1vL4VeUUP2UOgyOlXuW5Lw/HS3IdJ3j5vX/Ymt/YJ3j5tVYhbrQJnJWzokic3bymGI5P329s9hn0RAsTc2svvsETz8Gw4IHvnlliY4aZuGBK3p2zMkygwYNv0S7SXup4oi5Ue+rTCwCPZKgMCiYz+ErkngwDicdD0Z760r5u6pnpHTv11K8ud+I9ZiI4jbxcPi42q9qpYEjZHZNjODTrdjSMqBGt06nZnbo5npda4cyD58G6GxYWIGfT7/48IvNap+sVFSvbVF29psqj+4vv768eFh23fEQ4ps/+rYn8xNr7s+0SZ2Lk6+8trgojb4cDI4kXaUUXO80T98Py5u3dGUHUk1kYpa5cf1s2Emzfurd7+9fnV5dfP61eXbD68//KMvq+NJZMTAbAo/vHv35ublu7cfri5e9u8ZGdXZNjNObeQ1Xe+J/F+P5WPP6VHNOzNf17AS+GS0KkmqN9YErTpHvr5TVOW/xnusxjqcT4vV2t2wnEB0Zex/jsbm07x73Ewg1luZWCXqDn3z1kX6N9oG1QEL42O3Q+yPi9X6cVcm9NwxsW0Lc4mtb750e1E0Hrs0oaT0BCJjneL+YbvZlz88fvrU9wXTvje7Y4QVRR6RVkWJtccbpFXz6A4yTduQTrLXcnQXksd9T2JTsuza1Lx6d+W+7BnyJgs+2ppeMTg0o3lrKuJOqDUfc0dVk/U3X9+sNuUP3w7l5DrP7hdf16tN+bE2Pk37956YVHfek3uz3Xw6WX4mV6qfZgY/1t7sXE70vEiuto+H1BeJv3fgi4RU1NmJ1BUl1t7XXHXNE71I+rQNf5F0WI52zNXViXQfbU2vONox+1tzO+aOWod3zIHq9jZ+5ddDAkDKVHhWmU3lSem2o/yu3Cybx6VO5cWT3edxY7c9bG+369w3S7I7tf1B75fhbu3K++2hnMspb31+lyJvm5odtXPj4bumeWfmmwZWAvvEViVJ9cYaqVXnyDdMiqr8t0uP1WhSeOqxz0mqs4+AHqja/Wm83NrMfDr949jaq2a4Wm8sfW+agZrDQ/OGS848MC9dcTjWaN6YOtLoqS9/lDEwJibQN3V0THayYo4P04ZL6imLdZn6lfy/ml0LmBSMV9owMD5kGjkXH1ebJaqoL+mipTRmZLzS7qFAynr81q0DVuPX5V9vPm0TfrnWIvxG0fyWSFh7f315Xe19cfPy4v3FD6/fvP7wuv+EOaIzbmgCxWAV+PXnx8Ny+9fm4vbPzfavdbm8K1M2qmir7jE2rfLGemgUCkmCsY0JdMYeD5cC93K72ZDdkfETQu7ufkjCd6Mr/vNis1yXu4Qum9aGrOQ0DfU1uhxiu094KSarOzsaHKARWo0OoheH/o3GM3TX9uaWXba+oCbQfTQ4g/DG4744HBa3n5v39z7qtLLQxDTh3DzAyl9vFnm3ue1/aVOpETvT6A06p+OkSKw7Ol7PnhyuBqedX+wny0GJJFdPwgd/nPcIyPkij5uKdn0dn4j9wvrH/EmK8OjqB7fK8DghhAdYxHy7yNDfL0g7Pk1K9eyaclKDik2gpjFWONpuMaO4oEjJoZqefqrP24eHcvfvvuGjO7X4u27adyU/yj+70hdP+/xHN2vB9UTLd7uPXct/zIeISnroocC44dxdWwbp7tu4ZbjmlL1bBknuWSI2QnFjPNwsjkY+WHnzf8cFa+ry30Qd2ct/cSu2WmXcqtpU4WNW1Q53omNVbarw3FW1w8Xu62/nH769HB8oR2Mfv6GQGSw49mzhhav9Yse+DBIXriYLGdYrxeUFzdWxZLVLZNJi1azOaLnale3UzQFSzppW8lts6OrOZHnd6zpHSOteHpmsL2Fh5AiR0RWGyfq61xbmSaNfG9FXOaU5/ssjc4yRxHL6HpjGN8Djvty/WW0ev74q79FUI5bXKjWyp6Nj/9r1yCog8gkAb+78Emj47m282S6W5e5id7f/cbvzi6bi7RCpL2YoqWmww1BxvaKpu4kSRXfZmkR35JclyxLhD+rvyfyii6x3RIZ7aon5Wtcw+JutW0POR1rUUnzp6nr9YduYEMuUtlivD774xLpac+WZojqnxYcq2h8WYL1kmqJj2fGKGgOs5i0dGQF9CnPeHBFVrbfwun+AnKTlrGFoWLv1MP719u5uCplHM7OIbG7XP1rqdrNsGptF8M6vA/rQlUCRJbo22J87MVK4e0YfH6YTXhucQ7hgVvBzQbqCa7cDTYsN971Fz/yFvSu58iWH9ACRd3p0i4qWnuwtKiLGYZ98Mt5bV8zZEVtUJCvJf8dHrA3aoiJDZsoWFaN0dm1RkaEzZYuKMTqjW1Ska+zdomKUvoQtKjKkZmxRMYHq7i0qsmWnbVExRnfiFhXpyjO3qMjU3sjj+vnd+/eXV0k7P0TURwyM62A7FPbu/JCmM2fnhz61kbdfd4pgS2ZGimDwBQBe+7EhS7saWjyjEWLZYO3VRotOhpIs6aw2lKsrsBYT2nH4WrbWvj0Ah8lt5TEex2COc1Tr7le7xlYVkWkemr8IjUwQAUBpesZlguJBGZe5yl0eQ/TpStILTUygMtbX9OVbtqXm5FuGSV9NI5Gkr+7qInZymicl6asuEU36qkUmJX3h6fxI2hA13L45yc2EFJ2e5BwqIigzgY5dX8oSFbHLSFaKK3j6Ge4XqzDWqz+mhnRz45wn2c7C7rEHQLrKY1YvN4fdt4ftCnZ0R/tPN2XV9OR/jev//b1fvHo6jywcb9R33gR3Jn92x+s4DnDjdaTU2vA37lb+R3iuqKRv8ajA0Gjzd1MFE40pp9W/wo+EbLm1lUl10u2wLtYhIcgWWhlarAf86OlaPy/GB+WZNzKbxn15OICPw/zf/WhnNqV/LVbh53e2ztrKpCobH0H0vg4Uki49CYqkdFLthLjF5rZcr8ulG9VNp/DsZPhLbXhsY/fNla/uNov1hA6cDM4svHNd50Dt/RP8U8ufOnxqs/MFDxiv7FZfFofyCuwUHwxYglvTRyzxWoLuLKwlqWLUQmGtsXzNZkLVcEVnnRlVcVnAXh6PHyC1G85Po9VN/k8i9mhpYrXN11dwY8oLLKXCvHdYRszumpM3U6g7O9mcoJ17t90pP62+Tiz/aHMW+ajzdP+++2tT7vafVw8dXWf7xuSZ5arEsi79026Lc7OjtQSlU2OQuBVb1/m1ojrl8uX2/n6xgRmzmdLOjiZvTybzpIZ2+8S/dybfryaV73U+dOQAj3dgXVbpjBMJ98bmFfzQuAfnV+eqru+/q/4yq/RoRniu4u7E8EFC2y+xdsGft/hAqKhsZGB0p9EaFJSbL6vddnPf++5KVXbWtpjZsrDFYus8VvvDL+X9x8jeBgOkVxbvTxZnlO6/6/LfIHHp3uJdbXFq6e05/vr2EyQD25T3edAqO0FEQ4Gufd99rLK4Fi34k6aRFh8ts0mMvP/x8cTTnHhUZszGlDq3zv1ylM6YjSl1OohT33oJurQEmRETU6rclYtjC1y1XmEJ8mjZKXXty3V5e3i5eDg87tq/0eslOuQrKrLT0PjHHI34XdLJq+pksSbuAyP+1o0ZUyW+4LXPWg0qCr+iSUURA8mN0fZvBObJEZbHehItp08+jtOeMfGYr5ygqtMM81Tt3rA3t3YyWz1OeOpM9WjV1a+7fPfYNWOZGyzL7WPSUDVbeXPIt1ztH7rnCnNkP1mbV/WurBD7anM32dN5sjjT85kO6rJkp9G6IXrbQ9eLj9vdoUrY/H2xwicARfWDoqPfMo1BQtUCP253p1pelevFt+7BQVsfNDBaYXxQUI8kescE9X3ZQ4K63PXjQ7n7stonvHuPNUUt5LXG0cHxg4I0YYNGBb2muxfMTSW9Z0OHMaoHdfOJsnP7+cG695vFw/5zJwjMEt6wN7fyw/ZhMtXe1syK647w8mvC2ylReGXy03ZXfs14S2XpBxCkVehh8VdSigmpu8/W2A6x1aMsgnOrp1J41jSd1/q9rRndOjCF8gxwJYP1TOPIX3M48dfzOVBuvkzvgDf6TA5kgcMhzuRjxEkcS+FEA9xJpkZDnSAMqVkivodd4psjZTu7zH61Y0O7fFFwb7sBr7FJtrUbIL9vh7vJXXkgnznj5D9Zm1ZyR0hf06FnvgdHE5OGdTWYip3XMUTXWWWwc9fe1BHascGGp6HmyM6c2hsq+rAsd3DbkWGij+bmFr19nCxwz07mphbd9fQdtg8DBu5xK3O8WshE2Hh9x7fM7mh4XIs32jDiyJ+r9fqn3eK27MmxznSjMntXmc2YTR3uxKHc3a82DobP4EvD+qwudT0Mp2/fCR4JamvSB+N+8fXd4+Hh8eBOE35fTTHvysX95Hqrc4W3riJ3snC1Kc6xoolmGUbu9DTOu6StnyZwqRlzbtBfLtH3QI6DHWYmjbRtkE47gbizptW8Vu9qvumGyL0ODB0op8kHGU3NO8EjgeFQJFSfyo8NlR6hVQ+cRLE6evAhKCsU2kx3cV/dXY9fnGYddUZtjG7QRlZOtT/Cv/vFFn6zhIBl+XtumvckJ7O/bBTqeN2hKkDRbr+RL7FZ2npzn+Mw9sfVuny/Xa9u4RbVOerOjqaPcKLaPOjhaDpZOLIfn3I+rD4tbg+vN4fybrc6fHu53RxWm8fyclMhUDg5ledSXcHqWMFtXUF5qmAexxp7Xk316zRMzvurfNxt/9qXO5QaOlR8bXLbMjmLeJdit9tuplR/tPkc8qt+b3NbTvhYH03O/zivNl/K/WF151ro9ebh8VCtTRrdbZ617K4qu7va7ixuxLd4zVLds8XrSJEP1eeg2+zn4vHwebtrbtU3VPGTzUXD5jzy/Zt9ohCvrU0e3c2UdDTOeBoIIbk9w47k938w5rm/fXi/297tUPpOLaRxS+qeNo0iV2W16WGXo037oGCSu003Orx92G3vHw4vt/cP6/KANqmqJdH7kkd670nB6+3j7hbOa8dqwhaSGiHwLrY82d8xlayzhr0sfRGjXQ9NT/sGsRVU2WVmdCPTcNuVt9vd8lW5W30pl5f1uzMWc/Dm5E2kOmsKmgXXlaogbBRcfWfL3K32h+pQCj+ortpzsVvtt5vWWQBBE3WVSm+rpLpBo3XWni0ONWOnsoz2rO6Pdujw5qGt166pt9F8XakK+pvIV5/QMj/4z4akhmnem9susJ5os7RqSqw+3iitulPa5LE6Bjjv2UNlstuoq954W6GaM2V1tB3SlNCGl/UHXVJgtW7ObTVcU7S52nWlKog3ULv6lJbZfK7W2CzTWqZ5c/Jwq1nqylna9X2m4wpjhvJaqOVwbDrn9rD6UpLjnCaReeZNH46m8zVH7ffNINL9xifyJ3Hz8Uld6v1iH+JJ2vf7NA74sVgwBpzGEW+8fDL+bA79uqm2W574ya79eTzZnscd1JnDzjHembeqTO0087uqeGde/+RX5d59K/V36LRA9usuWmO8lYI6c9R0tFYgJaPF0l5/zZuHtlRqLLXqSlXQ3zrJsfRjrSxv4IlL5bZVT93RRovUni0u3owRZQnt+bo5p50UbmGJ3HbsqDPahqDWLEHxtgNqEtrt7cINxVIarHFrbkuhWqJN1Kwnre54ozQrTmiNd58+rW5Xi3VSe7RuTt/UrVEqc7jerjBmKKt92g5PM1zPkDlouJ5mf/TYNseNvLHtOAeyx7Y5jgwb207hUPrYNt+fzLFttjugx8M9SbTPa1eZ2sPkP9fRnq9ODcobjsBCue+G7pqjLYbrzlUWb0EsK60l7x8OvW+P+rbk98ZPj6ulS/+6fzjUYdgFemk1qHhuezi3Ijzt8WG56KRpyYLOTqZydEF73YHXLJHwiB4rgsXHNmUsmOoDiK4Pi8PjPuWRDArkPo7xGqMtE9aZoybeTqGU9BZLGsE1701+EBuF+vMYYU2hhSHN0j1kG5LWmCN2RHZjYjUzJDnmOTgy13Gsmzkpj3mOZWc+jnQlKwkvy5X8XLyRruSn5GX5MzAzb6RTeblvWQ4NSIEb60xiJlyeGzkJcSMdcCeWl8uLlE/tJPG1wUXyB3a68Pj4IfG7p1VV4ms5+80YjhUeN3Wezum4lOhQIbw1eUTVUUvYIKCetLpBc4CKO1pj71utLzeL3JbaCqv9dcR+0Aa0hqBokvfUnUi0uqOdB0vD5Ufqi/0yVTy7/mwVR07g1s5fqHG286vLt/+4uawOZH778vLmx9dvLm/ev3vz+iU6frqjtqiZnFZpuRpX+/7q3cvL6+vhOtsGJlAomBX8/CnALq4+vP7x4uWHm5fvfnl/cfX6+t3b07HXub/haSh6c3uajaiyOt2armll//Dr21dvLicR/dElE80v+eXFmzc37y8+/Dxc6u1ivb6pjm+aS+LPF29/unx188Plzxe/vX53NULp58XmrlzefCw/L76struZBP/469uXH16/eztJIBw70/lD4fRUD5V6XH85j7yry5fv3l5/uPrVt+1gldWkdr015mq2trz+cPHh9cubq1/ffnj9y+VwsfvD4rC6rcY31eZEE4kN3pSH7Xb9Znt3t9rcxRQ2bkkdu6y3d5WAy6/l7WP38K1pnJZKers0Hejxswkh6AwU8Bncnup/X22wGVB96TpwyyARva3UWgcOGyay0jvSFi8X6xoCRY7ZDm3TQhkOuzr+v/9+8d1qsyy/fvcf/+e7L+WueiS++4/viu/59/a7F999WpXr5f67//jDi3zhtmn0B1Est7dui8jv/ru+7bey2ki3utnf/e/n37344/yFVt8zw/77v1/8cSzsLrg/HG08/cUVZN+9+IOhgiwoyFoFi+9e/FGggkVQsGgV5N+9+IOjgjwoyFsFxXcv/hCooAgKilZB+d2LP+QLqb7XRdEqKIOCslVQfffiD/VC8e+ZMa2CKiioWgX1dy/+0EiqDgrqVkHz3Ys/DKrRBAVNq6D97sUf9oUsvjeFbhW0QUHbDoAqHtj5C82+P9e8HQJh8DASPS58GBLMQAC1I4hVccEKWHMYRKwdRayKDcZfKPk9s7JdOAwk1o4kVsUHEy+U/l6fE9lhMLF2NLEqRpiEz0wYUKwdUSwaUiyMKdYOKlaFClOw4jCuWDuwWBUuTMP2CmOLtYOLVSHDDCwcxhdrB1jhAszCriIMsKIdYEUVMsX5C6m/10U7RoowwArSRbk+iqEAK0Av1Q6wogqZonihzr8/N6pdOAywoh1gRRUyBX+h2PeStX/nIgywoh1gRRUyhXgh5feGtTusIgywoh1gRRUzhUQRVoQRVrQjrKhipoARVoQRVrQjrDDxBgsjrGhHWGHjDRZGWNGOMH4ebTAeRhhvRxh3EaZRX8DDCOPtCOMuwgwsHEYYJy9CHv2pOHgXtiOMuwiDTxUPI4y3I4xXMcNhn8/DCOPtCOMq+kjyMMJ4O8J4FTOcwQYLI4y3I4xXMcOLF5J9r5hoFw4jjLcjjFcxw/kLob7XvB2ePIww3o4wUcUMF1XN57ItW4QRJtoRJqqY4fCFIcIIE+0IE1XMcPhIijDCRDvChBtrwYGICCNMkOFWFTPcwMJgxNWOMOEiDIanCCNMtCNMVDEj4HBWhBEm2hEmqpgRcEgrwggT7QgTVcwIOKwVYYSJdoSJKmYEHNqKMMJEO8LkefT9LMMIk+0Ikyz6fpZhhMl2hMkqZoSA4+MwwmQ7wmQVMwLGtgwjTLYjTLoRPYxtGUaYJIP6KmYEjG0JxvXtCJMuwswLcf59Ids9iQwjTLYjTLoIs6gPk2GEyXaEySpmJIxtGUaYbEeYrGJGwtiWYYTJdoSpKmYkjG0VRphqR5iqYkZy9MZQYYSpdoSpKmakgIXDCFPtCFNVzEgYYSqMMNWOMCWiT5UKI0y1I0zFx2EqjDBFPh1V9JFU4OuxHWFKRz+rVBhhqh1hykUYfKpUGGGqHWHKRRh8qlQYYaodYdpFGHxj6DDCdDvCNIsOH3UYYbodYbqINpgOI0y3I0y7CIPvKh1GmG5HmK5iRsHnWYcRptsRpquYUfB51mGE6XaEafcpCT+fdRhhmkxQxPswDeYo2hGmq5hRHBYOI0y3I0xXMaPgPI4OI0y3I8xUMaNgZ2DCCDPtCDMs2umbMMJMO8JMFTNKodY2YYSZdoSZKmaUhoXDCDPtCDMuwgwsHEaYaUeYcRFmYeEwwkw7wkwVMxrGtgkjzLQjzLg5MBjbJowwQ6bBqpjRMLYNmAlrR5ix0XeVCSPMtCPMVjGj4SDOhhFm2xFmq5jRMLZtGGG2HWG2ihkNY9uGEWbbEWarmNGw07dhhNl2hNkqZjTs9G0YYbYdYbaKGQ07fRtGmG1HmHURBrteG0aYbUeYrWLGwPC0YYTZdoRZN9MKw9OGEWbJZGsVMwaGpwXzrXTCtQoaw+Ek4DmaciVzrudV3BgYZf4aLU+mXc+r0DESz/iCiddzMvN6XkWPwfOQ52Du9ZxMvp5XAWRguPlrtDyZfz2vYsjAiPPXaHkyBXtehZGBQeev0fJkGva8iiQL485fo+XJTOx5FUwWQ5dzMBd7TiZjz91cPxzI+2u0PIk/N4dvYRfH0JR/MOdfxZPF8Qdn/Un8uZl8K+FsMpr4pzP/bjLf4vhDc/908t/N50NWwtDsP53+dzP6FocvAgCUALhZfYvDF0EASgHcxL7F4Ys4AAUBngSc4/hFLIDCAE8DznEAIx5AgADzROAcRzBgAoxAAebm+dk5DmHABRgBA8zN9bNzHMOADTACB5ib72fnmAIBPsAIIGBuzp+d4ygGjIARSMDcvD87h4NKBjgBI6CAubl/do4DEbACRmABc/P/7BxHIuAFjAAD5hgAYzgSATNgBBowxwEYw5EIuAEj4IA5FsAYjkTADhiBB4x7AIojEfADRgAC4/7LFUciYAiMQATmuACL8EjAERgBCcyxARbhioAlMAITmOMDjOFIBDyBEaDAHCNgDH7iMMAUGIEKjPv5EhyJgCswAhaYYwWsOIdEGLAFRuACc7yAFTgSAV9gBDAwxwxYNf8BRoWAMTACGZjjBqzAkQg4AyOggTl2gF+LgDQwghqYoweRUS2ADYzQBuYAAisEHBYA4MAIcWAOIrACjysAdGCEOjAHElgBv/EZAA+MkAfmYAIr8NAAwAdG6AMTPgxxlwwABCMEggkfhvhBABCCEQrBPIbguEsGIIIREsE8iuD4QQAwghEawRxgYBx3yQBIMEIkmPSZIfhBAFCCESrBHGhgHHfJAEwwQiaYgw0MEz8G4AQjdII54MAw9WMAUDBCKJiDDgyTPwYgBSOUgjnwwDD9YwBUMEIqmIMPeLKNAVbBCKxg6jyeWQRwBSO8gikfhxb2BgBZMMIsmMMQMBWLAWjBCLVgHlsgqMYAtmCEWzAPLgROywLoghF2wRyOiCQagQgk9IJ5fCFg7gwDAIMRgsE8whA4uwtADEYoBnNgggk4jccAyGCEZDAHJ5iA2IkBmMEIzWAOUDCBJ0oA0GCEaDAHKZhQcFQBoAYjVIN5rCHwyAqADUbIBnOwggmYoMIA3GCEbjDt4xBOIDMAOBghHEz7bDkcyAByMEI5mAMXTOJIBKCDEdLBdDzlhAHWwQjsYI5fVOdUoZ4E8A5GgAdzDIPhCWkGmAcj0IM5jsGkgE8z4B6MgA/mWAaTOJIB+2AEfjATzxFgAH8wwj+YQxpM4icBIBBGGAhzWINJmKbFAAZhhIMw4+MQf2MAFMIIC2HGxyEeWgEcwggPYQ5xRBWAQCRMhBnT8UoDWIQRLsIc6sCvNABGGCEjzMEO/EoDaIQRNsIs63ilATzCCB9hDnngVxoAJIwQEmZ5xysNQBJGKAmzouOVBkAJI6SEOfgRe6UBWMIILWFWdbzSADBhhJgwqzteaQCaMEJNmDUdrzQAThghJ8zajlcagCeM0JPi/Dz+SisAPikIPinOWfyVVgB+UhB+UjgeEnmlFQCgFASgFOc8/korAEEpCEEpHBHBr7QCEJSCEJTiXMZfaQVAKAVBKMW5ir/SCsBQCsJQinMdf6UVAKIUBKIU5yb+SisARSkIRSkcFcGvtAJQlIJQlMKvm8CvtAJglIJglMKvncCvtAJwlIJwlMKvn8C5JwUAKQUBKYVfQ4HzTwpAUgpCUgq/jkLhZUCApRSEpRR+LYWC3+oFgCkFgSmFgyMMp5MUgKYUhKYU9aIK+K1eAJxSEJxSeJyicNI8wCkFwSmFxyk4O6QAOKWg6ys8TsEZIgVaYkHXWHicgrNECrTMIlhn4SJR4x4RLrUgkehxisY9GlpuQddb+AUXeM0EWnFBl1x4mqJxj4hWXdBlF56maLggqUArL+jSC09TNHy3F2j1BV1+4WkKTiAp0AoMugTD0xScRFKgVRiEphSepuBEkgLQlILQlMLTFJxMUgCaUhCaUniaghNKCkBTCkJTCt4ViICmFISmFJ6m4KyUAtCUgtCUwtMUnJlSAJpSEJpSeJpicKcMaEpBaErhaYrBnTKgKQWhKYWnKThDpQA0pSA0pfA0xeBQBjSlIDSl8DQF56gUgKYUhKYUnqbgJJUC0JSC0JTC4RGGs1QKwFMKwlMKx0cYTlMpAFApCFApPFDBeSoFACoFASqFByqWwS4NAJWCAJXCAxWcqVIAoFIQoFJ4oGIj6+hAJBKgUniggnNVCgBUCgJUCg9ULI5EAFQKAlQKD1RwtkoBgEpBgErhgQrONykAUCkIUCk8UMEJJwUAKgUBKoUHKhYPDwBQKQhQKRwfKc7P8YpGEIkEqBSOjxTnDMYBACoFASqF4yNw6qIAOKUgOKVwdKTACSsFwCkFwSmFoyMFTlgpAE4pCE4pHB4pcMJKAXhKQXhK4fgI5jEF4CkF4SmF8gtx8YMAeEpBeErhAElkeSgAKgUBKoUjJJEVooCoFISoFKpjhAiASkGASuFXg0QW1oIQJESlUH7ZJO4IAFEpCFEplA9C3BEAolIQolIoH4S4IwBEpSBEpVA+CPErCRCVghCVwgGSAif8FICoFISoFH6RCMaCBSAqBSEqhfZLwmGaRQGISkGISuEASYETfgpAVApCVAoHSAqGx/mAqBSEqBQOkBQ44acARKUgRKVwgKTACT8FICoFISqFIyQGpnoUgKgUhKgUDpAUDEcyICoFISqFtvFdAQBQKQhQKYyPQ/wkAKBSEKBSmK44BEClIEClMF1xCIhKQYhKYXwc4mcREJWCEJXCAZKiwM8iICoFISqFAyQFTnkqAFEpCFEpHCApCvxWBUSlIESlcICkwClPBSAqBSEqhfFbFuC3KiAqBSEqhUMkRYGfRcBUCsJUCgdJisiWC4CqFISqFNYvm8PPEqAqBaEqhfXvZfwsAK5SEK5SWL9RBo5EwFUKwlUK29UjAq5SEK5SOExS4KSlAnCVgnCVwmESvB9CAbBKQbBK4ShJgZOeCoBVCoJVCmviHRqgKgWhKoX122fgRwlQlYJQFe4gScHh9BUHVIUTqsIdJClw0hQHVIUTqsIdJCk4nNDngKpwQlX4uR8gwkeJA6rCCVXh537TFvgocYBVOMEq/NzHIXyUOMAqnGAV7ihJgbdN4ACrcIJVuKMkBd46gQOswglW4Y6SFHj7BA6wCidYhTtMUogC7vABuAonXIWz8444AFyFE67CHSYp8D4MHHAVTrgKd5ikEDiUAVfhhKtwh0kKvCsCB1yFE67Cmf9WwaEMuAonXIUzv3QdhzLgKpxwFe4wSSFwKAOuwglX4cxHIg5lwFU44SrcYZIC75TAAVfhhKtwh0kKvFsCB1yFE67CHSYp8I4JHHAVTrgK95tXSRyJgKtwwlW438BK4kgEXIUTrsL9JlaYknLAVTjhKtxzFQmzLjgAK5yAFe44SWTbHcBVOOEqvN7PSmMBIBAJV+FFxxwiB1yFE67C/b5WeFsDDrgKJ1yF+72tcOYQB1yF0+2t/P5WCu/XhHa4oltc+T2uFJzJ5WiXK7rNld/nCoNejna6Cra6coGIQS+Hu12RQHSYBC8a5GjDK7rjlaMkBQbFHG16RXe98tteYVDM0cZXdOcr7jdXw5062vyK7n7lKEmh8FZlaAMsugOWoyQFBsUcbYJFsAoXPhAju46BQCRYhQu/2RqOZIBVOMEq3FGSAm8rwAFW4QSrcEdJCo0jGWAVTrAKd5SkwDsEcIBVOMEqXMiOPhlgFU6wCneUpNDihTTfG06eBYBVOMEq3FGSWKcOsAonWIU7ShLp1AFV4YSqcGE7OnVAVTihKrymKrhTB1SFE6rCpQ9E/DQDqsIJVeHSByJcLMQBVeGEqnDpAxGmfXBAVTihKtxTFQzLOaAqnFAV7iBJZDs9AFU4gSpc+ji08FcEWIUTrMI9VsGsnAOswglW4R6rYFbOAVbhBKtwj1Ui/RHAKpxgFe4wSYFhOwdchROuwj1XwbCdA67CCVfhnqtg2M4BWOEErHAPVjBs54CscEJWuCcrGLZzgFY4QSvcoxWDHwXAVjhhK9yzFQzbOWArnLAVruLbIXGAVjhBK9yREpxMyAFZ4YSscE9WYi0A4pCQFe7JCs4W4ICscEJWuCcr9hzxOQ7ICidkhXuygre14ICscEJWuCcrFs8cALLCCVnhnqzgjS04ICuckBXuyQrOFuCArHBCVrgnKzhbgAOywglZ4Y6UFDhbgAO0wgla4R6t4GwBDtAKJ2iFe7SCswU4YCucsBXu2Qren4IDtsIJW+EOlXC8PwUHbIUTtsIdKuHnML2aA7bCCVvhDpXw8wKOLgBb4YStcM9WIg8TYCucsBXuUAlci80BWeGErHDj57M52q+WA7LCCVnhDpRUB4igZxGQFU7ICneghJ9L3AJos14Shw6U8HM8vgJkhROywh0o4eca/oiArHBCVrj1cQjXy3BAVjghK9z6OMRPAiArnJAV7kAJx7icA7LCCVnh1q8TwH0yICuckBXuQAnH+2NwQFY4ISvckxWMyzlAK5ygFW796j3cJwO0wgla4Q6VcIzLOWArnLAV7lAJx7icA7bCCVsRDpVwjLsFYCuCsBXhUAnHuFoAtiIIWxEOlXAMiwVgK4KwFeFQCcewWAC2IghbEX7FCobFArAVQdiKOPcfK3hrZsBWBGErwqESjmGxAGxFELYiHCrhGBYLwFYEYSuiZisoA0kAtCIIWhHnNp6jLgBaEQStCL9kBeeoC4BWBEErwpESjnG3AGhFELQiHCnhGHcLgFYEQSuC+UDEzxJAK4KgFcF8IOJnCaAVQdCKYD4Q8bME0IogaEWw+N7TApAVQciKcKAEzt0IwFUE4SqC+bkb/CgDriIIVxHMb6SPH2XAVQThKsJhEo5htQBcRRCuIhwm4XiHDwG4iiBcRThMwjGsFoCrCMJVhMMkPLKnP+AqgnAV4TAJj+3rD8KQcBVRcxX8IACwIghYEY6T8Mj+/gCsCAJWhOMkkTgGXEUQriIcJsE76gqAVQTBKsJREjyZLQBVEYSqCO7DED/IgKoIQlWEgyQcL2gWgKoIQlWEgyR42ZUAUEUQqCJ4x+4OAkAVQaCKcJAEb7MrAFQRBKoIv1YFr+IUAKoIAlWEYyQ8cloDgCqCQBXh16rgVZgCQBVBoIrwa1XwKkwBoIogUEX4c0UiZ0YAqCLo0SL12SJwO22BThehx4v480VwvoJAJ4zQI0b8GSM4X0GgU0boMSP+nBGcryDQSSPBUSOuOxRwo34BTxshkeihCl5iINCJI/TIEeEjMXLcCYhEeuyIYyQcJzwIdPIIPXrEQxWc8CDQ6SP0+BEHSThOeBDoBBJCVYSDJFzi/gBQFUGoipAsShQEgCqCQBUhiyhXEoCpCMJUhOTxY3oAUhEEqQhHSDhO2BAAqQiCVEQHUhEAqQiCVIRUHQ0AgpAQFSF1RwOAGCRARUgfgzAVUwCgIghQEY6PxBoAhCDhKUKdxxsA4BRBcIpQLN4AgKYIQlOEgyMcw1kBaIogNEUoHm8AAFMEgSlCiY4GABFIWIpwaCTWACACCUoRjoxwiYdlAKUIglKE0h0NAEKQoBSh4mxZAJQiCEoRynY0AIhAQlKE9p0gRDECkBRBSIrQHZ0gACmCgBShOzpBwFEE4ShCd3SCAKMIglGE9p0gfhMCjCIIRhG6oxMEFEUQiiJ0RycIIIogEEXojk4QMBRBGIrQvhPEb3LAUARhKEJ3dIIAoQiCUITp6AQBQRGEoAjT0QkCgCIIQBEeoOCNRQQAKIIAFGE6OkHATwThJ8J0dIIAnwiCT4Tp6AQBPxGEnwjPTxQkSALwE0H4iTAdnSDAJ4LgE2E6OkFATwShJ8J0dIIAnggCT4SHJ/hwIQHgiSDwRNiOThCwE0HYibAdnSBAJ4KgE2E7OkFATgQhJ8KTE5yvKAA5EYScCE9OcL6hAOREEHIiPDnB+YYCkBNByInw5ATnGwpATgQhJ8KTE4WnmAA5EYScCE9OFH6TAHIiCDmRnpzgfEMJyIkk5ER6coKPMJKAnEhCTqQnJzjfUAJyIgk5kZ6c4HxDCciJJOREenKC8w0lICeSkBPpyQk+lUgCciIJOZF+VQqm2RKQE0nIifTkBCfbSUBOJCEn0pEQjnemkQCdSIJO5LmNzy9IgE4kQSfSkRCOt7aRAJ1Igk6kRyc4W08CdCIJOpEsuj27BOBEEnAiPTjR+NRKAE4kASfSgxOcrCcBOJEEnEgPTgx8qUoATiQBJ9KBEI5z7SQgJ5KQE+lQCMe5dhKwE0nYifTsxMDPYwnYiSTsRHp2gnPtJGAnkrAT6dkJzrWTgJ1Iwk6kZydGv5D8e2HJ0aeAnUjCTqRnJzjXTgJ2Igk7kZ6d4FQ1CdiJJOxEenZi4WENErATSdiJ9OzE4kgE7EQSdiKL+BeKBOhEEnQiHQrhtqie5uKcnrkLApGwE+lYCMepbhLAE0ngiXQwhFuBVpxKQE8koSfSwZDIqcEAnkgCTySPf6NIwE4kYSfSsRCOU+0kgCeSwBPpWEgsigA8kQSeSO7DED+KgJ5IQk+kP4U9EgWAnkhCT6SnJ5EfEdATSeiJ9Kex42xBCeiJJPRE8njeqwTwRBJ4Ij08wdmGEsATSeCJ9PAEZxtKAE8kgSfSsRCBsw0lgCeSwBPp4QnOM5MAnkgCT6RjIQIfpyUBPJEEnkjHQgTenUgCeCIJPJGOhYhzSKAkgCeSwBNZH9iO34sAnkgCT6To6hABPJEEnkgPTyKPAoAnksAT6Q9vx/sbSQBPJD2/3bGQWCOiI9zpGe7SRyLuT9Ax7vQcd3+Qe+RXQEe507Pc/WHu5/qFFN9bTV0AkUjPc/f8JPIzoiPdgzPdZcfPCI91J5HoD3bHexxJdLQ7PdvdH+6OkzYlOt6dnu/uiIjASZsSHfFOz3j3J6fgpE2JjnknDEV6hhL52AEQRRKIIh0UETjrUwKKIglFkQ6KCJz1KQFFkYSiSEdFBM76lACjSIJRpMMiAmd9SsBRJOEo0nERgbM+JQApkoAU6biIwFmfEoAUSUCK9GtScNanBCRFEpIi/aIUnPUpAUqRBKVIh0YEzvqUgKVIwlKkQyMCZ31KwFIkYSnSsRGcYyQBS5GEpUjHRgTOGpUApkgCU6SDIwJnjUpAUyShKdIfoILPdZOApkhCU6Q/QAUfayYBTpEEp0iHRwTOW5WAp0jCU6Q/Kx5nfUoAVCQBKtLxEYGzPiUAKpIAFal9IOJnCRAVSYiKND4Q8bMEkIokSEXWi1LgkhAJmIokTEX6Db8ik2iAqUjCVGS9KAUuyZAAqkgCVaSHKnhJhgRURRKqIj1ViYx0AVaRBKvIelkKXFEhAVaRBKtI4yMR92iAq0jCVaTf8Cv2K4BIJGBF1stS4MoaCciKJGRFdi1LkYCsSEJWZNeyFAnQiiRoRTpUInACsARsRRK2Im3H8igJ4IokcEXajuVREsAVSeCK9HAl8iwAuCIJXJH1hl/4WQBwRRK4Ij1cwcuTJIArksAV6eFKLA5AJBK4Ij1cicUBiEQCV5RjJQLncSsAVxSBK8qxEsEhJFQArigCV9S5j0T4clUArigCV5RjJQLncSsAVxSBK8qxEoHzuBWAK4rAFeVYicB53ArAFUXginKsROA8bgXgiiJwRTlWInAetwJwRRG4ohwrERymISsAVxSBK6o+SQV2KArAFUXgimJ+LhFuuq8AXFEErijHSoSAK2MUgCuKwBXlaInAe4YpgFcUwSvK0RKBT2ZSAK8ogleUxyu4U1UAryiCVxTrmE1UAK8oglcU6+gTFcAriuAV5WiJEBL/jCASCV5RzM8m4ocJ4BVF8IpitutXAJFI8IryeCXyKwC8ogheUYWPRPw4A7yiCF5RRRGfg1EAryiCV1ThI9FgF0AkEryiio5xogJ4RRG8ohwtETgTWgG8ogheUQ6XCJwJrQBfUYSvKL80BWdCK8BXFOErqugYJyrAVxThK6rmK5AuKMBXFOEryq9OwQNNBQCLIoBFOWAi8O51ChAWRQiLcsBE4GRoBQiLIoRFOWAi8O51ChAWRQiLcsBESPx2BoRFEcKiHDAREncogLAoQlgU95GIH2dAWBQhLIr7SMRvZ0BYFCEsyhMWnIyoAGJRBLEoR0wETuZTALEogliUIyYCnxKmAGJRBLEoj1jw5nEKIBZFEItyxETgZCwFEIsiiEV5xIKTsRRALIogFuURC07GUgCxKIJYlEcsOBlLAcSiCGJRHrHgZCwFEIsiiEU5YiJwMpYCiEURxKIcMRE4GUsBxKIIYlF+fUrk5QoQiyKIRTliAlNgFAAsigAW5VenRLpUAFgUASzKL0+JDLEAYFEEsCi/PiXyagWARRHAomrAAvmIAoBFEcCiHC8ROCFOAcCiCGBRHrDghDgFAIsigEV5wIIT4hQALIoAFuUBC06IUwCwKAJYlAcsOCFOAcCiCGBR/iwVnM+mAGBRBLAoD1hwPpsCgEURwKI8YMHpaAoAFkUAi/KABaejKQBYFAEsygMWfNKaAoBFEcCiPGDB+WQKABZFAIvygAVv/qYAYFEEsCgPWHA+mQKARRHAojxgwflkCgAWRQCL8oAF792mAGBRBLAoD1hwPpkCgEURwKJqwIIjERAWRQiL8oQFH5SmAGFRhLAoT1iMgd/ugLAoQliUAybCwMxGBQiLIoRFOWAi8EFpChAWRQiL8oQFb32mAGFRhLAoT1jwQWkKEBZFCItywAS/GQFfUYSvKM9XcDqZAnxFEb6iPF/BO6cpwFcU4SvK4RKB07kU4CuK8BXlT6jH2VgK8BVF+IpyuETgXCgF+IoifEU5XCJwLpMCfEURvqKMj0PcpQK+oghfUQ6XSJzLpABfUYSvKIdLJE5FUoCvKMJXlMMlEqciKcBXFOEryuESiQ9KU4CvKMJXlD+kHh+UpgBfUYSvKH+gCt5lWQG+oghfUX7pClz6ogBeUQSvKEdLJM5EUgCvKIJXlKMlEicSKYBXFMErytESiU8aUwCvKIJXlPWBiB8FgFcUwSvK6ngylQJ4RRG8ovyBKniHYQXwiiJ4RVkfiPhhBHhFEbyiHS2R7Bzt0qwBXtEEr2hHSySDWcoa4BVN8Ip2tETiNB4N8IomeEU7WiIZPOVdA7yiCV7RjpZInMajAV7RBK9oR0skTuPRAK9ogle0oyUSp/FogFc0wSva0RKJ03g0wCua4BXtaInEaTwa4BVN8Ip2tETiNB4N8IomeEU7WiJxGo8GeEUTvKIdLZE4jUcDvKIJXtGOlkichqMBXtEEr2hHSyROw9EAr2iCV7SjJRInwWiAVzTBK9rREomTYDTAK5rgFe1oicRJMBrgFU3wina0ROIkGA3wiiZ4RTtaInESjAZ4RRO8ov1J9fggWA3wiiZ4RRc+EnEoA7yiCV7R/kQVvM2LBnhFE7yiHS2ROPlBA7yiCV7RjpbAk2Q1gCuawBXtWInE0F0DuKIJXNGOlUi8eZoGcEUTuKIdK5EYumsAVzSBK9qxEomhuwZwRRO4ogvT8WYEcEUTuKIdK5GY2msAVzSBK5qfd7xaAVzRBK5ox0okxv4awBVN4IrmPg7xwwzgiiZwRfOudzOAK5rAFc19JOLeAMAVTeCK5j4S8cMM4IomcEU7ViLFORqjaQBXNIEr2rESiXcP0wCuaAJXtGMlEu/dpQFc0QSuaMdKJM4b0ACuaAJXtGMlEu/dpQFc0QSuaMdKJN67SwO4oglc0Y6VSAzdNYArmsAV7ViJxMhbA7iiCVzRjpVIvI2dBnBFE7iiPVyBWcIasBVN2IoWPhBxJAO2oglb0Q6VSAysNWArmrAV7VCJxMBaA7aiCVvRDpVITHs1YCuasBXtYInEtFcDuqIJXdEOlkhMezWgK5rQFe1gicS0VwO6ogld0Q6WSEx7NaArmtAV7WCJxLRXA7qiCV3RDpZITHs1oCua0BUt43vDagBXNIErWvpAtC+EDFamagBXNIEr2m8AhhGXBnBFE7iiHSuR6hzNRWoAVzSBK9qxEolxswZwRRO4oh0rkRg3awBXNIEr2rESiXGzBnBFE7iiHSuRGDdrAFc0gSvasRKJcbMGcEUTuKIdK5EYN2sAVzSBK9qxEolxswZwRRO4oh0rkRg3awBXNIEr2rESiXGzBnBFE7iiHSuRGHVqAFc0gSvasRKp8SgRwBVN4Ip2rERi1KkBXNEErmjHSqTGgzwAVzSBK7qGK7A/AWxFE7aitejoTwBb0YStaIdKpBZoqbwGbEUTtqIdKpFaYgMgEAlb0Vp3dEiArWjCVrSDJVIrrAAEIqErWvtA1NgACERCV7TxgYifJUBXNKEr2vhAxM8SoCua0BXtYInEsFYDuqIJXdGGd3zzAbqiCV3RDpZITHs1oCua0BXtYInEtFcDuqIJXdGermDaqwFd0YSuaE9XMO3VgK5oQle0pyuY9mpAVzShK9rTFUx7NaArmtAV7ekKpr0a0BVN6Ip2sETi3UM0oCua0BVtfSTiUAZ4RRO8oj1ewbRXA7yiCV7RHq9g2qsBXtEEr2iPVzDt1QCvaIJXtO0YJQK6ogld0Q6WSItfK4CuaEJXtIMl0grE7DWgK5rQFe3pCsa9GtAVTeiK8XQF414D6IohdMV4uoJxrwF0xRC6YjxdwbjXALpiCF0xnq5g3GsAXTGErhgHSxTGvQbQFUPoinGwRJ3DdRcG0BVD6IpxsESdwxVABtAVQ+iKcbBEVZwvnAIygK4YQleMgyUK414D6IohdMU4WKIwbTWArhhCV4yDJQrTVgPoiiF0xThYojBtNYCuGEJXjIMl6hyehGAAXTGErhgW367TALhiCFwxLL5dpwFsxRC2Ylh8u04D0IohaMUwH4b4SQJoxRC0YvyRKnjPBgPQiiFoxThSovCeDQagFUPQimE2/q1hAFoxBK0Yj1bwp4IBaMUQtGIcKVGYFhuAVgxBK8aREoU3fTAArRiCVoxjJQrTYgPgiiFwxThWojAtNgCuGAJXjGMlCtNiA+CKIXDFOFaiMC02AK4YAldM4SMRv1UAXDEErhh/qgqmxQbAFUPgivHHqmBabABcMQSuGMdKFKbFBsAVQ+CKcaxEYVpsAFwxBK4Yf64KpsUGwBVD4IpxrERhWmwAXDEErhjHShSmxQbAFUPginGsRGFabABcMQSuGMdKFKbFBsAVQ+CK4V2vZgBXDIErxrEShXGzAXDFELhiuI9EHMoArhgCV4xjJYrDA3oMgCuGwBXjWInCtNYAuGIIXDGOlShMaw2AK4bAFeNYicK01gC4YghcMY6VKExrDYArhsAV0wFXDIArhsAV4+EKnkIyAK4YAleM6JjAMQCuGAJXjGMlCuNiA+CKIXDFOFaiMO01AK4YAleM9IGIH0YAVwyBK0b6QMTPEoArhsAVI30g4mcJwBVD4IpxrEThRd4GwBVD4IpxrERhWGsAXDEErhjHShSGtQbAFUPginGwRGFYawBdMYSuGAdLFIa1BtAVQ+iKcbBEYVhrAF0xhK4YB0sUhrUG0BVD6IpxsERhWGsAXTGErhgHS5TAHxuArhhCV4yDJUrAJCID6IohdMU4WKIwbDWArhhCV4yDJQrDVgPoiiF0xThYouAJIQbAFUPginGsBGbrG4BWDEErxpEShVmvAWjFELRiHClREn8rALRiCFoxjpQozHoNQCuGoBXjSInCrNcAtGIIWjGOlCjMeg1AK4agFeNIicKs1wC0YghaMdqHIe6SAVsxhK0Yh0oMHl8BtGIIWjF+2QreNcMAtGIIWjGOlCi8tNgAtGIIWjGOlCi8tNgAtGIIWjGOlCjMeg1AK4agFaNtR28E0IohaMX40+q1QFzCALRiCFoxhnUMkwFaMQStGEdKFMbVBqAVQ9CKMbyjQwVoxRC0YhwpUZh3G4BWDEErxpEShXm3AWjFELRiHClRmHcbgFYMQSvG+EjE3QFAK4agFeNISeRhBGTFELJiHChRmJcbQFYMISvGduyBYwBZMYSsGL9u5RytDDYArBgCVoz1cYj7MwBWDAErxnEShYG9AWDFELBiHCdRGNgbAFYMASvG+vcy7k4AWDEErBgHShQG9gaQFUPIinGgROG1yQaQFUPIinGgROG1yQaQFUPIinGgROG1yQaQFUPIinWgROG1yRaQFUvIinWgROG1yRaQFUvIinWgRGHcbQFZsYSsWAdKFMbdFpAVS8iK9WQF424LyIolZMV6soJptQVkxRKyYj1ZwbTaArJiCVmxnqxgWm0BWbGErFi/bgVupWQBWLEErFgPVjDttgCsWAJWrAcrmHZbAFYsASvWgxVMuy0AK5aAFevBCqRbFnAVS7iKdZyk2vo13O3BAq5iCVexjpMwuI+zBVzFEq5iHScpBFosYQFXsYSrWIdJGFyZbQFWsQSrWI9VcLaABVjFEqxiHSUpONowxAKqYglVsczHIO5JAFWxhKrYwscg7kkAVbGEqli/YKU6nzocWFhAVSyhKtZTFZyuYAFVsYSq2KJjU3cLqIolVMXW+4HBjSYtoCqWUBXrqQpOmLCAqlhCVayDJIWC87gWUBVLqIp1kKRQDEYyoCqWUBXrqQpO2bCAqlhCVaynKniFvQVUxRKqYj1VwSvsLaAqllAV66mKhSfbWkBVLKEqtj6tHnengKpYQlWspyoWzptYQFUsoSrWUxWccmEBVbGEqlgHSSJruy2gKpZQFct9JMLvTQuoiiVUxXqqgpM+LKAqllAV6yCJxkkfFlAVS6iKdZBE4zX+FlAVS6iKdZCEMfwzAqpiCVWxnqpE4gBQFUuoinWQRONdBiygKpZQFesgica7DFhAVSyhKtZBEo3TTiygKpZQFesoiT7HTyPAKpZgFesoSWTiwgKsYglWsUJ39AcAq1iCVazwkYj7A4BVLMEqVvjlpPj1DrCKJVjFyvgZVBZQFUuoinWQROPMGwuoiiVUxUofiLhDAlTFEqpipQ9E3B0AqmIJVbEOkmicuWIBVbGEqlgHSTTOXLGAqlhCVayDJBrnjVhAVSyhKtZBEo3zRiygKpZQFesgicZ5IxZQFUuoinWQRDP8KACqYglVsQ6SaAZ3A7eAqlhCVayDJDrSpwKqYglVsQ6SaIZfTICqWEJVrIMkGueNWEBVLKEq1kESjfNGLKAqllAV6yiJxnkjFmAVS7CKdZxE47wRC8CKJWDFOk6icd6IBWDFErBilen6FUAkErBiHSfROPHEArBiCVixjpNonHhiAVixBKxYx0k0TjyxAKxYAlas4yQaJ55YAFYsAStW846nEYAVS8CK1aLjaQRkxRKyYrWPRNytA7JiCVmxWnU8zoCsWEJWrPaRiJ9GQFYsISvWH7mCd1WzgKxYQlasAyUab5RgAVmxhKzYjkPsLQArloAV6ziJxrk3FoAVS8CKdZxE49wbC8CKJWDFOk6ice6NBWDFErBiHSfROPfGArBiCVixJp57YwFXsYSrWL9kBefpW8BVLOEq1mESzeGW7hZwFUu4inWcROPUGQvAiiVgxTpOEtnxwwKwYglYsY6TaJx7YwFYsQSsWOsDEfcGgKxYQlas9YGIH2ZAViwhK9aBEo1zbywgK5aQFetAiRYwu9gCsmIJWbEOlGice2MBWbGErFgHSjTOvbGArFhCVqwDJRrn3lhAViwhK9aBEo1zbywgK5aQFetAica5NxaQFUvICjt3pCTy0VdfbZto/vFow0UjTuCprwY2GLXhAlLAiK6vBjYKasPHJAzq+mpgg1MbLixxJk99NbAhqA0Zn2CtrwY2JLWhoq+q+mJgQlETOvopWl8MTGhqwgUoTkuqrwY2DLXhYlTCg1Dqq4ENGqUs/lVdX6QmGA1SB1I03kyivhrYoEHqYIrGOUb11cAGDVIHVDROM6qvBjZokDIfpPCxr68GNmiQOrCicbJRfTWwQYPUwRWN843qq4ENGqWOr2ic8VNfDWzQMHWMReOkn/pqYIOGqcMsWsH3UX01sEHD1JEWjfNm6qvURkHj1MEWjTNf6quBDRqnjrdonPxSXw1s0Dh1yEXj/Jf6amCDxqmjLhqnwNRXAxs0Th140TiLpb4a2KBx6tiLxnkk9dXABo1Th180TiWprwY2aJw6AqNxNkl9NbBB49RBGI0TSuqrgQ0ap47DaJxTUl+lNjiNU4diNE4rqa8GNmicOhqjcWZJfTWwQePUARmNk0vqq4ENGqeOyWicX1JfDWzQOOXx76L6YmCChqkDMwwn8dZXAxs0TB2bYZgG1VcDGzRMHZ5hCmbv1VcDGzRMHaFhGvLR+mpgg4appzoa5p/VV6kNQcPUcRqcb1BfDEzQKHWkhunIAAawneYfjza4s8EjNlCUChqlwqdewPSX+mpgg0apZzw4Eaq+GtigYeqojca5UPXVwAYNUwduNE6Hqq8GNmiY+sNfIk8cgD3NPx5NuM4UJ1XVVwMbNEodwdE4r6q+Sm1IGqWe+uDUqvpqYIOGqQc/OLuqvhrYoGHq2Y+JhBiAP80/Hm2I+MGH9dXABg1TT4BwnlV9NbBBw9RDIJxqVV8NbNAw9RwIZwvVVwMbNEw9CsIJP/XVwAaNU0+DcM5PfTWwQePUAyGctVNfpTYUjVPPhHDaTH01sEHj1GMhnLdSXw1s0Dj1ZAinrtRXAxs0Tj0cwtkr9dXABo1Tz4fwniH11cAGjVMV3zmlvhiYoGHqIRFOg6mvBjZomHpOhDcfqa8GNmiYelSEk2Hqq4ENGqaeFuFslPoqtaFpmDr+Y3BCSn01sEHD1CEgg3NS6quBDRqmjgKZ6nQxNBEEuFHzj0cbbkkOzguprwY2aJg6FmRwakh9NbBBw9ThIIM3JamvBjZonDoiZHB6Rn01sEHj1EEhgxMk6quBDRqnjgsZnCNRXw1s0Dh1bMjgNIn6KrVhaJw6PGRwpkR9NbBB49QRIoOTJeqrgQ0apw4SGZwvUV8NbNA4dZzI4JSJ+mpgg8apY0UGZ03UVwMbNE4dLjIY1dZXAxs0Th0xMpjW1lcDGzRO/eodzFvrq4ENGqeOGxkGdyGurwY2aJw6dGQYPIqqvkptWBqnjh6ZAp4cW18NbNA4dQDJFJH5NYCcmn882nBxWsDs9/pqYIPGqcNIBidU1FcDGzROHUkyOCWivhrYoHHqYFJRbXQVZprVVwMbNE4dTzI4s6K+GtigceqQksHJFfXVwAaNU0eVDM6vqK8GNkicMkeVDE5wqK8SG4yCKHbu4xT3yQyBKEZBFHNUyeAkg/pqYKOgNlyc4jyB+mpgg1Mbfiku7pMZAlGMgijmqJLB2QL11cCGpDZcf4oTBuqrgQ1Fbbg4xbtd1FcDG5ra8KshcZwyhKIYRVHMcSWDuXt9NbBB49SBJYPRe32V2qAsijmwZDieYGOIRTHKopgDSwYD+PpqYIPGqQNLBu9/UV8NbNA49afYQDLHEIlilEQxh5UMBvn11cAGjVKHlQxm+fXVwAaNUoeVDMb59dXABo1Sh5UMJvr11cAGjVKHlQyG+vXVwAaNUoeVjMCjD4ZIFKMkijmsZCJIniESxSiJYoWP0kikIxLFKIliDiuZCJJniEQxSqKYw0omArIZIlGMkijmsJLBe1zUVwMbNE4dVjIRCs0QiWKURDGHlSITBgyBKEZBFHNUKTIrzhCHYpRDscJ2zIozxKEY5VCMn3fMijPEoRjlUMxBJRNh8gxxKEY5FHNQyUSYPEMcilEOxbiP0shTizgUoxyKcdHx7cIQh2KUQzEuO75dGAJRjIIoxlXHtwtDIIpREMW47vh2YQhEMQqiGDcd3y4MgShGQRTjtuO7gyEQxSiIYuK847uDIRDFKIhiwsdpZOyBSBSjJIoJH6eRHhmRKEZJFBM+TiNjZESiGCVRzGElE8m3YIhEMUqimMNKBu+zUl8NbNA4dVjJRPItGCJRjJIo5rCSieRbMESiGCVRzHElE8m3YAhFMYqimONKeMPZ+mJggoapw0pGRboPRKIYJVHMYSUTSdlgiEQxSqKYw0omkrLBEIlilEQxGd//t74YmKBRKn2URnogBKIYBVFM+ii1cAaXIRDFKIhisutLnyEQxSiIYlJ3/rQoSimIYo4qmUj2CUMgilEQxRxVMpHsE4ZAFKMgijmqZCLZJwyBKEZBFHNUyUSyTxgCUYyCKOaokolknzAEohgFUcxRJRPJPmEIRDEKopijSiaSfcIQiGIURDFHlUyE6zMEohgFUcxhJRPh+gyRKEZJFHNYyUS4PkMkilESxRxWMhEozxCJYpREMYeVTATKM0SiGCVRzGElE4HyDJEoRkkU8yQqAuUZIlGMkijmSRTetaS+GtigcepJVASoM0SiGCVRzJOoCFBniEQxSqKYJ1ERoM4QiWKURDFPoiJAnSESxSiJYp5ERYA6QySKURLFPImKfdsiEsUoiWKeREWgPEMkilESxTyJikB5hkgUoySKeRIVgfIMkShGSdT/z9odJUeS4+ii3ks/l/UNkiABnB3cNRy7VqZSqqo0nSnpSMqq7hk7e78WBCPL4/cf3iHNvMnETEQoAk535wfQS0hUgvKFSVRBiSohUQnKFyZRBSWqhEQlKF+YRBWUqBISlYh6YRJVUKJKSFQi6oVJVEGJKiFRiagXJlEFJaqERCWiXphEFZSoMlnJE1EvTKIKSlSZrOSJqBcmUQUlqkxWcr7NwhrdxcA8nazkiagXJlEFJapMVvJE1AuTqIISVSYreSLqhUlUQYkqk5U8EfXCJKqgRJXJSp6IemESVVCiymQlT0S9MIkqKFFlspInol6YRBWUqDJZyRNRL0yiCkpUnazkiahXJlEVJapOVvJE1CuTqIoSVScrJQsXlUFURYiqU5W8NHoLVBlEVYSoOlXJiyQxSJpWhKg6Vcn5UzDW6C5GxxgzTfmDMNboLsbAGDNN+bMw1uguhmKMmab8cRhrdBfDMEakKU/1yiCqIkTVqUrONzdYoxgDIapOVXK+v8Ea3cXANJ2q5JUvBFcGURUhqk5V8gTlK4OoihBVpyt5gvKVUVRFiqrTlTwB9cooqiJF1elKnoB6ZRRVkaLqdCVPQL0yiqpIUXW6kiegXhlFVaSoOl3JK1+ArYyiKlJUna7kCahXRlEVKapOV/IE1CujqIoUVacreQLqlVFURYqq05U8AfXKKKoiRdXpSt6S+ZRRVEWKqtOVvPHloMooqiJF1elKnoB6ZRRVkaLqhCVPQL0yi6poUXXKkiegXhlGVcSoOmWplkKX6SrDqIoYVacs1cKLNSvDqIoYVVvkaTKvM4yqiFF1ypInsF8ZRlXEqDplyRPYrwyjKmJUnbLkCctXhlEVMapOWfKE5SvDqIoYVacsecLylWFURYyqU5Y8YfnKMKoiRtUpS56wfGUYVRGj6pQlTzrlK8OoihhVpyx5wvKVYVRFjKpTljzplK8MoypiVJ2y5AnLV4ZRFTGqTlnyhOUrw6iKGFWnLHnC8pVhVEWMqlOWPGH5yjCqIkbVKUueQHRlGFURo+qUJU8gujKMqohRdcqSJxBdGUZVxKg6ackTrKxMoypqVJ205AlWVqZRFTWqTlryBCsr06iKGlUnLXmClZVpVEWNqtOWPMHKyjiqIkfVaUueYGVlHFWRo+q0JU+wsjKOqshRddqSJ1hZGUdV5Kg6bcmT5vDKOKoiR9VpS55IY2UcVZGjaj887zOOqshRdRye9xlHVeSoOm3JE/GsjKMqclQdkafJ8cI4qiJH1RF5mhwvjKMqclSdtuQJE1bGURU5qk5b8oQJK+OoihxV44lECRNWxlEVOapOW/KECSvjqIocVactecKElXFURY6q05Y8YcLKOKoiR9VpS54wYWUcVZGj6rQlT5iwMo6qyFF12pInTFgZR1XkqDptyRMmrIyjKnJUnbbkCRNWxlEVOapOW/KECSvjqIocVactecKElXFURY6q05Y8YcLKOKoiR9VpS54wYWUcVZGj6rQlT5iwMo6qyFF12lIvJ7YL8BrFGMhRddqSGy9iq4yjKnJUnbbkxovYKuOoihxVpy258d0UKuOoihxVLfKUM2FlHFWRo+q0JXe+m0JlHFWRo+q0pWTfvDW6i4F5Om3JPVmTZhxVkaPqtCX6pLk1touAWTplqVS6heAa3cXALA2Mcl7SVxlGVcSoGhjl9Jl1a3QXA7M0MMp5x31lGFURo2pgFN82e43uYmCWBkZ5csQxjKqIUTUwim+ivkZ3MTBLA6M8OeIYRlXEqBoY5ckRxzCqIkbVKUvJHo9rdBcD83TK0nm/PD6dMo2qqFFt0tJ5wzwapDGOashRbdrSece8JAhJ1YYe1aYunbfMozNIYyLVUKTa5KXznnnJOyHJ2pCk2vSl86Z5SRCSrQ1Nqk1gOm+bl/w5JF0bolSbwnTwmZB8bahSbRJTstdfYyjVEKXaFKbzBn7JJ0LytaFKtdPKV35p1xhLNWSpFv1RSdVlYyzVkKVaWenKrw8bc6mGLtVKpGtiwY3BVEOYaiXSNcHgxmSqoUy1eGbSKdHgxmiqIU21EumaNFg3ZlMNbarF05NOSYd1YzjVEKfalKbzboBJEJawqFOtRMImnNsYTzXkqVYiYRPPbcynGvpUqzHBJqDbGFA1BKpWI2MT0W1MqBoKVauRsQnpNkZUDYmq1cjYxHQbM6qGRtVqZCzft34N74JgxtbI2ER1G1OqhkrVamRswrqNMVVDpmo1MjZx3cacqqFTtRoZm8BuY1DVEKpadE2dEtltTKoaSlWLtqlTQruNUVVDqmotMjZplm7MqhpaVWuRsY3fmDSGVQ2xqrXI2MbvKhrTqoZa1VpkbOMX9I1xVUOuai0yNvHdxryqoVe12MUv/0xYxiJYtdjG75S0XTcmVg3FqsU+fqek77oxsmpIVi028jslTtyYWTU0qxY7+Z0SKG4MrRqiVZNymCdMrRqqVZOVscmxw9iqIVs1aYdXfcytGrpVk5WxyQHI4KohXDWJjE20uDG5aihXbTJU8ji+NbqLgQkrR9ewDK4awlWTSNdErRuTq4Zy1cQP5wFGVw3pqsVDnJL+/MboqiFdtdVIlVwHM7pqSFetR7ImBt+YXTW0q9YjWROEbwyvGuJV65GsicI3plcN9ar1lazJfMT4qiFftR7Ta+LwjflVQ79qPabXBOIbA6yGgNX6ytdkKmGC1VCwWo98TSi+McJqSFhtxPSaWHxjhtXQsNqI6TXB+MYQqyFitREZm2h8Y4rVULHaiIxNOL4xxmrIWG1ExiYe35hjNXSsNiJjE5BvDLIaQlYbkbGJyDcmWQ0lq43I2ITkG6OshpTVRmRsYvKNWVZDy2ojMjZB+cYwqyFmNY2MTVS+Mc1qqFlNI2MTlm+MsxpyVtPI2MTlG/Oshp7VNDI2gfnGQKshaDWNjE1kvjHRaihaTSNjE5pvjLQaklbTyNjE5hszrYam1TQyNkHxxlCrIWo1jYxNVLwx1WqoWk0jYxMWb4y1GrJWs8jYxMUbc62GrtUsMjaB8cZgqyFsNYuMTWS8MdlqKFvNImMTGm+MthrSVrPI2MTGG7OthrbVLDI2wfHGcKshbjWLjE10vDHdaqhbzSJjEx5vjLca8lazyNjExxsTrobC1UK4TgmQN0ZcDYmreWRsIuSNGVdD42oeGZsQeWPI1RC5mkfGJkbemHI1VK7mkbEJkjfGXA2Zq3lkbKLkjTlXQ+dqHhmbMHlj0NUQuppHxibttI1JV0Ppah4Zm/TTNkZdDamreWRs0lDbmHU1tK62rCvpqG3MuhpalyzrStphhVmXoHXJsq6kH1aYdQlalyzrShpihVmXoHXJsq6kI1aYdQlalyzrSlpihVmXoHXJsq6kJ1aYdQlalyzrSppihVmXoHXJKTLW6fPO1/AuiGKQmbGVl+wJwy5B7JKFXUlrrTDsEsQuiR4sWssgjLoEqUuCupJaBmHSJShdEtJVexKD5SpClwR0Ve7/wpxL0LlkOVfSaSzMuQSdS8K5SoLmwpxL0LkknKskaC7MuQSdS8K5yol3tglzLkHnknCuknQbC3MuQeeSaVbJk1PX6C4Gpuokq2yRT5hyCSqXTLFqXs8JX08VY7BkReSSCVbN5aeuf9eKicaMS9C4JIyrJEUEwoxL0LgkjKskRQTCjEvQuKSubE3mRGZcgsYldWUrP4sLMy5B45K6sjWZz5hxCRqX1JWtyRHMjEvQuCSMqyTwLsy4BI1LwrhKAu/CjEvQuCSMqyTwLsy4BI1LwrhKAu/CjEvQuCSMqyTwLsy4BI1LwrhKAu/CjEvQuCSMqyTwLsy4BI1LwrhKAu/CjEvQuCSMqyTwLsy4BI1LwrhKAu/CjEvQuCSMqyTwLsy4BI1LwrhKAu/CjEvQuCSMqyTwLsy4BI1LwrhKAu/CjEvQuCSMqyTwLsy4BI1LwrhKAu/CjEvQuCSMqyTwLsy4BI1LJDI2gXdhyCWIXCKRsQm8C2MuQeaSYK6SwLsw5hJkLgnmKklXtTDmEmQu6ZGxSVu1MOcSdC7pkbFJX7Uw6BKELgnoKgm8C4MuQeiSgK6SmLkw6BKELgnoKomZC4MuQeiSgK6SmLkw6BKELgnoKomZC4MuQeiSgK6ScLcw6BKELgnoKolUC4MuQeiSgK6SSLUw6BKELgnoKgkRC4MuQeiSgK6SqKow6BKELgnoKomqCoMuQeiSgK6SqKow6BKELgnoKomqCoMuQeiSgK6SqKow6BKELgnoKomqCoMuQeiSgK6SqKow6BKELgnoKomqCoMuQeiSgK6SqKow6BKELgnoKomqCoMuQeiSgK6SqKow6BKELgnoKomqCoMuQeiSgK6SqKow6BKELgnoKomqCoMuQeiSgK6SqKow6BKELgnoKomqCoMuQeiSgK6SqKow6BKELgnoKomqCoMuQeiSgK6SqKow6BKELgnoKomqCoMuQeiSgK6SqKow6BKELgnoKomqCoMuQeiSgK6SqKow6BKELgnoKomqCoMuQeiSgK6SqKow6BKELgnoKomqCoMuQeiSgK6SqKow6BKELgnoKomqCoMuQeiSgK6SqKow6BKELgnoKomqCoMuQeiSgK6SqKow6BKELplo1Ux/6u3v4oIxWMKic0k41/mpCKz1SJhzCTqXhHOVRGaFOZegc0k4V0lkVphzCTqXhHOVRGaFOZegc0k4V0lkVphzCTqXhHOVRGaFOZegc4mvhE2ynjmXoHP1cK6SyGxnztXRuXo4V0lktjPn6uhcPZyrJDLbmXN1dK4+zSrL+s6YqyNz9WCuYryZsjPm6shc/dSPDp3OmKsjc/VgrpIQcWfM1ZG5ejBXSYi4M+bqyFw9mKskRNyZc3V0rh7OVRIi7sy5OjpXLyth+aHTGXV1pK5eVsLyQ6cz6+poXT2sqyRE3Bl2dcSuHthVEiLuTLs6alcP7SoJEXemXR21q0+5Sg8dhl0dsasHdiVPZ+zMujpaV1/WlR05zLo6WlefbtVOjT7DojPq6khdPVq6SmLmnVlXR+vq0dJVEjPvDLs6YlePlq6SmHln2tVRu3o9uiDoTLs6aldf2pVNjUy7OmpXX9qV4H1n2tVRu3o9nl+ZdnXUrr60K6kA6Ey7OmpXX9qV6H1n2tVRu/rSrsSrO9OujtrVQ7tq4tWdaVdH7epTrtI0YdjVEbv6hCsRo48Z6cy6OlpXX9aVfcHMujpaVw/r4vtbdiZdHaWrh3TVxO87k66O0tVDumrS9N6ZdHWUrt7W5JrMR0y6OkpXD+mqJ77LQ2fStfnlJUgUvSRe3Zl0dZSu3la2JtMAk66O0tVDumri1Z1JV0fp6iFdNfHqzqSro3R1OZxeGXR1hK4e0FUT8+4MujpCV1/QlR04DLo6QlcP6KoJnHcGXR2hqwd01QTOO4OujtDVA7pqAuedQVdH6OoTrZKWsM6YqyNz9WCuet7AnFR6dcZcHZmrB3PVkhx9jLk6MlcP5qqJvXfGXB2Zqwdz1cTeO2OujszVg7lqYu+dMVdH5urBXPlnwvIVmav3la/JIcyYqyNz9b7yNTn8GHN1ZK4ezFUTwO+MuToyV++rqjA5chhzdWSu3j1/OGdnyNURufoEq979J+nkwGHG1dG4+vSqrsIPPkZcHYmrT67q2pMYLFlRuPrUqvSWgAFXR+DqE6u6juR9sFRF3+rTqrpqEoNlKvJWD96qSW1GZ7zVkbf6pKosPxhudcStPqEqzw+WpmhbfTpVnh8sT5G2+mSqND+YbHWUrT6VKs0PBlsdYasHbNXKu7E7g62OsNUnUvVxorW8nblWR9fqepiojLU6slbXw0RlqtVRtbquRE1uf5lqdVStPoUqzTKGWh1Rq0+gSrOMmVZH0+rqh1nGMhVJq8eWhNkXw0Sro2h1K0dfDAOtjqDVbWVqchHBQKsjaPWJU9kMwjirI2f1SVPpd8s0q6NmdetH3y3DrI6Y1SdMpd8ts6yOltWnS6UzCKOsjpTVzQ7zg+UpSlY3P8wPlqcIWT0gqyaVbp1BVkfI6hOlsvxgjNWRsfo0qTQ/GGN1ZKw+SSrND6ZYHRWruxzlB0OsjojVJ0il+cEMq6Nh9elR6cmBEVZHwuqTo9IcY4LVUbC621GOMcDqCFg9AKsmhZCdAVZHwBqno0vUwfxqoF+N09El6mB8NZCvxunoEnUwvRqoV+PUDr6YwfRqoF6Nkxx8MYPh1UC8GoFXNSkuHQyvBuLVmBCVHPyD0dVAuhqnoxP/YHI1UK7G6ejEPxhcDYSrcTo68Q/mVgPdakyDyg7+wdhqIFuN1aF1fgjS6e8nwzfC2GogW41Sj5KMqdVAtRqlHSUZQ6uBaDUCrWpSNzwYWg1EqzEFKksyZlYDzWpMgEqTjJnVQLMaYVY1KV8ezKwGmtUoh5nKzGqgWY1ymKmMrAaS1aiHmcrEaqBYjalP2WlqMLAaCFajHiYqA6uBYDXqYaIyrxroVaOuROU324N51UCvGvUoUZlWDdSqUQ8TlWHVQKwaVY9yjFnVQKsa1Y5yjFHVQKoak52y9r3BpGqgVI12dCs1mFQNlKrRjm6lBpOqgVI1Qqpq0jEwmFQNlKrRDm6lBpOqgVI12tGt1GBQNRCqRju6lRrMqQY61WhHt1KDMdVAphrt6FZqMKUaqFRjilM6BzGkGohUo/lhjrE8RaMacjrKMUZUA4lqLKJKGkoGI6qBRDXk6F5qMKIaSFRDju6lBhOqgUI15OheajCgGghUQ/rRF8N8aqBPDRmHXwxLVOSpsXgqadIZjKcG8tSY2JQd/IynBvLUmNSUf7csUVGnRj8dfbcMpwbi1Ojl6LtlNjXQpsZ0pvTgZzQ1kKZGP1pEHUymBsrU6EeLqIPB1ECYGv1oEXUwlxroUmO5VNLDNZhLDXSp0Q/vpRhLDWSp0Q+vUJlKDVSp0Q+vUBlLDWSpMQ7P/IylBrLUGIdnfsZSA1lqjHXm5wsYg7nUQJca4+jMz1hqIEuNcXjmZyw1kKXGODzzM5YayFJjHJ75mUoNVKkxjcn4nqmDqdRAlRrRclUbf3LHYCw1kKXGODzzM5YayFJDD8/8jKUGstTQdebnKD2YSw10qTGNKcsxplIDVWqESmU5xlRqoEqNpVJJjjGVGqhSY6lUkmNMpQaq1NBx9N0ylBqIUiNQKv1uWaIiSo3otKpJI+pgKjVQpYYenvmZSg1UqWGHZ36mUgNVatjhmZ+p1ECVGnZ4y89QaiBKDTu85WcqNVClRjRZ1aS5dzCWGshSw45u+ZlKDVSpYYe3/EylBqrUsMNbfqZSA1Vq2OEtP1OpgSo1Lo/KSqZ2xlIDWWoslkp6nQdjqYEsNbwcZRlzqYEuNcKlsixjLjXQpUa0V9Wk53owmBoIU8MPz/0MpgbC1PDDcz+DqYEwNfzw3M9gaiBMjUOYGgymBsLUOISpwWBqIEyNBVNJH/tgMDUQpnQqU3L4K3MpRZfScKnku1XmUooupcul+HerzKUUXUqXS/HvVplLKbqUTmSqKvRZjMpcStGldLlUsjWAMpdSdCmNpqqabA2gTKYUZUpPR5mqTKYUZUpPR5mqTKYUZUpPK1O51CmjKUWa0nKUqUymFGVKy2GmMphShCkth5nKYEoRprQcZiqDKUWY0nJ026/MpRRdSsvRbb8ymFKEKV3NVMnOEcpkSlGmtBwU+SlzKUWX0nJU5KfMpRRdSstRkZ8yl1J0Ka1HRX7KXErRpbQeCqoymFKEKT2EKWUwpQhTeghTymBKEaZ0wVSyK4gymFKEKT2CKWUwpQhTeghTymBKEab0EKaUwZQiTOkhTCmDKUWY0oCpZO1RGUwpwpQGTCVrj8pgShGmtB1doyqDKUWY0nZ0jarMpRRdSqODqiabxiiTKUWZ0slMWY4xmFKEKQ2YynKMwZQiTOmCqSTHGEwpwpQ2PcoxBlOKMKXtqMZPGUwpwpS2oxo/ZTClCFO6mqeSvXyUyZSiTKkc1PgpcylFl9JDl1LmUooupat1KtlSSBlMKcKUytH6lDKYUoQplaP1KWUwpQhTuhqnkq2NlMmUokzpkqnOn8WsTKYUZUpjh8CabG2kzKYUbUpX61SytZEynFLEKe1Ha/7KcEoRp7QfrfkrwylFnNLVOJVssaRMpxR1SvvBmr8ynFLEKe1H9/3KcEoRp7Qf3fcrwylFnNJ+dN+vzKYUbUpXz1R32lunDKcUcUr7Ucu/MpxSxCntftS/oUynFHVKD3VKmU4p6pQe6pQynVLUKV06lWzBpUynFHVKj3RKmU4p6pQe6pQynVLUKY1NAevgD1xUxlOKPKXj8PzPeEqRp3Qcnv+ZTyn6lI7DTGU8pchTGjyVXWMynlLkKY0NAevgK7LKfErRp3Ra00gOGKZTijqleng/xXhKkadUD++nGE8p8pTGZoA12eRNmU8p+pTq0f0U4ylFnlI9vJ9iPKXIU6qH91OMpxR5SvXwforplKJOqR7mKdMpRZ3Sw54pZTqlqFN62DOlTKcUdUpXz1Syf58ynlLkKZ3WNE6FHzCMpxR5Su1wLZXplKJOqa0Zla9xK/MpRZ/SiU3jxHvilfmUok9p7ADojW4WosynFH1KYwPAmuxnqAyoFIFKF1Al+xkqAypFoNIFVNmlDAMqRaDS2ACwJpsiKhMqRaFSr4enTEZUikSlftQ0rUyoFIVKQ6iyKYAJlaJQqffDUxUjKkWi0ulN2amKCZWiUGns/leTnSaVEZUiUen0pvTwZUSlSFS6iCrNM5asSFR2Oh1d7hpDKkOkstNRqb8xpDJEKou9/2qy96YxpTJUKotnXNVk701jTGXIVBab/9Vk701jTmXoVLacKnmioTGnMnQqW06V7JtpzKkMncpi87+qfBHAGFQZQpWtZ1wpfyKTMakylCpbUpXsm2lMqgylymLzv5rsm2nMqgytyiY8GT1ujEmVoVTZespVsvOmMaoypCorMbXy6dkYVRlSla0eqvPunTQIy1a0KovHXNVk905jWGWIVTbhiT9+zJhUGUqVRQ9V9pewREWpssNd/4xJlaFUWez6V5NtSI1RlSFVWez6V5MHRBqzKkOrsmVV/ANhUmUoVTbZ6bxlEXlYlzGoMoQqiy3/arIHqTGpMpQqm+rU6vl7GUUwBMtSdCqb6pRs4WTMqQydyiY6NeHZwZjKkKksNvuryWaqxpzK0Kns8mgr/jQ3Y1BlCFVWjx7EZgyqDKHKYq+/pAvLGFQZQpW1cvAQNWNQZQhVNtXp3EBF/xYGVYZQZQuqkh1qjUGVIVTZ2uwv2aHWGFUZUpWtzf6SHWqNWZWhVdna7C/ZodYYVhlila3N/pIdao1plaFW2drsL9mh1hhXGXKVrc3+kh1qjXmVoVfZ8qpkQ1ZjXmXoVbY6qZINWY2JlaFY2eQnr8kBzMTKUKxs6lOT5NqbgZUhWFns9Ve9J0FYvqJY2drrz5PLO0ZWhmRli6xckyAsX5GsbJGV841DjZGVIVnZIqtkK1VjZGVIVhZk1ZKtVI2RlSFZWez215KtQ42ZlaFZWez215KtQ42hlSFaWaBVS7YONYZWhmhlsdtfSx51aYytDNnKYre/lmwdasytDN3KYre/lmwdagyuDOHKoquqnZKMZXJlKFcWctVOvNXEmFwZypXFbn8t2fbTGF0Z0pUFXbVkx05jdGVIVxYPtWrJjp3G7MrQriweatWSHTuN4ZUhXlngVUsedWkMrwzxyuKhVi151KUxvjLkK4uHWrVku01jfmXoVxZ+1ZLtNo35laFfWez615LtNo0BliFgWTzUqiU7ZRoTLEPBsuiwaslOmcYIy5CwLB5q1ZKdMo0ZlqFhWRhWS3bKNGZYhoZl0WPVku0UjSmWoWJZ7P3XkkddGmMsQ8ayaVLnHXPp6gRjLEPGsmCsluy5Z4yxDBnLJkol9/NMsQwVy2Lrv5bsMGeMsQwZy+KBVi3ZhsyYYxk6lk2UOu8gzD9UlqzoWKYrWZNjj0GWIWTZVCmRn/r4u1a83WKOZehYZitVk8OXQZYhZJmtVE0OXwZZhpBl8TSrluzfY0yyDCXLotGqJRvnGKMsQ8qyoKyWbNBijLIMKcviaVYt2cXDmGUZWpaFZbVkmwZjmGWIWRaY1ZItBYxhliFmWWBWS3rGjWGWIWZZYFZL+puNYZYhZpmXw+sshlmGmGVeD6+zGGYZYpb5ytjk2GGaZahZ5itjk2OHcZYhZ1lw1il58IQxzjLkLJs4pT25CWWeZehZNm1qtGTVlXGWIWdZcNbpRPebN8ZZhpxlwVkt6YQ1xlmGnOXBWS3p2nTGWY6c5dOmsrUoZ5zlyFkenNWSx7o64yxHzvJJU/wM7MyyHC3Lw7Ja0izpzLIcLcvXg6zoudOZZDlKlodktaTP0ZlkOUqWh2TxR3k4cyxHx/JwrJa09TlzLEfH8tPKVD6xOnMsR8fyi2PxJRdnjuXoWL52A0xszxllOVKWl5WqfIp3RlmOlOXxEKuWdKE5syxHy/KyspVPrM4sy9GyvBwogTPJcpQsj7arlnTVOMMsR8zywKyWtE044yxHzvJpU9kE74yzHDnLg7NaUuPvjLMcOcuDs1pSXO+Msxw5y4OzWk8OYQZajqDlk6fOy53sE2Gg5QhaPnEqSxHGWY6c5dF41ZKnBjsDLUfQ8niCVeuDT62MtBxJy+tK1uTwZajliFpeV7Imhy9DLUfU8kCtljw12BlqOaKWxxOsWlKy7Ey1HFXLW2Rr8tRgZ6zlyFreIluTpwY7cy1H1/LYGbAlBaXOYMsRtjxgqyVVh85gyxG2PGCrJdV+zmDLEbY8YKslVXbOYMsRtjxgqyVVds5gyxG2PGCrJQVyzmDLEbY8YKsltVzOYMsRtjxgqyWVS85gyxG2PGCrJZVLzmDLEbY8YKsllUvOYMsRtlwiY5PKJWey5ShbHr1YLalcckZbjrTlQVsteeKvM9pypC0P2mrJE3+d0ZYjbXnQVksql5zRliNtedCWDH7yY7LlKFsestWS6idnsuUoW75kK6ldciZbjrLlS7aSpwY7ky1H2fIlW0ndkTPZcpQtX7KVlOs4ky1H2fIlW0m5jjPZcpQtX7KVFMo4ky1H2fIlW0l9iTPZcpQtX7KVlEI4ky1H2fIlW0kphDPZcpQtX7KVlEI4ky1H2fIlW0kphDPZcpQtX7KVlEI4ky1H2fIlW0kphDPZcpQtX7KVlEI4ky1H2fIlW0kphDPZcpQtX7KVlEI4ky1H2fIlW8mzaZ3JlqNs+ZKt5JGwzmTLUbZ8yZYnGctky1G2fMlW8jRXZ7LlKFu+ZCspQXAmW46y5SFbkpQgOJMtR9nykC1JShCcyZajbHnIliQlCM5ky1G2fDJVkaQEwRltOdKWB21JUoLgjLYcacunVBVJShCc6ZajbnnoliQlCM50y1G3PHRLkqeXOtMtR93y2ERQkqeXOuMtR97y4C1JShCc8ZYjb7lFxiYlCM6AyxG4PIBLCq+LdgZcjsDlAVySlCA4Ay5H4PIALklKEJwBlyNweQCXJCUIzoDLEbg8gEuSEgRnwOUIXB7AJUkJgjPgcgQuD+CSpATBGXA5ApcHcElSguAMuByBywO45FyCQPOEZSwClwdwSVKC4Ay4HIHLA7gkKUFwBlyOwOUBXJKUIDgDLkfg8gAuSUoQnAGXI3B5AJck5QPOgMsRuDyASxL8dwZcjsDlHhlbk1VyJlyOwuWuh/MJIy5H4nKPjK3cMJ0Zl6NxeRiXJHTvzLgcjKueTqeDz2QNXwfZ/vISpBz8OWt4F6RgkJWx9JSxhndBKgaJjOVFBGt4F6RhkMhYXkSwhndBBINExvIigjW8C9IxSGQsLyJYw7sgA4NExvIigjW8C6IYJDKWFxGs4V0QwyCRsbyIYA3vgmDGhnUJLyJYwxikYMaGdQmn+zW8C4IZG9YlnO7X8C4IZmxYl3CpXsO7IJix062Spok1uouBCTvhKmH3NbqLgfka1iVczNfwLgjm63Sr/I2wdC2YriXSlYv5Gt4FwXQN6xLu3Wt4FwTTNaxLOFavYQxSMV3DuoRL8xreBcF0jeYt4dK8hndBMF3rStfk6CPetf3lJUhMsNx31/AuCOZreJdw313DuyCYsOFdwnF2De+CYMKGdwnH2TW8C4IZG94lHFbX8C4IZmx4l3BYXcO7IJixLbZvdba0vEYxRsOEDe4SvuPYGt4FwYQN7hLOomt4FwQTNrhL+I5ja3gXBBM2uEs4i67hXRBM2NXHRctG1+guBuZrO6jRWqO7GJiubaVrcvQR7Nr+8hJkpWty9BHs2v7yEiTSlfPsGt4FwXQN7BLOs2sYgwjmqxxUaa3RXQxMV6lHxw2hru0vLzEiWzkTr+FdEMzWRV3J38JyVTBXJ1qdzzf8b2G5Kpir4VzCtXoN74Jgsl6cK5lICHRtf3kJEsnKtXoN74JgsgZ08bLTNbqLgbnaV64mkxFxru0vL0FibuXivYZ3QTBZw7mEi/ca3gXBbO0rW5NJgDjX9peXIDG3cvFew7sgmK/hXMLFew3vgmDCrudiJRM0Ya7tLy8xIl+5mq/hXRDM1752yeRHMFGu7S8vMWJu5fK+hndBMF9DuYTL+xrGIAPzNZRLuLyv4V0QzNcpVv3sU+zoI8i1/eUlRqQr1/s1vAuC6TrB6rzE3uXvrpgkxLi2v7zEmFWFpj/19ndxwRgsWQcmaxCXqPJsJcS1/eUlyMrWZBYgxLX95SVIzK68AmAN74JgugZxCa8AWMO7IJiui7h4BcAaxiCK6bqIi1cArOFdEEzXRVy8AmAN74Jgvi7i4hUAa3gXBPN1ERevAFjDuyCYsIu4eAXAGt4FwYxdxMUrANbwLghm7CIuXgGwhndBMGMXcfEKgDW8C4IZu4iLVwCs4V0QzNhFXLwCYA1jEMOMXcTFKwDW8C4IZuzkqmTvjjW6i4EJu4SLVxGs4V0QTNipVcmGhmt0FwPzdQEXr0RYw7sgmK8LuHglwhreBcF8XcCVTdMEuLa/vASJfOXlDGt4FwTzdQEXL2dYw7sgmK8LuHg5wxrGII75uoCLlzOs4V0QzNcArs7LGdbwLggmbABX5+UMa3gXBBM2gKvzcoY1vAuCGRvA1Xk5wxreBcGMDeDqvJxhDe+CYMYGcHVezrCGd0EwYwO4Oi9nWMO7IJixAVydlzOs4V0QyNgSwNV5OcMahiAFgasEcHVezrCGd0EKBomM5eUMa3gXpGKQyFi+o8Ia3gVpGCQylpczrOFdEMEgkbG8nGEN74J0DBIZy8sZ1vAuyMAgkbG8nGEN74IoBomM5eUMa3gXxDDIURHBGt4FwYwN4Oq8JmINYxAErhLA1XlNxBreBcGMLStjk7RnwFUQuEoAV+c1EWt4FwQzNpq5Oq+JWMO7IJixsTFh5zURa3gXBDM2iKvzmog1vAuCGRvtXJ3XRKzhXRDM2LU7YWePnlqjuxiYsEFcnddVrOFdEEzYIK7ON1VYwxgEiasEcXW+IcIa3gXBhA3i6rwkYg3vgmDC1pWwSdYz4ipIXCWIqyeFCIURV0HiKkFcPSlEKIy4ChJXCeLqSSFCYcRVkLhKEFdPChEKI66CxFUmV1lLJkcmXAWFq4Rw9aSYoTDhKihcJTq6elLMUBhxFSSuEsTVk2KGwoirIHGVIK6eFDMURlwFiasEcfWkmKEw4ipIXKWthE2+HUZcBYmrLOI6X4DSICxh0bhKdHT1pCKiMOQqiFxlgtW5K4XdRRZmXAWNq4Rx9aSaoTDjKmhcJYyr88cUr+FdEEzYMK6eVCIUZlwFjatEQ1dPKhEKQ66CyFWioasnlQiFKVdB5SqhXD2pRChMuQoqVwnl6kklQmHOVdC5SjR0daH7gKzhXRBMWFkJm5wwGHQVhK4iR1UvhTlXQecq4Vw9qWYozLkKOlcJ5+pJNUNh0FUQukpAV0+qGQqDroLQVQK6elLNUBh0FYSuMtEqW68vzLkKOleJx2sJ3UZyje5iYLpemIsvBBXGXAWZqwRz1UIfkLGGd0EwXYO5elKbUZhzFXSuMs1qVjey44YxV0HmKou5WnLwMecq6FxlmtV5NyD+3bBsReYqY2VrMqkx5irIXGUc7UewhndBMFunWZ23teUxWLYic5Vgrp5UvBTGXAWZq6xeLr6bwBreBcF0jV6unpTNFAZdBaGrTLRKD2DmXAWdq4zDVdjCnKugc5VwrsI3WVrDuyCYrmPNrsm1GnOugs5VplkZ3adlDWIIVK4SypXOJEy5CipXCeXqSRFQYcpVULlKKFdPioAKU66CylWmWKXHDUOugshVFnJlScKQqyBylUCu/HNl6YrIVQK5elLSVBhyFUSuEsjVk1KiwpCrIHKVQK6e1PAUhlwFkasEcvWkhqcw5CqIXCWQqyc1PIUhV0HkKoFcCbwXhlwFkasEchVt/EqNIVdB5CrRxtWTQqDClKugcpVQrp4UAhWmXAWVq4Ry9aQQqDDlKqhcxVbCJhMBU66CylVCuXpSCFSYchVUrhLK1ZNCoMKUq6BylVCunhTxFKZcBZWrTLFKc40hV0HkKhOs0rtYZlwFjass40oKgQozroLGVZZxJYVAhRlXQeMqy7iSQqDCjKugcZVlXEkRT2HGVdC4yvSq/Lth6YrEVSZXpTcFTLgKClcJ4UrnEiZcBYWrng6eurFGIUZF4KoTq7J6z8p8q6Jv1eVbfF+TNbwLUjHIylY+HVXmWxV9qy7fSiqSKvOtir5Vl28lFUmV+VZF36prq8LkpqAy36roW/WkR9filflWRd+qy7eS2qjKfKuib9XwrZ7URlXmWxV9qy7fSmqjKvOtir5Vl28ltVGV+VZF36rLt5I1z8p8q6Jv1ZLuq7nGdhEwXRduJSValeFWRdyqC7eSEq3KcKsibtWFW8liZWW4VRG36sKtpM6rMtyqiFu1rHRN5gGmWxV1qy7dSlb3KtOtirpVl24lxWKV6VZF3ao1Lgb4unhluFURt+rCraTgrDLcqohbdeFWUnBWGW5VxK26cCspOKsMtyriVl24lRSLVYZbFXGrLtxKCr0qw62KuFUXbiWFXpXhVkXcqtG/1ZMarcp0q6Ju1XgIV7LWURluVcStGg/hSq5tKrOtirZVWzm4tqmMtirSVg3ayq5tKqOtirRV11O4ktvpymirIm3VRVtJ5VtltFWRtmpb6ZpMSIy2KtJWbUdrWZXJVkXZqu3o2rUy2aooWzVkK/9uWLKibNWQrWw9rDLZqihbdclWUgtYmWxVlK06lSr9WBlsVYStKkdLA5W5VkXXqnLkBJWxVkXWqsFa6VfDWKsia1XJty1eg7sQmKqBWiOpr6wMtSqiVo3urZHUV1amWhVVq14ewJXcnDDVqqhaVdYD4/g+F5WpVkXVqn09MI73gFWmWhVVq4ZqjaRctDLVqqhaNdq3RlIuWhlrVWStGu1bIykXrcy1KrpWDdcaSbloZa5V0bVquNZIykUrc62KrlX7ythkmmeuVdG1al8Zm0zzDLYqwlYN2BpJuWhlsFURtmo0cI2kXLQy2aooWzVkayTlopXJVkXZqiFbIykXrUy2KspWjW0KR1IuWhltVaStGrQ1knLRymirIm3VoK2RlItWRlsVaasGbY2kXLQy2qpIWzV6uEZS6VmZbVW0rRq2NZJKz8psq6Jt1bCtkVR6VmZbFW2rhm2NpNKzMtuqaFs1erhGUulZmW5V1K0aujWSSs/KdKuibtXQrZFUelamWxV1q4ZujaTSszLdqqhbdVKV2E9y+nvteGnCcKsibtUJVWepk04uCZhtVbStumyrc3iszLYq2ladTnXWPrpgwmirIm3VoK2RVK1WRlsVaavqytZBu2wro62KtFVtZavyIIy2KtJWnUx1rnej9zhMtirKVp1MZSfeu1yZbFWUrWorV+kzoNfwLgjmashW8szVNbwLgtkasjWSEtzKZKuibNWQrfPDiOh1I5OtirJVQ7bSLGGyVVG2qtlxlrB8RdmqIVsjKQauTLYqylYN2RpJMXBlslVRtmr0b42kGLgy2qpIW3U6VZr0jLYq0ladTJUmPZOtirJVQ7ZGS5bmmGxVlK3q/fDIYbJVUbZqyFZ65DDZqihbNbq3RlLaXBltVaStGt1bIyltrsy2KtpW9ZWvycUNs62KttVOK1/5xU1juNUQt9pp5SufTRrTrYa61UK3RlKV3JhuNdStFrqVTUmN6VZD3WqhW9mU1JhuNdStdupHU1JjutVQt9qUquwYbgy3GuJWm1CVHcON2VZD22onOzqGG7OthrbVTn50DDdmWw1tq60HcSXHcGO21dC2WtjWSOrOG7OthrbVwrbSVGO21dC2WmmHqcZ4qyFvtSKHqcZ4qyFvtUlVaaox3WqoW21KVZpqDLca4lYrepglDLca4lYrdpwlLF8Rt1rg1ki2OGwMtxriVgvcGkljQWO41RC3Wl35yu9xGtOthrrV6ppf+YmrMd1qqFstdGskjQWN6VZD3WqhWyNpLGhMtxrqVgvdGskWh43pVkPdaqFbI2ksaEy3GupWC90aSVNAY7rVULda6NZImgIa062GutWid2skTQGN8VZD3mrRuzWSpoDGfKuhb7Xo3RpJCXxjwNUQuFoAV00mWOZbDX2rTavKanca462GvNXa0eavjelWQ91qoVsjubVvTLca6laLxq2RFJ43xlsNeatNq7LhfJJmvNWQt1pb2ZocwYy3GvJWaytbk0ma8VZD3mqysjU5ghlvNeStNq3q/EhNesphvNWQt1rwFhehxnSroW61SVVZh1JjutVQt1ro1kiKvRvTrYa61aJpa4ySfCAsWdG32vKtpDy6Md9q6Ftt+dZofA5gvtXQt1r41kjKoxvzrYa+1cK3xuj8uGG+1dC32rSq9NhjvNWQt9riraSyuTHeashbbVLVeaeMbn+3hl8w062GutWmVLlx8GsMtxriVptQ5ca9rzHbamhbbTqVG69Baoy2GtJWm0zlxuvUGpOthrLVplK500dzr9FdDEzViVTauMQ25loNXatNo3Knz09Yo7sYmKiTqHjNXWOm1dC0WphWFT6FMNJqSFpt8pQ7L5ZrTLQailabOuXJvoaNgVZD0GoTp9yTu1/mWQ09q02bck/O/4yzGnJWmzTlCbE3plkNNauNyNLkiGOY1RCz2oQp9+SIY5bV0LLaiCxNjjhGWQ0pq02WSk+YTLIaSlZbkpX0eDQmWQ0lqy3Jyi5lmGQ1lKwWkuXJSZdBVkPIarpO/8ldEaOshpTVdJ3+k2sqZlkNLauFZY2k2aQxy2poWS36tEbSbNIYZjXErLYwK2k2aQyzGmJW0+OLVYZZDTGrLczKrqsYZjXErBZ9WiNpN2lMsxpqVgvNkmQWYJrVULPa0qzs2oxpVkPNaiZH92cMsxpiVluYlfTONIZZDTGrLczKru8YZjXErLYwK2nAaQyzGmJWW5iVNOA0hlkNMavZcb4yzGqIWW1hVtJw0hhmNcSstjAraThpDLMaYlaLzQhH0nDSmGY11KwWjVojaThpjLMaclZbnJW0eTTGWQ05qy3OypKNcVZDzmrBWSPpFWmMsxpyVluclfSKNMZZDTmrBWedTvRhyWt4FwQz1o8zlnFWQ86S4KzkHCpMswQ1S5ZmJfOaMM0S1CxZmpW0zwjTLEHNkqVZSZoI0yxBzZKlWUnzizDNEtQsWZqVNL8I0yxBzZLTOPqGhXGWIGfJSY/OocI8S9CzZHlW+sGShBX0LFmelbThCPMsQc+S8KyRtOEI8yxBz5LlWcntqzDPEvQsWZ6V3L8K8yxBz5LlWcnNpzDPEvQsWZ6V3PcJ8yxBz5Jo1xrJjZ8w0BIELYl2rZHc+QkTLUHRkiVaya2fMNESFC0J0RrJvZ8w0RIULVmildz8CRMtQdGSJVrJ3Z8w0RIULVmildz+CRMtQdGSqVPeeOunMNASBC0J0NJTkvUMtARBSwK09JRkPQMtQdCSAC09JVnPQEsQtCRAS09J1jPQEgQtCdDSZJM5YaAlCFoSoKVJ2bow0BIELQnQ0qRsXRhoCYKWTJw6V/LTuZ55lqBnybSp7DZFGGcJcpYEZ6UfK/MsQc+StvI1Oekw0BIELWlyOEsz0RIULVmilU0mTLQERUuWaGWTCRMtQdGSpodnLkZagqQli7Sykw4jLUHSkrbyNTmbM9ISJC2ZPJVOa0y0BEVLYitCTRokhJGWIGlJbEWoSYOEMNQSRC2JrQhL8gUz1BJELQnU0qTJQhhqCaKWBGpp0mQhDLUEUUtkHJ4uGGoJopaIHp4uGGoJopYs1MouTRhqCaKWLNTKLk0YagmilkTTVnrOYaolqFrSjy9hmWoJqpaspq3smo+xliBryWrayq60mGsJupaspq3s+obBliBsST++ImCyJShbEk1bmrQFCaMtQdqSaNrSpC1ImG0J2pZE05YmbUHCcEsQtySatjRpCxKmW4K6JdG0pUlbkDDgEgQuCeDSpC1ImHAJCpeMNcUmecKIS5C4JJq2tCaTEjMuQeOSaNrSmkxKDLkEkUuiaUuTtiBhyiWoXBJNW5q0BQljLkHmkmja0qQtSJhzCTqXRNOWJm0wwqBLELokmrbyb4dlLEqXRNOWJjvAC6MuQeqSoC5NdoAXRl2C1CV6nLGMugSpS7QdJhuzLkHrEl0ZmxyAzLoErUt0ZWxyocSsS9C6JKxLk73ohVmXoHVJWJcm7SfCrEvQuiSsS5P2E2HWJWhdEtalSfuJMOsStC4J69JkH3lh1iVoXRLWpUmzhTDrErQuscjYpNlCGHYJYpcEdmnSbCEMuwSxS6J1S5NmC2HaJahdEtqlSbOFMO0S1C4J7dKk2UKYdglql4R2aVJGL0y7BLVLQrs0qbIWpl2C2iWhXZpUWQvTLkHtktAuTaqshWmXoHZJaJcmVdbCtEtQuyR2JbRkdmTYJYhdMuFqVvHSGCxf0bokrEuTam9h1iVoXRLWpUm1tzDrErQumW7lLblPYdQlSF0SexJKwjpMugSlS/xwqwxh0iUoXeIrW5NpgEmXoHT108pWPg10Rl0dqasHdWV9Ep1RV0fq6kFdmtS/d0ZdHamrB3VpUv/eGXV1pK4e1KVJ/Xtn1NWRunpQlyb1751RV0fq6kFdmtS/d0ZdHamrB3Vpsmt6Z9TVkbp6UJcmNeOdUVdH6upBXZrUe3dGXR2pqwd1abIzd2fU1ZG6elCXJvXenVFXR+rqQV2aFEl3Rl0dqasHdWmyh3Rn1NWRunpQF3+SfGfQ1RG6ekCXJnXWnUFXR+jqE61q5ztzd+ZcHZ2rh3NpspV1Z87V0bl6OJcmtdqdOVdH5+rhXJpsZd2Zc3V0rh7OpUmddWfO1dG5ejiXJtWFnTlXR+fqdaVrcuAw6OoIXX1BV1LU1xl0dYSuvqArKerrDLo6Qldf0JUU9XUGXR2hqy/oSor6OoOujtDVF3QlpXSdQVdH6OoLupLqs86gqyN09QVdSeFYZ9DVEbp6dG5pUjjWmXR1lK4enVua1Hx1Rl0dqasv6kpqvjqjro7U1Rd1JTVfnVFXR+rqQV2a1Hx1Rl0dqasHdWlS89UZdXWkrh7UpUm5VmfU1ZG6elCXJuVanVFXR+rqQV2a1CZ1Rl2bX16CRMYmZUWdUVdH6urRvaVJWVFn1tXRuvqyrqQOpzPr6mhdfVlXUofTmXV1tK4e1qXJTradYVdH7OoLu5JdaDvDro7Y1Rd2JbvQdoZdHbGrL+xKdqHtDLs6Yldf2JXsQtsZdnXErh7YpQl2dYZdHbGrB3Zpgl2dYVdH7OrRwZX0pHZmXR2tq4d1abKTbWfW1dG6+nSrrJWsM+rqSF29R8Nh4Xd/TLo6SlfvK12To49JV0fp6ku6su+XSVdH6epLurLvl0lXR+nqU63y75dlK0JXn2iVfzUsWdG5+jSr/KthuYrM1RdzJTvqdsZcHZmrL+ZK9o/tjLk6MlcP5rJkr9POmKsjc/VJVlaMfzVMuToqV59iZYU/76Mz5OqIXD2Qy5I9VztDro7I1SdYpd8vM66OxtXDuCzZ6LQz4+poXD2My5KNTjszro7G1cO4LNnotDPj6mhcPYzLkoqxzoyro3H1MC5LKsY6M66OxtV1pWsypzHj6mhcPYzLklqgzoyro3H1MC5L6ng6M66OxtXDuCyp4+nMuDoaVw/jsqQGpzPj6mhcPYzLkhqczoyro3H1MC5LKho6M66OxtXDuCypaOjMuDoaVw/jsqSioTPj6mhcPYzLkoqGzoyro3H1MC5LKho6M66OxtXDuCypaOjMuDoaVw/jsmSj086Mq6Nx9TAuSzY67cy4OhpXD+OyZKPTzoyro3H1MC5LKho6M66OxtXDuCypaOjMuDoaVw/jsqSioTPj6mhcPYzLkoqGzoyro3H1MC5LihE6M66OxtWjo8uSYoTOkKsjcvUpVsm+rZ0ZV0fj6mFcVnmBYmfG1dG4+vSq/lMff9daMQJLVgSuvvYm7MlFIxOujsLVfSVrcuwx4upIXD2IK3sYUmfE1ZG4ehCXJRURnRFXR+IaQVzWuIMORlwDiWsEcVnyIN3BiGsgcY0gLmtcUwcjroHENYK4LNlEbzDiGkhcI4jLkoqIwYhrIHGNIK78gyUZO5C4RhCXNV4nORhxDSSuEcRljcPDYMQ1kLhGEJc1fmcwGHENJK5xWhnLbw0GI66BxDUmV1XlB/FgwjVQuEYIlwmvFxtMuAYK1wjhMkm+YSZcA4VrhHCZVMpTgwnXQOEaRQ4PHWZcA41rTK+qJ7oB12DCNVC4RrRy1eo/jdPfTzYwCEtXJK5R9HAyYcQ1kLhGscN5gBHXQOIaQVyWVLwMRlwDiWsEcVlS8TIYcQ0krlFXviYzEiOugcQ16spXfkkxGHENJK5RV77yS4rBiGsgcY0gLkuKMwYjroHENYK4LCnOGIy4BhLXCOKypK5iMOIaSFwjiMuSuorBiGsgcY0gLkvqKgYjroHENYK4LKmrGIy4BhLXCOKypK5iMOIaSFwjiMuSuorBiGsgcY0gLjtfJpEVnMGIayBxjSAuS+oqBiOugcQ1mhyeuRhxDSSuMbkqPXMx4RooXKOthOWX0oMJ10DhGlOrJDvnMOAaCFwjgCs9cTHgGghco618zT5Wlq8IXCOAy5JKk8GAayBwjQAuSypNBgOugcA1ArgsKRMZDLgGAtcI4LKkxGMw4BoIXCOAy5ISj8GAayBwjQAuS0o8BgOugcA1ArgsKfEYDLgGAtcI4LKkxGMw4BoIXCOAy5ISj8GAayBwjQAuS0o8BgOugcA1opvLkhKPwYRroHCNEC5LSjwGE66BwjUmV1UVukfhYMI1ULhGCFdyLzuYcA0UrjG1KtnZczDfGuhbY1pVVl41GG8N5K0RvOWNn2+Ybg3UrRF9XJZUzQzGWwN5a0yrOlfAsrmV6dZA3RrRxWVJ4c1gvDWQt8akKs1ucZhuDdStMVaiJnMR062BujWWbimHx8F0a6BujWjisqR4ZzDeGshbI5q4yik58THfGuhbY8SlQHJfz3hrIG+N4C3lveGD8dZA3hqLt9IgLFmRt8biraQSaTDeGshbY/GWJpcCjLcG8tZYvJVUIg3GWwN5a0yqqsnmN4Pp1kDdGlqPLvUYbg3ErTGhKnvI1GC2NdC2xrKtpKpqMNsaaFtj2VZSVTWYbQ20rRG2lR42zLYG2tbQ43RltjXQtsayrSzTmG0NtK0xnSpPEpatSFtj0VZSaDYYbQ2krbFoKyk0G4y2BtLWWLSVFJoNRlsDaWss2koKzQajrYG0NRZtJYVmg9HWQNoak6ma/NTL308dv18GWwNhayzYSmrVBoOtgbA1FmwltWqDwdZA2BoLtpJatcFgayBsjQVbSa3aYLA1ELbGgq2kVm0w2BoIW2PBVlKrNhhsDYStsWAreWL6YLA1ELZGbFVoyRPTB6OtgbQ1Fm0ldWaD0dZA2hrRvmVJfddgujVQt0boliWVSIPp1kDdGku3kkqkwXRroG6N0C1PKpEG062BujVCtzypABpMtwbqlq6tCpPqHWW6pahbOqUqAVBltqVoWxq25cn2HcpsS9G2dNlWshqmzLYUbUvDtjypIlJmW4q2pdOp0k+EZKuibGnIlieFSMpkS1G2NGTLT/wyWplsKcqWnla28oNPmWwpypaeVrbyZTllsqUoW1pWtvK2f2W0pUhbGrTlhdOWMtpSpC290Ba/WFNGW4q0pWXttc2PYGW0pUhbumgrue9TRluKtKXRvpXmCcMtRdzSwK3sslEZbinilgZueVKcpQy3FHFLJ1RlD5ZQZluKtqXlOGGZbSnalta1Eyxv91VmW4q2pXUlLH+KgTLbUrQtrfXw0GG2pWhbWtvhocNsS9G2NGzLk3o1ZbalaFu6bCub6pltKdqWhm15UvSmzLYUbUuXbSXwocy2FG1Lp1Nld8PKaEuRtjRoywt/gJAy2lKkLb3QVpL1jLYUaUvbStgsCEtYpC1txzMsoy1F2tILbSVfDqMtRdrSthKWX/Ipoy1F2tLo3vKkmFCZbSnaloZteVJMqMy2FG1Lw7aSaxNGW4q0pZOpaqVFDMpgSxG2dCJV5evIylhLkbV0ElUV+twNZailiFo6ger8yEqWHYy0FElLJ09VXvWjDLQUQUvjkVt8G2hlnKXIWRqc5UmFqDLOUuQslZWj/M5TGWcpcpbKytHk+plxliJnaXCWJxWiyjhLkbM0OMuTClFlnKXIWTppKjtaGGYpYpYGZnlSZKoMsxQxSydM1fNsyPKMWZaiZWnsTOjJXlXKMEsRszR2JvSkvFOZZilqlka/lieVmco8S9GzNPq1PNmrShloKYKWXkArOXCYaCmKlvajKZV5lqJnaexL6Ml2V8pES1G0dOrUbKll510GWoqgpdGv5cmWWcpES1G0NETLkwJRZaKlKFoaouXJllnKREtRtDREy5Mts5SJlqJo6Vjpmhw4TLQURUvHStfkwGGkpUhaOn0qyzQmWoqipSFanuy6pUy0FEVLQ7Q82XVLmWgpipaGaHmy65Yy0VIULQ3R8qQGUZloKYqWRsOWJzWIykhLkbQ0GrY8qUFUZlqKpqXr+VtJDaIy1FJELQ3U8qQGURlqKaKW6tEaFiMtRdJSPewnUEZaiqSlk6fkpD91+bvrLgZLVxQt1ZWuyR0JEy1F0dLo1sqKd5WRliJpqa10TWYBRlqKpKVWDv8cRlqKpKVBWumfw0hLkbQ0SMuT8lBlpKVIWhqk5Ul5qDLSUiQtjW4tT8pDlaGWImppoJYn5aHKUEsRtTRQy5PyUGWopYhaGqjlSXmoMtRSRC0N1PJk2y1lqKWIWhqo5Ul5qDLUUkQtDdTyZNstZailiFo6gYo3OCkTLUXR0vXwrUSllYmWomjp1KmRbIitDLQUQUt9ZWsyDTDQUgQtDdDypK5TGWgpgpYGaHlS16kMtBRBSxdoJXWdykBLEbTUj261GGcpcpadTgfVesY0y1CzLHq1PCkvNeZZhp5ly7OS8lJjnmXoWRae5Ul5qTHPMvQsW56VlJca8yxDz7Lo1fKkvNSYaBmKlp0Orl2NeZahZ9nFszgTGvMsQ8+y1amVrB0b8yxDz7LlWUmtrDHPMvQsmzaVOYUxzjLkLLtwFicGY5xlyFkWnJURgzHOMuQsW5yVVP4a4yxDzrLgLE8qf41xliFnWTnUAWOcZchZFpzlSfmwMc4y5CxbnJXUuhrjLEPOsujVylb2jXmWoWfZ8qxkUd6YZxl6lq1erWQ93ZhnGXqWLc9K6m6NeZahZ9nyrKRm1phnGXqWLc9KNrwz5lmGnmXLs5KaWWOeZehZFp7lyYZ3xjzL0LNseVZSZmrMsww9y+rK2OQoZp5l6Fk2cSqb6hlnGXKWrU6tpCXeGGcZcpZNmuJXjMYsy9CyLCwra0Q3ZlmGlmVhWZ5U3RqzLEPLsmVZSauzMcsytCy7tGnxJgBjlmVoWdZW5zZHD2OWZWhZtvq0kg5jY5ZlaFkWOxFmHcbGNMtQsywatTzZ6dyYZxl6lkWjliclwMZEy1C0LBq1PKl3NWZahqZlclCNZcy0DE3LwrS47xkzLUPTsjAt7nvGTMvQtGz6VOJ7xkTLULRMeu57xjzL0LNs2lTie8Y0y1CzbMpU4nvGLMvQsmxZVlLEbMyyDC3LZOVocrpjmmWoWbY0KyliNqZZhppl0ZqVHnKMsww5yyZNJS1RxjDLELNswlRSB22MsgwpyxZlJfXYxijLkLJsUVZSTG2MsgwpyxZlJcXUxijLkLIsmrM8KaY2hlmGmGULs5JiamOYZYhZFu1ZnhRTG9MsQ82ypVlJMbUxzTLULFualRRTG9MsQ82ypVlJMbUxzTLULJsy1ZJHZhrDLEPMsiEHkmzMsgwty5ZlJUXdxizL0LIsHrHlSVG3Mc0y1CxbmpUUdRvTLEPNsnF0ucosy9CyLCxrdF6GacyyDC3LlmUlxeXGLMvQsmy6VMuuqxhlGVKWRXfWKSlQN0ZZhpRlGhu7Jk+YNEZZhpRlk6XqKSlQN0ZZhpRlGju3JNtLGsMsQ8wyHfn2L8Yoy5CyLLqzMnIxZlmGlmXTpeopKVA3ZlmGlmXRnXVKqsuNWZahZdl0qXpKtrk0ZlmGlmXTpbKHGhujLEPKMsthwJhjGTqW2crVZC5ijmXoWGYrV5O5iDmWoWOZrVxN5gDmWIaOZdOk5lNB2JHHGMuQsWySVD0lG3YaYyxDxjKLZE1K3I0xliFjma1tiLm4GGMsQ8Yyj2RNNuw0xliGjGWTpOop2bDTGGMZMpZ5TK5JAbQxyTKULPN2uCbIJMtQsswjYZMCaGOUZUhZFpRVLTnhMMoypCzztRNxcvwxyjKkLPOVscnxxyjLkLLMV8Ymxx+jLEPKMo+MTap9jWGWIWZ5YNYpqfZ1plmOmuWnyNikMNSZZjlqlp8iY5PCUGea5ahZfoopNikMdaZZjprlp8jYpDDUmWY5apafYopNCkOdaZajZvkpMjap6nTmWY6e5aeDwkFnmuWoWR6alV1TONMsR83y08pXfuQ40yxHzfLYd5BfIDnDLEfM8rKylR98zjDLEbN8wlR3blnOLMvRsrxEsiYFqs4sy9GyvMjRBbAzy3K0LF+7DiZVrs4sy9GyPJ6sdUqqXJ1ZlqNleYnpNSlRdWZZjpblJabXpLzUmWU5WpaXg0oBZ5LlKFl+kSxOhM4ky1GyfKpUmmkMshwhyydKZVuNOXMsR8fyurI1mRWZYzk6ltfI1qTc1pljOTqW15WtyazIHMvRsTwc63xfwZYonDmWo2P5cixe6eOMsRwZy+tK1mRaZJDlCFleY25N6n6dQZYjZHk7HV0CO7MsR8vyS18Wv2Z0ZlmOluUtrgWS8mFnluVoWT5dKit8cEZZjpTll7YsXvjgjLIcKctXW1ZS+OCMshwpy1vMrkkxtDPKcqQsD8o6r8vxb5glLFKWR2NWcgpmkOUIWR6NWaekKNsZZDlClkdr1ikpynYGWY6Q5dGcdUqKsp1RliNluax0TaZGhlmOmOWBWaekKNsZZzlylgdnnZKibGeg5QhaHqB1SjaGdUZajqTlsvI1mZEYajmilq8dBxMEdsZajqzlEvmalA87Yy1H1nKJjE3Kh52xliNr+WKtbCJgrOXIWh5NWqekBtkZazmylseOg6ekBtkZbDnClq+HaiU1yM5oy5G2vEfGJjXIzmjLkbY8dh08JTXIzmjLkbZ8MlU61TPZcpQtn0o1v2Aag+Urwpb3la98ey1nsOUIW76eqpXUQjuDLUfY8hEzbFJA7Ay2HGHLJ1Kdm0ZpzjPXcnQtn0Z1bgekHytjLUfW8rXtYFKV4sy1HF3LJ1J1SeYj5lqOruWx6+Bp8LUsZ67l6Fq+nqqVVFQ7cy1H1/IRN1tJRbUz13J0LR+RrkkpszPZcpQtH5GuSSmzM9lylC3XSNeklNmZbDnKlkeX1sl5PYcz2nKkLV+0ldRDO6MtR9ryRVtJPbQz2nKkLV+0lZQQO6MtR9ryRVtJ0a0z2nKkLV+0lRTdOsMtR9xyjYxN6mWd4ZYjbvnCraRe1hluOeKWL9xKCkyd4ZYjbvnCraTA1BluOeKWW1wQJAWmznTLUbfcImOTAlNnwOUIXL6AKykwdQZcjsDlC7iSAlNnwOUIXL6AKykwdQZcjsDlFhmbVFQ6Ey5H4fJo1Drv3MJOfwy4HIHLJ1YZP28x3XLULV87D2YnP6Zbjrrl0aTVkzM5wy1H3PLo0erC3wezLUfb8mVbyXaqzmzL0bbcI1eTWkpntuVoW75sK6mldGZbjrblHrmalN05sy1H2/JlW0nZnTPbcrQtX7aVlN05sy1H2/JlW0mtmjPbcrQtX7aV1Ko5sy0H22qnZVu8Vm0NXwfZ/vISJGZXXqu2hndBCgaJjOW1amt4F6RikMhYXqu2hndBGgaJjOW1amt4F0QwSM/ntDW6i9ExxjiYkdbwLsjAIJrPSGt0F0MxhuUz0hrdxTCMEenKi/fW8C4IpuuiLV68t4YxSMF0XbjFi+bW8C4IpmtZ6UoP4TW8C4LpunSLF82t4V0QTNelW7xYbQ3vgmC6hm4VXmi2hndBMF9DtwrfCXUN74JgvoZuFV5otoZ3QTBhQ7cKLzRbw7sgmLHTqmrhBV5reBcEM3ZaVbJiskYxRsWEnVaVrJis0V0MzNdaD1ZM1vAuCObrtKpknWKN7mJguk6qStYp1uguBmbrlKpkiWGN7mJgstZxsMSwhndBMFnrStZkPiK6tf3lJchK1mQ+Irq1/eUlyErWZD4iurX95QoSulV44dwaxiANs3VKVS28cG4N74JguoZuFV70toZ3QTBdJ1XVwove1vAuCObrpKpa+Eaoa3gXBBM2HqhVeNHbGt4FwYwN3iq86G0N74Jgxk6qap3q1hrdxcCEnVbVOt3eao3uYmC+TqpqvEx7je5iYLpOqTq3BNIYBLe2v7zEmGWv2bRIbGv7y0uMOjeioB2Sa3QXA3N1MlXjlaJrdBcDU3UqVRvJd0tga/vLS4yVqcmMRmBr+8tLkJWpyYxGYGv7y0uQmFt5KeIa3gXBVA3YKrwUcQ3vgmCuBmwVXoq4hndBMFl7zK28FHENY5D1y//vp789Pv3x8Pr+8OX/ffry8M+//a///b//9vP73W9/++m//vbzY/yqd/9pvtbf/td//e28r93/+q//+9PfzttJzR/O3XDzh9LH6cdPdvlJ9fKTyeUnr+un83OULz9d/t35cajrp/rjp3b5v+eHxV1+8stP/cf/HT/+nbYfP/34d/Yjnl/+3Xmj+vVT+euny7vXH+/gvFXr+unHOzhvWLh++vG6592t5k+16vwf//eny3cRv798CXPs/K3c/fL8+n73y9eHP+8e318f3r5/fd9++rMw7MfHPyu/bo768GUbaROm3Bbj/v77t+9f796fX7dxpNW/Io3L51dLfAs3RH1//OPh51++//rrw1XcMnRs/tJm9oF473evvz1cfXDnW+S//uBx+XJtfbdzpW/+NO+Pb3qlL1/uXt8ff727f79/fnq/e3x6e/jy28PVZ9Pb5rNp9ea4bwchZRuy3Rryl+fvT18evvz6+PTl8enqgC79pJsP+uR+a8zde6ubVOh685/78PXh/v31+enu7R1DttPma2v+4ZDzz757fXx4uzqK3DZR9fY/eEV9fPr14fXh6f5h93bLaft2b/52fgR+uefvuJWxDfzhd/x0dz4sstibT0NON84Gf8X+8/Hpy/OfSex62sa++QP5j7s/7t7uXx9f3uEYe3i9ii+2iX9+Ityn4//6+PUBQpdt6PHx0L98f/ry9eH16fkLRt5OmePGiXIb+ff3b19fn/ENj02OnJ87+uGwL3f3/7j77YG84e08Nm6cibeR356/v94/fLt7eX59/O3x6e4rvHPdvvNPfNRv73fvj/drdruOrbZ97zdn4Nfn+7v3bMLchDwvZt0a8/zBXk+YbTth3vzeXh/e3q5PbrI9u52Lyj8Q6cvj2/vd0/3DdcQh24i3n2jOER++zP95/Q7t6h1+MN7L3W8Qr5+u4t2cM5Ep6QwuvW/Przd/kN+f7v64e/x6vnKLV3i5e317eLt/foHw22O03XqMfnt8enx7fz1fe708vH57fHt7fH767fXu6f0qD86PUfnrQ6m3TuW/PTy9//4IsdQ377Scbp2lvn59/vPhy8PTH4+vz09zaPut6fZ0XkVufIMR9O3u6fH98T8fvnx//bqNanWb/OXWvzqC/vnwy9vz/T8e8I/Xqz/+xhlvhvzn+8Pr093Xp4f3P59f/3H9528vD6rIjZczT3df//X2eD2rte2MfPpYoPvz0f7168OXh9fX64v5Uuv2vqD3G//w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"; \ No newline at end of file +window.searchData = "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N730i0nXQulaj8orn0sWk66F0rUelVc+lywmXQula6V0edNLv5h0LZSuldLlTS/9YtK1ULpWSpc3W68vJl0LpWuldHnTgL6YdC2UrpXS5U3z+GLStVC6VkqXN9t7LyZdC6VrpXR50zy+mHQtlK6V0uVNz/Vi0rVQulZKF18EtphzLXSulc7lzV7WiznXQudax6yG8T0wF2Ouhcy1RsW1OXAYcy1krpXM5c1+2Isx10LmWslc3rR+L8ZcC5lrJXN5sx/2Ysy1kLlWMpc3bduLMddC5lq5gMub/sTFnGuhc610Lm/aAhdzroXOtdK5vGkLXMy5FjrXSufypi1wMeda6FwrncubtsDFnGuhc610Lm/aAhdzroXOtdK5vGk+W8y5FjrXSufypm9sMeda6FwrF3B50ze2GHQthK6VC7i8aflajLoWUtdK6vKm5Wsx6lpIXSupy5uWr8WoayF1raQub1q+FqOuhdS1krq8aflajLoWUtdK6vKmW2sx6lpIXSupy5turcWoayF1raQub1qTFqOuhdS1krq86SpajLoWUtfKVVzedBUtZl0LrWuldXnThrOYdS20rpXW5U0bzmLWtdC6VlqXN9vqLoZdC7FrJXZ5syPuYti1ELtWYpc3u9kuhl0LsWsldnmzm+1i2LUQu1Zilze72S6GXQuxayV2eYNdi2HXQuxaiV3eYNdi2LUQu1au5Zr8PSiLWddC61ppXd7siLuYdS20rnXcqltUthh1LaSuZbnykO+puZh0LZSuldLlzc68i0nXQulaKV3998viitK1Urr675fFFaVrHbVqv18GXQuhax20ar8a5lwLnWsds2q/GsZcC5lrJXN5szXvYsy1kLnWqrA2cxpjroXMtZK5vNmJdjHmWshc65DVyy01/2pYWlG51hGrlztqXoOFFZFrrQprM7cy5FqIXOuAVf/9sqyica0yrmYP2MWMa6FxrTKuZtPUxYxroXGtNC5vNk1dzLgWGtcq42oaxhYzroXGtcq4moaxxYxroXGtNC5vmqwWM66FxrXSuLzpBVrMuBYa1yrjavp4FjOuhca1yriaPp7FjGuhca0yrqYHZzHjWmhcq4yr6cFZzLgWGtcq42o6GhYzroXGtcq4mo6GxYxroXGtMq6mo2Ex41poXKuMq+loWMy4FhrXKuNqOhoWM66FxrXKuJqOhsWMa6FxrTKu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"; \ No newline at end of file diff --git a/docs/api/classes/application_JavaScriptArtifactGraphAccumulator.JavaScriptArtifactGraphAccumulator.html b/docs/api/classes/application_JavaScriptArtifactGraphAccumulator.JavaScriptArtifactGraphAccumulator.html index 4e06f1f10..97a9234de 100644 --- a/docs/api/classes/application_JavaScriptArtifactGraphAccumulator.JavaScriptArtifactGraphAccumulator.html +++ b/docs/api/classes/application_JavaScriptArtifactGraphAccumulator.JavaScriptArtifactGraphAccumulator.html @@ -50,7 +50,7 @@
diff --git a/docs/api/classes/application_PermissionAuthority.PermissionPathError.html b/docs/api/classes/application_PermissionAuthority.PermissionPathError.html index 0e9d17f91..f29bed7fc 100644 --- a/docs/api/classes/application_PermissionAuthority.PermissionPathError.html +++ b/docs/api/classes/application_PermissionAuthority.PermissionPathError.html @@ -14,7 +14,7 @@

Failure to establish a filesystem object's canonical authorization identity.

-
+

Hierarchy

  • Error diff --git a/docs/api/classes/application_ProcessCaptureError.ProcessCaptureError.html b/docs/api/classes/application_ProcessCaptureError.ProcessCaptureError.html index baea2ddd6..834244986 100644 --- a/docs/api/classes/application_ProcessCaptureError.ProcessCaptureError.html +++ b/docs/api/classes/application_ProcessCaptureError.ProcessCaptureError.html @@ -14,7 +14,7 @@

    Typed application failure produced by controlled process capture.

    -
    +

    Hierarchy (View Summary)

    • AnalysisError diff --git a/docs/api/classes/application_ProjectPermissionStore.ProjectPermissionStoreError.html b/docs/api/classes/application_ProjectPermissionStore.ProjectPermissionStoreError.html index 1cd36b65f..c6cc3c57a 100644 --- a/docs/api/classes/application_ProjectPermissionStore.ProjectPermissionStoreError.html +++ b/docs/api/classes/application_ProjectPermissionStore.ProjectPermissionStoreError.html @@ -14,7 +14,7 @@

      Owner-only project policy persistence failure.

      -
      +

      Hierarchy

      • Error diff --git a/docs/api/classes/domain_permissionPolicy.PermissionGrantError.html b/docs/api/classes/domain_permissionPolicy.PermissionGrantError.html index bd597a941..0f95d09d0 100644 --- a/docs/api/classes/domain_permissionPolicy.PermissionGrantError.html +++ b/docs/api/classes/domain_permissionPolicy.PermissionGrantError.html @@ -14,7 +14,7 @@

        A proposed grant exceeds the administrator-owned maximum authority.

        -
        +

        Hierarchy

        • Error diff --git a/docs/api/classes/ghidra_GhidraLauncher.GhidraLaunchError.html b/docs/api/classes/ghidra_GhidraLauncher.GhidraLaunchError.html index 5a7d86805..7654df9d9 100644 --- a/docs/api/classes/ghidra_GhidraLauncher.GhidraLaunchError.html +++ b/docs/api/classes/ghidra_GhidraLauncher.GhidraLaunchError.html @@ -14,7 +14,7 @@

          Local launch failure retained as the cause of a provider-neutral error.

          -
          +

          Hierarchy

          • Error diff --git a/docs/api/classes/ghidra_GhidraSessionError.GhidraSessionError.html b/docs/api/classes/ghidra_GhidraSessionError.GhidraSessionError.html index 4f3cc346a..bf8c72c17 100644 --- a/docs/api/classes/ghidra_GhidraSessionError.GhidraSessionError.html +++ b/docs/api/classes/ghidra_GhidraSessionError.GhidraSessionError.html @@ -14,7 +14,7 @@

            Provider-owned failure with bounded, token-redacted local diagnostics.

            -
            +

            Hierarchy

            • Error diff --git a/docs/api/classes/ghidra_protocol.GhidraRemoteError.html b/docs/api/classes/ghidra_protocol.GhidraRemoteError.html index 681fef5c0..1f0d79c4d 100644 --- a/docs/api/classes/ghidra_protocol.GhidraRemoteError.html +++ b/docs/api/classes/ghidra_protocol.GhidraRemoteError.html @@ -14,7 +14,7 @@

              Expected operation failure returned by the authenticated Java bridge.

              -
              +

              Hierarchy

              • Error diff --git a/docs/api/functions/application_CapabilityInventory.buildCapabilityInventory.html b/docs/api/functions/application_CapabilityInventory.buildCapabilityInventory.html index 0cff0b1a5..abead1003 100644 --- a/docs/api/functions/application_CapabilityInventory.buildCapabilityInventory.html +++ b/docs/api/functions/application_CapabilityInventory.buildCapabilityInventory.html @@ -14,7 +14,7 @@
                • - +

                  Build stable per-operation availability without hiding familiar tools.

                  @@ -23,7 +23,7 @@
                  • sessionStatus: JSONType
                  • policy: {
                        browserObservationEnabled?: boolean;
                        electronObservationEnabled?: boolean;
                        evidenceFileRoots: number;
                        processCaptureEnabled: boolean;
                    }
                  -

                  Returns {
                      annotations: {
                          destructive: boolean;
                          idempotent: boolean;
                          open_world: boolean;
                          read_only: boolean;
                      };
                      available: boolean;
                      name: | "open_binary"
                      | "list_browser_targets"
                      | "inspect_web_page"
                      | "analyze_web_bundle"
                      | "observe_web_session"
                      | "discover_webmcp_tools"
                      | "compare_web_captures"
                      | "capture_web_screenshot"
                      | "compare_web_screenshots"
                      | "list_electron_targets"
                      | "inspect_electron_page"
                      | "inventory_artifact"
                      | "extract_artifact"
                      | "analyze_javascript_application"
                      | "swift_classes"
                      | "get_objc_classes"
                      | "get_objc_protocols"
                      | "batch_decompile"
                      | "get_call_graph"
                      | "analyze_swift_types"
                      | "find_xrefs_to_name"
                      | "binary_overview"
                      | "analyze_function"
                      | "trace_feature"
                      | "comment"
                      | "compare_artifacts"
                      | "find_changed_behavior"
                      | "compare_process_captures"
                      | "compare_functions"
                      | "capture_process_scenario"
                      | "address_name"
                      | "current_address"
                      | "current_procedure"
                      | "current_document"
                      | "goto_address"
                      | "inline_comment"
                      | "list_bookmarks"
                      | "list_documents"
                      | "list_names"
                      | "list_procedures"
                      | "list_segments"
                      | "list_strings"
                      | "next_address"
                      | "prev_address"
                      | "procedure_address"
                      | "procedure_assembly"
                      | "procedure_callees"
                      | "procedure_callers"
                      | "procedure_info"
                      | "procedure_references"
                      | "procedure_pseudo_code"
                      | "resolve_containing_procedure"
                      | "search_procedures"
                      | "search_strings"
                      | "set_address_name"
                      | "set_addresses_names"
                      | "set_bookmark"
                      | "set_comment"
                      | "set_current_document"
                      | "set_inline_comment"
                      | "unset_bookmark"
                      | "xrefs"
                      | "inspect_macho"
                      | "inspect_signature"
                      | "inspect_plist"
                      | "list_architectures"
                      | "demangle_swift"
                      | "close_binary"
                      | "binary_session"
                      | "export_evidence_bundle"
                      | "import_evidence_bundle"
                      | "compare_bundles"
                      | "build_call_path"
                      | "correlate_static_and_runtime"
                      | "verify_reconstruction"
                      | "list_unknowns"
                      | "record_unknown"
                      | "update_unknown"
                      | "verify_unknown_resolution"
                      | "reconcile_javascript_runtime";
                      reason: ToolAvailabilityReason;
                      remediation: string
                      | null;
                      surface: ToolKind;
                  }[]

                diff --git a/docs/api/functions/application_Doctor.runDoctor.html b/docs/api/functions/application_Doctor.runDoctor.html index 4efa914da..72b6a7986 100644 --- a/docs/api/functions/application_Doctor.runDoctor.html +++ b/docs/api/functions/application_Doctor.runDoctor.html @@ -14,7 +14,7 @@
                • - +

                  Check requirements and an optional target without mutating the host. Every failed check includes remediation suitable for either the one-shot CLI @@ -25,7 +25,7 @@ or an agent consuming the structured result.

                  -

                  Returns Promise<
                      {
                          checks: readonly DoctorCheck[];
                          healthy: boolean;
                          hopperPath?: string;
                          identity?: {
                              catalog: {
                                  counts: {
                                      cli_commands: number;
                                      mcp_prompts: number;
                                      mcp_resource_templates: 7;
                                      mcp_resources: 2;
                                      mcp_tools: number;
                                  };
                                  digests: {
                                      combined_sha256: string;
                                      prompts_sha256: string;
                                      resources_sha256: string;
                                      tools_sha256: string;
                                  };
                                  tools: {
                                      annotations: {
                                          destructive: boolean;
                                          idempotent: boolean;
                                          open_world: boolean;
                                          read_only: boolean;
                                      };
                                      name: | "open_binary"
                                      | "list_browser_targets"
                                      | "inspect_web_page"
                                      | "analyze_web_bundle"
                                      | "observe_web_session"
                                      | "discover_webmcp_tools"
                                      | "compare_web_captures"
                                      | "capture_web_screenshot"
                                      | "compare_web_screenshots"
                                      | "list_electron_targets"
                                      | "inspect_electron_page"
                                      | "inventory_artifact"
                                      | "extract_artifact"
                                      | "analyze_javascript_application"
                                      | "swift_classes"
                                      | "get_objc_classes"
                                      | "get_objc_protocols"
                                      | "batch_decompile"
                                      | "get_call_graph"
                                      | "analyze_swift_types"
                                      | "find_xrefs_to_name"
                                      | "binary_overview"
                                      | "analyze_function"
                                      | "trace_feature"
                                      | "comment"
                                      | "compare_artifacts"
                                      | "find_changed_behavior"
                                      | "compare_process_captures"
                                      | "compare_functions"
                                      | "capture_process_scenario"
                                      | "address_name"
                                      | "current_address"
                                      | "current_procedure"
                                      | "current_document"
                                      | "goto_address"
                                      | "inline_comment"
                                      | "list_bookmarks"
                                      | "list_documents"
                                      | "list_names"
                                      | "list_procedures"
                                      | "list_segments"
                                      | "list_strings"
                                      | "next_address"
                                      | "prev_address"
                                      | "procedure_address"
                                      | "procedure_assembly"
                                      | "procedure_callees"
                                      | "procedure_callers"
                                      | "procedure_info"
                                      | "procedure_references"
                                      | "procedure_pseudo_code"
                                      | "resolve_containing_procedure"
                                      | "search_procedures"
                                      | "search_strings"
                                      | "set_address_name"
                                      | "set_addresses_names"
                                      | "set_bookmark"
                                      | "set_comment"
                                      | "set_current_document"
                                      | "set_inline_comment"
                                      | "unset_bookmark"
                                      | "xrefs"
                                      | "inspect_macho"
                                      | "inspect_signature"
                                      | "inspect_plist"
                                      | "list_architectures"
                                      | "demangle_swift"
                                      | "close_binary"
                                      | "binary_session"
                                      | "export_evidence_bundle"
                                      | "import_evidence_bundle"
                                      | "compare_bundles"
                                      | "build_call_path"
                                      | "correlate_static_and_runtime"
                                      | "verify_reconstruction"
                                      | "list_unknowns"
                                      | "record_unknown"
                                      | "update_unknown"
                                      | "verify_unknown_resolution"
                                      | "reconcile_javascript_runtime";
                                      surface: ToolKind;
                                  }[];
                              };
                              cli_package_version: string;
                              expected_skill_version: string;
                              installations: {
                                  paths: readonly string[];
                                  state: "unknown"
                                  | "single"
                                  | "multiple";
                              };
                              live_server: { remediation: string; state: "unknown" };
                              registrations: readonly ClientRegistrationStatus[];
                              sdk: {
                                  client_test: "2.0.0-beta.4";
                                  core: "2.0.0-beta.4";
                                  server: "2.0.0-beta.4";
                              };
                              skill: {
                                  installed_version: string
                                  | null;
                                  remediation: string | null;
                                  state: "unknown" | "aligned" | "stale";
                              };
                          };
                          providerInspections?: readonly DoctorProviderInspection[];
                      },
                  >

                diff --git a/docs/api/functions/application_ElectronBoundaryGraphContext.electronFindingSourceNode.html b/docs/api/functions/application_ElectronBoundaryGraphContext.electronFindingSourceNode.html index 9dc9747e5..ce65ae4e2 100644 --- a/docs/api/functions/application_ElectronBoundaryGraphContext.electronFindingSourceNode.html +++ b/docs/api/functions/application_ElectronBoundaryGraphContext.electronFindingSourceNode.html @@ -14,7 +14,7 @@
                • - +

                  Resolve the file or recovered bundle module that owns one finding.

                  @@ -24,7 +24,7 @@
                • context: JavaScriptArtifactGraphContext
                • file: JavaScriptArtifactFile
                • moduleKey: string | null
                -

                Returns
                    | {
                        identity: | {
                            sha256: string;
                            stability: "global-exact";
                            strategy: "content-digest";
                        }
                        | {
                            original_source: string;
                            source_map_sha256: string;
                            source_sha256: string
                            | null;
                            stability: "source-map-exact";
                            strategy: "source-map-original";
                        }
                        | {
                            artifact_sha256: string;
                            path: string;
                            stability: "artifact-version";
                            strategy: "canonical-path";
                        }
                        | {
                            algorithm: string;
                            basis: (
                                | "imports"
                                | "exports"
                                | "syntax-tree"
                                | "control-flow"
                                | "literals"
                                | "api-usage"
                            )[];
                            fingerprint_sha256: string;
                            stability: "cross-version-inference";
                            strategy: "structural-fingerprint";
                        }
                        | {
                            artifact_sha256: string;
                            key: string;
                            namespace: string;
                            stability: "artifact-version";
                            strategy: "artifact-local-key";
                        }
                        | {
                            capture_sha256: string;
                            runtime_key: string;
                            stability: "capture-only";
                            strategy: "runtime-instance";
                        }
                        | {
                            observation_sha256: string;
                            scope: string;
                            stability: "observation-only";
                            strategy: "observation-fingerprint";
                        };
                        kind: | "unknown"
                        | "target"
                        | "native-addon"
                        | "source-map"
                        | "artifact"
                        | "package"
                        | "storage"
                        | "installer"
                        | "asar-entry"
                        | "electron-main"
                        | "electron-preload"
                        | "electron-renderer"
                        | "electron-utility"
                        | "javascript-asset"
                        | "javascript-chunk"
                        | "javascript-module"
                        | "source-module"
                        | "browser-window"
                        | "frame"
                        | "context-bridge-api"
                        | "ipc-channel"
                        | "ipc-handler"
                        | "worker"
                        | "service-worker"
                        | "endpoint"
                        | "native-export"
                        | "runtime-script-instance";
                        node_id: string;
                        observations: {
                            evidence: {
                                artifact: | { artifact_id: string; available: true; sha256: string }
                                | {
                                    available: false;
                                    detail: string;
                                    reason:
                                        | "unknown"
                                        | "truncated"
                                        | "unresolved"
                                        | "not-applicable"
                                        | "not-observed"
                                        | "not-approved"
                                        | "provider-unavailable";
                                };
                                authority: | "unknown"
                                | "controlled-replay"
                                | "historical-reference"
                                | "artifact-bytes"
                                | "ast-static-analysis"
                                | "static-relationship-inference"
                                | "passive-cdp-runtime"
                                | "cross-layer-reconciliation"
                                | "native-analysis-provider"
                                | "user-assertion";
                                confidence: "unknown"
                                | "exact"
                                | "low"
                                | "medium"
                                | "high";
                                coverage: {
                                    limits: {
                                        name: string;
                                        unit:
                                            | "other"
                                            | "items"
                                            | "bytes"
                                            | "depth"
                                            | "milliseconds"
                                            | "characters"
                                            | "instructions";
                                        value: number;
                                    }[];
                                    omitted_count: number
                                    | null;
                                    status: "unknown" | "unavailable" | "complete" | "partial";
                                    truncated: boolean;
                                };
                                evidence_ids: string[];
                                extractor: {
                                    executable_sha256: string
                                    | null;
                                    name: string;
                                    operation: string;
                                    version: string;
                                };
                                limitations: string[];
                                location: | {
                                    available: false;
                                    detail: string;
                                    reason: | "unknown"
                                    | "truncated"
                                    | "unresolved"
                                    | "not-applicable"
                                    | "not-observed"
                                    | "not-approved"
                                    | "provider-unavailable";
                                }
                                | {
                                    available: true;
                                    value: | {
                                        end: { column: number; line: number };
                                        kind: "source-range";
                                        source: string;
                                        start: { column: number; line: number };
                                    }
                                    | { end: number; kind: "file-offset-range"; start: number }
                                    | { kind: "artifact-path"; path: string }
                                    | { kind: "url"; url: string }
                                    | {
                                        capture_sha256: string;
                                        frame_key: string | null;
                                        kind: "runtime";
                                        script_key: string | null;
                                        target_key: string;
                                    }
                                    | { address: string; kind: "native-address"; symbol: string
                                    | null }
                                    | { export_path: string; kind: "package-export"; package_name: string };
                                };
                                state: "unknown"
                                | "observed"
                                | "inferred"
                                | "unavailable";
                            };
                            identifier_strategy: {
                                stability: "observation-exact";
                                strategy: "semantic-content-sha256";
                            };
                            label: string
                            | null;
                            observation_id: string;
                            properties: Record<string, JSONType>;
                        }[];
                    }
                    | undefined

              diff --git a/docs/api/functions/application_JavaScriptApplicationEvidence.createJavaScriptApplicationEvidence.html b/docs/api/functions/application_JavaScriptApplicationEvidence.createJavaScriptApplicationEvidence.html index 7f7f2ff96..128f4b44a 100644 --- a/docs/api/functions/application_JavaScriptApplicationEvidence.createJavaScriptApplicationEvidence.html +++ b/docs/api/functions/application_JavaScriptApplicationEvidence.createJavaScriptApplicationEvidence.html @@ -14,7 +14,7 @@
              • - +

                Create Evidence v2 for one deterministic local JavaScript application graph.

                @@ -22,7 +22,7 @@

                Parameters

                • input: {
                      approved: true;
                      format: "directory" | "asar" | "auto";
                      input_path: string;
                      limits: {
                          max_artifact_entry_bytes: number;
                          max_ast_nodes: number;
                          max_compression_ratio: number;
                          max_depth: number;
                          max_entries: number;
                          max_findings: number;
                          max_modules: number;
                          max_parse_milliseconds: number;
                          max_path_bytes: number;
                          max_source_map_sources: number;
                          max_text_file_bytes: number;
                          max_text_files: number;
                          max_total_artifact_bytes: number;
                          max_total_text_bytes: number;
                      };
                      source_map_read_approved: boolean;
                  }
                • -
                • result: {
                      format: "directory" | "asar";
                      graph: {
                          coverage: {
                              limits: {
                                  name: string;
                                  unit:
                                      | "other"
                                      | "items"
                                      | "bytes"
                                      | "depth"
                                      | "milliseconds"
                                      | "characters"
                                      | "instructions";
                                  value: number;
                              }[];
                              omitted_count: number
                              | null;
                              status: "unknown" | "unavailable" | "complete" | "partial";
                              truncated: boolean;
                          };
                          edges: {
                              edge_id: string;
                              evidence: {
                                  artifact: | { artifact_id: string; available: true; sha256: string }
                                  | {
                                      available: false;
                                      detail: string;
                                      reason:
                                          | "unknown"
                                          | "truncated"
                                          | "unresolved"
                                          | "not-applicable"
                                          | "not-observed"
                                          | "not-approved"
                                          | "provider-unavailable";
                                  };
                                  authority: | "unknown"
                                  | "controlled-replay"
                                  | "historical-reference"
                                  | "artifact-bytes"
                                  | "ast-static-analysis"
                                  | "static-relationship-inference"
                                  | "passive-cdp-runtime"
                                  | "cross-layer-reconciliation"
                                  | "native-analysis-provider"
                                  | "user-assertion";
                                  confidence: "unknown"
                                  | "exact"
                                  | "low"
                                  | "medium"
                                  | "high";
                                  coverage: {
                                      limits: {
                                          name: string;
                                          unit:
                                              | "other"
                                              | "items"
                                              | "bytes"
                                              | "depth"
                                              | "milliseconds"
                                              | "characters"
                                              | "instructions";
                                          value: number;
                                      }[];
                                      omitted_count: number
                                      | null;
                                      status: "unknown" | "unavailable" | "complete" | "partial";
                                      truncated: boolean;
                                  };
                                  evidence_ids: string[];
                                  extractor: {
                                      executable_sha256: string
                                      | null;
                                      name: string;
                                      operation: string;
                                      version: string;
                                  };
                                  limitations: string[];
                                  location: | {
                                      available: false;
                                      detail: string;
                                      reason: | "unknown"
                                      | "truncated"
                                      | "unresolved"
                                      | "not-applicable"
                                      | "not-observed"
                                      | "not-approved"
                                      | "provider-unavailable";
                                  }
                                  | {
                                      available: true;
                                      value: | {
                                          end: { column: number; line: number };
                                          kind: "source-range";
                                          source: string;
                                          start: { column: number; line: number };
                                      }
                                      | { end: number; kind: "file-offset-range"; start: number }
                                      | { kind: "artifact-path"; path: string }
                                      | { kind: "url"; url: string }
                                      | {
                                          capture_sha256: string;
                                          frame_key: string | null;
                                          kind: "runtime";
                                          script_key: string | null;
                                          target_key: string;
                                      }
                                      | { address: string; kind: "native-address"; symbol: string
                                      | null }
                                      | { export_path: string; kind: "package-export"; package_name: string };
                                  };
                                  state: "unknown"
                                  | "observed"
                                  | "inferred"
                                  | "unavailable";
                              };
                              identifier_strategy: {
                                  stability: "relationship-exact";
                                  strategy: "semantic-content-sha256";
                              };
                              properties: Record<string, JSONType>;
                              relation:
                                  | "contains"
                                  | "loads"
                                  | "calls"
                                  | "imports"
                                  | "maps_to"
                                  | "exposes"
                                  | "sends"
                                  | "invokes"
                                  | "handles"
                                  | "persists_to"
                                  | "observed_as"
                                  | "changed_from";
                              source_node_id: string;
                              target_node_id: string;
                          }[];
                          graph_id: string;
                          limitations: string[];
                          nodes: {
                              identity: | {
                                  sha256: string;
                                  stability: "global-exact";
                                  strategy: "content-digest";
                              }
                              | {
                                  original_source: string;
                                  source_map_sha256: string;
                                  source_sha256: string
                                  | null;
                                  stability: "source-map-exact";
                                  strategy: "source-map-original";
                              }
                              | {
                                  artifact_sha256: string;
                                  path: string;
                                  stability: "artifact-version";
                                  strategy: "canonical-path";
                              }
                              | {
                                  algorithm: string;
                                  basis: (
                                      | "imports"
                                      | "exports"
                                      | "syntax-tree"
                                      | "control-flow"
                                      | "literals"
                                      | "api-usage"
                                  )[];
                                  fingerprint_sha256: string;
                                  stability: "cross-version-inference";
                                  strategy: "structural-fingerprint";
                              }
                              | {
                                  artifact_sha256: string;
                                  key: string;
                                  namespace: string;
                                  stability: "artifact-version";
                                  strategy: "artifact-local-key";
                              }
                              | {
                                  capture_sha256: string;
                                  runtime_key: string;
                                  stability: "capture-only";
                                  strategy: "runtime-instance";
                              }
                              | {
                                  observation_sha256: string;
                                  scope: string;
                                  stability: "observation-only";
                                  strategy: "observation-fingerprint";
                              };
                              kind: | "unknown"
                              | "target"
                              | "native-addon"
                              | "source-map"
                              | "artifact"
                              | "package"
                              | "storage"
                              | "installer"
                              | "asar-entry"
                              | "electron-main"
                              | "electron-preload"
                              | "electron-renderer"
                              | "electron-utility"
                              | "javascript-asset"
                              | "javascript-chunk"
                              | "javascript-module"
                              | "source-module"
                              | "browser-window"
                              | "frame"
                              | "context-bridge-api"
                              | "ipc-channel"
                              | "ipc-handler"
                              | "worker"
                              | "service-worker"
                              | "endpoint"
                              | "native-export"
                              | "runtime-script-instance";
                              node_id: string;
                              observations: {
                                  evidence: {
                                      artifact: | { artifact_id: string; available: true; sha256: string }
                                      | {
                                          available: false;
                                          detail: string;
                                          reason:
                                              | "unknown"
                                              | "truncated"
                                              | "unresolved"
                                              | "not-applicable"
                                              | "not-observed"
                                              | "not-approved"
                                              | "provider-unavailable";
                                      };
                                      authority: | "unknown"
                                      | "controlled-replay"
                                      | "historical-reference"
                                      | "artifact-bytes"
                                      | "ast-static-analysis"
                                      | "static-relationship-inference"
                                      | "passive-cdp-runtime"
                                      | "cross-layer-reconciliation"
                                      | "native-analysis-provider"
                                      | "user-assertion";
                                      confidence: "unknown"
                                      | "exact"
                                      | "low"
                                      | "medium"
                                      | "high";
                                      coverage: {
                                          limits: {
                                              name: string;
                                              unit: (...) | (...) | (...) | (...) | (...) | (...) | (...);
                                              value: number;
                                          }[];
                                          omitted_count: number
                                          | null;
                                          status: "unknown" | "unavailable" | "complete" | "partial";
                                          truncated: boolean;
                                      };
                                      evidence_ids: string[];
                                      extractor: {
                                          executable_sha256: string
                                          | null;
                                          name: string;
                                          operation: string;
                                          version: string;
                                      };
                                      limitations: string[];
                                      location: | {
                                          available: false;
                                          detail: string;
                                          reason: | "unknown"
                                          | "truncated"
                                          | "unresolved"
                                          | "not-applicable"
                                          | "not-observed"
                                          | "not-approved"
                                          | "provider-unavailable";
                                      }
                                      | {
                                          available: true;
                                          value: | { end: ...; kind: ...; source: ...; start: ... }
                                          | { end: ...; kind: ...; start: ... }
                                          | { kind: ...; path: ... }
                                          | { kind: ...; url: ... }
                                          | {
                                              capture_sha256: ...;
                                              frame_key: ...;
                                              kind: ...;
                                              script_key: ...;
                                              target_key: ...;
                                          }
                                          | { address: ...; kind: ...; symbol: ... }
                                          | { export_path: ...; kind: ...; package_name: ... };
                                      };
                                      state: "unknown"
                                      | "observed"
                                      | "inferred"
                                      | "unavailable";
                                  };
                                  identifier_strategy: {
                                      stability: "observation-exact";
                                      strategy: "semantic-content-sha256";
                                  };
                                  label: string
                                  | null;
                                  observation_id: string;
                                  properties: Record<string, JSONType>;
                              }[];
                          }[];
                          root_node_ids: string[];
                          schema: "JavaScriptApplicationGraph";
                          schema_version: 1;
                      };
                      input_path: string;
                      inventory_graph_sha256: string;
                      inventory_manifest_id: string;
                      limitations: string[];
                      root_artifact_sha256: string;
                      schema_version: 1;
                      statistics: {
                          findings: number;
                          invalid_utf8_files: number;
                          limit_omitted_text_files: number;
                          modules: number;
                          nested_asar_containers: number;
                          omitted_text_files: number;
                          parse_failures: number;
                          parsed_javascript_files: number;
                          policy_filtered_text_files: number;
                          relevant_files: number;
                          text_bytes_read: number;
                          text_files_selected: number;
                          truncated_scopes: number;
                          visited_ast_nodes: number;
                      };
                      summary: {
                          browser_windows: number;
                          context_bridge_apis: number;
                          explicit_web_preferences: number;
                          exposed_api_members: number;
                          ipc: {
                              ambiguous_renderer_transmissions: number;
                              dynamic_channel_operations: number;
                              literal_channels: number;
                              main_handlers: number;
                              operations: number;
                              paired_renderer_transmissions: number;
                              renderer_listeners: number;
                              renderer_transmissions: number;
                              unpaired_literal_renderer_transmissions: number;
                          };
                          native_addon_bindings: number;
                          preload_entrypoints: number;
                          resolved_native_addon_bindings: number;
                          resolved_utility_entrypoints: number;
                          sender_validation_observations: number;
                          utility_processes: number;
                      };
                  }
                +
              • result: {
                    format: "directory" | "asar";
                    graph: {
                        coverage: {
                            limits: {
                                name: string;
                                unit:
                                    | "other"
                                    | "items"
                                    | "bytes"
                                    | "depth"
                                    | "milliseconds"
                                    | "characters"
                                    | "instructions";
                                value: number;
                            }[];
                            omitted_count: number
                            | null;
                            status: "unknown" | "unavailable" | "complete" | "partial";
                            truncated: boolean;
                        };
                        edges: {
                            edge_id: string;
                            evidence: {
                                artifact: | { artifact_id: string; available: true; sha256: string }
                                | {
                                    available: false;
                                    detail: string;
                                    reason:
                                        | "unknown"
                                        | "truncated"
                                        | "unresolved"
                                        | "not-applicable"
                                        | "not-observed"
                                        | "not-approved"
                                        | "provider-unavailable";
                                };
                                authority: | "unknown"
                                | "controlled-replay"
                                | "historical-reference"
                                | "artifact-bytes"
                                | "ast-static-analysis"
                                | "static-relationship-inference"
                                | "passive-cdp-runtime"
                                | "cross-layer-reconciliation"
                                | "cross-version-comparison"
                                | "native-analysis-provider"
                                | "user-assertion";
                                confidence: "unknown"
                                | "exact"
                                | "low"
                                | "medium"
                                | "high";
                                coverage: {
                                    limits: {
                                        name: string;
                                        unit:
                                            | "other"
                                            | "items"
                                            | "bytes"
                                            | "depth"
                                            | "milliseconds"
                                            | "characters"
                                            | "instructions";
                                        value: number;
                                    }[];
                                    omitted_count: number
                                    | null;
                                    status: "unknown" | "unavailable" | "complete" | "partial";
                                    truncated: boolean;
                                };
                                evidence_ids: string[];
                                extractor: {
                                    executable_sha256: string
                                    | null;
                                    name: string;
                                    operation: string;
                                    version: string;
                                };
                                limitations: string[];
                                location: | {
                                    available: false;
                                    detail: string;
                                    reason: | "unknown"
                                    | "truncated"
                                    | "unresolved"
                                    | "not-applicable"
                                    | "not-observed"
                                    | "not-approved"
                                    | "provider-unavailable";
                                }
                                | {
                                    available: true;
                                    value: | {
                                        end: { column: number; line: number };
                                        kind: "source-range";
                                        source: string;
                                        start: { column: number; line: number };
                                    }
                                    | { end: number; kind: "file-offset-range"; start: number }
                                    | { kind: "artifact-path"; path: string }
                                    | { kind: "url"; url: string }
                                    | {
                                        capture_sha256: string;
                                        frame_key: string | null;
                                        kind: "runtime";
                                        script_key: string | null;
                                        target_key: string;
                                    }
                                    | { address: string; kind: "native-address"; symbol: string
                                    | null }
                                    | { export_path: string; kind: "package-export"; package_name: string };
                                };
                                state: "unknown"
                                | "observed"
                                | "inferred"
                                | "unavailable";
                            };
                            identifier_strategy: {
                                stability: "relationship-exact";
                                strategy: "semantic-content-sha256";
                            };
                            properties: Record<string, JSONType>;
                            relation:
                                | "contains"
                                | "loads"
                                | "calls"
                                | "imports"
                                | "maps_to"
                                | "exposes"
                                | "sends"
                                | "invokes"
                                | "handles"
                                | "persists_to"
                                | "observed_as"
                                | "changed_from";
                            source_node_id: string;
                            target_node_id: string;
                        }[];
                        graph_id: string;
                        limitations: string[];
                        nodes: {
                            identity: | {
                                sha256: string;
                                stability: "global-exact";
                                strategy: "content-digest";
                            }
                            | {
                                original_source: string;
                                source_map_sha256: string;
                                source_sha256: string
                                | null;
                                stability: "source-map-exact";
                                strategy: "source-map-original";
                            }
                            | {
                                artifact_sha256: string;
                                path: string;
                                stability: "artifact-version";
                                strategy: "canonical-path";
                            }
                            | {
                                algorithm: string;
                                basis: (
                                    | "imports"
                                    | "exports"
                                    | "syntax-tree"
                                    | "control-flow"
                                    | "literals"
                                    | "api-usage"
                                )[];
                                fingerprint_sha256: string;
                                stability: "cross-version-inference";
                                strategy: "structural-fingerprint";
                            }
                            | {
                                artifact_sha256: string;
                                key: string;
                                namespace: string;
                                stability: "artifact-version";
                                strategy: "artifact-local-key";
                            }
                            | {
                                capture_sha256: string;
                                runtime_key: string;
                                stability: "capture-only";
                                strategy: "runtime-instance";
                            }
                            | {
                                observation_sha256: string;
                                scope: string;
                                stability: "observation-only";
                                strategy: "observation-fingerprint";
                            };
                            kind: | "unknown"
                            | "target"
                            | "native-addon"
                            | "source-map"
                            | "artifact"
                            | "package"
                            | "storage"
                            | "installer"
                            | "asar-entry"
                            | "electron-main"
                            | "electron-preload"
                            | "electron-renderer"
                            | "electron-utility"
                            | "javascript-asset"
                            | "javascript-chunk"
                            | "javascript-module"
                            | "source-module"
                            | "browser-window"
                            | "frame"
                            | "context-bridge-api"
                            | "ipc-channel"
                            | "ipc-handler"
                            | "worker"
                            | "service-worker"
                            | "endpoint"
                            | "native-export"
                            | "runtime-script-instance";
                            node_id: string;
                            observations: {
                                evidence: {
                                    artifact: | { artifact_id: string; available: true; sha256: string }
                                    | {
                                        available: false;
                                        detail: string;
                                        reason:
                                            | "unknown"
                                            | "truncated"
                                            | "unresolved"
                                            | "not-applicable"
                                            | "not-observed"
                                            | "not-approved"
                                            | "provider-unavailable";
                                    };
                                    authority: | "unknown"
                                    | "controlled-replay"
                                    | "historical-reference"
                                    | "artifact-bytes"
                                    | "ast-static-analysis"
                                    | "static-relationship-inference"
                                    | "passive-cdp-runtime"
                                    | "cross-layer-reconciliation"
                                    | "cross-version-comparison"
                                    | "native-analysis-provider"
                                    | "user-assertion";
                                    confidence: "unknown"
                                    | "exact"
                                    | "low"
                                    | "medium"
                                    | "high";
                                    coverage: {
                                        limits: {
                                            name: string;
                                            unit: (...) | (...) | (...) | (...) | (...) | (...) | (...);
                                            value: number;
                                        }[];
                                        omitted_count: number
                                        | null;
                                        status: "unknown" | "unavailable" | "complete" | "partial";
                                        truncated: boolean;
                                    };
                                    evidence_ids: string[];
                                    extractor: {
                                        executable_sha256: string
                                        | null;
                                        name: string;
                                        operation: string;
                                        version: string;
                                    };
                                    limitations: string[];
                                    location: | {
                                        available: false;
                                        detail: string;
                                        reason: | "unknown"
                                        | "truncated"
                                        | "unresolved"
                                        | "not-applicable"
                                        | "not-observed"
                                        | "not-approved"
                                        | "provider-unavailable";
                                    }
                                    | {
                                        available: true;
                                        value: | { end: ...; kind: ...; source: ...; start: ... }
                                        | { end: ...; kind: ...; start: ... }
                                        | { kind: ...; path: ... }
                                        | { kind: ...; url: ... }
                                        | {
                                            capture_sha256: ...;
                                            frame_key: ...;
                                            kind: ...;
                                            script_key: ...;
                                            target_key: ...;
                                        }
                                        | { address: ...; kind: ...; symbol: ... }
                                        | { export_path: ...; kind: ...; package_name: ... };
                                    };
                                    state: "unknown"
                                    | "observed"
                                    | "inferred"
                                    | "unavailable";
                                };
                                identifier_strategy: {
                                    stability: "observation-exact";
                                    strategy: "semantic-content-sha256";
                                };
                                label: string
                                | null;
                                observation_id: string;
                                properties: Record<string, JSONType>;
                            }[];
                        }[];
                        root_node_ids: string[];
                        schema: "JavaScriptApplicationGraph";
                        schema_version: 1;
                    };
                    input_path: string;
                    inventory_graph_sha256: string;
                    inventory_manifest_id: string;
                    limitations: string[];
                    root_artifact_sha256: string;
                    schema_version: 1;
                    statistics: {
                        findings: number;
                        invalid_utf8_files: number;
                        limit_omitted_text_files: number;
                        modules: number;
                        nested_asar_containers: number;
                        omitted_text_files: number;
                        parse_failures: number;
                        parsed_javascript_files: number;
                        policy_filtered_text_files: number;
                        relevant_files: number;
                        text_bytes_read: number;
                        text_files_selected: number;
                        truncated_scopes: number;
                        visited_ast_nodes: number;
                    };
                    summary: {
                        browser_windows: number;
                        context_bridge_apis: number;
                        explicit_web_preferences: number;
                        exposed_api_members: number;
                        ipc: {
                            ambiguous_renderer_transmissions: number;
                            dynamic_channel_operations: number;
                            literal_channels: number;
                            main_handlers: number;
                            operations: number;
                            paired_renderer_transmissions: number;
                            renderer_listeners: number;
                            renderer_transmissions: number;
                            unpaired_literal_renderer_transmissions: number;
                        };
                        native_addon_bindings: number;
                        preload_entrypoints: number;
                        resolved_native_addon_bindings: number;
                        resolved_utility_entrypoints: number;
                        sender_validation_observations: number;
                        utility_processes: number;
                    };
                }

              Returns
                  | {
                      analysis_profile: {
                          digest: string;
                          parameters: Record<string, JSONType>;
                          provider: { id: string; name: string; version: string };
                          provider_profile_schema_version: number;
                          schema_version: 1;
                      };
                      authority: | "shipped-artifact"
                      | "controlled-replay"
                      | "historical-reference"
                      | "external-service"
                      | "analyst-inference";
                      confidence: "observed"
                      | "derived"
                      | "inferred";
                      environment:
                          | {
                              architecture: string;
                              id: string;
                              isolation: "process"
                              | "none"
                              | "container"
                              | "virtual-machine";
                              platform: string;
                          }
                          | null;
                      evidence_id: string;
                      evidence_links: string[];
                      limitations: string[];
                      locations: (
                          | { address: string; kind: "address" }
                          | { end: string; kind: "address-range"; start: string }
                          | { kind: "artifact-path"; path: string }
                          | { kind: "file-offset"; offset: number }
                          | { end: number; kind: "file-offset-range"; start: number }
                      )[];
                      normalized_result: JSONType;
                      operation: string;
                      parameters: Record<string, JSONType>;
                      predicate_type: string;
                      provider: { id: string; name: string; version: string | null };
                      raw_result: JSONType;
                      schema_version: 2;
                      subject:
                          | {
                              architecture: "x86"
                              | "x86_64"
                              | "arm"
                              | "arm64"
                              | null;
                              digest: { sha256: string };
                              format:
                                  | "unknown"
                                  | "file"
                                  | "directory"
                                  | "javascript"
                                  | "source-map"
                                  | "plist"
                                  | "entitlements"
                                  | "dmg"
                                  | "zip"
                                  | "pkg"
                                  | "asar"
                                  | "javascript-bundle"
                                  | "mach-o-universal"
                                  | "mach-o"
                                  | "elf"
                                  | "pe"
                                  | "hopper"
                                  | "analysis-database"
                                  | "ipa"
                                  | "apk";
                              local_path: string;
                              name: string;
                          }
                          | null;
                  }
                  | {
                      authority: | "shipped-artifact"
                      | "controlled-replay"
                      | "historical-reference"
                      | "external-service"
                      | "analyst-inference";
                      confidence: "observed"
                      | "derived"
                      | "inferred";
                      environment:
                          | {
                              architecture: string;
                              id: string;
                              isolation: "process"
                              | "none"
                              | "container"
                              | "virtual-machine";
                              platform: string;
                          }
                          | null;
                      evidence_id: string;
                      evidence_links: string[];
                      limitations: string[];
                      locations: (
                          | { address: string; kind: "address" }
                          | { end: string; kind: "address-range"; start: string }
                          | { kind: "artifact-path"; path: string }
                          | { kind: "file-offset"; offset: number }
                          | { end: number; kind: "file-offset-range"; start: number }
                      )[];
                      normalized_result: JSONType;
                      operation: string;
                      parameters: Record<string, JSONType>;
                      predicate_type: string;
                      provider: { id: string; name: string; version: string | null };
                      raw_result: JSONType;
                      schema_version: 2;
                      subject:
                          | {
                              architecture: "x86"
                              | "x86_64"
                              | "arm"
                              | "arm64"
                              | null;
                              digest: { sha256: string };
                              format:
                                  | "unknown"
                                  | "file"
                                  | "directory"
                                  | "javascript"
                                  | "source-map"
                                  | "plist"
                                  | "entitlements"
                                  | "dmg"
                                  | "zip"
                                  | "pkg"
                                  | "asar"
                                  | "javascript-bundle"
                                  | "mach-o-universal"
                                  | "mach-o"
                                  | "elf"
                                  | "pe"
                                  | "hopper"
                                  | "analysis-database"
                                  | "ipa"
                                  | "apk";
                              local_path: string;
                              name: string;
                          }
                          | null;
                  }

            diff --git a/docs/api/functions/application_JavaScriptApplicationEvidenceGraph.parseApplicationGraphEvidence.html b/docs/api/functions/application_JavaScriptApplicationEvidenceGraph.parseApplicationGraphEvidence.html new file mode 100644 index 000000000..0d9a6a9e9 --- /dev/null +++ b/docs/api/functions/application_JavaScriptApplicationEvidenceGraph.parseApplicationGraphEvidence.html @@ -0,0 +1,44 @@ +parseApplicationGraphEvidence | rea-agents - v1.7.0
            +
            rea-agents - v1.7.0 + +
              +
              +
              Preparing search index...
              +
              +
              + +
              +
                +
              • + +
                +

                Parse and authenticate one REA-produced JavaScript Application Graph Evidence.

                +
                +
                +

                Parameters

                +
                  +
                • input: unknown
                +

                Returns ApplicationGraphEvidenceSource

              +
              + +
              +
              diff --git a/docs/api/functions/application_JavaScriptApplicationEvidenceGraph.parseNativeApplicationEvidence.html b/docs/api/functions/application_JavaScriptApplicationEvidenceGraph.parseNativeApplicationEvidence.html new file mode 100644 index 000000000..6698156c5 --- /dev/null +++ b/docs/api/functions/application_JavaScriptApplicationEvidenceGraph.parseNativeApplicationEvidence.html @@ -0,0 +1,44 @@ +parseNativeApplicationEvidence | rea-agents - v1.7.0
              +
              rea-agents - v1.7.0 + +
                +
                +
                Preparing search index...
                +
                +
                + +
                +
                  +
                • + +
                  +

                  Parse unique, artifact-bound Evidence that may extend a native handoff.

                  +
                  +
                  +

                  Parameters

                  +
                    +
                  • inputs: readonly unknown[]
                  +

                  Returns (
                      | {
                          analysis_profile: {
                              digest: string;
                              parameters: Record<string, JSONType>;
                              provider: { id: string; name: string; version: string };
                              provider_profile_schema_version: number;
                              schema_version: 1;
                          };
                          authority: | "shipped-artifact"
                          | "controlled-replay"
                          | "historical-reference"
                          | "external-service"
                          | "analyst-inference";
                          confidence: "observed"
                          | "derived"
                          | "inferred";
                          environment:
                              | {
                                  architecture: string;
                                  id: string;
                                  isolation: "process"
                                  | "none"
                                  | "container"
                                  | "virtual-machine";
                                  platform: string;
                              }
                              | null;
                          evidence_id: string;
                          evidence_links: string[];
                          limitations: string[];
                          locations: (
                              | { address: string; kind: "address" }
                              | { end: string; kind: "address-range"; start: string }
                              | { kind: "artifact-path"; path: string }
                              | { kind: "file-offset"; offset: number }
                              | { end: number; kind: "file-offset-range"; start: number }
                          )[];
                          normalized_result: JSONType;
                          operation: string;
                          parameters: Record<string, JSONType>;
                          predicate_type: string;
                          provider: { id: string; name: string; version: string | null };
                          raw_result: JSONType;
                          schema_version: 2;
                          subject:
                              | {
                                  architecture: "x86"
                                  | "x86_64"
                                  | "arm"
                                  | "arm64"
                                  | null;
                                  digest: { sha256: string };
                                  format:
                                      | "unknown"
                                      | "file"
                                      | "directory"
                                      | "javascript"
                                      | "source-map"
                                      | "plist"
                                      | "entitlements"
                                      | "dmg"
                                      | "zip"
                                      | "pkg"
                                      | "asar"
                                      | "javascript-bundle"
                                      | "mach-o-universal"
                                      | "mach-o"
                                      | "elf"
                                      | "pe"
                                      | "hopper"
                                      | "analysis-database"
                                      | "ipa"
                                      | "apk";
                                  local_path: string;
                                  name: string;
                              }
                              | null;
                      }
                      | {
                          authority: | "shipped-artifact"
                          | "controlled-replay"
                          | "historical-reference"
                          | "external-service"
                          | "analyst-inference";
                          confidence: "observed"
                          | "derived"
                          | "inferred";
                          environment:
                              | {
                                  architecture: string;
                                  id: string;
                                  isolation: "process"
                                  | "none"
                                  | "container"
                                  | "virtual-machine";
                                  platform: string;
                              }
                              | null;
                          evidence_id: string;
                          evidence_links: string[];
                          limitations: string[];
                          locations: (
                              | { address: string; kind: "address" }
                              | { end: string; kind: "address-range"; start: string }
                              | { kind: "artifact-path"; path: string }
                              | { kind: "file-offset"; offset: number }
                              | { end: number; kind: "file-offset-range"; start: number }
                          )[];
                          normalized_result: JSONType;
                          operation: string;
                          parameters: Record<string, JSONType>;
                          predicate_type: string;
                          provider: { id: string; name: string; version: string | null };
                          raw_result: JSONType;
                          schema_version: 2;
                          subject:
                              | {
                                  architecture: "x86"
                                  | "x86_64"
                                  | "arm"
                                  | "arm64"
                                  | null;
                                  digest: { sha256: string };
                                  format:
                                      | "unknown"
                                      | "file"
                                      | "directory"
                                      | "javascript"
                                      | "source-map"
                                      | "plist"
                                      | "entitlements"
                                      | "dmg"
                                      | "zip"
                                      | "pkg"
                                      | "asar"
                                      | "javascript-bundle"
                                      | "mach-o-universal"
                                      | "mach-o"
                                      | "elf"
                                      | "pe"
                                      | "hopper"
                                      | "analysis-database"
                                      | "ipa"
                                      | "apk";
                                  local_path: string;
                                  name: string;
                              }
                              | null;
                      }
                  )[]

                +
                + +
                +
                diff --git a/docs/api/functions/application_JavaScriptApplicationWorkflowEvidence.createApplicationFeatureTraceEvidence.html b/docs/api/functions/application_JavaScriptApplicationWorkflowEvidence.createApplicationFeatureTraceEvidence.html new file mode 100644 index 000000000..a671b8051 --- /dev/null +++ b/docs/api/functions/application_JavaScriptApplicationWorkflowEvidence.createApplicationFeatureTraceEvidence.html @@ -0,0 +1,45 @@ +createApplicationFeatureTraceEvidence | rea-agents - v1.7.0
                +
                rea-agents - v1.7.0 + +
                  +
                  +
                  Preparing search index...
                  +
                  +
                  + +
                  +
                    +
                  • + +
                    +

                    Create derived Evidence for one bounded application-graph feature trace.

                    +
                    +
                    +

                    Parameters

                    +
                      +
                    • parameters: Readonly<Record<string, JSONType>>
                    • +
                    • result: {
                          coverage: {
                              frontier_node_ids: string[];
                              omitted_edges: number;
                              omitted_nodes: number;
                              omitted_paths: number;
                              omitted_seed_matches: number;
                              scanned_nodes: number;
                              source_graph_status: "unknown" | "unavailable" | "complete" | "partial";
                              status: "truncated" | "partial" | "complete-within-source" | "no-match";
                              total_seed_matches: number;
                          };
                          direction: "incoming"
                          | "outgoing"
                          | "both";
                          evidence_links: string[];
                          graph:
                              | {
                                  coverage: {
                                      limits: {
                                          name: string;
                                          unit: | "other"
                                          | "items"
                                          | "bytes"
                                          | "depth"
                                          | "milliseconds"
                                          | "characters"
                                          | "instructions";
                                          value: number;
                                      }[];
                                      omitted_count: number
                                      | null;
                                      status: "unknown" | "unavailable" | "complete" | "partial";
                                      truncated: boolean;
                                  };
                                  edges: {
                                      edge_id: string;
                                      evidence: {
                                          artifact: | { artifact_id: string; available: true; sha256: string }
                                          | {
                                              available: false;
                                              detail: string;
                                              reason:
                                                  | "unknown"
                                                  | "truncated"
                                                  | "unresolved"
                                                  | "not-applicable"
                                                  | "not-observed"
                                                  | "not-approved"
                                                  | "provider-unavailable";
                                          };
                                          authority: | "unknown"
                                          | "controlled-replay"
                                          | "historical-reference"
                                          | "artifact-bytes"
                                          | "ast-static-analysis"
                                          | "static-relationship-inference"
                                          | "passive-cdp-runtime"
                                          | "cross-layer-reconciliation"
                                          | "cross-version-comparison"
                                          | "native-analysis-provider"
                                          | "user-assertion";
                                          confidence: "unknown"
                                          | "exact"
                                          | "low"
                                          | "medium"
                                          | "high";
                                          coverage: {
                                              limits: {
                                                  name: string;
                                                  unit:
                                                      | "other"
                                                      | "items"
                                                      | "bytes"
                                                      | "depth"
                                                      | "milliseconds"
                                                      | "characters"
                                                      | "instructions";
                                                  value: number;
                                              }[];
                                              omitted_count: number
                                              | null;
                                              status: "unknown" | "unavailable" | "complete" | "partial";
                                              truncated: boolean;
                                          };
                                          evidence_ids: string[];
                                          extractor: {
                                              executable_sha256: string
                                              | null;
                                              name: string;
                                              operation: string;
                                              version: string;
                                          };
                                          limitations: string[];
                                          location: | {
                                              available: false;
                                              detail: string;
                                              reason: | "unknown"
                                              | "truncated"
                                              | "unresolved"
                                              | "not-applicable"
                                              | "not-observed"
                                              | "not-approved"
                                              | "provider-unavailable";
                                          }
                                          | {
                                              available: true;
                                              value: | {
                                                  end: { column: ...; line: ... };
                                                  kind: "source-range";
                                                  source: string;
                                                  start: { column: ...; line: ... };
                                              }
                                              | { end: number; kind: "file-offset-range"; start: number }
                                              | { kind: "artifact-path"; path: string }
                                              | { kind: "url"; url: string }
                                              | {
                                                  capture_sha256: string;
                                                  frame_key: (...) | (...);
                                                  kind: "runtime";
                                                  script_key: (...) | (...);
                                                  target_key: string;
                                              }
                                              | { address: string; kind: "native-address"; symbol: (...)
                                              | (...) }
                                              | {
                                                  export_path: string;
                                                  kind: "package-export";
                                                  package_name: string;
                                              };
                                          };
                                          state: "unknown"
                                          | "observed"
                                          | "inferred"
                                          | "unavailable";
                                      };
                                      identifier_strategy: {
                                          stability: "relationship-exact";
                                          strategy: "semantic-content-sha256";
                                      };
                                      properties: Record<string, JSONType>;
                                      relation:
                                          | "contains"
                                          | "loads"
                                          | "calls"
                                          | "imports"
                                          | "maps_to"
                                          | "exposes"
                                          | "sends"
                                          | "invokes"
                                          | "handles"
                                          | "persists_to"
                                          | "observed_as"
                                          | "changed_from";
                                      source_node_id: string;
                                      target_node_id: string;
                                  }[];
                                  graph_id: string;
                                  limitations: string[];
                                  nodes: {
                                      identity: | {
                                          sha256: string;
                                          stability: "global-exact";
                                          strategy: "content-digest";
                                      }
                                      | {
                                          original_source: string;
                                          source_map_sha256: string;
                                          source_sha256: string
                                          | null;
                                          stability: "source-map-exact";
                                          strategy: "source-map-original";
                                      }
                                      | {
                                          artifact_sha256: string;
                                          path: string;
                                          stability: "artifact-version";
                                          strategy: "canonical-path";
                                      }
                                      | {
                                          algorithm: string;
                                          basis: (
                                              | "imports"
                                              | "exports"
                                              | "syntax-tree"
                                              | "control-flow"
                                              | "literals"
                                              | "api-usage"
                                          )[];
                                          fingerprint_sha256: string;
                                          stability: "cross-version-inference";
                                          strategy: "structural-fingerprint";
                                      }
                                      | {
                                          artifact_sha256: string;
                                          key: string;
                                          namespace: string;
                                          stability: "artifact-version";
                                          strategy: "artifact-local-key";
                                      }
                                      | {
                                          capture_sha256: string;
                                          runtime_key: string;
                                          stability: "capture-only";
                                          strategy: "runtime-instance";
                                      }
                                      | {
                                          observation_sha256: string;
                                          scope: string;
                                          stability: "observation-only";
                                          strategy: "observation-fingerprint";
                                      };
                                      kind: | "unknown"
                                      | "target"
                                      | "native-addon"
                                      | "source-map"
                                      | "artifact"
                                      | "package"
                                      | "storage"
                                      | "installer"
                                      | "asar-entry"
                                      | "electron-main"
                                      | "electron-preload"
                                      | "electron-renderer"
                                      | "electron-utility"
                                      | "javascript-asset"
                                      | "javascript-chunk"
                                      | "javascript-module"
                                      | "source-module"
                                      | "browser-window"
                                      | "frame"
                                      | "context-bridge-api"
                                      | "ipc-channel"
                                      | "ipc-handler"
                                      | "worker"
                                      | "service-worker"
                                      | "endpoint"
                                      | "native-export"
                                      | "runtime-script-instance";
                                      node_id: string;
                                      observations: {
                                          evidence: {
                                              artifact: | {
                                                  artifact_id: string;
                                                  available: true;
                                                  sha256: string;
                                              }
                                              | {
                                                  available: false;
                                                  detail: string;
                                                  reason: (...)
                                                  | (...)
                                                  | (...)
                                                  | (...)
                                                  | (...)
                                                  | (...)
                                                  | (...);
                                              };
                                              authority: | "unknown"
                                              | "controlled-replay"
                                              | "historical-reference"
                                              | "artifact-bytes"
                                              | "ast-static-analysis"
                                              | "static-relationship-inference"
                                              | "passive-cdp-runtime"
                                              | "cross-layer-reconciliation"
                                              | "cross-version-comparison"
                                              | "native-analysis-provider"
                                              | "user-assertion";
                                              confidence: "unknown"
                                              | "exact"
                                              | "low"
                                              | "medium"
                                              | "high";
                                              coverage: {
                                                  limits: { name: ...; unit: ...; value: ... }[];
                                                  omitted_count: number | null;
                                                  status: "unknown" | "unavailable" | "complete" | "partial";
                                                  truncated: boolean;
                                              };
                                              evidence_ids: string[];
                                              extractor: {
                                                  executable_sha256: string
                                                  | null;
                                                  name: string;
                                                  operation: string;
                                                  version: string;
                                              };
                                              limitations: string[];
                                              location: | {
                                                  available: false;
                                                  detail: string;
                                                  reason: (...)
                                                  | (...)
                                                  | (...)
                                                  | (...)
                                                  | (...)
                                                  | (...)
                                                  | (...);
                                              }
                                              | {
                                                  available: true;
                                                  value: (...)
                                                  | (...)
                                                  | (...)
                                                  | (...)
                                                  | (...)
                                                  | (...)
                                                  | (...);
                                              };
                                              state: "unknown"
                                              | "observed"
                                              | "inferred"
                                              | "unavailable";
                                          };
                                          identifier_strategy: {
                                              stability: "observation-exact";
                                              strategy: "semantic-content-sha256";
                                          };
                                          label: string
                                          | null;
                                          observation_id: string;
                                          properties: Record<string, JSONType>;
                                      }[];
                                  }[];
                                  root_node_ids: string[];
                                  schema: "JavaScriptApplicationGraph";
                                  schema_version: 1;
                              }
                              | null;
                          limitations: string[];
                          native_handoffs: {
                              artifact_path: string
                              | null;
                              artifact_sha256: string;
                              evidence_ids: string[];
                              export_node_ids: string[];
                              native_node_id: string;
                              providers: { id: string; name: string; version: string | null }[];
                              recommended_tools: (
                                  | "open_binary"
                                  | "binary_overview"
                                  | "analyze_function"
                                  | "search_procedures"
                                  | "xrefs"
                              )[];
                              requested_exports: string[];
                              status: "evidence-linked"
                              | "requires-provider-analysis";
                          }[];
                          paths: {
                              authorities: string[];
                              contains_inference: boolean;
                              edge_ids: string[];
                              end_kind: string;
                              end_node_id: string;
                              node_ids: string[];
                              path_id: string;
                              start_node_id: string;
                          }[];
                          schema_version: 1;
                          seed: {
                              case_sensitive: boolean;
                              kind: | "string"
                              | "native-export"
                              | "node-id"
                              | "route"
                              | "api"
                              | "channel"
                              | "module";
                              match: "exact"
                              | "contains"
                              | null;
                              value: string;
                          };
                          seed_matches: {
                              basis: "identity"
                              | "label"
                              | "node-id"
                              | "property";
                              field: string;
                              kind: string;
                              node_id: string;
                          }[];
                          source_evidence_id: string;
                          source_graph_id: string;
                          summary: {
                              inferred_facts: number;
                              matched_seeds: number;
                              native_handoffs: number;
                              observed_facts: number;
                              terminal_paths: number;
                              traced_edges: number;
                              traced_nodes: number;
                              unavailable_facts: number;
                              unknown_facts: number;
                          };
                          trace_id: string;
                      }
                    +

                    Returns
                        | {
                            analysis_profile: {
                                digest: string;
                                parameters: Record<string, JSONType>;
                                provider: { id: string; name: string; version: string };
                                provider_profile_schema_version: number;
                                schema_version: 1;
                            };
                            authority: | "shipped-artifact"
                            | "controlled-replay"
                            | "historical-reference"
                            | "external-service"
                            | "analyst-inference";
                            confidence: "observed"
                            | "derived"
                            | "inferred";
                            environment:
                                | {
                                    architecture: string;
                                    id: string;
                                    isolation: "process"
                                    | "none"
                                    | "container"
                                    | "virtual-machine";
                                    platform: string;
                                }
                                | null;
                            evidence_id: string;
                            evidence_links: string[];
                            limitations: string[];
                            locations: (
                                | { address: string; kind: "address" }
                                | { end: string; kind: "address-range"; start: string }
                                | { kind: "artifact-path"; path: string }
                                | { kind: "file-offset"; offset: number }
                                | { end: number; kind: "file-offset-range"; start: number }
                            )[];
                            normalized_result: JSONType;
                            operation: string;
                            parameters: Record<string, JSONType>;
                            predicate_type: string;
                            provider: { id: string; name: string; version: string | null };
                            raw_result: JSONType;
                            schema_version: 2;
                            subject:
                                | {
                                    architecture: "x86"
                                    | "x86_64"
                                    | "arm"
                                    | "arm64"
                                    | null;
                                    digest: { sha256: string };
                                    format:
                                        | "unknown"
                                        | "file"
                                        | "directory"
                                        | "javascript"
                                        | "source-map"
                                        | "plist"
                                        | "entitlements"
                                        | "dmg"
                                        | "zip"
                                        | "pkg"
                                        | "asar"
                                        | "javascript-bundle"
                                        | "mach-o-universal"
                                        | "mach-o"
                                        | "elf"
                                        | "pe"
                                        | "hopper"
                                        | "analysis-database"
                                        | "ipa"
                                        | "apk";
                                    local_path: string;
                                    name: string;
                                }
                                | null;
                        }
                        | {
                            authority: | "shipped-artifact"
                            | "controlled-replay"
                            | "historical-reference"
                            | "external-service"
                            | "analyst-inference";
                            confidence: "observed"
                            | "derived"
                            | "inferred";
                            environment:
                                | {
                                    architecture: string;
                                    id: string;
                                    isolation: "process"
                                    | "none"
                                    | "container"
                                    | "virtual-machine";
                                    platform: string;
                                }
                                | null;
                            evidence_id: string;
                            evidence_links: string[];
                            limitations: string[];
                            locations: (
                                | { address: string; kind: "address" }
                                | { end: string; kind: "address-range"; start: string }
                                | { kind: "artifact-path"; path: string }
                                | { kind: "file-offset"; offset: number }
                                | { end: number; kind: "file-offset-range"; start: number }
                            )[];
                            normalized_result: JSONType;
                            operation: string;
                            parameters: Record<string, JSONType>;
                            predicate_type: string;
                            provider: { id: string; name: string; version: string | null };
                            raw_result: JSONType;
                            schema_version: 2;
                            subject:
                                | {
                                    architecture: "x86"
                                    | "x86_64"
                                    | "arm"
                                    | "arm64"
                                    | null;
                                    digest: { sha256: string };
                                    format:
                                        | "unknown"
                                        | "file"
                                        | "directory"
                                        | "javascript"
                                        | "source-map"
                                        | "plist"
                                        | "entitlements"
                                        | "dmg"
                                        | "zip"
                                        | "pkg"
                                        | "asar"
                                        | "javascript-bundle"
                                        | "mach-o-universal"
                                        | "mach-o"
                                        | "elf"
                                        | "pe"
                                        | "hopper"
                                        | "analysis-database"
                                        | "ipa"
                                        | "apk";
                                    local_path: string;
                                    name: string;
                                }
                                | null;
                        }

                  +
                  + +
                  +
                  diff --git a/docs/api/functions/application_JavaScriptApplicationWorkflowEvidence.createApplicationVersionComparisonEvidence.html b/docs/api/functions/application_JavaScriptApplicationWorkflowEvidence.createApplicationVersionComparisonEvidence.html new file mode 100644 index 000000000..190a8000f --- /dev/null +++ b/docs/api/functions/application_JavaScriptApplicationWorkflowEvidence.createApplicationVersionComparisonEvidence.html @@ -0,0 +1,45 @@ +createApplicationVersionComparisonEvidence | rea-agents - v1.7.0
                  +
                  rea-agents - v1.7.0 + +
                    +
                    +
                    Preparing search index...
                    +
                    +
                    + +
                    +
                      +
                    • + +
                      +

                      Create derived Evidence for one tiered application version comparison.

                      +
                      +
                      +

                      Parameters

                      +
                        +
                      • parameters: Readonly<Record<string, JSONType>>
                      • +
                      • result: {
                            comparison_id: string;
                            coverage: {
                                left_graph_status: "unknown" | "unavailable" | "complete" | "partial";
                                omitted_candidate_references: number;
                                omitted_comparison_items: number;
                                omitted_graph_edges: number;
                                omitted_graph_nodes: number;
                                omitted_graph_observations: number;
                                right_graph_status: "unknown" | "unavailable" | "complete" | "partial";
                                status: "truncated" | "partial" | "complete-within-inputs";
                            };
                            evidence_links: string[];
                            graph: {
                                coverage: {
                                    limits: {
                                        name: string;
                                        unit: | "other"
                                        | "items"
                                        | "bytes"
                                        | "depth"
                                        | "milliseconds"
                                        | "characters"
                                        | "instructions";
                                        value: number;
                                    }[];
                                    omitted_count: number
                                    | null;
                                    status: "unknown" | "unavailable" | "complete" | "partial";
                                    truncated: boolean;
                                };
                                edges: {
                                    edge_id: string;
                                    evidence: {
                                        artifact: | { artifact_id: string; available: true; sha256: string }
                                        | {
                                            available: false;
                                            detail: string;
                                            reason:
                                                | "unknown"
                                                | "truncated"
                                                | "unresolved"
                                                | "not-applicable"
                                                | "not-observed"
                                                | "not-approved"
                                                | "provider-unavailable";
                                        };
                                        authority: | "unknown"
                                        | "controlled-replay"
                                        | "historical-reference"
                                        | "artifact-bytes"
                                        | "ast-static-analysis"
                                        | "static-relationship-inference"
                                        | "passive-cdp-runtime"
                                        | "cross-layer-reconciliation"
                                        | "cross-version-comparison"
                                        | "native-analysis-provider"
                                        | "user-assertion";
                                        confidence: "unknown"
                                        | "exact"
                                        | "low"
                                        | "medium"
                                        | "high";
                                        coverage: {
                                            limits: {
                                                name: string;
                                                unit:
                                                    | "other"
                                                    | "items"
                                                    | "bytes"
                                                    | "depth"
                                                    | "milliseconds"
                                                    | "characters"
                                                    | "instructions";
                                                value: number;
                                            }[];
                                            omitted_count: number
                                            | null;
                                            status: "unknown" | "unavailable" | "complete" | "partial";
                                            truncated: boolean;
                                        };
                                        evidence_ids: string[];
                                        extractor: {
                                            executable_sha256: string
                                            | null;
                                            name: string;
                                            operation: string;
                                            version: string;
                                        };
                                        limitations: string[];
                                        location: | {
                                            available: false;
                                            detail: string;
                                            reason: | "unknown"
                                            | "truncated"
                                            | "unresolved"
                                            | "not-applicable"
                                            | "not-observed"
                                            | "not-approved"
                                            | "provider-unavailable";
                                        }
                                        | {
                                            available: true;
                                            value: | {
                                                end: { column: number; line: number };
                                                kind: "source-range";
                                                source: string;
                                                start: { column: number; line: number };
                                            }
                                            | { end: number; kind: "file-offset-range"; start: number }
                                            | { kind: "artifact-path"; path: string }
                                            | { kind: "url"; url: string }
                                            | {
                                                capture_sha256: string;
                                                frame_key: string | null;
                                                kind: "runtime";
                                                script_key: string | null;
                                                target_key: string;
                                            }
                                            | { address: string; kind: "native-address"; symbol: string
                                            | null }
                                            | { export_path: string; kind: "package-export"; package_name: string };
                                        };
                                        state: "unknown"
                                        | "observed"
                                        | "inferred"
                                        | "unavailable";
                                    };
                                    identifier_strategy: {
                                        stability: "relationship-exact";
                                        strategy: "semantic-content-sha256";
                                    };
                                    properties: Record<string, JSONType>;
                                    relation:
                                        | "contains"
                                        | "loads"
                                        | "calls"
                                        | "imports"
                                        | "maps_to"
                                        | "exposes"
                                        | "sends"
                                        | "invokes"
                                        | "handles"
                                        | "persists_to"
                                        | "observed_as"
                                        | "changed_from";
                                    source_node_id: string;
                                    target_node_id: string;
                                }[];
                                graph_id: string;
                                limitations: string[];
                                nodes: {
                                    identity: | {
                                        sha256: string;
                                        stability: "global-exact";
                                        strategy: "content-digest";
                                    }
                                    | {
                                        original_source: string;
                                        source_map_sha256: string;
                                        source_sha256: string
                                        | null;
                                        stability: "source-map-exact";
                                        strategy: "source-map-original";
                                    }
                                    | {
                                        artifact_sha256: string;
                                        path: string;
                                        stability: "artifact-version";
                                        strategy: "canonical-path";
                                    }
                                    | {
                                        algorithm: string;
                                        basis: (
                                            | "imports"
                                            | "exports"
                                            | "syntax-tree"
                                            | "control-flow"
                                            | "literals"
                                            | "api-usage"
                                        )[];
                                        fingerprint_sha256: string;
                                        stability: "cross-version-inference";
                                        strategy: "structural-fingerprint";
                                    }
                                    | {
                                        artifact_sha256: string;
                                        key: string;
                                        namespace: string;
                                        stability: "artifact-version";
                                        strategy: "artifact-local-key";
                                    }
                                    | {
                                        capture_sha256: string;
                                        runtime_key: string;
                                        stability: "capture-only";
                                        strategy: "runtime-instance";
                                    }
                                    | {
                                        observation_sha256: string;
                                        scope: string;
                                        stability: "observation-only";
                                        strategy: "observation-fingerprint";
                                    };
                                    kind: | "unknown"
                                    | "target"
                                    | "native-addon"
                                    | "source-map"
                                    | "artifact"
                                    | "package"
                                    | "storage"
                                    | "installer"
                                    | "asar-entry"
                                    | "electron-main"
                                    | "electron-preload"
                                    | "electron-renderer"
                                    | "electron-utility"
                                    | "javascript-asset"
                                    | "javascript-chunk"
                                    | "javascript-module"
                                    | "source-module"
                                    | "browser-window"
                                    | "frame"
                                    | "context-bridge-api"
                                    | "ipc-channel"
                                    | "ipc-handler"
                                    | "worker"
                                    | "service-worker"
                                    | "endpoint"
                                    | "native-export"
                                    | "runtime-script-instance";
                                    node_id: string;
                                    observations: {
                                        evidence: {
                                            artifact: | { artifact_id: string; available: true; sha256: string }
                                            | {
                                                available: false;
                                                detail: string;
                                                reason:
                                                    | "unknown"
                                                    | "truncated"
                                                    | "unresolved"
                                                    | "not-applicable"
                                                    | "not-observed"
                                                    | "not-approved"
                                                    | "provider-unavailable";
                                            };
                                            authority: | "unknown"
                                            | "controlled-replay"
                                            | "historical-reference"
                                            | "artifact-bytes"
                                            | "ast-static-analysis"
                                            | "static-relationship-inference"
                                            | "passive-cdp-runtime"
                                            | "cross-layer-reconciliation"
                                            | "cross-version-comparison"
                                            | "native-analysis-provider"
                                            | "user-assertion";
                                            confidence: "unknown"
                                            | "exact"
                                            | "low"
                                            | "medium"
                                            | "high";
                                            coverage: {
                                                limits: {
                                                    name: string;
                                                    unit: (...) | (...) | (...) | (...) | (...) | (...) | (...);
                                                    value: number;
                                                }[];
                                                omitted_count: number
                                                | null;
                                                status: "unknown" | "unavailable" | "complete" | "partial";
                                                truncated: boolean;
                                            };
                                            evidence_ids: string[];
                                            extractor: {
                                                executable_sha256: string
                                                | null;
                                                name: string;
                                                operation: string;
                                                version: string;
                                            };
                                            limitations: string[];
                                            location: | {
                                                available: false;
                                                detail: string;
                                                reason: | "unknown"
                                                | "truncated"
                                                | "unresolved"
                                                | "not-applicable"
                                                | "not-observed"
                                                | "not-approved"
                                                | "provider-unavailable";
                                            }
                                            | {
                                                available: true;
                                                value: | { end: ...; kind: ...; source: ...; start: ... }
                                                | { end: ...; kind: ...; start: ... }
                                                | { kind: ...; path: ... }
                                                | { kind: ...; url: ... }
                                                | {
                                                    capture_sha256: ...;
                                                    frame_key: ...;
                                                    kind: ...;
                                                    script_key: ...;
                                                    target_key: ...;
                                                }
                                                | { address: ...; kind: ...; symbol: ... }
                                                | { export_path: ...; kind: ...; package_name: ... };
                                            };
                                            state: "unknown"
                                            | "observed"
                                            | "inferred"
                                            | "unavailable";
                                        };
                                        identifier_strategy: {
                                            stability: "observation-exact";
                                            strategy: "semantic-content-sha256";
                                        };
                                        label: string
                                        | null;
                                        observation_id: string;
                                        properties: Record<string, JSONType>;
                                    }[];
                                }[];
                                root_node_ids: string[];
                                schema: "JavaScriptApplicationGraph";
                                schema_version: 1;
                            };
                            items: {
                                dimensions: (
                                    | "relationships"
                                    | "content"
                                    | "availability"
                                    | "properties"
                                    | "location"
                                    | "coverage"
                                )[];
                                evidence_links: string[];
                                item_id: string;
                                left_node_id: string
                                | null;
                                limitations: string[];
                                match: {
                                    basis:
                                        | "none"
                                        | "structural-fingerprint"
                                        | "exact-node-identity"
                                        | "exact-content-digest"
                                        | "exact-module-source-digest"
                                        | "source-map-identity"
                                        | "semantic-key";
                                    candidate_left_node_ids: string[];
                                    candidate_right_node_ids: string[];
                                    confidence: "unknown"
                                    | "exact"
                                    | "medium"
                                    | "high";
                                    status: "matched" | "unmatched" | "ambiguous";
                                };
                                node_kind: | "unknown"
                                | "target"
                                | "native-addon"
                                | "source-map"
                                | "artifact"
                                | "package"
                                | "storage"
                                | "installer"
                                | "asar-entry"
                                | "electron-main"
                                | "electron-preload"
                                | "electron-renderer"
                                | "electron-utility"
                                | "javascript-asset"
                                | "javascript-chunk"
                                | "javascript-module"
                                | "source-module"
                                | "browser-window"
                                | "frame"
                                | "context-bridge-api"
                                | "ipc-channel"
                                | "ipc-handler"
                                | "worker"
                                | "service-worker"
                                | "endpoint"
                                | "native-export"
                                | "runtime-script-instance";
                                right_node_id: string
                                | null;
                                status: "unknown" | "unchanged" | "added" | "removed" | "changed";
                            }[];
                            left: {
                                evidence_id: string;
                                graph_id: string;
                                root_artifact_sha256: string;
                            };
                            limitations: string[];
                            matching: {
                                ambiguous: number;
                                exact_content_digest: number;
                                exact_module_source_digest: number;
                                exact_node_identity: number;
                                semantic_key: number;
                                source_map_identity: number;
                                structural_fingerprint: number;
                                unmatched: number;
                            };
                            right: {
                                evidence_id: string;
                                graph_id: string;
                                root_artifact_sha256: string;
                            };
                            schema_version: 1;
                            summary: {
                                added: number;
                                changed: number;
                                removed: number;
                                unchanged: number;
                                unknown: number;
                            };
                        }
                      +

                      Returns
                          | {
                              analysis_profile: {
                                  digest: string;
                                  parameters: Record<string, JSONType>;
                                  provider: { id: string; name: string; version: string };
                                  provider_profile_schema_version: number;
                                  schema_version: 1;
                              };
                              authority: | "shipped-artifact"
                              | "controlled-replay"
                              | "historical-reference"
                              | "external-service"
                              | "analyst-inference";
                              confidence: "observed"
                              | "derived"
                              | "inferred";
                              environment:
                                  | {
                                      architecture: string;
                                      id: string;
                                      isolation: "process"
                                      | "none"
                                      | "container"
                                      | "virtual-machine";
                                      platform: string;
                                  }
                                  | null;
                              evidence_id: string;
                              evidence_links: string[];
                              limitations: string[];
                              locations: (
                                  | { address: string; kind: "address" }
                                  | { end: string; kind: "address-range"; start: string }
                                  | { kind: "artifact-path"; path: string }
                                  | { kind: "file-offset"; offset: number }
                                  | { end: number; kind: "file-offset-range"; start: number }
                              )[];
                              normalized_result: JSONType;
                              operation: string;
                              parameters: Record<string, JSONType>;
                              predicate_type: string;
                              provider: { id: string; name: string; version: string | null };
                              raw_result: JSONType;
                              schema_version: 2;
                              subject:
                                  | {
                                      architecture: "x86"
                                      | "x86_64"
                                      | "arm"
                                      | "arm64"
                                      | null;
                                      digest: { sha256: string };
                                      format:
                                          | "unknown"
                                          | "file"
                                          | "directory"
                                          | "javascript"
                                          | "source-map"
                                          | "plist"
                                          | "entitlements"
                                          | "dmg"
                                          | "zip"
                                          | "pkg"
                                          | "asar"
                                          | "javascript-bundle"
                                          | "mach-o-universal"
                                          | "mach-o"
                                          | "elf"
                                          | "pe"
                                          | "hopper"
                                          | "analysis-database"
                                          | "ipa"
                                          | "apk";
                                      local_path: string;
                                      name: string;
                                  }
                                  | null;
                          }
                          | {
                              authority: | "shipped-artifact"
                              | "controlled-replay"
                              | "historical-reference"
                              | "external-service"
                              | "analyst-inference";
                              confidence: "observed"
                              | "derived"
                              | "inferred";
                              environment:
                                  | {
                                      architecture: string;
                                      id: string;
                                      isolation: "process"
                                      | "none"
                                      | "container"
                                      | "virtual-machine";
                                      platform: string;
                                  }
                                  | null;
                              evidence_id: string;
                              evidence_links: string[];
                              limitations: string[];
                              locations: (
                                  | { address: string; kind: "address" }
                                  | { end: string; kind: "address-range"; start: string }
                                  | { kind: "artifact-path"; path: string }
                                  | { kind: "file-offset"; offset: number }
                                  | { end: number; kind: "file-offset-range"; start: number }
                              )[];
                              normalized_result: JSONType;
                              operation: string;
                              parameters: Record<string, JSONType>;
                              predicate_type: string;
                              provider: { id: string; name: string; version: string | null };
                              raw_result: JSONType;
                              schema_version: 2;
                              subject:
                                  | {
                                      architecture: "x86"
                                      | "x86_64"
                                      | "arm"
                                      | "arm64"
                                      | null;
                                      digest: { sha256: string };
                                      format:
                                          | "unknown"
                                          | "file"
                                          | "directory"
                                          | "javascript"
                                          | "source-map"
                                          | "plist"
                                          | "entitlements"
                                          | "dmg"
                                          | "zip"
                                          | "pkg"
                                          | "asar"
                                          | "javascript-bundle"
                                          | "mach-o-universal"
                                          | "mach-o"
                                          | "elf"
                                          | "pe"
                                          | "hopper"
                                          | "analysis-database"
                                          | "ipa"
                                          | "apk";
                                      local_path: string;
                                      name: string;
                                  }
                                  | null;
                          }

                    +
                    + +
                    +
                    diff --git a/docs/api/functions/application_JavaScriptApplicationWorkflowService.compareApplicationVersionsEvidence.html b/docs/api/functions/application_JavaScriptApplicationWorkflowService.compareApplicationVersionsEvidence.html new file mode 100644 index 000000000..7411fe07e --- /dev/null +++ b/docs/api/functions/application_JavaScriptApplicationWorkflowService.compareApplicationVersionsEvidence.html @@ -0,0 +1,44 @@ +compareApplicationVersionsEvidence | rea-agents - v1.7.0
                    +
                    rea-agents - v1.7.0 + +
                      +
                      +
                      Preparing search index...
                      +
                      +
                      + +
                      +
                        +
                      • + +
                        +

                        Authenticate both graphs and derive a tiered cross-version change graph.

                        +
                        +
                        +

                        Parameters

                        +
                          +
                        • rawInput: unknown
                        +

                        Returns Result<
                            | {
                                analysis_profile: {
                                    digest: string;
                                    parameters: Record<string, JSONType>;
                                    provider: { id: string; name: string; version: string };
                                    provider_profile_schema_version: number;
                                    schema_version: 1;
                                };
                                authority: | "shipped-artifact"
                                | "controlled-replay"
                                | "historical-reference"
                                | "external-service"
                                | "analyst-inference";
                                confidence: "observed"
                                | "derived"
                                | "inferred";
                                environment:
                                    | {
                                        architecture: string;
                                        id: string;
                                        isolation: "process"
                                        | "none"
                                        | "container"
                                        | "virtual-machine";
                                        platform: string;
                                    }
                                    | null;
                                evidence_id: string;
                                evidence_links: string[];
                                limitations: string[];
                                locations: (
                                    | { address: string; kind: "address" }
                                    | { end: string; kind: "address-range"; start: string }
                                    | { kind: "artifact-path"; path: string }
                                    | { kind: "file-offset"; offset: number }
                                    | { end: number; kind: "file-offset-range"; start: number }
                                )[];
                                normalized_result: JSONType;
                                operation: string;
                                parameters: Record<string, JSONType>;
                                predicate_type: string;
                                provider: { id: string; name: string; version: string | null };
                                raw_result: JSONType;
                                schema_version: 2;
                                subject:
                                    | {
                                        architecture: "x86"
                                        | "x86_64"
                                        | "arm"
                                        | "arm64"
                                        | null;
                                        digest: { sha256: string };
                                        format:
                                            | "unknown"
                                            | "file"
                                            | "directory"
                                            | "javascript"
                                            | "source-map"
                                            | "plist"
                                            | "entitlements"
                                            | "dmg"
                                            | "zip"
                                            | "pkg"
                                            | "asar"
                                            | "javascript-bundle"
                                            | "mach-o-universal"
                                            | "mach-o"
                                            | "elf"
                                            | "pe"
                                            | "hopper"
                                            | "analysis-database"
                                            | "ipa"
                                            | "apk";
                                        local_path: string;
                                        name: string;
                                    }
                                    | null;
                            }
                            | {
                                authority: | "shipped-artifact"
                                | "controlled-replay"
                                | "historical-reference"
                                | "external-service"
                                | "analyst-inference";
                                confidence: "observed"
                                | "derived"
                                | "inferred";
                                environment:
                                    | {
                                        architecture: string;
                                        id: string;
                                        isolation: "process"
                                        | "none"
                                        | "container"
                                        | "virtual-machine";
                                        platform: string;
                                    }
                                    | null;
                                evidence_id: string;
                                evidence_links: string[];
                                limitations: string[];
                                locations: (
                                    | { address: string; kind: "address" }
                                    | { end: string; kind: "address-range"; start: string }
                                    | { kind: "artifact-path"; path: string }
                                    | { kind: "file-offset"; offset: number }
                                    | { end: number; kind: "file-offset-range"; start: number }
                                )[];
                                normalized_result: JSONType;
                                operation: string;
                                parameters: Record<string, JSONType>;
                                predicate_type: string;
                                provider: { id: string; name: string; version: string | null };
                                raw_result: JSONType;
                                schema_version: 2;
                                subject:
                                    | {
                                        architecture: "x86"
                                        | "x86_64"
                                        | "arm"
                                        | "arm64"
                                        | null;
                                        digest: { sha256: string };
                                        format:
                                            | "unknown"
                                            | "file"
                                            | "directory"
                                            | "javascript"
                                            | "source-map"
                                            | "plist"
                                            | "entitlements"
                                            | "dmg"
                                            | "zip"
                                            | "pkg"
                                            | "asar"
                                            | "javascript-bundle"
                                            | "mach-o-universal"
                                            | "mach-o"
                                            | "elf"
                                            | "pe"
                                            | "hopper"
                                            | "analysis-database"
                                            | "ipa"
                                            | "apk";
                                        local_path: string;
                                        name: string;
                                    }
                                    | null;
                            },
                            AnalysisError,
                        >

                      +
                      + +
                      +
                      diff --git a/docs/api/functions/application_JavaScriptApplicationWorkflowService.traceApplicationFeatureEvidence.html b/docs/api/functions/application_JavaScriptApplicationWorkflowService.traceApplicationFeatureEvidence.html new file mode 100644 index 000000000..7f42ca20a --- /dev/null +++ b/docs/api/functions/application_JavaScriptApplicationWorkflowService.traceApplicationFeatureEvidence.html @@ -0,0 +1,44 @@ +traceApplicationFeatureEvidence | rea-agents - v1.7.0
                      +
                      rea-agents - v1.7.0 + +
                        +
                        +
                        Preparing search index...
                        +
                        +
                        + +
                        +
                          +
                        • + +
                          +

                          Authenticate Evidence and derive one bounded cross-layer feature trace.

                          +
                          +
                          +

                          Parameters

                          +
                            +
                          • rawInput: unknown
                          +

                          Returns Result<
                              | {
                                  analysis_profile: {
                                      digest: string;
                                      parameters: Record<string, JSONType>;
                                      provider: { id: string; name: string; version: string };
                                      provider_profile_schema_version: number;
                                      schema_version: 1;
                                  };
                                  authority: | "shipped-artifact"
                                  | "controlled-replay"
                                  | "historical-reference"
                                  | "external-service"
                                  | "analyst-inference";
                                  confidence: "observed"
                                  | "derived"
                                  | "inferred";
                                  environment:
                                      | {
                                          architecture: string;
                                          id: string;
                                          isolation: "process"
                                          | "none"
                                          | "container"
                                          | "virtual-machine";
                                          platform: string;
                                      }
                                      | null;
                                  evidence_id: string;
                                  evidence_links: string[];
                                  limitations: string[];
                                  locations: (
                                      | { address: string; kind: "address" }
                                      | { end: string; kind: "address-range"; start: string }
                                      | { kind: "artifact-path"; path: string }
                                      | { kind: "file-offset"; offset: number }
                                      | { end: number; kind: "file-offset-range"; start: number }
                                  )[];
                                  normalized_result: JSONType;
                                  operation: string;
                                  parameters: Record<string, JSONType>;
                                  predicate_type: string;
                                  provider: { id: string; name: string; version: string | null };
                                  raw_result: JSONType;
                                  schema_version: 2;
                                  subject:
                                      | {
                                          architecture: "x86"
                                          | "x86_64"
                                          | "arm"
                                          | "arm64"
                                          | null;
                                          digest: { sha256: string };
                                          format:
                                              | "unknown"
                                              | "file"
                                              | "directory"
                                              | "javascript"
                                              | "source-map"
                                              | "plist"
                                              | "entitlements"
                                              | "dmg"
                                              | "zip"
                                              | "pkg"
                                              | "asar"
                                              | "javascript-bundle"
                                              | "mach-o-universal"
                                              | "mach-o"
                                              | "elf"
                                              | "pe"
                                              | "hopper"
                                              | "analysis-database"
                                              | "ipa"
                                              | "apk";
                                          local_path: string;
                                          name: string;
                                      }
                                      | null;
                              }
                              | {
                                  authority: | "shipped-artifact"
                                  | "controlled-replay"
                                  | "historical-reference"
                                  | "external-service"
                                  | "analyst-inference";
                                  confidence: "observed"
                                  | "derived"
                                  | "inferred";
                                  environment:
                                      | {
                                          architecture: string;
                                          id: string;
                                          isolation: "process"
                                          | "none"
                                          | "container"
                                          | "virtual-machine";
                                          platform: string;
                                      }
                                      | null;
                                  evidence_id: string;
                                  evidence_links: string[];
                                  limitations: string[];
                                  locations: (
                                      | { address: string; kind: "address" }
                                      | { end: string; kind: "address-range"; start: string }
                                      | { kind: "artifact-path"; path: string }
                                      | { kind: "file-offset"; offset: number }
                                      | { end: number; kind: "file-offset-range"; start: number }
                                  )[];
                                  normalized_result: JSONType;
                                  operation: string;
                                  parameters: Record<string, JSONType>;
                                  predicate_type: string;
                                  provider: { id: string; name: string; version: string | null };
                                  raw_result: JSONType;
                                  schema_version: 2;
                                  subject:
                                      | {
                                          architecture: "x86"
                                          | "x86_64"
                                          | "arm"
                                          | "arm64"
                                          | null;
                                          digest: { sha256: string };
                                          format:
                                              | "unknown"
                                              | "file"
                                              | "directory"
                                              | "javascript"
                                              | "source-map"
                                              | "plist"
                                              | "entitlements"
                                              | "dmg"
                                              | "zip"
                                              | "pkg"
                                              | "asar"
                                              | "javascript-bundle"
                                              | "mach-o-universal"
                                              | "mach-o"
                                              | "elf"
                                              | "pe"
                                              | "hopper"
                                              | "analysis-database"
                                              | "ipa"
                                              | "apk";
                                          local_path: string;
                                          name: string;
                                      }
                                      | null;
                              },
                              AnalysisError,
                          >

                        +
                        + +
                        +
                        diff --git a/docs/api/functions/application_JavaScriptArtifactGraphBuilder.buildJavaScriptArtifactGraph.html b/docs/api/functions/application_JavaScriptArtifactGraphBuilder.buildJavaScriptArtifactGraph.html index 907b781e6..8ef4c0087 100644 --- a/docs/api/functions/application_JavaScriptArtifactGraphBuilder.buildJavaScriptArtifactGraph.html +++ b/docs/api/functions/application_JavaScriptArtifactGraphBuilder.buildJavaScriptArtifactGraph.html @@ -14,7 +14,7 @@
                        • - +

                          Project bounded artifact and AST facts into JavaScript Application Graph v1.

                          @@ -25,7 +25,7 @@
                        • fileSet: JavaScriptArtifactFileSet
                        • analysis: JavaScriptArtifactAnalysis
                        • input: {
                              format: "directory" | "asar" | "auto";
                              input_path: string;
                              limits: {
                                  max_artifact_entry_bytes: number;
                                  max_ast_nodes: number;
                                  max_compression_ratio: number;
                                  max_depth: number;
                                  max_entries: number;
                                  max_findings: number;
                                  max_modules: number;
                                  max_parse_milliseconds: number;
                                  max_path_bytes: number;
                                  max_source_map_sources: number;
                                  max_text_file_bytes: number;
                                  max_text_files: number;
                                  max_total_artifact_bytes: number;
                                  max_total_text_bytes: number;
                              };
                              source_map_read_approved: boolean;
                          }
                        -

                        Returns {
                            coverage: {
                                limits: {
                                    name: string;
                                    unit:
                                        | "other"
                                        | "items"
                                        | "bytes"
                                        | "depth"
                                        | "milliseconds"
                                        | "characters"
                                        | "instructions";
                                    value: number;
                                }[];
                                omitted_count: number
                                | null;
                                status: "unknown" | "unavailable" | "complete" | "partial";
                                truncated: boolean;
                            };
                            edges: {
                                edge_id: string;
                                evidence: {
                                    artifact: | { artifact_id: string; available: true; sha256: string }
                                    | {
                                        available: false;
                                        detail: string;
                                        reason:
                                            | "unknown"
                                            | "truncated"
                                            | "unresolved"
                                            | "not-applicable"
                                            | "not-observed"
                                            | "not-approved"
                                            | "provider-unavailable";
                                    };
                                    authority: | "unknown"
                                    | "controlled-replay"
                                    | "historical-reference"
                                    | "artifact-bytes"
                                    | "ast-static-analysis"
                                    | "static-relationship-inference"
                                    | "passive-cdp-runtime"
                                    | "cross-layer-reconciliation"
                                    | "native-analysis-provider"
                                    | "user-assertion";
                                    confidence: "unknown"
                                    | "exact"
                                    | "low"
                                    | "medium"
                                    | "high";
                                    coverage: {
                                        limits: {
                                            name: string;
                                            unit:
                                                | "other"
                                                | "items"
                                                | "bytes"
                                                | "depth"
                                                | "milliseconds"
                                                | "characters"
                                                | "instructions";
                                            value: number;
                                        }[];
                                        omitted_count: number
                                        | null;
                                        status: "unknown" | "unavailable" | "complete" | "partial";
                                        truncated: boolean;
                                    };
                                    evidence_ids: string[];
                                    extractor: {
                                        executable_sha256: string
                                        | null;
                                        name: string;
                                        operation: string;
                                        version: string;
                                    };
                                    limitations: string[];
                                    location: | {
                                        available: false;
                                        detail: string;
                                        reason: | "unknown"
                                        | "truncated"
                                        | "unresolved"
                                        | "not-applicable"
                                        | "not-observed"
                                        | "not-approved"
                                        | "provider-unavailable";
                                    }
                                    | {
                                        available: true;
                                        value: | {
                                            end: { column: number; line: number };
                                            kind: "source-range";
                                            source: string;
                                            start: { column: number; line: number };
                                        }
                                        | { end: number; kind: "file-offset-range"; start: number }
                                        | { kind: "artifact-path"; path: string }
                                        | { kind: "url"; url: string }
                                        | {
                                            capture_sha256: string;
                                            frame_key: string | null;
                                            kind: "runtime";
                                            script_key: string | null;
                                            target_key: string;
                                        }
                                        | { address: string; kind: "native-address"; symbol: string
                                        | null }
                                        | { export_path: string; kind: "package-export"; package_name: string };
                                    };
                                    state: "unknown"
                                    | "observed"
                                    | "inferred"
                                    | "unavailable";
                                };
                                identifier_strategy: {
                                    stability: "relationship-exact";
                                    strategy: "semantic-content-sha256";
                                };
                                properties: Record<string, JSONType>;
                                relation:
                                    | "contains"
                                    | "loads"
                                    | "calls"
                                    | "imports"
                                    | "maps_to"
                                    | "exposes"
                                    | "sends"
                                    | "invokes"
                                    | "handles"
                                    | "persists_to"
                                    | "observed_as"
                                    | "changed_from";
                                source_node_id: string;
                                target_node_id: string;
                            }[];
                            graph_id: string;
                            limitations: string[];
                            nodes: {
                                identity: | {
                                    sha256: string;
                                    stability: "global-exact";
                                    strategy: "content-digest";
                                }
                                | {
                                    original_source: string;
                                    source_map_sha256: string;
                                    source_sha256: string
                                    | null;
                                    stability: "source-map-exact";
                                    strategy: "source-map-original";
                                }
                                | {
                                    artifact_sha256: string;
                                    path: string;
                                    stability: "artifact-version";
                                    strategy: "canonical-path";
                                }
                                | {
                                    algorithm: string;
                                    basis: (
                                        | "imports"
                                        | "exports"
                                        | "syntax-tree"
                                        | "control-flow"
                                        | "literals"
                                        | "api-usage"
                                    )[];
                                    fingerprint_sha256: string;
                                    stability: "cross-version-inference";
                                    strategy: "structural-fingerprint";
                                }
                                | {
                                    artifact_sha256: string;
                                    key: string;
                                    namespace: string;
                                    stability: "artifact-version";
                                    strategy: "artifact-local-key";
                                }
                                | {
                                    capture_sha256: string;
                                    runtime_key: string;
                                    stability: "capture-only";
                                    strategy: "runtime-instance";
                                }
                                | {
                                    observation_sha256: string;
                                    scope: string;
                                    stability: "observation-only";
                                    strategy: "observation-fingerprint";
                                };
                                kind: | "unknown"
                                | "target"
                                | "native-addon"
                                | "source-map"
                                | "artifact"
                                | "package"
                                | "storage"
                                | "installer"
                                | "asar-entry"
                                | "electron-main"
                                | "electron-preload"
                                | "electron-renderer"
                                | "electron-utility"
                                | "javascript-asset"
                                | "javascript-chunk"
                                | "javascript-module"
                                | "source-module"
                                | "browser-window"
                                | "frame"
                                | "context-bridge-api"
                                | "ipc-channel"
                                | "ipc-handler"
                                | "worker"
                                | "service-worker"
                                | "endpoint"
                                | "native-export"
                                | "runtime-script-instance";
                                node_id: string;
                                observations: {
                                    evidence: {
                                        artifact: | { artifact_id: string; available: true; sha256: string }
                                        | {
                                            available: false;
                                            detail: string;
                                            reason:
                                                | "unknown"
                                                | "truncated"
                                                | "unresolved"
                                                | "not-applicable"
                                                | "not-observed"
                                                | "not-approved"
                                                | "provider-unavailable";
                                        };
                                        authority: | "unknown"
                                        | "controlled-replay"
                                        | "historical-reference"
                                        | "artifact-bytes"
                                        | "ast-static-analysis"
                                        | "static-relationship-inference"
                                        | "passive-cdp-runtime"
                                        | "cross-layer-reconciliation"
                                        | "native-analysis-provider"
                                        | "user-assertion";
                                        confidence: "unknown"
                                        | "exact"
                                        | "low"
                                        | "medium"
                                        | "high";
                                        coverage: {
                                            limits: {
                                                name: string;
                                                unit:
                                                    | "other"
                                                    | "items"
                                                    | "bytes"
                                                    | "depth"
                                                    | "milliseconds"
                                                    | "characters"
                                                    | "instructions";
                                                value: number;
                                            }[];
                                            omitted_count: number
                                            | null;
                                            status: "unknown" | "unavailable" | "complete" | "partial";
                                            truncated: boolean;
                                        };
                                        evidence_ids: string[];
                                        extractor: {
                                            executable_sha256: string
                                            | null;
                                            name: string;
                                            operation: string;
                                            version: string;
                                        };
                                        limitations: string[];
                                        location: | {
                                            available: false;
                                            detail: string;
                                            reason: | "unknown"
                                            | "truncated"
                                            | "unresolved"
                                            | "not-applicable"
                                            | "not-observed"
                                            | "not-approved"
                                            | "provider-unavailable";
                                        }
                                        | {
                                            available: true;
                                            value: | {
                                                end: { column: ...; line: ... };
                                                kind: "source-range";
                                                source: string;
                                                start: { column: ...; line: ... };
                                            }
                                            | { end: number; kind: "file-offset-range"; start: number }
                                            | { kind: "artifact-path"; path: string }
                                            | { kind: "url"; url: string }
                                            | {
                                                capture_sha256: string;
                                                frame_key: (...) | (...);
                                                kind: "runtime";
                                                script_key: (...) | (...);
                                                target_key: string;
                                            }
                                            | { address: string; kind: "native-address"; symbol: (...)
                                            | (...) }
                                            | { export_path: string; kind: "package-export"; package_name: string };
                                        };
                                        state: "unknown"
                                        | "observed"
                                        | "inferred"
                                        | "unavailable";
                                    };
                                    identifier_strategy: {
                                        stability: "observation-exact";
                                        strategy: "semantic-content-sha256";
                                    };
                                    label: string
                                    | null;
                                    observation_id: string;
                                    properties: Record<string, JSONType>;
                                }[];
                            }[];
                            root_node_ids: string[];
                            schema: "JavaScriptApplicationGraph";
                            schema_version: 1;
                        }

                      diff --git a/docs/api/functions/application_JavaScriptArtifactGraphContext.createElectronRoleNode.html b/docs/api/functions/application_JavaScriptArtifactGraphContext.createElectronRoleNode.html index 0fc8a1e9e..fed9b2077 100644 --- a/docs/api/functions/application_JavaScriptArtifactGraphContext.createElectronRoleNode.html +++ b/docs/api/functions/application_JavaScriptArtifactGraphContext.createElectronRoleNode.html @@ -14,7 +14,7 @@
                      • - +

                        Create or merge an Electron role inferred from static syntax or metadata.

                        @@ -23,7 +23,7 @@
                        -

                        Returns {
                            identity:
                                | {
                                    sha256: string;
                                    stability: "global-exact";
                                    strategy: "content-digest";
                                }
                                | {
                                    original_source: string;
                                    source_map_sha256: string;
                                    source_sha256: string
                                    | null;
                                    stability: "source-map-exact";
                                    strategy: "source-map-original";
                                }
                                | {
                                    artifact_sha256: string;
                                    path: string;
                                    stability: "artifact-version";
                                    strategy: "canonical-path";
                                }
                                | {
                                    algorithm: string;
                                    basis: (
                                        | "imports"
                                        | "exports"
                                        | "syntax-tree"
                                        | "control-flow"
                                        | "literals"
                                        | "api-usage"
                                    )[];
                                    fingerprint_sha256: string;
                                    stability: "cross-version-inference";
                                    strategy: "structural-fingerprint";
                                }
                                | {
                                    artifact_sha256: string;
                                    key: string;
                                    namespace: string;
                                    stability: "artifact-version";
                                    strategy: "artifact-local-key";
                                }
                                | {
                                    capture_sha256: string;
                                    runtime_key: string;
                                    stability: "capture-only";
                                    strategy: "runtime-instance";
                                }
                                | {
                                    observation_sha256: string;
                                    scope: string;
                                    stability: "observation-only";
                                    strategy: "observation-fingerprint";
                                };
                            kind: | "unknown"
                            | "target"
                            | "native-addon"
                            | "source-map"
                            | "artifact"
                            | "package"
                            | "storage"
                            | "installer"
                            | "asar-entry"
                            | "electron-main"
                            | "electron-preload"
                            | "electron-renderer"
                            | "electron-utility"
                            | "javascript-asset"
                            | "javascript-chunk"
                            | "javascript-module"
                            | "source-module"
                            | "browser-window"
                            | "frame"
                            | "context-bridge-api"
                            | "ipc-channel"
                            | "ipc-handler"
                            | "worker"
                            | "service-worker"
                            | "endpoint"
                            | "native-export"
                            | "runtime-script-instance";
                            node_id: string;
                            observations: {
                                evidence: {
                                    artifact: | { artifact_id: string; available: true; sha256: string }
                                    | {
                                        available: false;
                                        detail: string;
                                        reason:
                                            | "unknown"
                                            | "truncated"
                                            | "unresolved"
                                            | "not-applicable"
                                            | "not-observed"
                                            | "not-approved"
                                            | "provider-unavailable";
                                    };
                                    authority: | "unknown"
                                    | "controlled-replay"
                                    | "historical-reference"
                                    | "artifact-bytes"
                                    | "ast-static-analysis"
                                    | "static-relationship-inference"
                                    | "passive-cdp-runtime"
                                    | "cross-layer-reconciliation"
                                    | "native-analysis-provider"
                                    | "user-assertion";
                                    confidence: "unknown"
                                    | "exact"
                                    | "low"
                                    | "medium"
                                    | "high";
                                    coverage: {
                                        limits: {
                                            name: string;
                                            unit:
                                                | "other"
                                                | "items"
                                                | "bytes"
                                                | "depth"
                                                | "milliseconds"
                                                | "characters"
                                                | "instructions";
                                            value: number;
                                        }[];
                                        omitted_count: number
                                        | null;
                                        status: "unknown" | "unavailable" | "complete" | "partial";
                                        truncated: boolean;
                                    };
                                    evidence_ids: string[];
                                    extractor: {
                                        executable_sha256: string
                                        | null;
                                        name: string;
                                        operation: string;
                                        version: string;
                                    };
                                    limitations: string[];
                                    location: | {
                                        available: false;
                                        detail: string;
                                        reason: | "unknown"
                                        | "truncated"
                                        | "unresolved"
                                        | "not-applicable"
                                        | "not-observed"
                                        | "not-approved"
                                        | "provider-unavailable";
                                    }
                                    | {
                                        available: true;
                                        value: | {
                                            end: { column: number; line: number };
                                            kind: "source-range";
                                            source: string;
                                            start: { column: number; line: number };
                                        }
                                        | { end: number; kind: "file-offset-range"; start: number }
                                        | { kind: "artifact-path"; path: string }
                                        | { kind: "url"; url: string }
                                        | {
                                            capture_sha256: string;
                                            frame_key: string | null;
                                            kind: "runtime";
                                            script_key: string | null;
                                            target_key: string;
                                        }
                                        | { address: string; kind: "native-address"; symbol: string
                                        | null }
                                        | { export_path: string; kind: "package-export"; package_name: string };
                                    };
                                    state: "unknown"
                                    | "observed"
                                    | "inferred"
                                    | "unavailable";
                                };
                                identifier_strategy: {
                                    stability: "observation-exact";
                                    strategy: "semantic-content-sha256";
                                };
                                label: string
                                | null;
                                observation_id: string;
                                properties: Record<string, JSONType>;
                            }[];
                        }

                    diff --git a/docs/api/functions/application_JavaScriptArtifactGraphContext.sourceNodeFor.html b/docs/api/functions/application_JavaScriptArtifactGraphContext.sourceNodeFor.html index 0180bba96..cea25b65d 100644 --- a/docs/api/functions/application_JavaScriptArtifactGraphContext.sourceNodeFor.html +++ b/docs/api/functions/application_JavaScriptArtifactGraphContext.sourceNodeFor.html @@ -14,7 +14,7 @@
                    • - +

                      Locate the recovered module that owns a static finding.

                      @@ -24,7 +24,7 @@
                    • context: JavaScriptArtifactGraphContext
                    • path: string
                    • moduleKey: string | null
                    -

                    Returns
                        | {
                            identity: | {
                                sha256: string;
                                stability: "global-exact";
                                strategy: "content-digest";
                            }
                            | {
                                original_source: string;
                                source_map_sha256: string;
                                source_sha256: string
                                | null;
                                stability: "source-map-exact";
                                strategy: "source-map-original";
                            }
                            | {
                                artifact_sha256: string;
                                path: string;
                                stability: "artifact-version";
                                strategy: "canonical-path";
                            }
                            | {
                                algorithm: string;
                                basis: (
                                    | "imports"
                                    | "exports"
                                    | "syntax-tree"
                                    | "control-flow"
                                    | "literals"
                                    | "api-usage"
                                )[];
                                fingerprint_sha256: string;
                                stability: "cross-version-inference";
                                strategy: "structural-fingerprint";
                            }
                            | {
                                artifact_sha256: string;
                                key: string;
                                namespace: string;
                                stability: "artifact-version";
                                strategy: "artifact-local-key";
                            }
                            | {
                                capture_sha256: string;
                                runtime_key: string;
                                stability: "capture-only";
                                strategy: "runtime-instance";
                            }
                            | {
                                observation_sha256: string;
                                scope: string;
                                stability: "observation-only";
                                strategy: "observation-fingerprint";
                            };
                            kind: | "unknown"
                            | "target"
                            | "native-addon"
                            | "source-map"
                            | "artifact"
                            | "package"
                            | "storage"
                            | "installer"
                            | "asar-entry"
                            | "electron-main"
                            | "electron-preload"
                            | "electron-renderer"
                            | "electron-utility"
                            | "javascript-asset"
                            | "javascript-chunk"
                            | "javascript-module"
                            | "source-module"
                            | "browser-window"
                            | "frame"
                            | "context-bridge-api"
                            | "ipc-channel"
                            | "ipc-handler"
                            | "worker"
                            | "service-worker"
                            | "endpoint"
                            | "native-export"
                            | "runtime-script-instance";
                            node_id: string;
                            observations: {
                                evidence: {
                                    artifact: | { artifact_id: string; available: true; sha256: string }
                                    | {
                                        available: false;
                                        detail: string;
                                        reason:
                                            | "unknown"
                                            | "truncated"
                                            | "unresolved"
                                            | "not-applicable"
                                            | "not-observed"
                                            | "not-approved"
                                            | "provider-unavailable";
                                    };
                                    authority: | "unknown"
                                    | "controlled-replay"
                                    | "historical-reference"
                                    | "artifact-bytes"
                                    | "ast-static-analysis"
                                    | "static-relationship-inference"
                                    | "passive-cdp-runtime"
                                    | "cross-layer-reconciliation"
                                    | "native-analysis-provider"
                                    | "user-assertion";
                                    confidence: "unknown"
                                    | "exact"
                                    | "low"
                                    | "medium"
                                    | "high";
                                    coverage: {
                                        limits: {
                                            name: string;
                                            unit:
                                                | "other"
                                                | "items"
                                                | "bytes"
                                                | "depth"
                                                | "milliseconds"
                                                | "characters"
                                                | "instructions";
                                            value: number;
                                        }[];
                                        omitted_count: number
                                        | null;
                                        status: "unknown" | "unavailable" | "complete" | "partial";
                                        truncated: boolean;
                                    };
                                    evidence_ids: string[];
                                    extractor: {
                                        executable_sha256: string
                                        | null;
                                        name: string;
                                        operation: string;
                                        version: string;
                                    };
                                    limitations: string[];
                                    location: | {
                                        available: false;
                                        detail: string;
                                        reason: | "unknown"
                                        | "truncated"
                                        | "unresolved"
                                        | "not-applicable"
                                        | "not-observed"
                                        | "not-approved"
                                        | "provider-unavailable";
                                    }
                                    | {
                                        available: true;
                                        value: | {
                                            end: { column: number; line: number };
                                            kind: "source-range";
                                            source: string;
                                            start: { column: number; line: number };
                                        }
                                        | { end: number; kind: "file-offset-range"; start: number }
                                        | { kind: "artifact-path"; path: string }
                                        | { kind: "url"; url: string }
                                        | {
                                            capture_sha256: string;
                                            frame_key: string | null;
                                            kind: "runtime";
                                            script_key: string | null;
                                            target_key: string;
                                        }
                                        | { address: string; kind: "native-address"; symbol: string
                                        | null }
                                        | { export_path: string; kind: "package-export"; package_name: string };
                                    };
                                    state: "unknown"
                                    | "observed"
                                    | "inferred"
                                    | "unavailable";
                                };
                                identifier_strategy: {
                                    stability: "observation-exact";
                                    strategy: "semantic-content-sha256";
                                };
                                label: string
                                | null;
                                observation_id: string;
                                properties: Record<string, JSONType>;
                            }[];
                        }
                        | undefined

                  diff --git a/docs/api/functions/application_JavaScriptArtifactGraphEvidence.artifactObservationEvidence.html b/docs/api/functions/application_JavaScriptArtifactGraphEvidence.artifactObservationEvidence.html index e0ae25958..63d4451e4 100644 --- a/docs/api/functions/application_JavaScriptArtifactGraphEvidence.artifactObservationEvidence.html +++ b/docs/api/functions/application_JavaScriptArtifactGraphEvidence.artifactObservationEvidence.html @@ -14,7 +14,7 @@
                  • - +

                    Exact artifact-byte evidence for one safely inventoried local file.

                    @@ -22,7 +22,7 @@

                    Parameters

                    -

                    Returns {
                        artifact:
                            | { artifact_id: string; available: true; sha256: string }
                            | {
                                available: false;
                                detail: string;
                                reason:
                                    | "unknown"
                                    | "truncated"
                                    | "unresolved"
                                    | "not-applicable"
                                    | "not-observed"
                                    | "not-approved"
                                    | "provider-unavailable";
                            };
                        authority: | "unknown"
                        | "controlled-replay"
                        | "historical-reference"
                        | "artifact-bytes"
                        | "ast-static-analysis"
                        | "static-relationship-inference"
                        | "passive-cdp-runtime"
                        | "cross-layer-reconciliation"
                        | "native-analysis-provider"
                        | "user-assertion";
                        confidence: "unknown"
                        | "exact"
                        | "low"
                        | "medium"
                        | "high";
                        coverage: {
                            limits: {
                                name: string;
                                unit:
                                    | "other"
                                    | "items"
                                    | "bytes"
                                    | "depth"
                                    | "milliseconds"
                                    | "characters"
                                    | "instructions";
                                value: number;
                            }[];
                            omitted_count: number
                            | null;
                            status: "unknown" | "unavailable" | "complete" | "partial";
                            truncated: boolean;
                        };
                        evidence_ids: string[];
                        extractor: {
                            executable_sha256: string
                            | null;
                            name: string;
                            operation: string;
                            version: string;
                        };
                        limitations: string[];
                        location: | {
                            available: false;
                            detail: string;
                            reason: | "unknown"
                            | "truncated"
                            | "unresolved"
                            | "not-applicable"
                            | "not-observed"
                            | "not-approved"
                            | "provider-unavailable";
                        }
                        | {
                            available: true;
                            value: | {
                                end: { column: number; line: number };
                                kind: "source-range";
                                source: string;
                                start: { column: number; line: number };
                            }
                            | { end: number; kind: "file-offset-range"; start: number }
                            | { kind: "artifact-path"; path: string }
                            | { kind: "url"; url: string }
                            | {
                                capture_sha256: string;
                                frame_key: string | null;
                                kind: "runtime";
                                script_key: string | null;
                                target_key: string;
                            }
                            | { address: string; kind: "native-address"; symbol: string
                            | null }
                            | { export_path: string; kind: "package-export"; package_name: string };
                        };
                        state: "unknown"
                        | "observed"
                        | "inferred"
                        | "unavailable";
                    }

                diff --git a/docs/api/functions/application_JavaScriptArtifactGraphEvidence.astObservationEvidence.html b/docs/api/functions/application_JavaScriptArtifactGraphEvidence.astObservationEvidence.html index b7bc5ee0d..2a86cbe4e 100644 --- a/docs/api/functions/application_JavaScriptArtifactGraphEvidence.astObservationEvidence.html +++ b/docs/api/functions/application_JavaScriptArtifactGraphEvidence.astObservationEvidence.html @@ -14,7 +14,7 @@
                • - +

                  Exact AST syntax evidence with an actionable source range.

                  @@ -22,7 +22,7 @@

                  Parameters

                  -

                  Returns {
                      artifact:
                          | { artifact_id: string; available: true; sha256: string }
                          | {
                              available: false;
                              detail: string;
                              reason:
                                  | "unknown"
                                  | "truncated"
                                  | "unresolved"
                                  | "not-applicable"
                                  | "not-observed"
                                  | "not-approved"
                                  | "provider-unavailable";
                          };
                      authority: | "unknown"
                      | "controlled-replay"
                      | "historical-reference"
                      | "artifact-bytes"
                      | "ast-static-analysis"
                      | "static-relationship-inference"
                      | "passive-cdp-runtime"
                      | "cross-layer-reconciliation"
                      | "native-analysis-provider"
                      | "user-assertion";
                      confidence: "unknown"
                      | "exact"
                      | "low"
                      | "medium"
                      | "high";
                      coverage: {
                          limits: {
                              name: string;
                              unit:
                                  | "other"
                                  | "items"
                                  | "bytes"
                                  | "depth"
                                  | "milliseconds"
                                  | "characters"
                                  | "instructions";
                              value: number;
                          }[];
                          omitted_count: number
                          | null;
                          status: "unknown" | "unavailable" | "complete" | "partial";
                          truncated: boolean;
                      };
                      evidence_ids: string[];
                      extractor: {
                          executable_sha256: string
                          | null;
                          name: string;
                          operation: string;
                          version: string;
                      };
                      limitations: string[];
                      location: | {
                          available: false;
                          detail: string;
                          reason: | "unknown"
                          | "truncated"
                          | "unresolved"
                          | "not-applicable"
                          | "not-observed"
                          | "not-approved"
                          | "provider-unavailable";
                      }
                      | {
                          available: true;
                          value: | {
                              end: { column: number; line: number };
                              kind: "source-range";
                              source: string;
                              start: { column: number; line: number };
                          }
                          | { end: number; kind: "file-offset-range"; start: number }
                          | { kind: "artifact-path"; path: string }
                          | { kind: "url"; url: string }
                          | {
                              capture_sha256: string;
                              frame_key: string | null;
                              kind: "runtime";
                              script_key: string | null;
                              target_key: string;
                          }
                          | { address: string; kind: "native-address"; symbol: string
                          | null }
                          | { export_path: string; kind: "package-export"; package_name: string };
                      };
                      state: "unknown"
                      | "observed"
                      | "inferred"
                      | "unavailable";
                  }

              diff --git a/docs/api/functions/application_JavaScriptArtifactGraphEvidence.staticInferenceEvidence.html b/docs/api/functions/application_JavaScriptArtifactGraphEvidence.staticInferenceEvidence.html index 304dfdf49..20b20841e 100644 --- a/docs/api/functions/application_JavaScriptArtifactGraphEvidence.staticInferenceEvidence.html +++ b/docs/api/functions/application_JavaScriptArtifactGraphEvidence.staticInferenceEvidence.html @@ -14,7 +14,7 @@
              • - +

                Explicit static relationship inference; never promoted to observation.

                @@ -22,7 +22,7 @@

                Parameters

                • input: EvidenceInput & { confidence?: "low" | "medium" | "high" }
                -

                Returns {
                    artifact:
                        | { artifact_id: string; available: true; sha256: string }
                        | {
                            available: false;
                            detail: string;
                            reason:
                                | "unknown"
                                | "truncated"
                                | "unresolved"
                                | "not-applicable"
                                | "not-observed"
                                | "not-approved"
                                | "provider-unavailable";
                        };
                    authority: | "unknown"
                    | "controlled-replay"
                    | "historical-reference"
                    | "artifact-bytes"
                    | "ast-static-analysis"
                    | "static-relationship-inference"
                    | "passive-cdp-runtime"
                    | "cross-layer-reconciliation"
                    | "native-analysis-provider"
                    | "user-assertion";
                    confidence: "unknown"
                    | "exact"
                    | "low"
                    | "medium"
                    | "high";
                    coverage: {
                        limits: {
                            name: string;
                            unit:
                                | "other"
                                | "items"
                                | "bytes"
                                | "depth"
                                | "milliseconds"
                                | "characters"
                                | "instructions";
                            value: number;
                        }[];
                        omitted_count: number
                        | null;
                        status: "unknown" | "unavailable" | "complete" | "partial";
                        truncated: boolean;
                    };
                    evidence_ids: string[];
                    extractor: {
                        executable_sha256: string
                        | null;
                        name: string;
                        operation: string;
                        version: string;
                    };
                    limitations: string[];
                    location: | {
                        available: false;
                        detail: string;
                        reason: | "unknown"
                        | "truncated"
                        | "unresolved"
                        | "not-applicable"
                        | "not-observed"
                        | "not-approved"
                        | "provider-unavailable";
                    }
                    | {
                        available: true;
                        value: | {
                            end: { column: number; line: number };
                            kind: "source-range";
                            source: string;
                            start: { column: number; line: number };
                        }
                        | { end: number; kind: "file-offset-range"; start: number }
                        | { kind: "artifact-path"; path: string }
                        | { kind: "url"; url: string }
                        | {
                            capture_sha256: string;
                            frame_key: string | null;
                            kind: "runtime";
                            script_key: string | null;
                            target_key: string;
                        }
                        | { address: string; kind: "native-address"; symbol: string
                        | null }
                        | { export_path: string; kind: "package-export"; package_name: string };
                    };
                    state: "unknown"
                    | "observed"
                    | "inferred"
                    | "unavailable";
                }

              diff --git a/docs/api/functions/application_JavaScriptArtifactGraphEvidence.unavailableAstEvidence.html b/docs/api/functions/application_JavaScriptArtifactGraphEvidence.unavailableAstEvidence.html index d2cec2f50..5cffc6a76 100644 --- a/docs/api/functions/application_JavaScriptArtifactGraphEvidence.unavailableAstEvidence.html +++ b/docs/api/functions/application_JavaScriptArtifactGraphEvidence.unavailableAstEvidence.html @@ -14,7 +14,7 @@
              • - +

                Unavailable AST fact that preserves a parse, approval, or limit gap.

                @@ -22,7 +22,7 @@

                Parameters

                -

                Returns {
                    artifact:
                        | { artifact_id: string; available: true; sha256: string }
                        | {
                            available: false;
                            detail: string;
                            reason:
                                | "unknown"
                                | "truncated"
                                | "unresolved"
                                | "not-applicable"
                                | "not-observed"
                                | "not-approved"
                                | "provider-unavailable";
                        };
                    authority: | "unknown"
                    | "controlled-replay"
                    | "historical-reference"
                    | "artifact-bytes"
                    | "ast-static-analysis"
                    | "static-relationship-inference"
                    | "passive-cdp-runtime"
                    | "cross-layer-reconciliation"
                    | "native-analysis-provider"
                    | "user-assertion";
                    confidence: "unknown"
                    | "exact"
                    | "low"
                    | "medium"
                    | "high";
                    coverage: {
                        limits: {
                            name: string;
                            unit:
                                | "other"
                                | "items"
                                | "bytes"
                                | "depth"
                                | "milliseconds"
                                | "characters"
                                | "instructions";
                            value: number;
                        }[];
                        omitted_count: number
                        | null;
                        status: "unknown" | "unavailable" | "complete" | "partial";
                        truncated: boolean;
                    };
                    evidence_ids: string[];
                    extractor: {
                        executable_sha256: string
                        | null;
                        name: string;
                        operation: string;
                        version: string;
                    };
                    limitations: string[];
                    location: | {
                        available: false;
                        detail: string;
                        reason: | "unknown"
                        | "truncated"
                        | "unresolved"
                        | "not-applicable"
                        | "not-observed"
                        | "not-approved"
                        | "provider-unavailable";
                    }
                    | {
                        available: true;
                        value: | {
                            end: { column: number; line: number };
                            kind: "source-range";
                            source: string;
                            start: { column: number; line: number };
                        }
                        | { end: number; kind: "file-offset-range"; start: number }
                        | { kind: "artifact-path"; path: string }
                        | { kind: "url"; url: string }
                        | {
                            capture_sha256: string;
                            frame_key: string | null;
                            kind: "runtime";
                            script_key: string | null;
                            target_key: string;
                        }
                        | { address: string; kind: "native-address"; symbol: string
                        | null }
                        | { export_path: string; kind: "package-export"; package_name: string };
                    };
                    state: "unknown"
                    | "observed"
                    | "inferred"
                    | "unavailable";
                }

              diff --git a/docs/api/functions/application_JavaScriptArtifactGraphStructure.addJavaScriptPackageNodes.html b/docs/api/functions/application_JavaScriptArtifactGraphStructure.addJavaScriptPackageNodes.html index fab3a3dfc..cf8ed670e 100644 --- a/docs/api/functions/application_JavaScriptArtifactGraphStructure.addJavaScriptPackageNodes.html +++ b/docs/api/functions/application_JavaScriptArtifactGraphStructure.addJavaScriptPackageNodes.html @@ -14,7 +14,7 @@
              diff --git a/docs/api/functions/application_JavaScriptArtifactGraphStructure.createJavaScriptArtifactRootNode.html b/docs/api/functions/application_JavaScriptArtifactGraphStructure.createJavaScriptArtifactRootNode.html index c963aeeb3..3e543574b 100644 --- a/docs/api/functions/application_JavaScriptArtifactGraphStructure.createJavaScriptArtifactRootNode.html +++ b/docs/api/functions/application_JavaScriptArtifactGraphStructure.createJavaScriptArtifactRootNode.html @@ -14,7 +14,7 @@
              diff --git a/docs/api/functions/application_JavaScriptRuntimeReconciliationEvidence.createJavaScriptRuntimeReconciliationEvidence.html b/docs/api/functions/application_JavaScriptRuntimeReconciliationEvidence.createJavaScriptRuntimeReconciliationEvidence.html index 3febee4c9..4c5bf116b 100644 --- a/docs/api/functions/application_JavaScriptRuntimeReconciliationEvidence.createJavaScriptRuntimeReconciliationEvidence.html +++ b/docs/api/functions/application_JavaScriptRuntimeReconciliationEvidence.createJavaScriptRuntimeReconciliationEvidence.html @@ -14,7 +14,7 @@

              Returns
                  | {
                      analysis_profile: {
                          digest: string;
                          parameters: Record<string, JSONType>;
                          provider: { id: string; name: string; version: string };
                          provider_profile_schema_version: number;
                          schema_version: 1;
                      };
                      authority: | "shipped-artifact"
                      | "controlled-replay"
                      | "historical-reference"
                      | "external-service"
                      | "analyst-inference";
                      confidence: "observed"
                      | "derived"
                      | "inferred";
                      environment:
                          | {
                              architecture: string;
                              id: string;
                              isolation: "process"
                              | "none"
                              | "container"
                              | "virtual-machine";
                              platform: string;
                          }
                          | null;
                      evidence_id: string;
                      evidence_links: string[];
                      limitations: string[];
                      locations: (
                          | { address: string; kind: "address" }
                          | { end: string; kind: "address-range"; start: string }
                          | { kind: "artifact-path"; path: string }
                          | { kind: "file-offset"; offset: number }
                          | { end: number; kind: "file-offset-range"; start: number }
                      )[];
                      normalized_result: JSONType;
                      operation: string;
                      parameters: Record<string, JSONType>;
                      predicate_type: string;
                      provider: { id: string; name: string; version: string | null };
                      raw_result: JSONType;
                      schema_version: 2;
                      subject:
                          | {
                              architecture: "x86"
                              | "x86_64"
                              | "arm"
                              | "arm64"
                              | null;
                              digest: { sha256: string };
                              format:
                                  | "unknown"
                                  | "file"
                                  | "directory"
                                  | "javascript"
                                  | "source-map"
                                  | "plist"
                                  | "entitlements"
                                  | "dmg"
                                  | "zip"
                                  | "pkg"
                                  | "asar"
                                  | "javascript-bundle"
                                  | "mach-o-universal"
                                  | "mach-o"
                                  | "elf"
                                  | "pe"
                                  | "hopper"
                                  | "analysis-database"
                                  | "ipa"
                                  | "apk";
                              local_path: string;
                              name: string;
                          }
                          | null;
                  }
                  | {
                      authority: | "shipped-artifact"
                      | "controlled-replay"
                      | "historical-reference"
                      | "external-service"
                      | "analyst-inference";
                      confidence: "observed"
                      | "derived"
                      | "inferred";
                      environment:
                          | {
                              architecture: string;
                              id: string;
                              isolation: "process"
                              | "none"
                              | "container"
                              | "virtual-machine";
                              platform: string;
                          }
                          | null;
                      evidence_id: string;
                      evidence_links: string[];
                      limitations: string[];
                      locations: (
                          | { address: string; kind: "address" }
                          | { end: string; kind: "address-range"; start: string }
                          | { kind: "artifact-path"; path: string }
                          | { kind: "file-offset"; offset: number }
                          | { end: number; kind: "file-offset-range"; start: number }
                      )[];
                      normalized_result: JSONType;
                      operation: string;
                      parameters: Record<string, JSONType>;
                      predicate_type: string;
                      provider: { id: string; name: string; version: string | null };
                      raw_result: JSONType;
                      schema_version: 2;
                      subject:
                          | {
                              architecture: "x86"
                              | "x86_64"
                              | "arm"
                              | "arm64"
                              | null;
                              digest: { sha256: string };
                              format:
                                  | "unknown"
                                  | "file"
                                  | "directory"
                                  | "javascript"
                                  | "source-map"
                                  | "plist"
                                  | "entitlements"
                                  | "dmg"
                                  | "zip"
                                  | "pkg"
                                  | "asar"
                                  | "javascript-bundle"
                                  | "mach-o-universal"
                                  | "mach-o"
                                  | "elf"
                                  | "pe"
                                  | "hopper"
                                  | "analysis-database"
                                  | "ipa"
                                  | "apk";
                              local_path: string;
                              name: string;
                          }
                          | null;
                  }

              diff --git a/docs/api/functions/cli.createCli.html b/docs/api/functions/cli.createCli.html index c52ac1bb6..8ae676759 100644 --- a/docs/api/functions/cli.createCli.html +++ b/docs/api/functions/cli.createCli.html @@ -22,7 +22,7 @@ Analysis commands acquire and close their own sessions; bare mcp an

              Returns Cli<{}>

              +
            • Defined in src/cli.ts:50
            • diff --git a/docs/api/functions/domain_javascriptApplicationGraph.createJavaScriptApplicationGraph.html b/docs/api/functions/domain_javascriptApplicationGraph.createJavaScriptApplicationGraph.html index a87dcd73b..e8b6b6d00 100644 --- a/docs/api/functions/domain_javascriptApplicationGraph.createJavaScriptApplicationGraph.html +++ b/docs/api/functions/domain_javascriptApplicationGraph.createJavaScriptApplicationGraph.html @@ -14,7 +14,7 @@
              • - +

                Normalize a complete graph and derive its top-level semantic ID.

                @@ -22,7 +22,7 @@

                Parameters

                • input: unknown
                -

                Returns {
                    coverage: {
                        limits: {
                            name: string;
                            unit:
                                | "other"
                                | "items"
                                | "bytes"
                                | "depth"
                                | "milliseconds"
                                | "characters"
                                | "instructions";
                            value: number;
                        }[];
                        omitted_count: number
                        | null;
                        status: "unknown" | "unavailable" | "complete" | "partial";
                        truncated: boolean;
                    };
                    edges: {
                        edge_id: string;
                        evidence: {
                            artifact: | { artifact_id: string; available: true; sha256: string }
                            | {
                                available: false;
                                detail: string;
                                reason:
                                    | "unknown"
                                    | "truncated"
                                    | "unresolved"
                                    | "not-applicable"
                                    | "not-observed"
                                    | "not-approved"
                                    | "provider-unavailable";
                            };
                            authority: | "unknown"
                            | "controlled-replay"
                            | "historical-reference"
                            | "artifact-bytes"
                            | "ast-static-analysis"
                            | "static-relationship-inference"
                            | "passive-cdp-runtime"
                            | "cross-layer-reconciliation"
                            | "native-analysis-provider"
                            | "user-assertion";
                            confidence: "unknown"
                            | "exact"
                            | "low"
                            | "medium"
                            | "high";
                            coverage: {
                                limits: {
                                    name: string;
                                    unit:
                                        | "other"
                                        | "items"
                                        | "bytes"
                                        | "depth"
                                        | "milliseconds"
                                        | "characters"
                                        | "instructions";
                                    value: number;
                                }[];
                                omitted_count: number
                                | null;
                                status: "unknown" | "unavailable" | "complete" | "partial";
                                truncated: boolean;
                            };
                            evidence_ids: string[];
                            extractor: {
                                executable_sha256: string
                                | null;
                                name: string;
                                operation: string;
                                version: string;
                            };
                            limitations: string[];
                            location: | {
                                available: false;
                                detail: string;
                                reason: | "unknown"
                                | "truncated"
                                | "unresolved"
                                | "not-applicable"
                                | "not-observed"
                                | "not-approved"
                                | "provider-unavailable";
                            }
                            | {
                                available: true;
                                value: | {
                                    end: { column: number; line: number };
                                    kind: "source-range";
                                    source: string;
                                    start: { column: number; line: number };
                                }
                                | { end: number; kind: "file-offset-range"; start: number }
                                | { kind: "artifact-path"; path: string }
                                | { kind: "url"; url: string }
                                | {
                                    capture_sha256: string;
                                    frame_key: string | null;
                                    kind: "runtime";
                                    script_key: string | null;
                                    target_key: string;
                                }
                                | { address: string; kind: "native-address"; symbol: string
                                | null }
                                | { export_path: string; kind: "package-export"; package_name: string };
                            };
                            state: "unknown"
                            | "observed"
                            | "inferred"
                            | "unavailable";
                        };
                        identifier_strategy: {
                            stability: "relationship-exact";
                            strategy: "semantic-content-sha256";
                        };
                        properties: Record<string, JSONType>;
                        relation:
                            | "contains"
                            | "loads"
                            | "calls"
                            | "imports"
                            | "maps_to"
                            | "exposes"
                            | "sends"
                            | "invokes"
                            | "handles"
                            | "persists_to"
                            | "observed_as"
                            | "changed_from";
                        source_node_id: string;
                        target_node_id: string;
                    }[];
                    graph_id: string;
                    limitations: string[];
                    nodes: {
                        identity: | {
                            sha256: string;
                            stability: "global-exact";
                            strategy: "content-digest";
                        }
                        | {
                            original_source: string;
                            source_map_sha256: string;
                            source_sha256: string
                            | null;
                            stability: "source-map-exact";
                            strategy: "source-map-original";
                        }
                        | {
                            artifact_sha256: string;
                            path: string;
                            stability: "artifact-version";
                            strategy: "canonical-path";
                        }
                        | {
                            algorithm: string;
                            basis: (
                                | "imports"
                                | "exports"
                                | "syntax-tree"
                                | "control-flow"
                                | "literals"
                                | "api-usage"
                            )[];
                            fingerprint_sha256: string;
                            stability: "cross-version-inference";
                            strategy: "structural-fingerprint";
                        }
                        | {
                            artifact_sha256: string;
                            key: string;
                            namespace: string;
                            stability: "artifact-version";
                            strategy: "artifact-local-key";
                        }
                        | {
                            capture_sha256: string;
                            runtime_key: string;
                            stability: "capture-only";
                            strategy: "runtime-instance";
                        }
                        | {
                            observation_sha256: string;
                            scope: string;
                            stability: "observation-only";
                            strategy: "observation-fingerprint";
                        };
                        kind: | "unknown"
                        | "target"
                        | "native-addon"
                        | "source-map"
                        | "artifact"
                        | "package"
                        | "storage"
                        | "installer"
                        | "asar-entry"
                        | "electron-main"
                        | "electron-preload"
                        | "electron-renderer"
                        | "electron-utility"
                        | "javascript-asset"
                        | "javascript-chunk"
                        | "javascript-module"
                        | "source-module"
                        | "browser-window"
                        | "frame"
                        | "context-bridge-api"
                        | "ipc-channel"
                        | "ipc-handler"
                        | "worker"
                        | "service-worker"
                        | "endpoint"
                        | "native-export"
                        | "runtime-script-instance";
                        node_id: string;
                        observations: {
                            evidence: {
                                artifact: | { artifact_id: string; available: true; sha256: string }
                                | {
                                    available: false;
                                    detail: string;
                                    reason:
                                        | "unknown"
                                        | "truncated"
                                        | "unresolved"
                                        | "not-applicable"
                                        | "not-observed"
                                        | "not-approved"
                                        | "provider-unavailable";
                                };
                                authority: | "unknown"
                                | "controlled-replay"
                                | "historical-reference"
                                | "artifact-bytes"
                                | "ast-static-analysis"
                                | "static-relationship-inference"
                                | "passive-cdp-runtime"
                                | "cross-layer-reconciliation"
                                | "native-analysis-provider"
                                | "user-assertion";
                                confidence: "unknown"
                                | "exact"
                                | "low"
                                | "medium"
                                | "high";
                                coverage: {
                                    limits: {
                                        name: string;
                                        unit:
                                            | "other"
                                            | "items"
                                            | "bytes"
                                            | "depth"
                                            | "milliseconds"
                                            | "characters"
                                            | "instructions";
                                        value: number;
                                    }[];
                                    omitted_count: number
                                    | null;
                                    status: "unknown" | "unavailable" | "complete" | "partial";
                                    truncated: boolean;
                                };
                                evidence_ids: string[];
                                extractor: {
                                    executable_sha256: string
                                    | null;
                                    name: string;
                                    operation: string;
                                    version: string;
                                };
                                limitations: string[];
                                location: | {
                                    available: false;
                                    detail: string;
                                    reason: | "unknown"
                                    | "truncated"
                                    | "unresolved"
                                    | "not-applicable"
                                    | "not-observed"
                                    | "not-approved"
                                    | "provider-unavailable";
                                }
                                | {
                                    available: true;
                                    value: | {
                                        end: { column: ...; line: ... };
                                        kind: "source-range";
                                        source: string;
                                        start: { column: ...; line: ... };
                                    }
                                    | { end: number; kind: "file-offset-range"; start: number }
                                    | { kind: "artifact-path"; path: string }
                                    | { kind: "url"; url: string }
                                    | {
                                        capture_sha256: string;
                                        frame_key: (...) | (...);
                                        kind: "runtime";
                                        script_key: (...) | (...);
                                        target_key: string;
                                    }
                                    | { address: string; kind: "native-address"; symbol: (...)
                                    | (...) }
                                    | { export_path: string; kind: "package-export"; package_name: string };
                                };
                                state: "unknown"
                                | "observed"
                                | "inferred"
                                | "unavailable";
                            };
                            identifier_strategy: {
                                stability: "observation-exact";
                                strategy: "semantic-content-sha256";
                            };
                            label: string
                            | null;
                            observation_id: string;
                            properties: Record<string, JSONType>;
                        }[];
                    }[];
                    root_node_ids: string[];
                    schema: "JavaScriptApplicationGraph";
                    schema_version: 1;
                }

              diff --git a/docs/api/functions/domain_javascriptApplicationGraph.createJavaScriptApplicationNode.html b/docs/api/functions/domain_javascriptApplicationGraph.createJavaScriptApplicationNode.html index 9400705ba..c6c6dc3c2 100644 --- a/docs/api/functions/domain_javascriptApplicationGraph.createJavaScriptApplicationNode.html +++ b/docs/api/functions/domain_javascriptApplicationGraph.createJavaScriptApplicationNode.html @@ -14,7 +14,7 @@
              diff --git a/docs/api/functions/domain_javascriptApplicationGraph.parseJavaScriptApplicationGraph.html b/docs/api/functions/domain_javascriptApplicationGraph.parseJavaScriptApplicationGraph.html index ce730a771..eeb881f17 100644 --- a/docs/api/functions/domain_javascriptApplicationGraph.parseJavaScriptApplicationGraph.html +++ b/docs/api/functions/domain_javascriptApplicationGraph.parseJavaScriptApplicationGraph.html @@ -14,7 +14,7 @@
              diff --git a/docs/api/functions/domain_javascriptApplicationVersionComparison.compareJavaScriptApplicationVersions.html b/docs/api/functions/domain_javascriptApplicationVersionComparison.compareJavaScriptApplicationVersions.html new file mode 100644 index 000000000..d8b9c8d28 --- /dev/null +++ b/docs/api/functions/domain_javascriptApplicationVersionComparison.compareJavaScriptApplicationVersions.html @@ -0,0 +1,44 @@ +compareJavaScriptApplicationVersions | rea-agents - v1.7.0
              +
              rea-agents - v1.7.0 + +
                +
                +
                Preparing search index...
                +
                +
                + +
                +
                  +
                • + +
                  +

                  Compare application entities with ordered unique-only identity tiers.

                  +
                  + +

                  Returns {
                      comparison_id: string;
                      coverage: {
                          left_graph_status: "unknown" | "unavailable" | "complete" | "partial";
                          omitted_candidate_references: number;
                          omitted_comparison_items: number;
                          omitted_graph_edges: number;
                          omitted_graph_nodes: number;
                          omitted_graph_observations: number;
                          right_graph_status: "unknown" | "unavailable" | "complete" | "partial";
                          status: "truncated" | "partial" | "complete-within-inputs";
                      };
                      evidence_links: string[];
                      graph: {
                          coverage: {
                              limits: {
                                  name: string;
                                  unit: | "other"
                                  | "items"
                                  | "bytes"
                                  | "depth"
                                  | "milliseconds"
                                  | "characters"
                                  | "instructions";
                                  value: number;
                              }[];
                              omitted_count: number
                              | null;
                              status: "unknown" | "unavailable" | "complete" | "partial";
                              truncated: boolean;
                          };
                          edges: {
                              edge_id: string;
                              evidence: {
                                  artifact: | { artifact_id: string; available: true; sha256: string }
                                  | {
                                      available: false;
                                      detail: string;
                                      reason:
                                          | "unknown"
                                          | "truncated"
                                          | "unresolved"
                                          | "not-applicable"
                                          | "not-observed"
                                          | "not-approved"
                                          | "provider-unavailable";
                                  };
                                  authority: | "unknown"
                                  | "controlled-replay"
                                  | "historical-reference"
                                  | "artifact-bytes"
                                  | "ast-static-analysis"
                                  | "static-relationship-inference"
                                  | "passive-cdp-runtime"
                                  | "cross-layer-reconciliation"
                                  | "cross-version-comparison"
                                  | "native-analysis-provider"
                                  | "user-assertion";
                                  confidence: "unknown"
                                  | "exact"
                                  | "low"
                                  | "medium"
                                  | "high";
                                  coverage: {
                                      limits: {
                                          name: string;
                                          unit:
                                              | "other"
                                              | "items"
                                              | "bytes"
                                              | "depth"
                                              | "milliseconds"
                                              | "characters"
                                              | "instructions";
                                          value: number;
                                      }[];
                                      omitted_count: number
                                      | null;
                                      status: "unknown" | "unavailable" | "complete" | "partial";
                                      truncated: boolean;
                                  };
                                  evidence_ids: string[];
                                  extractor: {
                                      executable_sha256: string
                                      | null;
                                      name: string;
                                      operation: string;
                                      version: string;
                                  };
                                  limitations: string[];
                                  location: | {
                                      available: false;
                                      detail: string;
                                      reason: | "unknown"
                                      | "truncated"
                                      | "unresolved"
                                      | "not-applicable"
                                      | "not-observed"
                                      | "not-approved"
                                      | "provider-unavailable";
                                  }
                                  | {
                                      available: true;
                                      value: | {
                                          end: { column: number; line: number };
                                          kind: "source-range";
                                          source: string;
                                          start: { column: number; line: number };
                                      }
                                      | { end: number; kind: "file-offset-range"; start: number }
                                      | { kind: "artifact-path"; path: string }
                                      | { kind: "url"; url: string }
                                      | {
                                          capture_sha256: string;
                                          frame_key: string | null;
                                          kind: "runtime";
                                          script_key: string | null;
                                          target_key: string;
                                      }
                                      | { address: string; kind: "native-address"; symbol: string
                                      | null }
                                      | { export_path: string; kind: "package-export"; package_name: string };
                                  };
                                  state: "unknown"
                                  | "observed"
                                  | "inferred"
                                  | "unavailable";
                              };
                              identifier_strategy: {
                                  stability: "relationship-exact";
                                  strategy: "semantic-content-sha256";
                              };
                              properties: Record<string, JSONType>;
                              relation:
                                  | "contains"
                                  | "loads"
                                  | "calls"
                                  | "imports"
                                  | "maps_to"
                                  | "exposes"
                                  | "sends"
                                  | "invokes"
                                  | "handles"
                                  | "persists_to"
                                  | "observed_as"
                                  | "changed_from";
                              source_node_id: string;
                              target_node_id: string;
                          }[];
                          graph_id: string;
                          limitations: string[];
                          nodes: {
                              identity: | {
                                  sha256: string;
                                  stability: "global-exact";
                                  strategy: "content-digest";
                              }
                              | {
                                  original_source: string;
                                  source_map_sha256: string;
                                  source_sha256: string
                                  | null;
                                  stability: "source-map-exact";
                                  strategy: "source-map-original";
                              }
                              | {
                                  artifact_sha256: string;
                                  path: string;
                                  stability: "artifact-version";
                                  strategy: "canonical-path";
                              }
                              | {
                                  algorithm: string;
                                  basis: (
                                      | "imports"
                                      | "exports"
                                      | "syntax-tree"
                                      | "control-flow"
                                      | "literals"
                                      | "api-usage"
                                  )[];
                                  fingerprint_sha256: string;
                                  stability: "cross-version-inference";
                                  strategy: "structural-fingerprint";
                              }
                              | {
                                  artifact_sha256: string;
                                  key: string;
                                  namespace: string;
                                  stability: "artifact-version";
                                  strategy: "artifact-local-key";
                              }
                              | {
                                  capture_sha256: string;
                                  runtime_key: string;
                                  stability: "capture-only";
                                  strategy: "runtime-instance";
                              }
                              | {
                                  observation_sha256: string;
                                  scope: string;
                                  stability: "observation-only";
                                  strategy: "observation-fingerprint";
                              };
                              kind: | "unknown"
                              | "target"
                              | "native-addon"
                              | "source-map"
                              | "artifact"
                              | "package"
                              | "storage"
                              | "installer"
                              | "asar-entry"
                              | "electron-main"
                              | "electron-preload"
                              | "electron-renderer"
                              | "electron-utility"
                              | "javascript-asset"
                              | "javascript-chunk"
                              | "javascript-module"
                              | "source-module"
                              | "browser-window"
                              | "frame"
                              | "context-bridge-api"
                              | "ipc-channel"
                              | "ipc-handler"
                              | "worker"
                              | "service-worker"
                              | "endpoint"
                              | "native-export"
                              | "runtime-script-instance";
                              node_id: string;
                              observations: {
                                  evidence: {
                                      artifact: | { artifact_id: string; available: true; sha256: string }
                                      | {
                                          available: false;
                                          detail: string;
                                          reason:
                                              | "unknown"
                                              | "truncated"
                                              | "unresolved"
                                              | "not-applicable"
                                              | "not-observed"
                                              | "not-approved"
                                              | "provider-unavailable";
                                      };
                                      authority: | "unknown"
                                      | "controlled-replay"
                                      | "historical-reference"
                                      | "artifact-bytes"
                                      | "ast-static-analysis"
                                      | "static-relationship-inference"
                                      | "passive-cdp-runtime"
                                      | "cross-layer-reconciliation"
                                      | "cross-version-comparison"
                                      | "native-analysis-provider"
                                      | "user-assertion";
                                      confidence: "unknown"
                                      | "exact"
                                      | "low"
                                      | "medium"
                                      | "high";
                                      coverage: {
                                          limits: {
                                              name: string;
                                              unit: (...) | (...) | (...) | (...) | (...) | (...) | (...);
                                              value: number;
                                          }[];
                                          omitted_count: number
                                          | null;
                                          status: "unknown" | "unavailable" | "complete" | "partial";
                                          truncated: boolean;
                                      };
                                      evidence_ids: string[];
                                      extractor: {
                                          executable_sha256: string
                                          | null;
                                          name: string;
                                          operation: string;
                                          version: string;
                                      };
                                      limitations: string[];
                                      location: | {
                                          available: false;
                                          detail: string;
                                          reason: | "unknown"
                                          | "truncated"
                                          | "unresolved"
                                          | "not-applicable"
                                          | "not-observed"
                                          | "not-approved"
                                          | "provider-unavailable";
                                      }
                                      | {
                                          available: true;
                                          value: | { end: ...; kind: ...; source: ...; start: ... }
                                          | { end: ...; kind: ...; start: ... }
                                          | { kind: ...; path: ... }
                                          | { kind: ...; url: ... }
                                          | {
                                              capture_sha256: ...;
                                              frame_key: ...;
                                              kind: ...;
                                              script_key: ...;
                                              target_key: ...;
                                          }
                                          | { address: ...; kind: ...; symbol: ... }
                                          | { export_path: ...; kind: ...; package_name: ... };
                                      };
                                      state: "unknown"
                                      | "observed"
                                      | "inferred"
                                      | "unavailable";
                                  };
                                  identifier_strategy: {
                                      stability: "observation-exact";
                                      strategy: "semantic-content-sha256";
                                  };
                                  label: string
                                  | null;
                                  observation_id: string;
                                  properties: Record<string, JSONType>;
                              }[];
                          }[];
                          root_node_ids: string[];
                          schema: "JavaScriptApplicationGraph";
                          schema_version: 1;
                      };
                      items: {
                          dimensions: (
                              | "relationships"
                              | "content"
                              | "availability"
                              | "properties"
                              | "location"
                              | "coverage"
                          )[];
                          evidence_links: string[];
                          item_id: string;
                          left_node_id: string
                          | null;
                          limitations: string[];
                          match: {
                              basis:
                                  | "none"
                                  | "structural-fingerprint"
                                  | "exact-node-identity"
                                  | "exact-content-digest"
                                  | "exact-module-source-digest"
                                  | "source-map-identity"
                                  | "semantic-key";
                              candidate_left_node_ids: string[];
                              candidate_right_node_ids: string[];
                              confidence: "unknown"
                              | "exact"
                              | "medium"
                              | "high";
                              status: "matched" | "unmatched" | "ambiguous";
                          };
                          node_kind: | "unknown"
                          | "target"
                          | "native-addon"
                          | "source-map"
                          | "artifact"
                          | "package"
                          | "storage"
                          | "installer"
                          | "asar-entry"
                          | "electron-main"
                          | "electron-preload"
                          | "electron-renderer"
                          | "electron-utility"
                          | "javascript-asset"
                          | "javascript-chunk"
                          | "javascript-module"
                          | "source-module"
                          | "browser-window"
                          | "frame"
                          | "context-bridge-api"
                          | "ipc-channel"
                          | "ipc-handler"
                          | "worker"
                          | "service-worker"
                          | "endpoint"
                          | "native-export"
                          | "runtime-script-instance";
                          right_node_id: string
                          | null;
                          status: "unknown" | "unchanged" | "added" | "removed" | "changed";
                      }[];
                      left: {
                          evidence_id: string;
                          graph_id: string;
                          root_artifact_sha256: string;
                      };
                      limitations: string[];
                      matching: {
                          ambiguous: number;
                          exact_content_digest: number;
                          exact_module_source_digest: number;
                          exact_node_identity: number;
                          semantic_key: number;
                          source_map_identity: number;
                          structural_fingerprint: number;
                          unmatched: number;
                      };
                      right: {
                          evidence_id: string;
                          graph_id: string;
                          root_artifact_sha256: string;
                      };
                      schema_version: 1;
                      summary: {
                          added: number;
                          changed: number;
                          removed: number;
                          unchanged: number;
                          unknown: number;
                      };
                  }

                +
                + +
                +
                diff --git a/docs/api/functions/domain_javascriptApplicationVersionItems.classifyJavaScriptApplicationVersions.html b/docs/api/functions/domain_javascriptApplicationVersionItems.classifyJavaScriptApplicationVersions.html new file mode 100644 index 000000000..dcb5a6a28 --- /dev/null +++ b/docs/api/functions/domain_javascriptApplicationVersionItems.classifyJavaScriptApplicationVersions.html @@ -0,0 +1,45 @@ +classifyJavaScriptApplicationVersions | rea-agents - v1.7.0
                +
                rea-agents - v1.7.0 + +
                  +
                  +
                  Preparing search index...
                  +
                  +
                  +
                  + +

                  Function classifyJavaScriptApplicationVersions

                  +
                  +
                  +
                  + +
                  +
                  diff --git a/docs/api/functions/domain_javascriptApplicationVersionKeys.matchJavaScriptApplicationVersions.html b/docs/api/functions/domain_javascriptApplicationVersionKeys.matchJavaScriptApplicationVersions.html new file mode 100644 index 000000000..dcbc2cf5a --- /dev/null +++ b/docs/api/functions/domain_javascriptApplicationVersionKeys.matchJavaScriptApplicationVersions.html @@ -0,0 +1,45 @@ +matchJavaScriptApplicationVersions | rea-agents - v1.7.0
                  +
                  rea-agents - v1.7.0 + +
                    +
                    +
                    Preparing search index...
                    +
                    +
                    +
                    + +

                    Function matchJavaScriptApplicationVersions

                    +
                    +
                      +
                    • + +
                      +

                      Apply ordered, unique-only matching tiers without fuzzy pairing.

                      +
                      +
                      +

                      Parameters

                      +
                        +
                      • leftNodes: readonly {
                            identity:
                                | {
                                    sha256: string;
                                    stability: "global-exact";
                                    strategy: "content-digest";
                                }
                                | {
                                    original_source: string;
                                    source_map_sha256: string;
                                    source_sha256: string
                                    | null;
                                    stability: "source-map-exact";
                                    strategy: "source-map-original";
                                }
                                | {
                                    artifact_sha256: string;
                                    path: string;
                                    stability: "artifact-version";
                                    strategy: "canonical-path";
                                }
                                | {
                                    algorithm: string;
                                    basis: (
                                        | "imports"
                                        | "exports"
                                        | "syntax-tree"
                                        | "control-flow"
                                        | "literals"
                                        | "api-usage"
                                    )[];
                                    fingerprint_sha256: string;
                                    stability: "cross-version-inference";
                                    strategy: "structural-fingerprint";
                                }
                                | {
                                    artifact_sha256: string;
                                    key: string;
                                    namespace: string;
                                    stability: "artifact-version";
                                    strategy: "artifact-local-key";
                                }
                                | {
                                    capture_sha256: string;
                                    runtime_key: string;
                                    stability: "capture-only";
                                    strategy: "runtime-instance";
                                }
                                | {
                                    observation_sha256: string;
                                    scope: string;
                                    stability: "observation-only";
                                    strategy: "observation-fingerprint";
                                };
                            kind: | "unknown"
                            | "target"
                            | "native-addon"
                            | "source-map"
                            | "artifact"
                            | "package"
                            | "storage"
                            | "installer"
                            | "asar-entry"
                            | "electron-main"
                            | "electron-preload"
                            | "electron-renderer"
                            | "electron-utility"
                            | "javascript-asset"
                            | "javascript-chunk"
                            | "javascript-module"
                            | "source-module"
                            | "browser-window"
                            | "frame"
                            | "context-bridge-api"
                            | "ipc-channel"
                            | "ipc-handler"
                            | "worker"
                            | "service-worker"
                            | "endpoint"
                            | "native-export"
                            | "runtime-script-instance";
                            node_id: string;
                            observations: {
                                evidence: {
                                    artifact: | { artifact_id: string; available: true; sha256: string }
                                    | {
                                        available: false;
                                        detail: string;
                                        reason:
                                            | "unknown"
                                            | "truncated"
                                            | "unresolved"
                                            | "not-applicable"
                                            | "not-observed"
                                            | "not-approved"
                                            | "provider-unavailable";
                                    };
                                    authority: | "unknown"
                                    | "controlled-replay"
                                    | "historical-reference"
                                    | "artifact-bytes"
                                    | "ast-static-analysis"
                                    | "static-relationship-inference"
                                    | "passive-cdp-runtime"
                                    | "cross-layer-reconciliation"
                                    | "cross-version-comparison"
                                    | "native-analysis-provider"
                                    | "user-assertion";
                                    confidence: "unknown"
                                    | "exact"
                                    | "low"
                                    | "medium"
                                    | "high";
                                    coverage: {
                                        limits: {
                                            name: string;
                                            unit:
                                                | "other"
                                                | "items"
                                                | "bytes"
                                                | "depth"
                                                | "milliseconds"
                                                | "characters"
                                                | "instructions";
                                            value: number;
                                        }[];
                                        omitted_count: number
                                        | null;
                                        status: "unknown" | "unavailable" | "complete" | "partial";
                                        truncated: boolean;
                                    };
                                    evidence_ids: string[];
                                    extractor: {
                                        executable_sha256: string
                                        | null;
                                        name: string;
                                        operation: string;
                                        version: string;
                                    };
                                    limitations: string[];
                                    location: | {
                                        available: false;
                                        detail: string;
                                        reason: | "unknown"
                                        | "truncated"
                                        | "unresolved"
                                        | "not-applicable"
                                        | "not-observed"
                                        | "not-approved"
                                        | "provider-unavailable";
                                    }
                                    | {
                                        available: true;
                                        value: | {
                                            end: { column: number; line: number };
                                            kind: "source-range";
                                            source: string;
                                            start: { column: number; line: number };
                                        }
                                        | { end: number; kind: "file-offset-range"; start: number }
                                        | { kind: "artifact-path"; path: string }
                                        | { kind: "url"; url: string }
                                        | {
                                            capture_sha256: string;
                                            frame_key: string | null;
                                            kind: "runtime";
                                            script_key: string | null;
                                            target_key: string;
                                        }
                                        | { address: string; kind: "native-address"; symbol: string
                                        | null }
                                        | { export_path: string; kind: "package-export"; package_name: string };
                                    };
                                    state: "unknown"
                                    | "observed"
                                    | "inferred"
                                    | "unavailable";
                                };
                                identifier_strategy: {
                                    stability: "observation-exact";
                                    strategy: "semantic-content-sha256";
                                };
                                label: string
                                | null;
                                observation_id: string;
                                properties: Record<string, JSONType>;
                            }[];
                        }[]
                      • +
                      • rightNodes: readonly {
                            identity:
                                | {
                                    sha256: string;
                                    stability: "global-exact";
                                    strategy: "content-digest";
                                }
                                | {
                                    original_source: string;
                                    source_map_sha256: string;
                                    source_sha256: string
                                    | null;
                                    stability: "source-map-exact";
                                    strategy: "source-map-original";
                                }
                                | {
                                    artifact_sha256: string;
                                    path: string;
                                    stability: "artifact-version";
                                    strategy: "canonical-path";
                                }
                                | {
                                    algorithm: string;
                                    basis: (
                                        | "imports"
                                        | "exports"
                                        | "syntax-tree"
                                        | "control-flow"
                                        | "literals"
                                        | "api-usage"
                                    )[];
                                    fingerprint_sha256: string;
                                    stability: "cross-version-inference";
                                    strategy: "structural-fingerprint";
                                }
                                | {
                                    artifact_sha256: string;
                                    key: string;
                                    namespace: string;
                                    stability: "artifact-version";
                                    strategy: "artifact-local-key";
                                }
                                | {
                                    capture_sha256: string;
                                    runtime_key: string;
                                    stability: "capture-only";
                                    strategy: "runtime-instance";
                                }
                                | {
                                    observation_sha256: string;
                                    scope: string;
                                    stability: "observation-only";
                                    strategy: "observation-fingerprint";
                                };
                            kind: | "unknown"
                            | "target"
                            | "native-addon"
                            | "source-map"
                            | "artifact"
                            | "package"
                            | "storage"
                            | "installer"
                            | "asar-entry"
                            | "electron-main"
                            | "electron-preload"
                            | "electron-renderer"
                            | "electron-utility"
                            | "javascript-asset"
                            | "javascript-chunk"
                            | "javascript-module"
                            | "source-module"
                            | "browser-window"
                            | "frame"
                            | "context-bridge-api"
                            | "ipc-channel"
                            | "ipc-handler"
                            | "worker"
                            | "service-worker"
                            | "endpoint"
                            | "native-export"
                            | "runtime-script-instance";
                            node_id: string;
                            observations: {
                                evidence: {
                                    artifact: | { artifact_id: string; available: true; sha256: string }
                                    | {
                                        available: false;
                                        detail: string;
                                        reason:
                                            | "unknown"
                                            | "truncated"
                                            | "unresolved"
                                            | "not-applicable"
                                            | "not-observed"
                                            | "not-approved"
                                            | "provider-unavailable";
                                    };
                                    authority: | "unknown"
                                    | "controlled-replay"
                                    | "historical-reference"
                                    | "artifact-bytes"
                                    | "ast-static-analysis"
                                    | "static-relationship-inference"
                                    | "passive-cdp-runtime"
                                    | "cross-layer-reconciliation"
                                    | "cross-version-comparison"
                                    | "native-analysis-provider"
                                    | "user-assertion";
                                    confidence: "unknown"
                                    | "exact"
                                    | "low"
                                    | "medium"
                                    | "high";
                                    coverage: {
                                        limits: {
                                            name: string;
                                            unit:
                                                | "other"
                                                | "items"
                                                | "bytes"
                                                | "depth"
                                                | "milliseconds"
                                                | "characters"
                                                | "instructions";
                                            value: number;
                                        }[];
                                        omitted_count: number
                                        | null;
                                        status: "unknown" | "unavailable" | "complete" | "partial";
                                        truncated: boolean;
                                    };
                                    evidence_ids: string[];
                                    extractor: {
                                        executable_sha256: string
                                        | null;
                                        name: string;
                                        operation: string;
                                        version: string;
                                    };
                                    limitations: string[];
                                    location: | {
                                        available: false;
                                        detail: string;
                                        reason: | "unknown"
                                        | "truncated"
                                        | "unresolved"
                                        | "not-applicable"
                                        | "not-observed"
                                        | "not-approved"
                                        | "provider-unavailable";
                                    }
                                    | {
                                        available: true;
                                        value: | {
                                            end: { column: number; line: number };
                                            kind: "source-range";
                                            source: string;
                                            start: { column: number; line: number };
                                        }
                                        | { end: number; kind: "file-offset-range"; start: number }
                                        | { kind: "artifact-path"; path: string }
                                        | { kind: "url"; url: string }
                                        | {
                                            capture_sha256: string;
                                            frame_key: string | null;
                                            kind: "runtime";
                                            script_key: string | null;
                                            target_key: string;
                                        }
                                        | { address: string; kind: "native-address"; symbol: string
                                        | null }
                                        | { export_path: string; kind: "package-export"; package_name: string };
                                    };
                                    state: "unknown"
                                    | "observed"
                                    | "inferred"
                                    | "unavailable";
                                };
                                identifier_strategy: {
                                    stability: "observation-exact";
                                    strategy: "semantic-content-sha256";
                                };
                                label: string
                                | null;
                                observation_id: string;
                                properties: Record<string, JSONType>;
                            }[];
                        }[]
                      +

                      Returns ApplicationVersionMatchingProjection

                    +
                    + +
                    +
                    diff --git a/docs/api/functions/domain_javascriptFeatureSeed.findApplicationFeatureSeeds.html b/docs/api/functions/domain_javascriptFeatureSeed.findApplicationFeatureSeeds.html new file mode 100644 index 000000000..324410cdf --- /dev/null +++ b/docs/api/functions/domain_javascriptFeatureSeed.findApplicationFeatureSeeds.html @@ -0,0 +1,45 @@ +findApplicationFeatureSeeds | rea-agents - v1.7.0
                    +
                    rea-agents - v1.7.0 + +
                      +
                      +
                      Preparing search index...
                      +
                      +
                      +
                      + +

                      Function findApplicationFeatureSeeds

                      +
                      +
                        +
                      • + +
                        +

                        Locate every graph node matching a typed literal seed without regex execution.

                        +
                        +
                        +

                        Parameters

                        +
                          +
                        • nodes: readonly {
                              identity:
                                  | {
                                      sha256: string;
                                      stability: "global-exact";
                                      strategy: "content-digest";
                                  }
                                  | {
                                      original_source: string;
                                      source_map_sha256: string;
                                      source_sha256: string
                                      | null;
                                      stability: "source-map-exact";
                                      strategy: "source-map-original";
                                  }
                                  | {
                                      artifact_sha256: string;
                                      path: string;
                                      stability: "artifact-version";
                                      strategy: "canonical-path";
                                  }
                                  | {
                                      algorithm: string;
                                      basis: (
                                          | "imports"
                                          | "exports"
                                          | "syntax-tree"
                                          | "control-flow"
                                          | "literals"
                                          | "api-usage"
                                      )[];
                                      fingerprint_sha256: string;
                                      stability: "cross-version-inference";
                                      strategy: "structural-fingerprint";
                                  }
                                  | {
                                      artifact_sha256: string;
                                      key: string;
                                      namespace: string;
                                      stability: "artifact-version";
                                      strategy: "artifact-local-key";
                                  }
                                  | {
                                      capture_sha256: string;
                                      runtime_key: string;
                                      stability: "capture-only";
                                      strategy: "runtime-instance";
                                  }
                                  | {
                                      observation_sha256: string;
                                      scope: string;
                                      stability: "observation-only";
                                      strategy: "observation-fingerprint";
                                  };
                              kind: | "unknown"
                              | "target"
                              | "native-addon"
                              | "source-map"
                              | "artifact"
                              | "package"
                              | "storage"
                              | "installer"
                              | "asar-entry"
                              | "electron-main"
                              | "electron-preload"
                              | "electron-renderer"
                              | "electron-utility"
                              | "javascript-asset"
                              | "javascript-chunk"
                              | "javascript-module"
                              | "source-module"
                              | "browser-window"
                              | "frame"
                              | "context-bridge-api"
                              | "ipc-channel"
                              | "ipc-handler"
                              | "worker"
                              | "service-worker"
                              | "endpoint"
                              | "native-export"
                              | "runtime-script-instance";
                              node_id: string;
                              observations: {
                                  evidence: {
                                      artifact: | { artifact_id: string; available: true; sha256: string }
                                      | {
                                          available: false;
                                          detail: string;
                                          reason:
                                              | "unknown"
                                              | "truncated"
                                              | "unresolved"
                                              | "not-applicable"
                                              | "not-observed"
                                              | "not-approved"
                                              | "provider-unavailable";
                                      };
                                      authority: | "unknown"
                                      | "controlled-replay"
                                      | "historical-reference"
                                      | "artifact-bytes"
                                      | "ast-static-analysis"
                                      | "static-relationship-inference"
                                      | "passive-cdp-runtime"
                                      | "cross-layer-reconciliation"
                                      | "cross-version-comparison"
                                      | "native-analysis-provider"
                                      | "user-assertion";
                                      confidence: "unknown"
                                      | "exact"
                                      | "low"
                                      | "medium"
                                      | "high";
                                      coverage: {
                                          limits: {
                                              name: string;
                                              unit:
                                                  | "other"
                                                  | "items"
                                                  | "bytes"
                                                  | "depth"
                                                  | "milliseconds"
                                                  | "characters"
                                                  | "instructions";
                                              value: number;
                                          }[];
                                          omitted_count: number
                                          | null;
                                          status: "unknown" | "unavailable" | "complete" | "partial";
                                          truncated: boolean;
                                      };
                                      evidence_ids: string[];
                                      extractor: {
                                          executable_sha256: string
                                          | null;
                                          name: string;
                                          operation: string;
                                          version: string;
                                      };
                                      limitations: string[];
                                      location: | {
                                          available: false;
                                          detail: string;
                                          reason: | "unknown"
                                          | "truncated"
                                          | "unresolved"
                                          | "not-applicable"
                                          | "not-observed"
                                          | "not-approved"
                                          | "provider-unavailable";
                                      }
                                      | {
                                          available: true;
                                          value: | {
                                              end: { column: number; line: number };
                                              kind: "source-range";
                                              source: string;
                                              start: { column: number; line: number };
                                          }
                                          | { end: number; kind: "file-offset-range"; start: number }
                                          | { kind: "artifact-path"; path: string }
                                          | { kind: "url"; url: string }
                                          | {
                                              capture_sha256: string;
                                              frame_key: string | null;
                                              kind: "runtime";
                                              script_key: string | null;
                                              target_key: string;
                                          }
                                          | { address: string; kind: "native-address"; symbol: string
                                          | null }
                                          | { export_path: string; kind: "package-export"; package_name: string };
                                      };
                                      state: "unknown"
                                      | "observed"
                                      | "inferred"
                                      | "unavailable";
                                  };
                                  identifier_strategy: {
                                      stability: "observation-exact";
                                      strategy: "semantic-content-sha256";
                                  };
                                  label: string
                                  | null;
                                  observation_id: string;
                                  properties: Record<string, JSONType>;
                              }[];
                          }[]
                        • +
                        • seed: {
                              case_sensitive: boolean;
                              kind:
                                  | "string"
                                  | "native-export"
                                  | "node-id"
                                  | "route"
                                  | "api"
                                  | "channel"
                                  | "module";
                              match: "exact"
                              | "contains"
                              | null;
                              value: string;
                          }
                        +

                        Returns ApplicationFeatureSeedMatch[]

                      +
                      + +
                      +
                      diff --git a/docs/api/functions/domain_javascriptFeatureTrace.traceApplicationFeature.html b/docs/api/functions/domain_javascriptFeatureTrace.traceApplicationFeature.html new file mode 100644 index 000000000..11e68da97 --- /dev/null +++ b/docs/api/functions/domain_javascriptFeatureTrace.traceApplicationFeature.html @@ -0,0 +1,44 @@ +traceApplicationFeature | rea-agents - v1.7.0
                      +
                      rea-agents - v1.7.0 + +
                        +
                        +
                        Preparing search index...
                        +
                        +
                        +
                        + +

                        Function traceApplicationFeature

                        +
                        +
                          +
                        • + +
                          +

                          Trace a literal feature through a bounded, authority-preserving JAG.

                          +
                          + +

                          Returns {
                              coverage: {
                                  frontier_node_ids: string[];
                                  omitted_edges: number;
                                  omitted_nodes: number;
                                  omitted_paths: number;
                                  omitted_seed_matches: number;
                                  scanned_nodes: number;
                                  source_graph_status: "unknown" | "unavailable" | "complete" | "partial";
                                  status: "truncated" | "partial" | "complete-within-source" | "no-match";
                                  total_seed_matches: number;
                              };
                              direction: "incoming"
                              | "outgoing"
                              | "both";
                              evidence_links: string[];
                              graph:
                                  | {
                                      coverage: {
                                          limits: {
                                              name: string;
                                              unit: | "other"
                                              | "items"
                                              | "bytes"
                                              | "depth"
                                              | "milliseconds"
                                              | "characters"
                                              | "instructions";
                                              value: number;
                                          }[];
                                          omitted_count: number
                                          | null;
                                          status: "unknown" | "unavailable" | "complete" | "partial";
                                          truncated: boolean;
                                      };
                                      edges: {
                                          edge_id: string;
                                          evidence: {
                                              artifact: | { artifact_id: string; available: true; sha256: string }
                                              | {
                                                  available: false;
                                                  detail: string;
                                                  reason:
                                                      | "unknown"
                                                      | "truncated"
                                                      | "unresolved"
                                                      | "not-applicable"
                                                      | "not-observed"
                                                      | "not-approved"
                                                      | "provider-unavailable";
                                              };
                                              authority: | "unknown"
                                              | "controlled-replay"
                                              | "historical-reference"
                                              | "artifact-bytes"
                                              | "ast-static-analysis"
                                              | "static-relationship-inference"
                                              | "passive-cdp-runtime"
                                              | "cross-layer-reconciliation"
                                              | "cross-version-comparison"
                                              | "native-analysis-provider"
                                              | "user-assertion";
                                              confidence: "unknown"
                                              | "exact"
                                              | "low"
                                              | "medium"
                                              | "high";
                                              coverage: {
                                                  limits: {
                                                      name: string;
                                                      unit:
                                                          | "other"
                                                          | "items"
                                                          | "bytes"
                                                          | "depth"
                                                          | "milliseconds"
                                                          | "characters"
                                                          | "instructions";
                                                      value: number;
                                                  }[];
                                                  omitted_count: number
                                                  | null;
                                                  status: "unknown" | "unavailable" | "complete" | "partial";
                                                  truncated: boolean;
                                              };
                                              evidence_ids: string[];
                                              extractor: {
                                                  executable_sha256: string
                                                  | null;
                                                  name: string;
                                                  operation: string;
                                                  version: string;
                                              };
                                              limitations: string[];
                                              location: | {
                                                  available: false;
                                                  detail: string;
                                                  reason: | "unknown"
                                                  | "truncated"
                                                  | "unresolved"
                                                  | "not-applicable"
                                                  | "not-observed"
                                                  | "not-approved"
                                                  | "provider-unavailable";
                                              }
                                              | {
                                                  available: true;
                                                  value: | {
                                                      end: { column: ...; line: ... };
                                                      kind: "source-range";
                                                      source: string;
                                                      start: { column: ...; line: ... };
                                                  }
                                                  | { end: number; kind: "file-offset-range"; start: number }
                                                  | { kind: "artifact-path"; path: string }
                                                  | { kind: "url"; url: string }
                                                  | {
                                                      capture_sha256: string;
                                                      frame_key: (...) | (...);
                                                      kind: "runtime";
                                                      script_key: (...) | (...);
                                                      target_key: string;
                                                  }
                                                  | { address: string; kind: "native-address"; symbol: (...)
                                                  | (...) }
                                                  | {
                                                      export_path: string;
                                                      kind: "package-export";
                                                      package_name: string;
                                                  };
                                              };
                                              state: "unknown"
                                              | "observed"
                                              | "inferred"
                                              | "unavailable";
                                          };
                                          identifier_strategy: {
                                              stability: "relationship-exact";
                                              strategy: "semantic-content-sha256";
                                          };
                                          properties: Record<string, JSONType>;
                                          relation:
                                              | "contains"
                                              | "loads"
                                              | "calls"
                                              | "imports"
                                              | "maps_to"
                                              | "exposes"
                                              | "sends"
                                              | "invokes"
                                              | "handles"
                                              | "persists_to"
                                              | "observed_as"
                                              | "changed_from";
                                          source_node_id: string;
                                          target_node_id: string;
                                      }[];
                                      graph_id: string;
                                      limitations: string[];
                                      nodes: {
                                          identity: | {
                                              sha256: string;
                                              stability: "global-exact";
                                              strategy: "content-digest";
                                          }
                                          | {
                                              original_source: string;
                                              source_map_sha256: string;
                                              source_sha256: string
                                              | null;
                                              stability: "source-map-exact";
                                              strategy: "source-map-original";
                                          }
                                          | {
                                              artifact_sha256: string;
                                              path: string;
                                              stability: "artifact-version";
                                              strategy: "canonical-path";
                                          }
                                          | {
                                              algorithm: string;
                                              basis: (
                                                  | "imports"
                                                  | "exports"
                                                  | "syntax-tree"
                                                  | "control-flow"
                                                  | "literals"
                                                  | "api-usage"
                                              )[];
                                              fingerprint_sha256: string;
                                              stability: "cross-version-inference";
                                              strategy: "structural-fingerprint";
                                          }
                                          | {
                                              artifact_sha256: string;
                                              key: string;
                                              namespace: string;
                                              stability: "artifact-version";
                                              strategy: "artifact-local-key";
                                          }
                                          | {
                                              capture_sha256: string;
                                              runtime_key: string;
                                              stability: "capture-only";
                                              strategy: "runtime-instance";
                                          }
                                          | {
                                              observation_sha256: string;
                                              scope: string;
                                              stability: "observation-only";
                                              strategy: "observation-fingerprint";
                                          };
                                          kind: | "unknown"
                                          | "target"
                                          | "native-addon"
                                          | "source-map"
                                          | "artifact"
                                          | "package"
                                          | "storage"
                                          | "installer"
                                          | "asar-entry"
                                          | "electron-main"
                                          | "electron-preload"
                                          | "electron-renderer"
                                          | "electron-utility"
                                          | "javascript-asset"
                                          | "javascript-chunk"
                                          | "javascript-module"
                                          | "source-module"
                                          | "browser-window"
                                          | "frame"
                                          | "context-bridge-api"
                                          | "ipc-channel"
                                          | "ipc-handler"
                                          | "worker"
                                          | "service-worker"
                                          | "endpoint"
                                          | "native-export"
                                          | "runtime-script-instance";
                                          node_id: string;
                                          observations: {
                                              evidence: {
                                                  artifact: | {
                                                      artifact_id: string;
                                                      available: true;
                                                      sha256: string;
                                                  }
                                                  | {
                                                      available: false;
                                                      detail: string;
                                                      reason: (...)
                                                      | (...)
                                                      | (...)
                                                      | (...)
                                                      | (...)
                                                      | (...)
                                                      | (...);
                                                  };
                                                  authority: | "unknown"
                                                  | "controlled-replay"
                                                  | "historical-reference"
                                                  | "artifact-bytes"
                                                  | "ast-static-analysis"
                                                  | "static-relationship-inference"
                                                  | "passive-cdp-runtime"
                                                  | "cross-layer-reconciliation"
                                                  | "cross-version-comparison"
                                                  | "native-analysis-provider"
                                                  | "user-assertion";
                                                  confidence: "unknown"
                                                  | "exact"
                                                  | "low"
                                                  | "medium"
                                                  | "high";
                                                  coverage: {
                                                      limits: { name: ...; unit: ...; value: ... }[];
                                                      omitted_count: number | null;
                                                      status: "unknown" | "unavailable" | "complete" | "partial";
                                                      truncated: boolean;
                                                  };
                                                  evidence_ids: string[];
                                                  extractor: {
                                                      executable_sha256: string
                                                      | null;
                                                      name: string;
                                                      operation: string;
                                                      version: string;
                                                  };
                                                  limitations: string[];
                                                  location: | {
                                                      available: false;
                                                      detail: string;
                                                      reason: (...)
                                                      | (...)
                                                      | (...)
                                                      | (...)
                                                      | (...)
                                                      | (...)
                                                      | (...);
                                                  }
                                                  | {
                                                      available: true;
                                                      value: (...)
                                                      | (...)
                                                      | (...)
                                                      | (...)
                                                      | (...)
                                                      | (...)
                                                      | (...);
                                                  };
                                                  state: "unknown"
                                                  | "observed"
                                                  | "inferred"
                                                  | "unavailable";
                                              };
                                              identifier_strategy: {
                                                  stability: "observation-exact";
                                                  strategy: "semantic-content-sha256";
                                              };
                                              label: string
                                              | null;
                                              observation_id: string;
                                              properties: Record<string, JSONType>;
                                          }[];
                                      }[];
                                      root_node_ids: string[];
                                      schema: "JavaScriptApplicationGraph";
                                      schema_version: 1;
                                  }
                                  | null;
                              limitations: string[];
                              native_handoffs: {
                                  artifact_path: string
                                  | null;
                                  artifact_sha256: string;
                                  evidence_ids: string[];
                                  export_node_ids: string[];
                                  native_node_id: string;
                                  providers: { id: string; name: string; version: string | null }[];
                                  recommended_tools: (
                                      | "open_binary"
                                      | "binary_overview"
                                      | "analyze_function"
                                      | "search_procedures"
                                      | "xrefs"
                                  )[];
                                  requested_exports: string[];
                                  status: "evidence-linked"
                                  | "requires-provider-analysis";
                              }[];
                              paths: {
                                  authorities: string[];
                                  contains_inference: boolean;
                                  edge_ids: string[];
                                  end_kind: string;
                                  end_node_id: string;
                                  node_ids: string[];
                                  path_id: string;
                                  start_node_id: string;
                              }[];
                              schema_version: 1;
                              seed: {
                                  case_sensitive: boolean;
                                  kind: | "string"
                                  | "native-export"
                                  | "node-id"
                                  | "route"
                                  | "api"
                                  | "channel"
                                  | "module";
                                  match: "exact"
                                  | "contains"
                                  | null;
                                  value: string;
                              };
                              seed_matches: {
                                  basis: "identity"
                                  | "label"
                                  | "node-id"
                                  | "property";
                                  field: string;
                                  kind: string;
                                  node_id: string;
                              }[];
                              source_evidence_id: string;
                              source_graph_id: string;
                              summary: {
                                  inferred_facts: number;
                                  matched_seeds: number;
                                  native_handoffs: number;
                                  observed_facts: number;
                                  terminal_paths: number;
                                  traced_edges: number;
                                  traced_nodes: number;
                                  unavailable_facts: number;
                                  unknown_facts: number;
                              };
                              trace_id: string;
                          }

                        +
                        + +
                        +
                        diff --git a/docs/api/functions/domain_javascriptFeatureTraversal.traverseApplicationFeature.html b/docs/api/functions/domain_javascriptFeatureTraversal.traverseApplicationFeature.html new file mode 100644 index 000000000..143d619de --- /dev/null +++ b/docs/api/functions/domain_javascriptFeatureTraversal.traverseApplicationFeature.html @@ -0,0 +1,47 @@ +traverseApplicationFeature | rea-agents - v1.7.0
                        +
                        rea-agents - v1.7.0 + +
                          +
                          +
                          Preparing search index...
                          +
                          +
                          +
                          + +

                          Function traverseApplicationFeature

                          +
                          +
                            +
                          • + +
                            +

                            Traverse a JAG without treating edge inference as observed reachability.

                            +
                            +
                            +

                            Parameters

                            +
                              +
                            • graph: {
                                  coverage: {
                                      limits: {
                                          name: string;
                                          unit:
                                              | "other"
                                              | "items"
                                              | "bytes"
                                              | "depth"
                                              | "milliseconds"
                                              | "characters"
                                              | "instructions";
                                          value: number;
                                      }[];
                                      omitted_count: number
                                      | null;
                                      status: "unknown" | "unavailable" | "complete" | "partial";
                                      truncated: boolean;
                                  };
                                  edges: {
                                      edge_id: string;
                                      evidence: {
                                          artifact: | { artifact_id: string; available: true; sha256: string }
                                          | {
                                              available: false;
                                              detail: string;
                                              reason:
                                                  | "unknown"
                                                  | "truncated"
                                                  | "unresolved"
                                                  | "not-applicable"
                                                  | "not-observed"
                                                  | "not-approved"
                                                  | "provider-unavailable";
                                          };
                                          authority: | "unknown"
                                          | "controlled-replay"
                                          | "historical-reference"
                                          | "artifact-bytes"
                                          | "ast-static-analysis"
                                          | "static-relationship-inference"
                                          | "passive-cdp-runtime"
                                          | "cross-layer-reconciliation"
                                          | "cross-version-comparison"
                                          | "native-analysis-provider"
                                          | "user-assertion";
                                          confidence: "unknown"
                                          | "exact"
                                          | "low"
                                          | "medium"
                                          | "high";
                                          coverage: {
                                              limits: {
                                                  name: string;
                                                  unit:
                                                      | "other"
                                                      | "items"
                                                      | "bytes"
                                                      | "depth"
                                                      | "milliseconds"
                                                      | "characters"
                                                      | "instructions";
                                                  value: number;
                                              }[];
                                              omitted_count: number
                                              | null;
                                              status: "unknown" | "unavailable" | "complete" | "partial";
                                              truncated: boolean;
                                          };
                                          evidence_ids: string[];
                                          extractor: {
                                              executable_sha256: string
                                              | null;
                                              name: string;
                                              operation: string;
                                              version: string;
                                          };
                                          limitations: string[];
                                          location: | {
                                              available: false;
                                              detail: string;
                                              reason: | "unknown"
                                              | "truncated"
                                              | "unresolved"
                                              | "not-applicable"
                                              | "not-observed"
                                              | "not-approved"
                                              | "provider-unavailable";
                                          }
                                          | {
                                              available: true;
                                              value: | {
                                                  end: { column: number; line: number };
                                                  kind: "source-range";
                                                  source: string;
                                                  start: { column: number; line: number };
                                              }
                                              | { end: number; kind: "file-offset-range"; start: number }
                                              | { kind: "artifact-path"; path: string }
                                              | { kind: "url"; url: string }
                                              | {
                                                  capture_sha256: string;
                                                  frame_key: string | null;
                                                  kind: "runtime";
                                                  script_key: string | null;
                                                  target_key: string;
                                              }
                                              | { address: string; kind: "native-address"; symbol: string
                                              | null }
                                              | { export_path: string; kind: "package-export"; package_name: string };
                                          };
                                          state: "unknown"
                                          | "observed"
                                          | "inferred"
                                          | "unavailable";
                                      };
                                      identifier_strategy: {
                                          stability: "relationship-exact";
                                          strategy: "semantic-content-sha256";
                                      };
                                      properties: Record<string, JSONType>;
                                      relation:
                                          | "contains"
                                          | "loads"
                                          | "calls"
                                          | "imports"
                                          | "maps_to"
                                          | "exposes"
                                          | "sends"
                                          | "invokes"
                                          | "handles"
                                          | "persists_to"
                                          | "observed_as"
                                          | "changed_from";
                                      source_node_id: string;
                                      target_node_id: string;
                                  }[];
                                  graph_id: string;
                                  limitations: string[];
                                  nodes: {
                                      identity: | {
                                          sha256: string;
                                          stability: "global-exact";
                                          strategy: "content-digest";
                                      }
                                      | {
                                          original_source: string;
                                          source_map_sha256: string;
                                          source_sha256: string
                                          | null;
                                          stability: "source-map-exact";
                                          strategy: "source-map-original";
                                      }
                                      | {
                                          artifact_sha256: string;
                                          path: string;
                                          stability: "artifact-version";
                                          strategy: "canonical-path";
                                      }
                                      | {
                                          algorithm: string;
                                          basis: (
                                              | "imports"
                                              | "exports"
                                              | "syntax-tree"
                                              | "control-flow"
                                              | "literals"
                                              | "api-usage"
                                          )[];
                                          fingerprint_sha256: string;
                                          stability: "cross-version-inference";
                                          strategy: "structural-fingerprint";
                                      }
                                      | {
                                          artifact_sha256: string;
                                          key: string;
                                          namespace: string;
                                          stability: "artifact-version";
                                          strategy: "artifact-local-key";
                                      }
                                      | {
                                          capture_sha256: string;
                                          runtime_key: string;
                                          stability: "capture-only";
                                          strategy: "runtime-instance";
                                      }
                                      | {
                                          observation_sha256: string;
                                          scope: string;
                                          stability: "observation-only";
                                          strategy: "observation-fingerprint";
                                      };
                                      kind: | "unknown"
                                      | "target"
                                      | "native-addon"
                                      | "source-map"
                                      | "artifact"
                                      | "package"
                                      | "storage"
                                      | "installer"
                                      | "asar-entry"
                                      | "electron-main"
                                      | "electron-preload"
                                      | "electron-renderer"
                                      | "electron-utility"
                                      | "javascript-asset"
                                      | "javascript-chunk"
                                      | "javascript-module"
                                      | "source-module"
                                      | "browser-window"
                                      | "frame"
                                      | "context-bridge-api"
                                      | "ipc-channel"
                                      | "ipc-handler"
                                      | "worker"
                                      | "service-worker"
                                      | "endpoint"
                                      | "native-export"
                                      | "runtime-script-instance";
                                      node_id: string;
                                      observations: {
                                          evidence: {
                                              artifact: | { artifact_id: string; available: true; sha256: string }
                                              | {
                                                  available: false;
                                                  detail: string;
                                                  reason:
                                                      | "unknown"
                                                      | "truncated"
                                                      | "unresolved"
                                                      | "not-applicable"
                                                      | "not-observed"
                                                      | "not-approved"
                                                      | "provider-unavailable";
                                              };
                                              authority: | "unknown"
                                              | "controlled-replay"
                                              | "historical-reference"
                                              | "artifact-bytes"
                                              | "ast-static-analysis"
                                              | "static-relationship-inference"
                                              | "passive-cdp-runtime"
                                              | "cross-layer-reconciliation"
                                              | "cross-version-comparison"
                                              | "native-analysis-provider"
                                              | "user-assertion";
                                              confidence: "unknown"
                                              | "exact"
                                              | "low"
                                              | "medium"
                                              | "high";
                                              coverage: {
                                                  limits: {
                                                      name: string;
                                                      unit:
                                                          | "other"
                                                          | "items"
                                                          | "bytes"
                                                          | "depth"
                                                          | "milliseconds"
                                                          | "characters"
                                                          | "instructions";
                                                      value: number;
                                                  }[];
                                                  omitted_count: number
                                                  | null;
                                                  status: "unknown" | "unavailable" | "complete" | "partial";
                                                  truncated: boolean;
                                              };
                                              evidence_ids: string[];
                                              extractor: {
                                                  executable_sha256: string
                                                  | null;
                                                  name: string;
                                                  operation: string;
                                                  version: string;
                                              };
                                              limitations: string[];
                                              location: | {
                                                  available: false;
                                                  detail: string;
                                                  reason: | "unknown"
                                                  | "truncated"
                                                  | "unresolved"
                                                  | "not-applicable"
                                                  | "not-observed"
                                                  | "not-approved"
                                                  | "provider-unavailable";
                                              }
                                              | {
                                                  available: true;
                                                  value: | {
                                                      end: { column: ...; line: ... };
                                                      kind: "source-range";
                                                      source: string;
                                                      start: { column: ...; line: ... };
                                                  }
                                                  | { end: number; kind: "file-offset-range"; start: number }
                                                  | { kind: "artifact-path"; path: string }
                                                  | { kind: "url"; url: string }
                                                  | {
                                                      capture_sha256: string;
                                                      frame_key: (...) | (...);
                                                      kind: "runtime";
                                                      script_key: (...) | (...);
                                                      target_key: string;
                                                  }
                                                  | { address: string; kind: "native-address"; symbol: (...)
                                                  | (...) }
                                                  | { export_path: string; kind: "package-export"; package_name: string };
                                              };
                                              state: "unknown"
                                              | "observed"
                                              | "inferred"
                                              | "unavailable";
                                          };
                                          identifier_strategy: {
                                              stability: "observation-exact";
                                              strategy: "semantic-content-sha256";
                                          };
                                          label: string
                                          | null;
                                          observation_id: string;
                                          properties: Record<string, JSONType>;
                                      }[];
                                  }[];
                                  root_node_ids: string[];
                                  schema: "JavaScriptApplicationGraph";
                                  schema_version: 1;
                              }
                            • +
                            • seedNodeIds: readonly string[]
                            • +
                            • direction: "incoming" | "outgoing" | "both"
                            • +
                            • limits: {
                                  max_depth: number;
                                  max_edges: number;
                                  max_nodes: number;
                                  max_paths: number;
                                  max_seed_matches: number;
                              }
                            +

                            Returns ApplicationFeatureTraversal

                          +
                          + +
                          +
                          diff --git a/docs/api/functions/domain_javascriptNativeHandoff.buildJavaScriptNativeHandoffs.html b/docs/api/functions/domain_javascriptNativeHandoff.buildJavaScriptNativeHandoffs.html new file mode 100644 index 000000000..3dde43a8e --- /dev/null +++ b/docs/api/functions/domain_javascriptNativeHandoff.buildJavaScriptNativeHandoffs.html @@ -0,0 +1,46 @@ +buildJavaScriptNativeHandoffs | rea-agents - v1.7.0
                          +
                          rea-agents - v1.7.0 + +
                            +
                            +
                            Preparing search index...
                            +
                            +
                            +
                            + +

                            Function buildJavaScriptNativeHandoffs

                            +
                            +
                              +
                            • + +
                              +

                              Build provider-neutral addon targets and link exact-subject native Evidence.

                              +
                              +
                              +

                              Parameters

                              +
                                +
                              • nodes: readonly {
                                    identity:
                                        | {
                                            sha256: string;
                                            stability: "global-exact";
                                            strategy: "content-digest";
                                        }
                                        | {
                                            original_source: string;
                                            source_map_sha256: string;
                                            source_sha256: string
                                            | null;
                                            stability: "source-map-exact";
                                            strategy: "source-map-original";
                                        }
                                        | {
                                            artifact_sha256: string;
                                            path: string;
                                            stability: "artifact-version";
                                            strategy: "canonical-path";
                                        }
                                        | {
                                            algorithm: string;
                                            basis: (
                                                | "imports"
                                                | "exports"
                                                | "syntax-tree"
                                                | "control-flow"
                                                | "literals"
                                                | "api-usage"
                                            )[];
                                            fingerprint_sha256: string;
                                            stability: "cross-version-inference";
                                            strategy: "structural-fingerprint";
                                        }
                                        | {
                                            artifact_sha256: string;
                                            key: string;
                                            namespace: string;
                                            stability: "artifact-version";
                                            strategy: "artifact-local-key";
                                        }
                                        | {
                                            capture_sha256: string;
                                            runtime_key: string;
                                            stability: "capture-only";
                                            strategy: "runtime-instance";
                                        }
                                        | {
                                            observation_sha256: string;
                                            scope: string;
                                            stability: "observation-only";
                                            strategy: "observation-fingerprint";
                                        };
                                    kind: | "unknown"
                                    | "target"
                                    | "native-addon"
                                    | "source-map"
                                    | "artifact"
                                    | "package"
                                    | "storage"
                                    | "installer"
                                    | "asar-entry"
                                    | "electron-main"
                                    | "electron-preload"
                                    | "electron-renderer"
                                    | "electron-utility"
                                    | "javascript-asset"
                                    | "javascript-chunk"
                                    | "javascript-module"
                                    | "source-module"
                                    | "browser-window"
                                    | "frame"
                                    | "context-bridge-api"
                                    | "ipc-channel"
                                    | "ipc-handler"
                                    | "worker"
                                    | "service-worker"
                                    | "endpoint"
                                    | "native-export"
                                    | "runtime-script-instance";
                                    node_id: string;
                                    observations: {
                                        evidence: {
                                            artifact: | { artifact_id: string; available: true; sha256: string }
                                            | {
                                                available: false;
                                                detail: string;
                                                reason:
                                                    | "unknown"
                                                    | "truncated"
                                                    | "unresolved"
                                                    | "not-applicable"
                                                    | "not-observed"
                                                    | "not-approved"
                                                    | "provider-unavailable";
                                            };
                                            authority: | "unknown"
                                            | "controlled-replay"
                                            | "historical-reference"
                                            | "artifact-bytes"
                                            | "ast-static-analysis"
                                            | "static-relationship-inference"
                                            | "passive-cdp-runtime"
                                            | "cross-layer-reconciliation"
                                            | "cross-version-comparison"
                                            | "native-analysis-provider"
                                            | "user-assertion";
                                            confidence: "unknown"
                                            | "exact"
                                            | "low"
                                            | "medium"
                                            | "high";
                                            coverage: {
                                                limits: {
                                                    name: string;
                                                    unit:
                                                        | "other"
                                                        | "items"
                                                        | "bytes"
                                                        | "depth"
                                                        | "milliseconds"
                                                        | "characters"
                                                        | "instructions";
                                                    value: number;
                                                }[];
                                                omitted_count: number
                                                | null;
                                                status: "unknown" | "unavailable" | "complete" | "partial";
                                                truncated: boolean;
                                            };
                                            evidence_ids: string[];
                                            extractor: {
                                                executable_sha256: string
                                                | null;
                                                name: string;
                                                operation: string;
                                                version: string;
                                            };
                                            limitations: string[];
                                            location: | {
                                                available: false;
                                                detail: string;
                                                reason: | "unknown"
                                                | "truncated"
                                                | "unresolved"
                                                | "not-applicable"
                                                | "not-observed"
                                                | "not-approved"
                                                | "provider-unavailable";
                                            }
                                            | {
                                                available: true;
                                                value: | {
                                                    end: { column: number; line: number };
                                                    kind: "source-range";
                                                    source: string;
                                                    start: { column: number; line: number };
                                                }
                                                | { end: number; kind: "file-offset-range"; start: number }
                                                | { kind: "artifact-path"; path: string }
                                                | { kind: "url"; url: string }
                                                | {
                                                    capture_sha256: string;
                                                    frame_key: string | null;
                                                    kind: "runtime";
                                                    script_key: string | null;
                                                    target_key: string;
                                                }
                                                | { address: string; kind: "native-address"; symbol: string
                                                | null }
                                                | { export_path: string; kind: "package-export"; package_name: string };
                                            };
                                            state: "unknown"
                                            | "observed"
                                            | "inferred"
                                            | "unavailable";
                                        };
                                        identifier_strategy: {
                                            stability: "observation-exact";
                                            strategy: "semantic-content-sha256";
                                        };
                                        label: string
                                        | null;
                                        observation_id: string;
                                        properties: Record<string, JSONType>;
                                    }[];
                                }[]
                              • +
                              • edges: readonly {
                                    edge_id: string;
                                    evidence: {
                                        artifact:
                                            | { artifact_id: string; available: true; sha256: string }
                                            | {
                                                available: false;
                                                detail: string;
                                                reason:
                                                    | "unknown"
                                                    | "truncated"
                                                    | "unresolved"
                                                    | "not-applicable"
                                                    | "not-observed"
                                                    | "not-approved"
                                                    | "provider-unavailable";
                                            };
                                        authority: | "unknown"
                                        | "controlled-replay"
                                        | "historical-reference"
                                        | "artifact-bytes"
                                        | "ast-static-analysis"
                                        | "static-relationship-inference"
                                        | "passive-cdp-runtime"
                                        | "cross-layer-reconciliation"
                                        | "cross-version-comparison"
                                        | "native-analysis-provider"
                                        | "user-assertion";
                                        confidence: "unknown"
                                        | "exact"
                                        | "low"
                                        | "medium"
                                        | "high";
                                        coverage: {
                                            limits: {
                                                name: string;
                                                unit:
                                                    | "other"
                                                    | "items"
                                                    | "bytes"
                                                    | "depth"
                                                    | "milliseconds"
                                                    | "characters"
                                                    | "instructions";
                                                value: number;
                                            }[];
                                            omitted_count: number
                                            | null;
                                            status: "unknown" | "unavailable" | "complete" | "partial";
                                            truncated: boolean;
                                        };
                                        evidence_ids: string[];
                                        extractor: {
                                            executable_sha256: string
                                            | null;
                                            name: string;
                                            operation: string;
                                            version: string;
                                        };
                                        limitations: string[];
                                        location: | {
                                            available: false;
                                            detail: string;
                                            reason: | "unknown"
                                            | "truncated"
                                            | "unresolved"
                                            | "not-applicable"
                                            | "not-observed"
                                            | "not-approved"
                                            | "provider-unavailable";
                                        }
                                        | {
                                            available: true;
                                            value: | {
                                                end: { column: number; line: number };
                                                kind: "source-range";
                                                source: string;
                                                start: { column: number; line: number };
                                            }
                                            | { end: number; kind: "file-offset-range"; start: number }
                                            | { kind: "artifact-path"; path: string }
                                            | { kind: "url"; url: string }
                                            | {
                                                capture_sha256: string;
                                                frame_key: string | null;
                                                kind: "runtime";
                                                script_key: string | null;
                                                target_key: string;
                                            }
                                            | { address: string; kind: "native-address"; symbol: string
                                            | null }
                                            | { export_path: string; kind: "package-export"; package_name: string };
                                        };
                                        state: "unknown"
                                        | "observed"
                                        | "inferred"
                                        | "unavailable";
                                    };
                                    identifier_strategy: {
                                        stability: "relationship-exact";
                                        strategy: "semantic-content-sha256";
                                    };
                                    properties: Record<string, JSONType>;
                                    relation:
                                        | "contains"
                                        | "loads"
                                        | "calls"
                                        | "imports"
                                        | "maps_to"
                                        | "exposes"
                                        | "sends"
                                        | "invokes"
                                        | "handles"
                                        | "persists_to"
                                        | "observed_as"
                                        | "changed_from";
                                    source_node_id: string;
                                    target_node_id: string;
                                }[]
                              • +
                              • nativeEvidence: readonly (
                                    | {
                                        analysis_profile: {
                                            digest: string;
                                            parameters: Record<string, JSONType>;
                                            provider: { id: string; name: string; version: string };
                                            provider_profile_schema_version: number;
                                            schema_version: 1;
                                        };
                                        authority: | "shipped-artifact"
                                        | "controlled-replay"
                                        | "historical-reference"
                                        | "external-service"
                                        | "analyst-inference";
                                        confidence: "observed"
                                        | "derived"
                                        | "inferred";
                                        environment:
                                            | {
                                                architecture: string;
                                                id: string;
                                                isolation: "process"
                                                | "none"
                                                | "container"
                                                | "virtual-machine";
                                                platform: string;
                                            }
                                            | null;
                                        evidence_id: string;
                                        evidence_links: string[];
                                        limitations: string[];
                                        locations: (
                                            | { address: string; kind: "address" }
                                            | { end: string; kind: "address-range"; start: string }
                                            | { kind: "artifact-path"; path: string }
                                            | { kind: "file-offset"; offset: number }
                                            | { end: number; kind: "file-offset-range"; start: number }
                                        )[];
                                        normalized_result: JSONType;
                                        operation: string;
                                        parameters: Record<string, JSONType>;
                                        predicate_type: string;
                                        provider: { id: string; name: string; version: string | null };
                                        raw_result: JSONType;
                                        schema_version: 2;
                                        subject:
                                            | {
                                                architecture: "x86"
                                                | "x86_64"
                                                | "arm"
                                                | "arm64"
                                                | null;
                                                digest: { sha256: string };
                                                format:
                                                    | "unknown"
                                                    | "file"
                                                    | "directory"
                                                    | "javascript"
                                                    | "source-map"
                                                    | "plist"
                                                    | "entitlements"
                                                    | "dmg"
                                                    | "zip"
                                                    | "pkg"
                                                    | "asar"
                                                    | "javascript-bundle"
                                                    | "mach-o-universal"
                                                    | "mach-o"
                                                    | "elf"
                                                    | "pe"
                                                    | "hopper"
                                                    | "analysis-database"
                                                    | "ipa"
                                                    | "apk";
                                                local_path: string;
                                                name: string;
                                            }
                                            | null;
                                    }
                                    | {
                                        authority: | "shipped-artifact"
                                        | "controlled-replay"
                                        | "historical-reference"
                                        | "external-service"
                                        | "analyst-inference";
                                        confidence: "observed"
                                        | "derived"
                                        | "inferred";
                                        environment:
                                            | {
                                                architecture: string;
                                                id: string;
                                                isolation: "process"
                                                | "none"
                                                | "container"
                                                | "virtual-machine";
                                                platform: string;
                                            }
                                            | null;
                                        evidence_id: string;
                                        evidence_links: string[];
                                        limitations: string[];
                                        locations: (
                                            | { address: string; kind: "address" }
                                            | { end: string; kind: "address-range"; start: string }
                                            | { kind: "artifact-path"; path: string }
                                            | { kind: "file-offset"; offset: number }
                                            | { end: number; kind: "file-offset-range"; start: number }
                                        )[];
                                        normalized_result: JSONType;
                                        operation: string;
                                        parameters: Record<string, JSONType>;
                                        predicate_type: string;
                                        provider: { id: string; name: string; version: string | null };
                                        raw_result: JSONType;
                                        schema_version: 2;
                                        subject:
                                            | {
                                                architecture: "x86"
                                                | "x86_64"
                                                | "arm"
                                                | "arm64"
                                                | null;
                                                digest: { sha256: string };
                                                format:
                                                    | "unknown"
                                                    | "file"
                                                    | "directory"
                                                    | "javascript"
                                                    | "source-map"
                                                    | "plist"
                                                    | "entitlements"
                                                    | "dmg"
                                                    | "zip"
                                                    | "pkg"
                                                    | "asar"
                                                    | "javascript-bundle"
                                                    | "mach-o-universal"
                                                    | "mach-o"
                                                    | "elf"
                                                    | "pe"
                                                    | "hopper"
                                                    | "analysis-database"
                                                    | "ipa"
                                                    | "apk";
                                                local_path: string;
                                                name: string;
                                            }
                                            | null;
                                    }
                                )[]
                              +

                              Returns {
                                  artifact_path: string | null;
                                  artifact_sha256: string;
                                  evidence_ids: string[];
                                  export_node_ids: string[];
                                  native_node_id: string;
                                  providers: { id: string; name: string; version: string | null }[];
                                  recommended_tools: (
                                      | "open_binary"
                                      | "binary_overview"
                                      | "analyze_function"
                                      | "search_procedures"
                                      | "xrefs"
                                  )[];
                                  requested_exports: string[];
                                  status: "evidence-linked"
                                  | "requires-provider-analysis";
                              }[]

                            +
                            + +
                            +
                            diff --git a/docs/api/functions/domain_javascriptRuntimeReconciliation.reconcileJavaScriptRuntime.html b/docs/api/functions/domain_javascriptRuntimeReconciliation.reconcileJavaScriptRuntime.html index 149bc0110..1a6a67fd1 100644 --- a/docs/api/functions/domain_javascriptRuntimeReconciliation.reconcileJavaScriptRuntime.html +++ b/docs/api/functions/domain_javascriptRuntimeReconciliation.reconcileJavaScriptRuntime.html @@ -14,7 +14,7 @@
                            diff --git a/docs/api/functions/domain_javascriptRuntimeReconciliationResult.createJavaScriptRuntimeReconciliationResult.html b/docs/api/functions/domain_javascriptRuntimeReconciliationResult.createJavaScriptRuntimeReconciliationResult.html index e803a39a2..fa6a8b3d9 100644 --- a/docs/api/functions/domain_javascriptRuntimeReconciliationResult.createJavaScriptRuntimeReconciliationResult.html +++ b/docs/api/functions/domain_javascriptRuntimeReconciliationResult.createJavaScriptRuntimeReconciliationResult.html @@ -14,7 +14,7 @@
                            diff --git a/docs/api/functions/domain_javascriptRuntimeStaticCandidates.staticNodeWithinRuntimeScope.html b/docs/api/functions/domain_javascriptRuntimeStaticCandidates.staticNodeWithinRuntimeScope.html index 6e3b65a09..6c306df49 100644 --- a/docs/api/functions/domain_javascriptRuntimeStaticCandidates.staticNodeWithinRuntimeScope.html +++ b/docs/api/functions/domain_javascriptRuntimeStaticCandidates.staticNodeWithinRuntimeScope.html @@ -14,14 +14,14 @@
                            +
                          • Defined in src/server/createServer.ts:47
                          • diff --git a/docs/api/interfaces/application_JavaScriptApplicationEvidenceGraph.ApplicationGraphEvidenceSource.html b/docs/api/interfaces/application_JavaScriptApplicationEvidenceGraph.ApplicationGraphEvidenceSource.html new file mode 100644 index 000000000..2ca546c77 --- /dev/null +++ b/docs/api/interfaces/application_JavaScriptApplicationEvidenceGraph.ApplicationGraphEvidenceSource.html @@ -0,0 +1,76 @@ +ApplicationGraphEvidenceSource | rea-agents - v1.7.0
                            +
                            rea-agents - v1.7.0 + +
                              +
                              +
                              Preparing search index...
                              +
                              +
                              + +
                              +

                              Supported immutable source for an application-level graph workflow.

                              +
                              +
                              interface ApplicationGraphEvidenceSource {
                                  evidence:
                                      | {
                                          analysis_profile: {
                                              digest: string;
                                              parameters: Record<string, JSONType>;
                                              provider: { id: string; name: string; version: string };
                                              provider_profile_schema_version: number;
                                              schema_version: 1;
                                          };
                                          authority: | "shipped-artifact"
                                          | "controlled-replay"
                                          | "historical-reference"
                                          | "external-service"
                                          | "analyst-inference";
                                          confidence: "observed"
                                          | "derived"
                                          | "inferred";
                                          environment:
                                              | {
                                                  architecture: string;
                                                  id: string;
                                                  isolation: "process"
                                                  | "none"
                                                  | "container"
                                                  | "virtual-machine";
                                                  platform: string;
                                              }
                                              | null;
                                          evidence_id: string;
                                          evidence_links: string[];
                                          limitations: string[];
                                          locations: (
                                              | { address: string; kind: "address" }
                                              | { end: string; kind: "address-range"; start: string }
                                              | { kind: "artifact-path"; path: string }
                                              | { kind: "file-offset"; offset: number }
                                              | { end: number; kind: "file-offset-range"; start: number }
                                          )[];
                                          normalized_result: JSONType;
                                          operation: string;
                                          parameters: Record<string, JSONType>;
                                          predicate_type: string;
                                          provider: { id: string; name: string; version: string | null };
                                          raw_result: JSONType;
                                          schema_version: 2;
                                          subject:
                                              | {
                                                  architecture: "x86"
                                                  | "x86_64"
                                                  | "arm"
                                                  | "arm64"
                                                  | null;
                                                  digest: { sha256: string };
                                                  format:
                                                      | "unknown"
                                                      | "file"
                                                      | "directory"
                                                      | "javascript"
                                                      | "source-map"
                                                      | "plist"
                                                      | "entitlements"
                                                      | "dmg"
                                                      | "zip"
                                                      | "pkg"
                                                      | "asar"
                                                      | "javascript-bundle"
                                                      | "mach-o-universal"
                                                      | "mach-o"
                                                      | "elf"
                                                      | "pe"
                                                      | "hopper"
                                                      | "analysis-database"
                                                      | "ipa"
                                                      | "apk";
                                                  local_path: string;
                                                  name: string;
                                              }
                                              | null;
                                      }
                                      | {
                                          authority: | "shipped-artifact"
                                          | "controlled-replay"
                                          | "historical-reference"
                                          | "external-service"
                                          | "analyst-inference";
                                          confidence: "observed"
                                          | "derived"
                                          | "inferred";
                                          environment:
                                              | {
                                                  architecture: string;
                                                  id: string;
                                                  isolation: "process"
                                                  | "none"
                                                  | "container"
                                                  | "virtual-machine";
                                                  platform: string;
                                              }
                                              | null;
                                          evidence_id: string;
                                          evidence_links: string[];
                                          limitations: string[];
                                          locations: (
                                              | { address: string; kind: "address" }
                                              | { end: string; kind: "address-range"; start: string }
                                              | { kind: "artifact-path"; path: string }
                                              | { kind: "file-offset"; offset: number }
                                              | { end: number; kind: "file-offset-range"; start: number }
                                          )[];
                                          normalized_result: JSONType;
                                          operation: string;
                                          parameters: Record<string, JSONType>;
                                          predicate_type: string;
                                          provider: { id: string; name: string; version: string | null };
                                          raw_result: JSONType;
                                          schema_version: 2;
                                          subject:
                                              | {
                                                  architecture: "x86"
                                                  | "x86_64"
                                                  | "arm"
                                                  | "arm64"
                                                  | null;
                                                  digest: { sha256: string };
                                                  format:
                                                      | "unknown"
                                                      | "file"
                                                      | "directory"
                                                      | "javascript"
                                                      | "source-map"
                                                      | "plist"
                                                      | "entitlements"
                                                      | "dmg"
                                                      | "zip"
                                                      | "pkg"
                                                      | "asar"
                                                      | "javascript-bundle"
                                                      | "mach-o-universal"
                                                      | "mach-o"
                                                      | "elf"
                                                      | "pe"
                                                      | "hopper"
                                                      | "analysis-database"
                                                      | "ipa"
                                                      | "apk";
                                                  local_path: string;
                                                  name: string;
                                              }
                                              | null;
                                      };
                                  graph: {
                                      coverage: {
                                          limits: {
                                              name: string;
                                              unit: | "other"
                                              | "items"
                                              | "bytes"
                                              | "depth"
                                              | "milliseconds"
                                              | "characters"
                                              | "instructions";
                                              value: number;
                                          }[];
                                          omitted_count: number
                                          | null;
                                          status: "unknown" | "unavailable" | "complete" | "partial";
                                          truncated: boolean;
                                      };
                                      edges: {
                                          edge_id: string;
                                          evidence: {
                                              artifact: | { artifact_id: string; available: true; sha256: string }
                                              | {
                                                  available: false;
                                                  detail: string;
                                                  reason:
                                                      | "unknown"
                                                      | "truncated"
                                                      | "unresolved"
                                                      | "not-applicable"
                                                      | "not-observed"
                                                      | "not-approved"
                                                      | "provider-unavailable";
                                              };
                                              authority: | "unknown"
                                              | "controlled-replay"
                                              | "historical-reference"
                                              | "artifact-bytes"
                                              | "ast-static-analysis"
                                              | "static-relationship-inference"
                                              | "passive-cdp-runtime"
                                              | "cross-layer-reconciliation"
                                              | "cross-version-comparison"
                                              | "native-analysis-provider"
                                              | "user-assertion";
                                              confidence: "unknown"
                                              | "exact"
                                              | "low"
                                              | "medium"
                                              | "high";
                                              coverage: {
                                                  limits: {
                                                      name: string;
                                                      unit:
                                                          | "other"
                                                          | "items"
                                                          | "bytes"
                                                          | "depth"
                                                          | "milliseconds"
                                                          | "characters"
                                                          | "instructions";
                                                      value: number;
                                                  }[];
                                                  omitted_count: number
                                                  | null;
                                                  status: "unknown" | "unavailable" | "complete" | "partial";
                                                  truncated: boolean;
                                              };
                                              evidence_ids: string[];
                                              extractor: {
                                                  executable_sha256: string
                                                  | null;
                                                  name: string;
                                                  operation: string;
                                                  version: string;
                                              };
                                              limitations: string[];
                                              location: | {
                                                  available: false;
                                                  detail: string;
                                                  reason: | "unknown"
                                                  | "truncated"
                                                  | "unresolved"
                                                  | "not-applicable"
                                                  | "not-observed"
                                                  | "not-approved"
                                                  | "provider-unavailable";
                                              }
                                              | {
                                                  available: true;
                                                  value: | {
                                                      end: { column: number; line: number };
                                                      kind: "source-range";
                                                      source: string;
                                                      start: { column: number; line: number };
                                                  }
                                                  | { end: number; kind: "file-offset-range"; start: number }
                                                  | { kind: "artifact-path"; path: string }
                                                  | { kind: "url"; url: string }
                                                  | {
                                                      capture_sha256: string;
                                                      frame_key: string | null;
                                                      kind: "runtime";
                                                      script_key: string | null;
                                                      target_key: string;
                                                  }
                                                  | { address: string; kind: "native-address"; symbol: string
                                                  | null }
                                                  | { export_path: string; kind: "package-export"; package_name: string };
                                              };
                                              state: "unknown"
                                              | "observed"
                                              | "inferred"
                                              | "unavailable";
                                          };
                                          identifier_strategy: {
                                              stability: "relationship-exact";
                                              strategy: "semantic-content-sha256";
                                          };
                                          properties: Record<string, JSONType>;
                                          relation:
                                              | "contains"
                                              | "loads"
                                              | "calls"
                                              | "imports"
                                              | "maps_to"
                                              | "exposes"
                                              | "sends"
                                              | "invokes"
                                              | "handles"
                                              | "persists_to"
                                              | "observed_as"
                                              | "changed_from";
                                          source_node_id: string;
                                          target_node_id: string;
                                      }[];
                                      graph_id: string;
                                      limitations: string[];
                                      nodes: {
                                          identity: | {
                                              sha256: string;
                                              stability: "global-exact";
                                              strategy: "content-digest";
                                          }
                                          | {
                                              original_source: string;
                                              source_map_sha256: string;
                                              source_sha256: string
                                              | null;
                                              stability: "source-map-exact";
                                              strategy: "source-map-original";
                                          }
                                          | {
                                              artifact_sha256: string;
                                              path: string;
                                              stability: "artifact-version";
                                              strategy: "canonical-path";
                                          }
                                          | {
                                              algorithm: string;
                                              basis: (
                                                  | "imports"
                                                  | "exports"
                                                  | "syntax-tree"
                                                  | "control-flow"
                                                  | "literals"
                                                  | "api-usage"
                                              )[];
                                              fingerprint_sha256: string;
                                              stability: "cross-version-inference";
                                              strategy: "structural-fingerprint";
                                          }
                                          | {
                                              artifact_sha256: string;
                                              key: string;
                                              namespace: string;
                                              stability: "artifact-version";
                                              strategy: "artifact-local-key";
                                          }
                                          | {
                                              capture_sha256: string;
                                              runtime_key: string;
                                              stability: "capture-only";
                                              strategy: "runtime-instance";
                                          }
                                          | {
                                              observation_sha256: string;
                                              scope: string;
                                              stability: "observation-only";
                                              strategy: "observation-fingerprint";
                                          };
                                          kind: | "unknown"
                                          | "target"
                                          | "native-addon"
                                          | "source-map"
                                          | "artifact"
                                          | "package"
                                          | "storage"
                                          | "installer"
                                          | "asar-entry"
                                          | "electron-main"
                                          | "electron-preload"
                                          | "electron-renderer"
                                          | "electron-utility"
                                          | "javascript-asset"
                                          | "javascript-chunk"
                                          | "javascript-module"
                                          | "source-module"
                                          | "browser-window"
                                          | "frame"
                                          | "context-bridge-api"
                                          | "ipc-channel"
                                          | "ipc-handler"
                                          | "worker"
                                          | "service-worker"
                                          | "endpoint"
                                          | "native-export"
                                          | "runtime-script-instance";
                                          node_id: string;
                                          observations: {
                                              evidence: {
                                                  artifact: | { artifact_id: string; available: true; sha256: string }
                                                  | {
                                                      available: false;
                                                      detail: string;
                                                      reason:
                                                          | "unknown"
                                                          | "truncated"
                                                          | "unresolved"
                                                          | "not-applicable"
                                                          | "not-observed"
                                                          | "not-approved"
                                                          | "provider-unavailable";
                                                  };
                                                  authority: | "unknown"
                                                  | "controlled-replay"
                                                  | "historical-reference"
                                                  | "artifact-bytes"
                                                  | "ast-static-analysis"
                                                  | "static-relationship-inference"
                                                  | "passive-cdp-runtime"
                                                  | "cross-layer-reconciliation"
                                                  | "cross-version-comparison"
                                                  | "native-analysis-provider"
                                                  | "user-assertion";
                                                  confidence: "unknown"
                                                  | "exact"
                                                  | "low"
                                                  | "medium"
                                                  | "high";
                                                  coverage: {
                                                      limits: {
                                                          name: string;
                                                          unit:
                                                              | "other"
                                                              | "items"
                                                              | "bytes"
                                                              | "depth"
                                                              | "milliseconds"
                                                              | "characters"
                                                              | "instructions";
                                                          value: number;
                                                      }[];
                                                      omitted_count: number
                                                      | null;
                                                      status: "unknown" | "unavailable" | "complete" | "partial";
                                                      truncated: boolean;
                                                  };
                                                  evidence_ids: string[];
                                                  extractor: {
                                                      executable_sha256: string
                                                      | null;
                                                      name: string;
                                                      operation: string;
                                                      version: string;
                                                  };
                                                  limitations: string[];
                                                  location: | {
                                                      available: false;
                                                      detail: string;
                                                      reason: | "unknown"
                                                      | "truncated"
                                                      | "unresolved"
                                                      | "not-applicable"
                                                      | "not-observed"
                                                      | "not-approved"
                                                      | "provider-unavailable";
                                                  }
                                                  | {
                                                      available: true;
                                                      value: | {
                                                          end: { column: ...; line: ... };
                                                          kind: "source-range";
                                                          source: string;
                                                          start: { column: ...; line: ... };
                                                      }
                                                      | { end: number; kind: "file-offset-range"; start: number }
                                                      | { kind: "artifact-path"; path: string }
                                                      | { kind: "url"; url: string }
                                                      | {
                                                          capture_sha256: string;
                                                          frame_key: (...) | (...);
                                                          kind: "runtime";
                                                          script_key: (...) | (...);
                                                          target_key: string;
                                                      }
                                                      | { address: string; kind: "native-address"; symbol: (...)
                                                      | (...) }
                                                      | {
                                                          export_path: string;
                                                          kind: "package-export";
                                                          package_name: string;
                                                      };
                                                  };
                                                  state: "unknown"
                                                  | "observed"
                                                  | "inferred"
                                                  | "unavailable";
                                              };
                                              identifier_strategy: {
                                                  stability: "observation-exact";
                                                  strategy: "semantic-content-sha256";
                                              };
                                              label: string
                                              | null;
                                              observation_id: string;
                                              properties: Record<string, JSONType>;
                                          }[];
                                      }[];
                                      root_node_ids: string[];
                                      schema: "JavaScriptApplicationGraph";
                                      schema_version: 1;
                                  };
                                  kind: "static-application"
                                  | "static-runtime-reconciliation";
                                  rootArtifactSha256: string;
                              }
                              +
                              +
                              +
                              +
                              Index
                              +
                              +
                              + +
                              +
                              + +
                              +
                              + +
                              evidence:
                                  | {
                                      analysis_profile: {
                                          digest: string;
                                          parameters: Record<string, JSONType>;
                                          provider: { id: string; name: string; version: string };
                                          provider_profile_schema_version: number;
                                          schema_version: 1;
                                      };
                                      authority: | "shipped-artifact"
                                      | "controlled-replay"
                                      | "historical-reference"
                                      | "external-service"
                                      | "analyst-inference";
                                      confidence: "observed"
                                      | "derived"
                                      | "inferred";
                                      environment:
                                          | {
                                              architecture: string;
                                              id: string;
                                              isolation: "process"
                                              | "none"
                                              | "container"
                                              | "virtual-machine";
                                              platform: string;
                                          }
                                          | null;
                                      evidence_id: string;
                                      evidence_links: string[];
                                      limitations: string[];
                                      locations: (
                                          | { address: string; kind: "address" }
                                          | { end: string; kind: "address-range"; start: string }
                                          | { kind: "artifact-path"; path: string }
                                          | { kind: "file-offset"; offset: number }
                                          | { end: number; kind: "file-offset-range"; start: number }
                                      )[];
                                      normalized_result: JSONType;
                                      operation: string;
                                      parameters: Record<string, JSONType>;
                                      predicate_type: string;
                                      provider: { id: string; name: string; version: string | null };
                                      raw_result: JSONType;
                                      schema_version: 2;
                                      subject:
                                          | {
                                              architecture: "x86"
                                              | "x86_64"
                                              | "arm"
                                              | "arm64"
                                              | null;
                                              digest: { sha256: string };
                                              format:
                                                  | "unknown"
                                                  | "file"
                                                  | "directory"
                                                  | "javascript"
                                                  | "source-map"
                                                  | "plist"
                                                  | "entitlements"
                                                  | "dmg"
                                                  | "zip"
                                                  | "pkg"
                                                  | "asar"
                                                  | "javascript-bundle"
                                                  | "mach-o-universal"
                                                  | "mach-o"
                                                  | "elf"
                                                  | "pe"
                                                  | "hopper"
                                                  | "analysis-database"
                                                  | "ipa"
                                                  | "apk";
                                              local_path: string;
                                              name: string;
                                          }
                                          | null;
                                  }
                                  | {
                                      authority: | "shipped-artifact"
                                      | "controlled-replay"
                                      | "historical-reference"
                                      | "external-service"
                                      | "analyst-inference";
                                      confidence: "observed"
                                      | "derived"
                                      | "inferred";
                                      environment:
                                          | {
                                              architecture: string;
                                              id: string;
                                              isolation: "process"
                                              | "none"
                                              | "container"
                                              | "virtual-machine";
                                              platform: string;
                                          }
                                          | null;
                                      evidence_id: string;
                                      evidence_links: string[];
                                      limitations: string[];
                                      locations: (
                                          | { address: string; kind: "address" }
                                          | { end: string; kind: "address-range"; start: string }
                                          | { kind: "artifact-path"; path: string }
                                          | { kind: "file-offset"; offset: number }
                                          | { end: number; kind: "file-offset-range"; start: number }
                                      )[];
                                      normalized_result: JSONType;
                                      operation: string;
                                      parameters: Record<string, JSONType>;
                                      predicate_type: string;
                                      provider: { id: string; name: string; version: string | null };
                                      raw_result: JSONType;
                                      schema_version: 2;
                                      subject:
                                          | {
                                              architecture: "x86"
                                              | "x86_64"
                                              | "arm"
                                              | "arm64"
                                              | null;
                                              digest: { sha256: string };
                                              format:
                                                  | "unknown"
                                                  | "file"
                                                  | "directory"
                                                  | "javascript"
                                                  | "source-map"
                                                  | "plist"
                                                  | "entitlements"
                                                  | "dmg"
                                                  | "zip"
                                                  | "pkg"
                                                  | "asar"
                                                  | "javascript-bundle"
                                                  | "mach-o-universal"
                                                  | "mach-o"
                                                  | "elf"
                                                  | "pe"
                                                  | "hopper"
                                                  | "analysis-database"
                                                  | "ipa"
                                                  | "apk";
                                              local_path: string;
                                              name: string;
                                          }
                                          | null;
                                  }
                              +
                              + +
                              graph: {
                                  coverage: {
                                      limits: {
                                          name: string;
                                          unit:
                                              | "other"
                                              | "items"
                                              | "bytes"
                                              | "depth"
                                              | "milliseconds"
                                              | "characters"
                                              | "instructions";
                                          value: number;
                                      }[];
                                      omitted_count: number
                                      | null;
                                      status: "unknown" | "unavailable" | "complete" | "partial";
                                      truncated: boolean;
                                  };
                                  edges: {
                                      edge_id: string;
                                      evidence: {
                                          artifact: | { artifact_id: string; available: true; sha256: string }
                                          | {
                                              available: false;
                                              detail: string;
                                              reason:
                                                  | "unknown"
                                                  | "truncated"
                                                  | "unresolved"
                                                  | "not-applicable"
                                                  | "not-observed"
                                                  | "not-approved"
                                                  | "provider-unavailable";
                                          };
                                          authority: | "unknown"
                                          | "controlled-replay"
                                          | "historical-reference"
                                          | "artifact-bytes"
                                          | "ast-static-analysis"
                                          | "static-relationship-inference"
                                          | "passive-cdp-runtime"
                                          | "cross-layer-reconciliation"
                                          | "cross-version-comparison"
                                          | "native-analysis-provider"
                                          | "user-assertion";
                                          confidence: "unknown"
                                          | "exact"
                                          | "low"
                                          | "medium"
                                          | "high";
                                          coverage: {
                                              limits: {
                                                  name: string;
                                                  unit:
                                                      | "other"
                                                      | "items"
                                                      | "bytes"
                                                      | "depth"
                                                      | "milliseconds"
                                                      | "characters"
                                                      | "instructions";
                                                  value: number;
                                              }[];
                                              omitted_count: number
                                              | null;
                                              status: "unknown" | "unavailable" | "complete" | "partial";
                                              truncated: boolean;
                                          };
                                          evidence_ids: string[];
                                          extractor: {
                                              executable_sha256: string
                                              | null;
                                              name: string;
                                              operation: string;
                                              version: string;
                                          };
                                          limitations: string[];
                                          location: | {
                                              available: false;
                                              detail: string;
                                              reason: | "unknown"
                                              | "truncated"
                                              | "unresolved"
                                              | "not-applicable"
                                              | "not-observed"
                                              | "not-approved"
                                              | "provider-unavailable";
                                          }
                                          | {
                                              available: true;
                                              value: | {
                                                  end: { column: number; line: number };
                                                  kind: "source-range";
                                                  source: string;
                                                  start: { column: number; line: number };
                                              }
                                              | { end: number; kind: "file-offset-range"; start: number }
                                              | { kind: "artifact-path"; path: string }
                                              | { kind: "url"; url: string }
                                              | {
                                                  capture_sha256: string;
                                                  frame_key: string | null;
                                                  kind: "runtime";
                                                  script_key: string | null;
                                                  target_key: string;
                                              }
                                              | { address: string; kind: "native-address"; symbol: string
                                              | null }
                                              | { export_path: string; kind: "package-export"; package_name: string };
                                          };
                                          state: "unknown"
                                          | "observed"
                                          | "inferred"
                                          | "unavailable";
                                      };
                                      identifier_strategy: {
                                          stability: "relationship-exact";
                                          strategy: "semantic-content-sha256";
                                      };
                                      properties: Record<string, JSONType>;
                                      relation:
                                          | "contains"
                                          | "loads"
                                          | "calls"
                                          | "imports"
                                          | "maps_to"
                                          | "exposes"
                                          | "sends"
                                          | "invokes"
                                          | "handles"
                                          | "persists_to"
                                          | "observed_as"
                                          | "changed_from";
                                      source_node_id: string;
                                      target_node_id: string;
                                  }[];
                                  graph_id: string;
                                  limitations: string[];
                                  nodes: {
                                      identity: | {
                                          sha256: string;
                                          stability: "global-exact";
                                          strategy: "content-digest";
                                      }
                                      | {
                                          original_source: string;
                                          source_map_sha256: string;
                                          source_sha256: string
                                          | null;
                                          stability: "source-map-exact";
                                          strategy: "source-map-original";
                                      }
                                      | {
                                          artifact_sha256: string;
                                          path: string;
                                          stability: "artifact-version";
                                          strategy: "canonical-path";
                                      }
                                      | {
                                          algorithm: string;
                                          basis: (
                                              | "imports"
                                              | "exports"
                                              | "syntax-tree"
                                              | "control-flow"
                                              | "literals"
                                              | "api-usage"
                                          )[];
                                          fingerprint_sha256: string;
                                          stability: "cross-version-inference";
                                          strategy: "structural-fingerprint";
                                      }
                                      | {
                                          artifact_sha256: string;
                                          key: string;
                                          namespace: string;
                                          stability: "artifact-version";
                                          strategy: "artifact-local-key";
                                      }
                                      | {
                                          capture_sha256: string;
                                          runtime_key: string;
                                          stability: "capture-only";
                                          strategy: "runtime-instance";
                                      }
                                      | {
                                          observation_sha256: string;
                                          scope: string;
                                          stability: "observation-only";
                                          strategy: "observation-fingerprint";
                                      };
                                      kind: | "unknown"
                                      | "target"
                                      | "native-addon"
                                      | "source-map"
                                      | "artifact"
                                      | "package"
                                      | "storage"
                                      | "installer"
                                      | "asar-entry"
                                      | "electron-main"
                                      | "electron-preload"
                                      | "electron-renderer"
                                      | "electron-utility"
                                      | "javascript-asset"
                                      | "javascript-chunk"
                                      | "javascript-module"
                                      | "source-module"
                                      | "browser-window"
                                      | "frame"
                                      | "context-bridge-api"
                                      | "ipc-channel"
                                      | "ipc-handler"
                                      | "worker"
                                      | "service-worker"
                                      | "endpoint"
                                      | "native-export"
                                      | "runtime-script-instance";
                                      node_id: string;
                                      observations: {
                                          evidence: {
                                              artifact: | { artifact_id: string; available: true; sha256: string }
                                              | {
                                                  available: false;
                                                  detail: string;
                                                  reason:
                                                      | "unknown"
                                                      | "truncated"
                                                      | "unresolved"
                                                      | "not-applicable"
                                                      | "not-observed"
                                                      | "not-approved"
                                                      | "provider-unavailable";
                                              };
                                              authority: | "unknown"
                                              | "controlled-replay"
                                              | "historical-reference"
                                              | "artifact-bytes"
                                              | "ast-static-analysis"
                                              | "static-relationship-inference"
                                              | "passive-cdp-runtime"
                                              | "cross-layer-reconciliation"
                                              | "cross-version-comparison"
                                              | "native-analysis-provider"
                                              | "user-assertion";
                                              confidence: "unknown"
                                              | "exact"
                                              | "low"
                                              | "medium"
                                              | "high";
                                              coverage: {
                                                  limits: {
                                                      name: string;
                                                      unit:
                                                          | "other"
                                                          | "items"
                                                          | "bytes"
                                                          | "depth"
                                                          | "milliseconds"
                                                          | "characters"
                                                          | "instructions";
                                                      value: number;
                                                  }[];
                                                  omitted_count: number
                                                  | null;
                                                  status: "unknown" | "unavailable" | "complete" | "partial";
                                                  truncated: boolean;
                                              };
                                              evidence_ids: string[];
                                              extractor: {
                                                  executable_sha256: string
                                                  | null;
                                                  name: string;
                                                  operation: string;
                                                  version: string;
                                              };
                                              limitations: string[];
                                              location: | {
                                                  available: false;
                                                  detail: string;
                                                  reason: | "unknown"
                                                  | "truncated"
                                                  | "unresolved"
                                                  | "not-applicable"
                                                  | "not-observed"
                                                  | "not-approved"
                                                  | "provider-unavailable";
                                              }
                                              | {
                                                  available: true;
                                                  value: | {
                                                      end: { column: ...; line: ... };
                                                      kind: "source-range";
                                                      source: string;
                                                      start: { column: ...; line: ... };
                                                  }
                                                  | { end: number; kind: "file-offset-range"; start: number }
                                                  | { kind: "artifact-path"; path: string }
                                                  | { kind: "url"; url: string }
                                                  | {
                                                      capture_sha256: string;
                                                      frame_key: (...) | (...);
                                                      kind: "runtime";
                                                      script_key: (...) | (...);
                                                      target_key: string;
                                                  }
                                                  | { address: string; kind: "native-address"; symbol: (...)
                                                  | (...) }
                                                  | { export_path: string; kind: "package-export"; package_name: string };
                                              };
                                              state: "unknown"
                                              | "observed"
                                              | "inferred"
                                              | "unavailable";
                                          };
                                          identifier_strategy: {
                                              stability: "observation-exact";
                                              strategy: "semantic-content-sha256";
                                          };
                                          label: string
                                          | null;
                                          observation_id: string;
                                          properties: Record<string, JSONType>;
                                      }[];
                                  }[];
                                  root_node_ids: string[];
                                  schema: "JavaScriptApplicationGraph";
                                  schema_version: 1;
                              }
                              +
                              + +
                              kind: "static-application" | "static-runtime-reconciliation"
                              +
                              + +
                              rootArtifactSha256: string
                              +
                              + +
                              +
                              diff --git a/docs/api/interfaces/application_JavaScriptArtifactGraphContext.AstEdgeInput.html b/docs/api/interfaces/application_JavaScriptArtifactGraphContext.AstEdgeInput.html index 9a4bdad61..143bc9257 100644 --- a/docs/api/interfaces/application_JavaScriptArtifactGraphContext.AstEdgeInput.html +++ b/docs/api/interfaces/application_JavaScriptArtifactGraphContext.AstEdgeInput.html @@ -14,8 +14,8 @@

                              Exact AST containment edge values.

                              -
                              interface AstEdgeInput {
                                  coverage: {
                                      limits: {
                                          name: string;
                                          unit:
                                              | "other"
                                              | "items"
                                              | "bytes"
                                              | "depth"
                                              | "milliseconds"
                                              | "characters"
                                              | "instructions";
                                          value: number;
                                      }[];
                                      omitted_count: number
                                      | null;
                                      status: "unknown" | "unavailable" | "complete" | "partial";
                                      truncated: boolean;
                                  };
                                  file: JavaScriptArtifactFile;
                                  properties: Readonly<Record<string, unknown>>;
                                  range: JavaScriptSourceRange;
                                  source: {
                                      identity:
                                          | {
                                              sha256: string;
                                              stability: "global-exact";
                                              strategy: "content-digest";
                                          }
                                          | {
                                              original_source: string;
                                              source_map_sha256: string;
                                              source_sha256: string
                                              | null;
                                              stability: "source-map-exact";
                                              strategy: "source-map-original";
                                          }
                                          | {
                                              artifact_sha256: string;
                                              path: string;
                                              stability: "artifact-version";
                                              strategy: "canonical-path";
                                          }
                                          | {
                                              algorithm: string;
                                              basis: (
                                                  | "imports"
                                                  | "exports"
                                                  | "syntax-tree"
                                                  | "control-flow"
                                                  | "literals"
                                                  | "api-usage"
                                              )[];
                                              fingerprint_sha256: string;
                                              stability: "cross-version-inference";
                                              strategy: "structural-fingerprint";
                                          }
                                          | {
                                              artifact_sha256: string;
                                              key: string;
                                              namespace: string;
                                              stability: "artifact-version";
                                              strategy: "artifact-local-key";
                                          }
                                          | {
                                              capture_sha256: string;
                                              runtime_key: string;
                                              stability: "capture-only";
                                              strategy: "runtime-instance";
                                          }
                                          | {
                                              observation_sha256: string;
                                              scope: string;
                                              stability: "observation-only";
                                              strategy: "observation-fingerprint";
                                          };
                                      kind: | "unknown"
                                      | "target"
                                      | "native-addon"
                                      | "source-map"
                                      | "artifact"
                                      | "package"
                                      | "storage"
                                      | "installer"
                                      | "asar-entry"
                                      | "electron-main"
                                      | "electron-preload"
                                      | "electron-renderer"
                                      | "electron-utility"
                                      | "javascript-asset"
                                      | "javascript-chunk"
                                      | "javascript-module"
                                      | "source-module"
                                      | "browser-window"
                                      | "frame"
                                      | "context-bridge-api"
                                      | "ipc-channel"
                                      | "ipc-handler"
                                      | "worker"
                                      | "service-worker"
                                      | "endpoint"
                                      | "native-export"
                                      | "runtime-script-instance";
                                      node_id: string;
                                      observations: {
                                          evidence: {
                                              artifact: | { artifact_id: string; available: true; sha256: string }
                                              | {
                                                  available: false;
                                                  detail: string;
                                                  reason:
                                                      | "unknown"
                                                      | "truncated"
                                                      | "unresolved"
                                                      | "not-applicable"
                                                      | "not-observed"
                                                      | "not-approved"
                                                      | "provider-unavailable";
                                              };
                                              authority: | "unknown"
                                              | "controlled-replay"
                                              | "historical-reference"
                                              | "artifact-bytes"
                                              | "ast-static-analysis"
                                              | "static-relationship-inference"
                                              | "passive-cdp-runtime"
                                              | "cross-layer-reconciliation"
                                              | "native-analysis-provider"
                                              | "user-assertion";
                                              confidence: "unknown"
                                              | "exact"
                                              | "low"
                                              | "medium"
                                              | "high";
                                              coverage: {
                                                  limits: {
                                                      name: string;
                                                      unit:
                                                          | "other"
                                                          | "items"
                                                          | "bytes"
                                                          | "depth"
                                                          | "milliseconds"
                                                          | "characters"
                                                          | "instructions";
                                                      value: number;
                                                  }[];
                                                  omitted_count: number
                                                  | null;
                                                  status: "unknown" | "unavailable" | "complete" | "partial";
                                                  truncated: boolean;
                                              };
                                              evidence_ids: string[];
                                              extractor: {
                                                  executable_sha256: string
                                                  | null;
                                                  name: string;
                                                  operation: string;
                                                  version: string;
                                              };
                                              limitations: string[];
                                              location: | {
                                                  available: false;
                                                  detail: string;
                                                  reason: | "unknown"
                                                  | "truncated"
                                                  | "unresolved"
                                                  | "not-applicable"
                                                  | "not-observed"
                                                  | "not-approved"
                                                  | "provider-unavailable";
                                              }
                                              | {
                                                  available: true;
                                                  value: | {
                                                      end: { column: number; line: number };
                                                      kind: "source-range";
                                                      source: string;
                                                      start: { column: number; line: number };
                                                  }
                                                  | { end: number; kind: "file-offset-range"; start: number }
                                                  | { kind: "artifact-path"; path: string }
                                                  | { kind: "url"; url: string }
                                                  | {
                                                      capture_sha256: string;
                                                      frame_key: string | null;
                                                      kind: "runtime";
                                                      script_key: string | null;
                                                      target_key: string;
                                                  }
                                                  | { address: string; kind: "native-address"; symbol: string
                                                  | null }
                                                  | { export_path: string; kind: "package-export"; package_name: string };
                                              };
                                              state: "unknown"
                                              | "observed"
                                              | "inferred"
                                              | "unavailable";
                                          };
                                          identifier_strategy: {
                                              stability: "observation-exact";
                                              strategy: "semantic-content-sha256";
                                          };
                                          label: string
                                          | null;
                                          observation_id: string;
                                          properties: Record<string, JSONType>;
                                      }[];
                                  };
                                  target: {
                                      identity: | {
                                          sha256: string;
                                          stability: "global-exact";
                                          strategy: "content-digest";
                                      }
                                      | {
                                          original_source: string;
                                          source_map_sha256: string;
                                          source_sha256: string
                                          | null;
                                          stability: "source-map-exact";
                                          strategy: "source-map-original";
                                      }
                                      | {
                                          artifact_sha256: string;
                                          path: string;
                                          stability: "artifact-version";
                                          strategy: "canonical-path";
                                      }
                                      | {
                                          algorithm: string;
                                          basis: (
                                              | "imports"
                                              | "exports"
                                              | "syntax-tree"
                                              | "control-flow"
                                              | "literals"
                                              | "api-usage"
                                          )[];
                                          fingerprint_sha256: string;
                                          stability: "cross-version-inference";
                                          strategy: "structural-fingerprint";
                                      }
                                      | {
                                          artifact_sha256: string;
                                          key: string;
                                          namespace: string;
                                          stability: "artifact-version";
                                          strategy: "artifact-local-key";
                                      }
                                      | {
                                          capture_sha256: string;
                                          runtime_key: string;
                                          stability: "capture-only";
                                          strategy: "runtime-instance";
                                      }
                                      | {
                                          observation_sha256: string;
                                          scope: string;
                                          stability: "observation-only";
                                          strategy: "observation-fingerprint";
                                      };
                                      kind: | "unknown"
                                      | "target"
                                      | "native-addon"
                                      | "source-map"
                                      | "artifact"
                                      | "package"
                                      | "storage"
                                      | "installer"
                                      | "asar-entry"
                                      | "electron-main"
                                      | "electron-preload"
                                      | "electron-renderer"
                                      | "electron-utility"
                                      | "javascript-asset"
                                      | "javascript-chunk"
                                      | "javascript-module"
                                      | "source-module"
                                      | "browser-window"
                                      | "frame"
                                      | "context-bridge-api"
                                      | "ipc-channel"
                                      | "ipc-handler"
                                      | "worker"
                                      | "service-worker"
                                      | "endpoint"
                                      | "native-export"
                                      | "runtime-script-instance";
                                      node_id: string;
                                      observations: {
                                          evidence: {
                                              artifact: | { artifact_id: string; available: true; sha256: string }
                                              | {
                                                  available: false;
                                                  detail: string;
                                                  reason:
                                                      | "unknown"
                                                      | "truncated"
                                                      | "unresolved"
                                                      | "not-applicable"
                                                      | "not-observed"
                                                      | "not-approved"
                                                      | "provider-unavailable";
                                              };
                                              authority: | "unknown"
                                              | "controlled-replay"
                                              | "historical-reference"
                                              | "artifact-bytes"
                                              | "ast-static-analysis"
                                              | "static-relationship-inference"
                                              | "passive-cdp-runtime"
                                              | "cross-layer-reconciliation"
                                              | "native-analysis-provider"
                                              | "user-assertion";
                                              confidence: "unknown"
                                              | "exact"
                                              | "low"
                                              | "medium"
                                              | "high";
                                              coverage: {
                                                  limits: {
                                                      name: string;
                                                      unit:
                                                          | "other"
                                                          | "items"
                                                          | "bytes"
                                                          | "depth"
                                                          | "milliseconds"
                                                          | "characters"
                                                          | "instructions";
                                                      value: number;
                                                  }[];
                                                  omitted_count: number
                                                  | null;
                                                  status: "unknown" | "unavailable" | "complete" | "partial";
                                                  truncated: boolean;
                                              };
                                              evidence_ids: string[];
                                              extractor: {
                                                  executable_sha256: string
                                                  | null;
                                                  name: string;
                                                  operation: string;
                                                  version: string;
                                              };
                                              limitations: string[];
                                              location: | {
                                                  available: false;
                                                  detail: string;
                                                  reason: | "unknown"
                                                  | "truncated"
                                                  | "unresolved"
                                                  | "not-applicable"
                                                  | "not-observed"
                                                  | "not-approved"
                                                  | "provider-unavailable";
                                              }
                                              | {
                                                  available: true;
                                                  value: | {
                                                      end: { column: number; line: number };
                                                      kind: "source-range";
                                                      source: string;
                                                      start: { column: number; line: number };
                                                  }
                                                  | { end: number; kind: "file-offset-range"; start: number }
                                                  | { kind: "artifact-path"; path: string }
                                                  | { kind: "url"; url: string }
                                                  | {
                                                      capture_sha256: string;
                                                      frame_key: string | null;
                                                      kind: "runtime";
                                                      script_key: string | null;
                                                      target_key: string;
                                                  }
                                                  | { address: string; kind: "native-address"; symbol: string
                                                  | null }
                                                  | { export_path: string; kind: "package-export"; package_name: string };
                                              };
                                              state: "unknown"
                                              | "observed"
                                              | "inferred"
                                              | "unavailable";
                                          };
                                          identifier_strategy: {
                                              stability: "observation-exact";
                                              strategy: "semantic-content-sha256";
                                          };
                                          label: string
                                          | null;
                                          observation_id: string;
                                          properties: Record<string, JSONType>;
                                      }[];
                                  };
                              }
                              -
                              +
                              interface AstEdgeInput {
                                  coverage: {
                                      limits: {
                                          name: string;
                                          unit:
                                              | "other"
                                              | "items"
                                              | "bytes"
                                              | "depth"
                                              | "milliseconds"
                                              | "characters"
                                              | "instructions";
                                          value: number;
                                      }[];
                                      omitted_count: number
                                      | null;
                                      status: "unknown" | "unavailable" | "complete" | "partial";
                                      truncated: boolean;
                                  };
                                  file: JavaScriptArtifactFile;
                                  properties: Readonly<Record<string, unknown>>;
                                  range: JavaScriptSourceRange;
                                  source: {
                                      identity:
                                          | {
                                              sha256: string;
                                              stability: "global-exact";
                                              strategy: "content-digest";
                                          }
                                          | {
                                              original_source: string;
                                              source_map_sha256: string;
                                              source_sha256: string
                                              | null;
                                              stability: "source-map-exact";
                                              strategy: "source-map-original";
                                          }
                                          | {
                                              artifact_sha256: string;
                                              path: string;
                                              stability: "artifact-version";
                                              strategy: "canonical-path";
                                          }
                                          | {
                                              algorithm: string;
                                              basis: (
                                                  | "imports"
                                                  | "exports"
                                                  | "syntax-tree"
                                                  | "control-flow"
                                                  | "literals"
                                                  | "api-usage"
                                              )[];
                                              fingerprint_sha256: string;
                                              stability: "cross-version-inference";
                                              strategy: "structural-fingerprint";
                                          }
                                          | {
                                              artifact_sha256: string;
                                              key: string;
                                              namespace: string;
                                              stability: "artifact-version";
                                              strategy: "artifact-local-key";
                                          }
                                          | {
                                              capture_sha256: string;
                                              runtime_key: string;
                                              stability: "capture-only";
                                              strategy: "runtime-instance";
                                          }
                                          | {
                                              observation_sha256: string;
                                              scope: string;
                                              stability: "observation-only";
                                              strategy: "observation-fingerprint";
                                          };
                                      kind: | "unknown"
                                      | "target"
                                      | "native-addon"
                                      | "source-map"
                                      | "artifact"
                                      | "package"
                                      | "storage"
                                      | "installer"
                                      | "asar-entry"
                                      | "electron-main"
                                      | "electron-preload"
                                      | "electron-renderer"
                                      | "electron-utility"
                                      | "javascript-asset"
                                      | "javascript-chunk"
                                      | "javascript-module"
                                      | "source-module"
                                      | "browser-window"
                                      | "frame"
                                      | "context-bridge-api"
                                      | "ipc-channel"
                                      | "ipc-handler"
                                      | "worker"
                                      | "service-worker"
                                      | "endpoint"
                                      | "native-export"
                                      | "runtime-script-instance";
                                      node_id: string;
                                      observations: {
                                          evidence: {
                                              artifact: | { artifact_id: string; available: true; sha256: string }
                                              | {
                                                  available: false;
                                                  detail: string;
                                                  reason:
                                                      | "unknown"
                                                      | "truncated"
                                                      | "unresolved"
                                                      | "not-applicable"
                                                      | "not-observed"
                                                      | "not-approved"
                                                      | "provider-unavailable";
                                              };
                                              authority: | "unknown"
                                              | "controlled-replay"
                                              | "historical-reference"
                                              | "artifact-bytes"
                                              | "ast-static-analysis"
                                              | "static-relationship-inference"
                                              | "passive-cdp-runtime"
                                              | "cross-layer-reconciliation"
                                              | "cross-version-comparison"
                                              | "native-analysis-provider"
                                              | "user-assertion";
                                              confidence: "unknown"
                                              | "exact"
                                              | "low"
                                              | "medium"
                                              | "high";
                                              coverage: {
                                                  limits: {
                                                      name: string;
                                                      unit:
                                                          | "other"
                                                          | "items"
                                                          | "bytes"
                                                          | "depth"
                                                          | "milliseconds"
                                                          | "characters"
                                                          | "instructions";
                                                      value: number;
                                                  }[];
                                                  omitted_count: number
                                                  | null;
                                                  status: "unknown" | "unavailable" | "complete" | "partial";
                                                  truncated: boolean;
                                              };
                                              evidence_ids: string[];
                                              extractor: {
                                                  executable_sha256: string
                                                  | null;
                                                  name: string;
                                                  operation: string;
                                                  version: string;
                                              };
                                              limitations: string[];
                                              location: | {
                                                  available: false;
                                                  detail: string;
                                                  reason: | "unknown"
                                                  | "truncated"
                                                  | "unresolved"
                                                  | "not-applicable"
                                                  | "not-observed"
                                                  | "not-approved"
                                                  | "provider-unavailable";
                                              }
                                              | {
                                                  available: true;
                                                  value: | {
                                                      end: { column: number; line: number };
                                                      kind: "source-range";
                                                      source: string;
                                                      start: { column: number; line: number };
                                                  }
                                                  | { end: number; kind: "file-offset-range"; start: number }
                                                  | { kind: "artifact-path"; path: string }
                                                  | { kind: "url"; url: string }
                                                  | {
                                                      capture_sha256: string;
                                                      frame_key: string | null;
                                                      kind: "runtime";
                                                      script_key: string | null;
                                                      target_key: string;
                                                  }
                                                  | { address: string; kind: "native-address"; symbol: string
                                                  | null }
                                                  | { export_path: string; kind: "package-export"; package_name: string };
                                              };
                                              state: "unknown"
                                              | "observed"
                                              | "inferred"
                                              | "unavailable";
                                          };
                                          identifier_strategy: {
                                              stability: "observation-exact";
                                              strategy: "semantic-content-sha256";
                                          };
                                          label: string
                                          | null;
                                          observation_id: string;
                                          properties: Record<string, JSONType>;
                                      }[];
                                  };
                                  target: {
                                      identity: | {
                                          sha256: string;
                                          stability: "global-exact";
                                          strategy: "content-digest";
                                      }
                                      | {
                                          original_source: string;
                                          source_map_sha256: string;
                                          source_sha256: string
                                          | null;
                                          stability: "source-map-exact";
                                          strategy: "source-map-original";
                                      }
                                      | {
                                          artifact_sha256: string;
                                          path: string;
                                          stability: "artifact-version";
                                          strategy: "canonical-path";
                                      }
                                      | {
                                          algorithm: string;
                                          basis: (
                                              | "imports"
                                              | "exports"
                                              | "syntax-tree"
                                              | "control-flow"
                                              | "literals"
                                              | "api-usage"
                                          )[];
                                          fingerprint_sha256: string;
                                          stability: "cross-version-inference";
                                          strategy: "structural-fingerprint";
                                      }
                                      | {
                                          artifact_sha256: string;
                                          key: string;
                                          namespace: string;
                                          stability: "artifact-version";
                                          strategy: "artifact-local-key";
                                      }
                                      | {
                                          capture_sha256: string;
                                          runtime_key: string;
                                          stability: "capture-only";
                                          strategy: "runtime-instance";
                                      }
                                      | {
                                          observation_sha256: string;
                                          scope: string;
                                          stability: "observation-only";
                                          strategy: "observation-fingerprint";
                                      };
                                      kind: | "unknown"
                                      | "target"
                                      | "native-addon"
                                      | "source-map"
                                      | "artifact"
                                      | "package"
                                      | "storage"
                                      | "installer"
                                      | "asar-entry"
                                      | "electron-main"
                                      | "electron-preload"
                                      | "electron-renderer"
                                      | "electron-utility"
                                      | "javascript-asset"
                                      | "javascript-chunk"
                                      | "javascript-module"
                                      | "source-module"
                                      | "browser-window"
                                      | "frame"
                                      | "context-bridge-api"
                                      | "ipc-channel"
                                      | "ipc-handler"
                                      | "worker"
                                      | "service-worker"
                                      | "endpoint"
                                      | "native-export"
                                      | "runtime-script-instance";
                                      node_id: string;
                                      observations: {
                                          evidence: {
                                              artifact: | { artifact_id: string; available: true; sha256: string }
                                              | {
                                                  available: false;
                                                  detail: string;
                                                  reason:
                                                      | "unknown"
                                                      | "truncated"
                                                      | "unresolved"
                                                      | "not-applicable"
                                                      | "not-observed"
                                                      | "not-approved"
                                                      | "provider-unavailable";
                                              };
                                              authority: | "unknown"
                                              | "controlled-replay"
                                              | "historical-reference"
                                              | "artifact-bytes"
                                              | "ast-static-analysis"
                                              | "static-relationship-inference"
                                              | "passive-cdp-runtime"
                                              | "cross-layer-reconciliation"
                                              | "cross-version-comparison"
                                              | "native-analysis-provider"
                                              | "user-assertion";
                                              confidence: "unknown"
                                              | "exact"
                                              | "low"
                                              | "medium"
                                              | "high";
                                              coverage: {
                                                  limits: {
                                                      name: string;
                                                      unit:
                                                          | "other"
                                                          | "items"
                                                          | "bytes"
                                                          | "depth"
                                                          | "milliseconds"
                                                          | "characters"
                                                          | "instructions";
                                                      value: number;
                                                  }[];
                                                  omitted_count: number
                                                  | null;
                                                  status: "unknown" | "unavailable" | "complete" | "partial";
                                                  truncated: boolean;
                                              };
                                              evidence_ids: string[];
                                              extractor: {
                                                  executable_sha256: string
                                                  | null;
                                                  name: string;
                                                  operation: string;
                                                  version: string;
                                              };
                                              limitations: string[];
                                              location: | {
                                                  available: false;
                                                  detail: string;
                                                  reason: | "unknown"
                                                  | "truncated"
                                                  | "unresolved"
                                                  | "not-applicable"
                                                  | "not-observed"
                                                  | "not-approved"
                                                  | "provider-unavailable";
                                              }
                                              | {
                                                  available: true;
                                                  value: | {
                                                      end: { column: number; line: number };
                                                      kind: "source-range";
                                                      source: string;
                                                      start: { column: number; line: number };
                                                  }
                                                  | { end: number; kind: "file-offset-range"; start: number }
                                                  | { kind: "artifact-path"; path: string }
                                                  | { kind: "url"; url: string }
                                                  | {
                                                      capture_sha256: string;
                                                      frame_key: string | null;
                                                      kind: "runtime";
                                                      script_key: string | null;
                                                      target_key: string;
                                                  }
                                                  | { address: string; kind: "native-address"; symbol: string
                                                  | null }
                                                  | { export_path: string; kind: "package-export"; package_name: string };
                                              };
                                              state: "unknown"
                                              | "observed"
                                              | "inferred"
                                              | "unavailable";
                                          };
                                          identifier_strategy: {
                                              stability: "observation-exact";
                                              strategy: "semantic-content-sha256";
                                          };
                                          label: string
                                          | null;
                                          observation_id: string;
                                          properties: Record<string, JSONType>;
                                      }[];
                                  };
                              }
                              +

                              Hierarchy (View Summary)

                              -
                              source: {
                                  identity:
                                      | {
                                          sha256: string;
                                          stability: "global-exact";
                                          strategy: "content-digest";
                                      }
                                      | {
                                          original_source: string;
                                          source_map_sha256: string;
                                          source_sha256: string
                                          | null;
                                          stability: "source-map-exact";
                                          strategy: "source-map-original";
                                      }
                                      | {
                                          artifact_sha256: string;
                                          path: string;
                                          stability: "artifact-version";
                                          strategy: "canonical-path";
                                      }
                                      | {
                                          algorithm: string;
                                          basis: (
                                              | "imports"
                                              | "exports"
                                              | "syntax-tree"
                                              | "control-flow"
                                              | "literals"
                                              | "api-usage"
                                          )[];
                                          fingerprint_sha256: string;
                                          stability: "cross-version-inference";
                                          strategy: "structural-fingerprint";
                                      }
                                      | {
                                          artifact_sha256: string;
                                          key: string;
                                          namespace: string;
                                          stability: "artifact-version";
                                          strategy: "artifact-local-key";
                                      }
                                      | {
                                          capture_sha256: string;
                                          runtime_key: string;
                                          stability: "capture-only";
                                          strategy: "runtime-instance";
                                      }
                                      | {
                                          observation_sha256: string;
                                          scope: string;
                                          stability: "observation-only";
                                          strategy: "observation-fingerprint";
                                      };
                                  kind: | "unknown"
                                  | "target"
                                  | "native-addon"
                                  | "source-map"
                                  | "artifact"
                                  | "package"
                                  | "storage"
                                  | "installer"
                                  | "asar-entry"
                                  | "electron-main"
                                  | "electron-preload"
                                  | "electron-renderer"
                                  | "electron-utility"
                                  | "javascript-asset"
                                  | "javascript-chunk"
                                  | "javascript-module"
                                  | "source-module"
                                  | "browser-window"
                                  | "frame"
                                  | "context-bridge-api"
                                  | "ipc-channel"
                                  | "ipc-handler"
                                  | "worker"
                                  | "service-worker"
                                  | "endpoint"
                                  | "native-export"
                                  | "runtime-script-instance";
                                  node_id: string;
                                  observations: {
                                      evidence: {
                                          artifact: | { artifact_id: string; available: true; sha256: string }
                                          | {
                                              available: false;
                                              detail: string;
                                              reason:
                                                  | "unknown"
                                                  | "truncated"
                                                  | "unresolved"
                                                  | "not-applicable"
                                                  | "not-observed"
                                                  | "not-approved"
                                                  | "provider-unavailable";
                                          };
                                          authority: | "unknown"
                                          | "controlled-replay"
                                          | "historical-reference"
                                          | "artifact-bytes"
                                          | "ast-static-analysis"
                                          | "static-relationship-inference"
                                          | "passive-cdp-runtime"
                                          | "cross-layer-reconciliation"
                                          | "native-analysis-provider"
                                          | "user-assertion";
                                          confidence: "unknown"
                                          | "exact"
                                          | "low"
                                          | "medium"
                                          | "high";
                                          coverage: {
                                              limits: {
                                                  name: string;
                                                  unit:
                                                      | "other"
                                                      | "items"
                                                      | "bytes"
                                                      | "depth"
                                                      | "milliseconds"
                                                      | "characters"
                                                      | "instructions";
                                                  value: number;
                                              }[];
                                              omitted_count: number
                                              | null;
                                              status: "unknown" | "unavailable" | "complete" | "partial";
                                              truncated: boolean;
                                          };
                                          evidence_ids: string[];
                                          extractor: {
                                              executable_sha256: string
                                              | null;
                                              name: string;
                                              operation: string;
                                              version: string;
                                          };
                                          limitations: string[];
                                          location: | {
                                              available: false;
                                              detail: string;
                                              reason: | "unknown"
                                              | "truncated"
                                              | "unresolved"
                                              | "not-applicable"
                                              | "not-observed"
                                              | "not-approved"
                                              | "provider-unavailable";
                                          }
                                          | {
                                              available: true;
                                              value: | {
                                                  end: { column: number; line: number };
                                                  kind: "source-range";
                                                  source: string;
                                                  start: { column: number; line: number };
                                              }
                                              | { end: number; kind: "file-offset-range"; start: number }
                                              | { kind: "artifact-path"; path: string }
                                              | { kind: "url"; url: string }
                                              | {
                                                  capture_sha256: string;
                                                  frame_key: string | null;
                                                  kind: "runtime";
                                                  script_key: string | null;
                                                  target_key: string;
                                              }
                                              | { address: string; kind: "native-address"; symbol: string
                                              | null }
                                              | { export_path: string; kind: "package-export"; package_name: string };
                                          };
                                          state: "unknown"
                                          | "observed"
                                          | "inferred"
                                          | "unavailable";
                                      };
                                      identifier_strategy: {
                                          stability: "observation-exact";
                                          strategy: "semantic-content-sha256";
                                      };
                                      label: string
                                      | null;
                                      observation_id: string;
                                      properties: Record<string, JSONType>;
                                  }[];
                              }
                              -
                              target: {
                                  identity:
                                      | {
                                          sha256: string;
                                          stability: "global-exact";
                                          strategy: "content-digest";
                                      }
                                      | {
                                          original_source: string;
                                          source_map_sha256: string;
                                          source_sha256: string
                                          | null;
                                          stability: "source-map-exact";
                                          strategy: "source-map-original";
                                      }
                                      | {
                                          artifact_sha256: string;
                                          path: string;
                                          stability: "artifact-version";
                                          strategy: "canonical-path";
                                      }
                                      | {
                                          algorithm: string;
                                          basis: (
                                              | "imports"
                                              | "exports"
                                              | "syntax-tree"
                                              | "control-flow"
                                              | "literals"
                                              | "api-usage"
                                          )[];
                                          fingerprint_sha256: string;
                                          stability: "cross-version-inference";
                                          strategy: "structural-fingerprint";
                                      }
                                      | {
                                          artifact_sha256: string;
                                          key: string;
                                          namespace: string;
                                          stability: "artifact-version";
                                          strategy: "artifact-local-key";
                                      }
                                      | {
                                          capture_sha256: string;
                                          runtime_key: string;
                                          stability: "capture-only";
                                          strategy: "runtime-instance";
                                      }
                                      | {
                                          observation_sha256: string;
                                          scope: string;
                                          stability: "observation-only";
                                          strategy: "observation-fingerprint";
                                      };
                                  kind: | "unknown"
                                  | "target"
                                  | "native-addon"
                                  | "source-map"
                                  | "artifact"
                                  | "package"
                                  | "storage"
                                  | "installer"
                                  | "asar-entry"
                                  | "electron-main"
                                  | "electron-preload"
                                  | "electron-renderer"
                                  | "electron-utility"
                                  | "javascript-asset"
                                  | "javascript-chunk"
                                  | "javascript-module"
                                  | "source-module"
                                  | "browser-window"
                                  | "frame"
                                  | "context-bridge-api"
                                  | "ipc-channel"
                                  | "ipc-handler"
                                  | "worker"
                                  | "service-worker"
                                  | "endpoint"
                                  | "native-export"
                                  | "runtime-script-instance";
                                  node_id: string;
                                  observations: {
                                      evidence: {
                                          artifact: | { artifact_id: string; available: true; sha256: string }
                                          | {
                                              available: false;
                                              detail: string;
                                              reason:
                                                  | "unknown"
                                                  | "truncated"
                                                  | "unresolved"
                                                  | "not-applicable"
                                                  | "not-observed"
                                                  | "not-approved"
                                                  | "provider-unavailable";
                                          };
                                          authority: | "unknown"
                                          | "controlled-replay"
                                          | "historical-reference"
                                          | "artifact-bytes"
                                          | "ast-static-analysis"
                                          | "static-relationship-inference"
                                          | "passive-cdp-runtime"
                                          | "cross-layer-reconciliation"
                                          | "native-analysis-provider"
                                          | "user-assertion";
                                          confidence: "unknown"
                                          | "exact"
                                          | "low"
                                          | "medium"
                                          | "high";
                                          coverage: {
                                              limits: {
                                                  name: string;
                                                  unit:
                                                      | "other"
                                                      | "items"
                                                      | "bytes"
                                                      | "depth"
                                                      | "milliseconds"
                                                      | "characters"
                                                      | "instructions";
                                                  value: number;
                                              }[];
                                              omitted_count: number
                                              | null;
                                              status: "unknown" | "unavailable" | "complete" | "partial";
                                              truncated: boolean;
                                          };
                                          evidence_ids: string[];
                                          extractor: {
                                              executable_sha256: string
                                              | null;
                                              name: string;
                                              operation: string;
                                              version: string;
                                          };
                                          limitations: string[];
                                          location: | {
                                              available: false;
                                              detail: string;
                                              reason: | "unknown"
                                              | "truncated"
                                              | "unresolved"
                                              | "not-applicable"
                                              | "not-observed"
                                              | "not-approved"
                                              | "provider-unavailable";
                                          }
                                          | {
                                              available: true;
                                              value: | {
                                                  end: { column: number; line: number };
                                                  kind: "source-range";
                                                  source: string;
                                                  start: { column: number; line: number };
                                              }
                                              | { end: number; kind: "file-offset-range"; start: number }
                                              | { kind: "artifact-path"; path: string }
                                              | { kind: "url"; url: string }
                                              | {
                                                  capture_sha256: string;
                                                  frame_key: string | null;
                                                  kind: "runtime";
                                                  script_key: string | null;
                                                  target_key: string;
                                              }
                                              | { address: string; kind: "native-address"; symbol: string
                                              | null }
                                              | { export_path: string; kind: "package-export"; package_name: string };
                                          };
                                          state: "unknown"
                                          | "observed"
                                          | "inferred"
                                          | "unavailable";
                                      };
                                      identifier_strategy: {
                                          stability: "observation-exact";
                                          strategy: "semantic-content-sha256";
                                      };
                                      label: string
                                      | null;
                                      observation_id: string;
                                      properties: Record<string, JSONType>;
                                  }[];
                              }
                              diff --git a/docs/api/interfaces/application_JavaScriptArtifactGraphContext.ContainsEdgeInput.html b/docs/api/interfaces/application_JavaScriptArtifactGraphContext.ContainsEdgeInput.html index 911809bab..297ef462e 100644 --- a/docs/api/interfaces/application_JavaScriptArtifactGraphContext.ContainsEdgeInput.html +++ b/docs/api/interfaces/application_JavaScriptArtifactGraphContext.ContainsEdgeInput.html @@ -14,7 +14,7 @@

                              Direct artifact-containment edge values.

                              -
                              interface ContainsEdgeInput {
                                  file: JavaScriptArtifactFile;
                                  operation: string;
                                  source: {
                                      identity:
                                          | {
                                              sha256: string;
                                              stability: "global-exact";
                                              strategy: "content-digest";
                                          }
                                          | {
                                              original_source: string;
                                              source_map_sha256: string;
                                              source_sha256: string
                                              | null;
                                              stability: "source-map-exact";
                                              strategy: "source-map-original";
                                          }
                                          | {
                                              artifact_sha256: string;
                                              path: string;
                                              stability: "artifact-version";
                                              strategy: "canonical-path";
                                          }
                                          | {
                                              algorithm: string;
                                              basis: (
                                                  | "imports"
                                                  | "exports"
                                                  | "syntax-tree"
                                                  | "control-flow"
                                                  | "literals"
                                                  | "api-usage"
                                              )[];
                                              fingerprint_sha256: string;
                                              stability: "cross-version-inference";
                                              strategy: "structural-fingerprint";
                                          }
                                          | {
                                              artifact_sha256: string;
                                              key: string;
                                              namespace: string;
                                              stability: "artifact-version";
                                              strategy: "artifact-local-key";
                                          }
                                          | {
                                              capture_sha256: string;
                                              runtime_key: string;
                                              stability: "capture-only";
                                              strategy: "runtime-instance";
                                          }
                                          | {
                                              observation_sha256: string;
                                              scope: string;
                                              stability: "observation-only";
                                              strategy: "observation-fingerprint";
                                          };
                                      kind: | "unknown"
                                      | "target"
                                      | "native-addon"
                                      | "source-map"
                                      | "artifact"
                                      | "package"
                                      | "storage"
                                      | "installer"
                                      | "asar-entry"
                                      | "electron-main"
                                      | "electron-preload"
                                      | "electron-renderer"
                                      | "electron-utility"
                                      | "javascript-asset"
                                      | "javascript-chunk"
                                      | "javascript-module"
                                      | "source-module"
                                      | "browser-window"
                                      | "frame"
                                      | "context-bridge-api"
                                      | "ipc-channel"
                                      | "ipc-handler"
                                      | "worker"
                                      | "service-worker"
                                      | "endpoint"
                                      | "native-export"
                                      | "runtime-script-instance";
                                      node_id: string;
                                      observations: {
                                          evidence: {
                                              artifact: | { artifact_id: string; available: true; sha256: string }
                                              | {
                                                  available: false;
                                                  detail: string;
                                                  reason:
                                                      | "unknown"
                                                      | "truncated"
                                                      | "unresolved"
                                                      | "not-applicable"
                                                      | "not-observed"
                                                      | "not-approved"
                                                      | "provider-unavailable";
                                              };
                                              authority: | "unknown"
                                              | "controlled-replay"
                                              | "historical-reference"
                                              | "artifact-bytes"
                                              | "ast-static-analysis"
                                              | "static-relationship-inference"
                                              | "passive-cdp-runtime"
                                              | "cross-layer-reconciliation"
                                              | "native-analysis-provider"
                                              | "user-assertion";
                                              confidence: "unknown"
                                              | "exact"
                                              | "low"
                                              | "medium"
                                              | "high";
                                              coverage: {
                                                  limits: {
                                                      name: string;
                                                      unit:
                                                          | "other"
                                                          | "items"
                                                          | "bytes"
                                                          | "depth"
                                                          | "milliseconds"
                                                          | "characters"
                                                          | "instructions";
                                                      value: number;
                                                  }[];
                                                  omitted_count: number
                                                  | null;
                                                  status: "unknown" | "unavailable" | "complete" | "partial";
                                                  truncated: boolean;
                                              };
                                              evidence_ids: string[];
                                              extractor: {
                                                  executable_sha256: string
                                                  | null;
                                                  name: string;
                                                  operation: string;
                                                  version: string;
                                              };
                                              limitations: string[];
                                              location: | {
                                                  available: false;
                                                  detail: string;
                                                  reason: | "unknown"
                                                  | "truncated"
                                                  | "unresolved"
                                                  | "not-applicable"
                                                  | "not-observed"
                                                  | "not-approved"
                                                  | "provider-unavailable";
                                              }
                                              | {
                                                  available: true;
                                                  value: | {
                                                      end: { column: number; line: number };
                                                      kind: "source-range";
                                                      source: string;
                                                      start: { column: number; line: number };
                                                  }
                                                  | { end: number; kind: "file-offset-range"; start: number }
                                                  | { kind: "artifact-path"; path: string }
                                                  | { kind: "url"; url: string }
                                                  | {
                                                      capture_sha256: string;
                                                      frame_key: string | null;
                                                      kind: "runtime";
                                                      script_key: string | null;
                                                      target_key: string;
                                                  }
                                                  | { address: string; kind: "native-address"; symbol: string
                                                  | null }
                                                  | { export_path: string; kind: "package-export"; package_name: string };
                                              };
                                              state: "unknown"
                                              | "observed"
                                              | "inferred"
                                              | "unavailable";
                                          };
                                          identifier_strategy: {
                                              stability: "observation-exact";
                                              strategy: "semantic-content-sha256";
                                          };
                                          label: string
                                          | null;
                                          observation_id: string;
                                          properties: Record<string, JSONType>;
                                      }[];
                                  };
                                  target: {
                                      identity: | {
                                          sha256: string;
                                          stability: "global-exact";
                                          strategy: "content-digest";
                                      }
                                      | {
                                          original_source: string;
                                          source_map_sha256: string;
                                          source_sha256: string
                                          | null;
                                          stability: "source-map-exact";
                                          strategy: "source-map-original";
                                      }
                                      | {
                                          artifact_sha256: string;
                                          path: string;
                                          stability: "artifact-version";
                                          strategy: "canonical-path";
                                      }
                                      | {
                                          algorithm: string;
                                          basis: (
                                              | "imports"
                                              | "exports"
                                              | "syntax-tree"
                                              | "control-flow"
                                              | "literals"
                                              | "api-usage"
                                          )[];
                                          fingerprint_sha256: string;
                                          stability: "cross-version-inference";
                                          strategy: "structural-fingerprint";
                                      }
                                      | {
                                          artifact_sha256: string;
                                          key: string;
                                          namespace: string;
                                          stability: "artifact-version";
                                          strategy: "artifact-local-key";
                                      }
                                      | {
                                          capture_sha256: string;
                                          runtime_key: string;
                                          stability: "capture-only";
                                          strategy: "runtime-instance";
                                      }
                                      | {
                                          observation_sha256: string;
                                          scope: string;
                                          stability: "observation-only";
                                          strategy: "observation-fingerprint";
                                      };
                                      kind: | "unknown"
                                      | "target"
                                      | "native-addon"
                                      | "source-map"
                                      | "artifact"
                                      | "package"
                                      | "storage"
                                      | "installer"
                                      | "asar-entry"
                                      | "electron-main"
                                      | "electron-preload"
                                      | "electron-renderer"
                                      | "electron-utility"
                                      | "javascript-asset"
                                      | "javascript-chunk"
                                      | "javascript-module"
                                      | "source-module"
                                      | "browser-window"
                                      | "frame"
                                      | "context-bridge-api"
                                      | "ipc-channel"
                                      | "ipc-handler"
                                      | "worker"
                                      | "service-worker"
                                      | "endpoint"
                                      | "native-export"
                                      | "runtime-script-instance";
                                      node_id: string;
                                      observations: {
                                          evidence: {
                                              artifact: | { artifact_id: string; available: true; sha256: string }
                                              | {
                                                  available: false;
                                                  detail: string;
                                                  reason:
                                                      | "unknown"
                                                      | "truncated"
                                                      | "unresolved"
                                                      | "not-applicable"
                                                      | "not-observed"
                                                      | "not-approved"
                                                      | "provider-unavailable";
                                              };
                                              authority: | "unknown"
                                              | "controlled-replay"
                                              | "historical-reference"
                                              | "artifact-bytes"
                                              | "ast-static-analysis"
                                              | "static-relationship-inference"
                                              | "passive-cdp-runtime"
                                              | "cross-layer-reconciliation"
                                              | "native-analysis-provider"
                                              | "user-assertion";
                                              confidence: "unknown"
                                              | "exact"
                                              | "low"
                                              | "medium"
                                              | "high";
                                              coverage: {
                                                  limits: {
                                                      name: string;
                                                      unit:
                                                          | "other"
                                                          | "items"
                                                          | "bytes"
                                                          | "depth"
                                                          | "milliseconds"
                                                          | "characters"
                                                          | "instructions";
                                                      value: number;
                                                  }[];
                                                  omitted_count: number
                                                  | null;
                                                  status: "unknown" | "unavailable" | "complete" | "partial";
                                                  truncated: boolean;
                                              };
                                              evidence_ids: string[];
                                              extractor: {
                                                  executable_sha256: string
                                                  | null;
                                                  name: string;
                                                  operation: string;
                                                  version: string;
                                              };
                                              limitations: string[];
                                              location: | {
                                                  available: false;
                                                  detail: string;
                                                  reason: | "unknown"
                                                  | "truncated"
                                                  | "unresolved"
                                                  | "not-applicable"
                                                  | "not-observed"
                                                  | "not-approved"
                                                  | "provider-unavailable";
                                              }
                                              | {
                                                  available: true;
                                                  value: | {
                                                      end: { column: number; line: number };
                                                      kind: "source-range";
                                                      source: string;
                                                      start: { column: number; line: number };
                                                  }
                                                  | { end: number; kind: "file-offset-range"; start: number }
                                                  | { kind: "artifact-path"; path: string }
                                                  | { kind: "url"; url: string }
                                                  | {
                                                      capture_sha256: string;
                                                      frame_key: string | null;
                                                      kind: "runtime";
                                                      script_key: string | null;
                                                      target_key: string;
                                                  }
                                                  | { address: string; kind: "native-address"; symbol: string
                                                  | null }
                                                  | { export_path: string; kind: "package-export"; package_name: string };
                                              };
                                              state: "unknown"
                                              | "observed"
                                              | "inferred"
                                              | "unavailable";
                                          };
                                          identifier_strategy: {
                                              stability: "observation-exact";
                                              strategy: "semantic-content-sha256";
                                          };
                                          label: string
                                          | null;
                                          observation_id: string;
                                          properties: Record<string, JSONType>;
                                      }[];
                                  };
                              }
                              -
                              source: {
                                  identity:
                                      | {
                                          sha256: string;
                                          stability: "global-exact";
                                          strategy: "content-digest";
                                      }
                                      | {
                                          original_source: string;
                                          source_map_sha256: string;
                                          source_sha256: string
                                          | null;
                                          stability: "source-map-exact";
                                          strategy: "source-map-original";
                                      }
                                      | {
                                          artifact_sha256: string;
                                          path: string;
                                          stability: "artifact-version";
                                          strategy: "canonical-path";
                                      }
                                      | {
                                          algorithm: string;
                                          basis: (
                                              | "imports"
                                              | "exports"
                                              | "syntax-tree"
                                              | "control-flow"
                                              | "literals"
                                              | "api-usage"
                                          )[];
                                          fingerprint_sha256: string;
                                          stability: "cross-version-inference";
                                          strategy: "structural-fingerprint";
                                      }
                                      | {
                                          artifact_sha256: string;
                                          key: string;
                                          namespace: string;
                                          stability: "artifact-version";
                                          strategy: "artifact-local-key";
                                      }
                                      | {
                                          capture_sha256: string;
                                          runtime_key: string;
                                          stability: "capture-only";
                                          strategy: "runtime-instance";
                                      }
                                      | {
                                          observation_sha256: string;
                                          scope: string;
                                          stability: "observation-only";
                                          strategy: "observation-fingerprint";
                                      };
                                  kind: | "unknown"
                                  | "target"
                                  | "native-addon"
                                  | "source-map"
                                  | "artifact"
                                  | "package"
                                  | "storage"
                                  | "installer"
                                  | "asar-entry"
                                  | "electron-main"
                                  | "electron-preload"
                                  | "electron-renderer"
                                  | "electron-utility"
                                  | "javascript-asset"
                                  | "javascript-chunk"
                                  | "javascript-module"
                                  | "source-module"
                                  | "browser-window"
                                  | "frame"
                                  | "context-bridge-api"
                                  | "ipc-channel"
                                  | "ipc-handler"
                                  | "worker"
                                  | "service-worker"
                                  | "endpoint"
                                  | "native-export"
                                  | "runtime-script-instance";
                                  node_id: string;
                                  observations: {
                                      evidence: {
                                          artifact: | { artifact_id: string; available: true; sha256: string }
                                          | {
                                              available: false;
                                              detail: string;
                                              reason:
                                                  | "unknown"
                                                  | "truncated"
                                                  | "unresolved"
                                                  | "not-applicable"
                                                  | "not-observed"
                                                  | "not-approved"
                                                  | "provider-unavailable";
                                          };
                                          authority: | "unknown"
                                          | "controlled-replay"
                                          | "historical-reference"
                                          | "artifact-bytes"
                                          | "ast-static-analysis"
                                          | "static-relationship-inference"
                                          | "passive-cdp-runtime"
                                          | "cross-layer-reconciliation"
                                          | "native-analysis-provider"
                                          | "user-assertion";
                                          confidence: "unknown"
                                          | "exact"
                                          | "low"
                                          | "medium"
                                          | "high";
                                          coverage: {
                                              limits: {
                                                  name: string;
                                                  unit:
                                                      | "other"
                                                      | "items"
                                                      | "bytes"
                                                      | "depth"
                                                      | "milliseconds"
                                                      | "characters"
                                                      | "instructions";
                                                  value: number;
                                              }[];
                                              omitted_count: number
                                              | null;
                                              status: "unknown" | "unavailable" | "complete" | "partial";
                                              truncated: boolean;
                                          };
                                          evidence_ids: string[];
                                          extractor: {
                                              executable_sha256: string
                                              | null;
                                              name: string;
                                              operation: string;
                                              version: string;
                                          };
                                          limitations: string[];
                                          location: | {
                                              available: false;
                                              detail: string;
                                              reason: | "unknown"
                                              | "truncated"
                                              | "unresolved"
                                              | "not-applicable"
                                              | "not-observed"
                                              | "not-approved"
                                              | "provider-unavailable";
                                          }
                                          | {
                                              available: true;
                                              value: | {
                                                  end: { column: number; line: number };
                                                  kind: "source-range";
                                                  source: string;
                                                  start: { column: number; line: number };
                                              }
                                              | { end: number; kind: "file-offset-range"; start: number }
                                              | { kind: "artifact-path"; path: string }
                                              | { kind: "url"; url: string }
                                              | {
                                                  capture_sha256: string;
                                                  frame_key: string | null;
                                                  kind: "runtime";
                                                  script_key: string | null;
                                                  target_key: string;
                                              }
                                              | { address: string; kind: "native-address"; symbol: string
                                              | null }
                                              | { export_path: string; kind: "package-export"; package_name: string };
                                          };
                                          state: "unknown"
                                          | "observed"
                                          | "inferred"
                                          | "unavailable";
                                      };
                                      identifier_strategy: {
                                          stability: "observation-exact";
                                          strategy: "semantic-content-sha256";
                                      };
                                      label: string
                                      | null;
                                      observation_id: string;
                                      properties: Record<string, JSONType>;
                                  }[];
                              }
                              -
                              target: {
                                  identity:
                                      | {
                                          sha256: string;
                                          stability: "global-exact";
                                          strategy: "content-digest";
                                      }
                                      | {
                                          original_source: string;
                                          source_map_sha256: string;
                                          source_sha256: string
                                          | null;
                                          stability: "source-map-exact";
                                          strategy: "source-map-original";
                                      }
                                      | {
                                          artifact_sha256: string;
                                          path: string;
                                          stability: "artifact-version";
                                          strategy: "canonical-path";
                                      }
                                      | {
                                          algorithm: string;
                                          basis: (
                                              | "imports"
                                              | "exports"
                                              | "syntax-tree"
                                              | "control-flow"
                                              | "literals"
                                              | "api-usage"
                                          )[];
                                          fingerprint_sha256: string;
                                          stability: "cross-version-inference";
                                          strategy: "structural-fingerprint";
                                      }
                                      | {
                                          artifact_sha256: string;
                                          key: string;
                                          namespace: string;
                                          stability: "artifact-version";
                                          strategy: "artifact-local-key";
                                      }
                                      | {
                                          capture_sha256: string;
                                          runtime_key: string;
                                          stability: "capture-only";
                                          strategy: "runtime-instance";
                                      }
                                      | {
                                          observation_sha256: string;
                                          scope: string;
                                          stability: "observation-only";
                                          strategy: "observation-fingerprint";
                                      };
                                  kind: | "unknown"
                                  | "target"
                                  | "native-addon"
                                  | "source-map"
                                  | "artifact"
                                  | "package"
                                  | "storage"
                                  | "installer"
                                  | "asar-entry"
                                  | "electron-main"
                                  | "electron-preload"
                                  | "electron-renderer"
                                  | "electron-utility"
                                  | "javascript-asset"
                                  | "javascript-chunk"
                                  | "javascript-module"
                                  | "source-module"
                                  | "browser-window"
                                  | "frame"
                                  | "context-bridge-api"
                                  | "ipc-channel"
                                  | "ipc-handler"
                                  | "worker"
                                  | "service-worker"
                                  | "endpoint"
                                  | "native-export"
                                  | "runtime-script-instance";
                                  node_id: string;
                                  observations: {
                                      evidence: {
                                          artifact: | { artifact_id: string; available: true; sha256: string }
                                          | {
                                              available: false;
                                              detail: string;
                                              reason:
                                                  | "unknown"
                                                  | "truncated"
                                                  | "unresolved"
                                                  | "not-applicable"
                                                  | "not-observed"
                                                  | "not-approved"
                                                  | "provider-unavailable";
                                          };
                                          authority: | "unknown"
                                          | "controlled-replay"
                                          | "historical-reference"
                                          | "artifact-bytes"
                                          | "ast-static-analysis"
                                          | "static-relationship-inference"
                                          | "passive-cdp-runtime"
                                          | "cross-layer-reconciliation"
                                          | "native-analysis-provider"
                                          | "user-assertion";
                                          confidence: "unknown"
                                          | "exact"
                                          | "low"
                                          | "medium"
                                          | "high";
                                          coverage: {
                                              limits: {
                                                  name: string;
                                                  unit:
                                                      | "other"
                                                      | "items"
                                                      | "bytes"
                                                      | "depth"
                                                      | "milliseconds"
                                                      | "characters"
                                                      | "instructions";
                                                  value: number;
                                              }[];
                                              omitted_count: number
                                              | null;
                                              status: "unknown" | "unavailable" | "complete" | "partial";
                                              truncated: boolean;
                                          };
                                          evidence_ids: string[];
                                          extractor: {
                                              executable_sha256: string
                                              | null;
                                              name: string;
                                              operation: string;
                                              version: string;
                                          };
                                          limitations: string[];
                                          location: | {
                                              available: false;
                                              detail: string;
                                              reason: | "unknown"
                                              | "truncated"
                                              | "unresolved"
                                              | "not-applicable"
                                              | "not-observed"
                                              | "not-approved"
                                              | "provider-unavailable";
                                          }
                                          | {
                                              available: true;
                                              value: | {
                                                  end: { column: number; line: number };
                                                  kind: "source-range";
                                                  source: string;
                                                  start: { column: number; line: number };
                                              }
                                              | { end: number; kind: "file-offset-range"; start: number }
                                              | { kind: "artifact-path"; path: string }
                                              | { kind: "url"; url: string }
                                              | {
                                                  capture_sha256: string;
                                                  frame_key: string | null;
                                                  kind: "runtime";
                                                  script_key: string | null;
                                                  target_key: string;
                                              }
                                              | { address: string; kind: "native-address"; symbol: string
                                              | null }
                                              | { export_path: string; kind: "package-export"; package_name: string };
                                          };
                                          state: "unknown"
                                          | "observed"
                                          | "inferred"
                                          | "unavailable";
                                      };
                                      identifier_strategy: {
                                          stability: "observation-exact";
                                          strategy: "semantic-content-sha256";
                                      };
                                      label: string
                                      | null;
                                      observation_id: string;
                                      properties: Record<string, JSONType>;
                                  }[];
                              }
                              diff --git a/docs/api/interfaces/application_JavaScriptArtifactGraphContext.InferenceEdgeInput.html b/docs/api/interfaces/application_JavaScriptArtifactGraphContext.InferenceEdgeInput.html index 4b9e34d5a..395a7d88a 100644 --- a/docs/api/interfaces/application_JavaScriptArtifactGraphContext.InferenceEdgeInput.html +++ b/docs/api/interfaces/application_JavaScriptArtifactGraphContext.InferenceEdgeInput.html @@ -14,8 +14,8 @@

                              Inferred static relationship edge values.

                              -
                              interface InferenceEdgeInput {
                                  coverage: {
                                      limits: {
                                          name: string;
                                          unit:
                                              | "other"
                                              | "items"
                                              | "bytes"
                                              | "depth"
                                              | "milliseconds"
                                              | "characters"
                                              | "instructions";
                                          value: number;
                                      }[];
                                      omitted_count: number
                                      | null;
                                      status: "unknown" | "unavailable" | "complete" | "partial";
                                      truncated: boolean;
                                  };
                                  file: JavaScriptArtifactFile;
                                  properties: Readonly<Record<string, unknown>>;
                                  range: JavaScriptSourceRange;
                                  relation:
                                      | "loads"
                                      | "calls"
                                      | "imports"
                                      | "maps_to"
                                      | "exposes"
                                      | "persists_to";
                                  source: {
                                      identity: | {
                                          sha256: string;
                                          stability: "global-exact";
                                          strategy: "content-digest";
                                      }
                                      | {
                                          original_source: string;
                                          source_map_sha256: string;
                                          source_sha256: string
                                          | null;
                                          stability: "source-map-exact";
                                          strategy: "source-map-original";
                                      }
                                      | {
                                          artifact_sha256: string;
                                          path: string;
                                          stability: "artifact-version";
                                          strategy: "canonical-path";
                                      }
                                      | {
                                          algorithm: string;
                                          basis: (
                                              | "imports"
                                              | "exports"
                                              | "syntax-tree"
                                              | "control-flow"
                                              | "literals"
                                              | "api-usage"
                                          )[];
                                          fingerprint_sha256: string;
                                          stability: "cross-version-inference";
                                          strategy: "structural-fingerprint";
                                      }
                                      | {
                                          artifact_sha256: string;
                                          key: string;
                                          namespace: string;
                                          stability: "artifact-version";
                                          strategy: "artifact-local-key";
                                      }
                                      | {
                                          capture_sha256: string;
                                          runtime_key: string;
                                          stability: "capture-only";
                                          strategy: "runtime-instance";
                                      }
                                      | {
                                          observation_sha256: string;
                                          scope: string;
                                          stability: "observation-only";
                                          strategy: "observation-fingerprint";
                                      };
                                      kind: | "unknown"
                                      | "target"
                                      | "native-addon"
                                      | "source-map"
                                      | "artifact"
                                      | "package"
                                      | "storage"
                                      | "installer"
                                      | "asar-entry"
                                      | "electron-main"
                                      | "electron-preload"
                                      | "electron-renderer"
                                      | "electron-utility"
                                      | "javascript-asset"
                                      | "javascript-chunk"
                                      | "javascript-module"
                                      | "source-module"
                                      | "browser-window"
                                      | "frame"
                                      | "context-bridge-api"
                                      | "ipc-channel"
                                      | "ipc-handler"
                                      | "worker"
                                      | "service-worker"
                                      | "endpoint"
                                      | "native-export"
                                      | "runtime-script-instance";
                                      node_id: string;
                                      observations: {
                                          evidence: {
                                              artifact: | { artifact_id: string; available: true; sha256: string }
                                              | {
                                                  available: false;
                                                  detail: string;
                                                  reason:
                                                      | "unknown"
                                                      | "truncated"
                                                      | "unresolved"
                                                      | "not-applicable"
                                                      | "not-observed"
                                                      | "not-approved"
                                                      | "provider-unavailable";
                                              };
                                              authority: | "unknown"
                                              | "controlled-replay"
                                              | "historical-reference"
                                              | "artifact-bytes"
                                              | "ast-static-analysis"
                                              | "static-relationship-inference"
                                              | "passive-cdp-runtime"
                                              | "cross-layer-reconciliation"
                                              | "native-analysis-provider"
                                              | "user-assertion";
                                              confidence: "unknown"
                                              | "exact"
                                              | "low"
                                              | "medium"
                                              | "high";
                                              coverage: {
                                                  limits: {
                                                      name: string;
                                                      unit:
                                                          | "other"
                                                          | "items"
                                                          | "bytes"
                                                          | "depth"
                                                          | "milliseconds"
                                                          | "characters"
                                                          | "instructions";
                                                      value: number;
                                                  }[];
                                                  omitted_count: number
                                                  | null;
                                                  status: "unknown" | "unavailable" | "complete" | "partial";
                                                  truncated: boolean;
                                              };
                                              evidence_ids: string[];
                                              extractor: {
                                                  executable_sha256: string
                                                  | null;
                                                  name: string;
                                                  operation: string;
                                                  version: string;
                                              };
                                              limitations: string[];
                                              location: | {
                                                  available: false;
                                                  detail: string;
                                                  reason: | "unknown"
                                                  | "truncated"
                                                  | "unresolved"
                                                  | "not-applicable"
                                                  | "not-observed"
                                                  | "not-approved"
                                                  | "provider-unavailable";
                                              }
                                              | {
                                                  available: true;
                                                  value: | {
                                                      end: { column: number; line: number };
                                                      kind: "source-range";
                                                      source: string;
                                                      start: { column: number; line: number };
                                                  }
                                                  | { end: number; kind: "file-offset-range"; start: number }
                                                  | { kind: "artifact-path"; path: string }
                                                  | { kind: "url"; url: string }
                                                  | {
                                                      capture_sha256: string;
                                                      frame_key: string | null;
                                                      kind: "runtime";
                                                      script_key: string | null;
                                                      target_key: string;
                                                  }
                                                  | { address: string; kind: "native-address"; symbol: string
                                                  | null }
                                                  | { export_path: string; kind: "package-export"; package_name: string };
                                              };
                                              state: "unknown"
                                              | "observed"
                                              | "inferred"
                                              | "unavailable";
                                          };
                                          identifier_strategy: {
                                              stability: "observation-exact";
                                              strategy: "semantic-content-sha256";
                                          };
                                          label: string
                                          | null;
                                          observation_id: string;
                                          properties: Record<string, JSONType>;
                                      }[];
                                  };
                                  target: {
                                      identity: | {
                                          sha256: string;
                                          stability: "global-exact";
                                          strategy: "content-digest";
                                      }
                                      | {
                                          original_source: string;
                                          source_map_sha256: string;
                                          source_sha256: string
                                          | null;
                                          stability: "source-map-exact";
                                          strategy: "source-map-original";
                                      }
                                      | {
                                          artifact_sha256: string;
                                          path: string;
                                          stability: "artifact-version";
                                          strategy: "canonical-path";
                                      }
                                      | {
                                          algorithm: string;
                                          basis: (
                                              | "imports"
                                              | "exports"
                                              | "syntax-tree"
                                              | "control-flow"
                                              | "literals"
                                              | "api-usage"
                                          )[];
                                          fingerprint_sha256: string;
                                          stability: "cross-version-inference";
                                          strategy: "structural-fingerprint";
                                      }
                                      | {
                                          artifact_sha256: string;
                                          key: string;
                                          namespace: string;
                                          stability: "artifact-version";
                                          strategy: "artifact-local-key";
                                      }
                                      | {
                                          capture_sha256: string;
                                          runtime_key: string;
                                          stability: "capture-only";
                                          strategy: "runtime-instance";
                                      }
                                      | {
                                          observation_sha256: string;
                                          scope: string;
                                          stability: "observation-only";
                                          strategy: "observation-fingerprint";
                                      };
                                      kind: | "unknown"
                                      | "target"
                                      | "native-addon"
                                      | "source-map"
                                      | "artifact"
                                      | "package"
                                      | "storage"
                                      | "installer"
                                      | "asar-entry"
                                      | "electron-main"
                                      | "electron-preload"
                                      | "electron-renderer"
                                      | "electron-utility"
                                      | "javascript-asset"
                                      | "javascript-chunk"
                                      | "javascript-module"
                                      | "source-module"
                                      | "browser-window"
                                      | "frame"
                                      | "context-bridge-api"
                                      | "ipc-channel"
                                      | "ipc-handler"
                                      | "worker"
                                      | "service-worker"
                                      | "endpoint"
                                      | "native-export"
                                      | "runtime-script-instance";
                                      node_id: string;
                                      observations: {
                                          evidence: {
                                              artifact: | { artifact_id: string; available: true; sha256: string }
                                              | {
                                                  available: false;
                                                  detail: string;
                                                  reason:
                                                      | "unknown"
                                                      | "truncated"
                                                      | "unresolved"
                                                      | "not-applicable"
                                                      | "not-observed"
                                                      | "not-approved"
                                                      | "provider-unavailable";
                                              };
                                              authority: | "unknown"
                                              | "controlled-replay"
                                              | "historical-reference"
                                              | "artifact-bytes"
                                              | "ast-static-analysis"
                                              | "static-relationship-inference"
                                              | "passive-cdp-runtime"
                                              | "cross-layer-reconciliation"
                                              | "native-analysis-provider"
                                              | "user-assertion";
                                              confidence: "unknown"
                                              | "exact"
                                              | "low"
                                              | "medium"
                                              | "high";
                                              coverage: {
                                                  limits: {
                                                      name: string;
                                                      unit:
                                                          | "other"
                                                          | "items"
                                                          | "bytes"
                                                          | "depth"
                                                          | "milliseconds"
                                                          | "characters"
                                                          | "instructions";
                                                      value: number;
                                                  }[];
                                                  omitted_count: number
                                                  | null;
                                                  status: "unknown" | "unavailable" | "complete" | "partial";
                                                  truncated: boolean;
                                              };
                                              evidence_ids: string[];
                                              extractor: {
                                                  executable_sha256: string
                                                  | null;
                                                  name: string;
                                                  operation: string;
                                                  version: string;
                                              };
                                              limitations: string[];
                                              location: | {
                                                  available: false;
                                                  detail: string;
                                                  reason: | "unknown"
                                                  | "truncated"
                                                  | "unresolved"
                                                  | "not-applicable"
                                                  | "not-observed"
                                                  | "not-approved"
                                                  | "provider-unavailable";
                                              }
                                              | {
                                                  available: true;
                                                  value: | {
                                                      end: { column: number; line: number };
                                                      kind: "source-range";
                                                      source: string;
                                                      start: { column: number; line: number };
                                                  }
                                                  | { end: number; kind: "file-offset-range"; start: number }
                                                  | { kind: "artifact-path"; path: string }
                                                  | { kind: "url"; url: string }
                                                  | {
                                                      capture_sha256: string;
                                                      frame_key: string | null;
                                                      kind: "runtime";
                                                      script_key: string | null;
                                                      target_key: string;
                                                  }
                                                  | { address: string; kind: "native-address"; symbol: string
                                                  | null }
                                                  | { export_path: string; kind: "package-export"; package_name: string };
                                              };
                                              state: "unknown"
                                              | "observed"
                                              | "inferred"
                                              | "unavailable";
                                          };
                                          identifier_strategy: {
                                              stability: "observation-exact";
                                              strategy: "semantic-content-sha256";
                                          };
                                          label: string
                                          | null;
                                          observation_id: string;
                                          properties: Record<string, JSONType>;
                                      }[];
                                  };
                              }
                              -
                              +
                              interface InferenceEdgeInput {
                                  coverage: {
                                      limits: {
                                          name: string;
                                          unit:
                                              | "other"
                                              | "items"
                                              | "bytes"
                                              | "depth"
                                              | "milliseconds"
                                              | "characters"
                                              | "instructions";
                                          value: number;
                                      }[];
                                      omitted_count: number
                                      | null;
                                      status: "unknown" | "unavailable" | "complete" | "partial";
                                      truncated: boolean;
                                  };
                                  file: JavaScriptArtifactFile;
                                  properties: Readonly<Record<string, unknown>>;
                                  range: JavaScriptSourceRange;
                                  relation:
                                      | "loads"
                                      | "calls"
                                      | "imports"
                                      | "maps_to"
                                      | "exposes"
                                      | "persists_to";
                                  source: {
                                      identity: | {
                                          sha256: string;
                                          stability: "global-exact";
                                          strategy: "content-digest";
                                      }
                                      | {
                                          original_source: string;
                                          source_map_sha256: string;
                                          source_sha256: string
                                          | null;
                                          stability: "source-map-exact";
                                          strategy: "source-map-original";
                                      }
                                      | {
                                          artifact_sha256: string;
                                          path: string;
                                          stability: "artifact-version";
                                          strategy: "canonical-path";
                                      }
                                      | {
                                          algorithm: string;
                                          basis: (
                                              | "imports"
                                              | "exports"
                                              | "syntax-tree"
                                              | "control-flow"
                                              | "literals"
                                              | "api-usage"
                                          )[];
                                          fingerprint_sha256: string;
                                          stability: "cross-version-inference";
                                          strategy: "structural-fingerprint";
                                      }
                                      | {
                                          artifact_sha256: string;
                                          key: string;
                                          namespace: string;
                                          stability: "artifact-version";
                                          strategy: "artifact-local-key";
                                      }
                                      | {
                                          capture_sha256: string;
                                          runtime_key: string;
                                          stability: "capture-only";
                                          strategy: "runtime-instance";
                                      }
                                      | {
                                          observation_sha256: string;
                                          scope: string;
                                          stability: "observation-only";
                                          strategy: "observation-fingerprint";
                                      };
                                      kind: | "unknown"
                                      | "target"
                                      | "native-addon"
                                      | "source-map"
                                      | "artifact"
                                      | "package"
                                      | "storage"
                                      | "installer"
                                      | "asar-entry"
                                      | "electron-main"
                                      | "electron-preload"
                                      | "electron-renderer"
                                      | "electron-utility"
                                      | "javascript-asset"
                                      | "javascript-chunk"
                                      | "javascript-module"
                                      | "source-module"
                                      | "browser-window"
                                      | "frame"
                                      | "context-bridge-api"
                                      | "ipc-channel"
                                      | "ipc-handler"
                                      | "worker"
                                      | "service-worker"
                                      | "endpoint"
                                      | "native-export"
                                      | "runtime-script-instance";
                                      node_id: string;
                                      observations: {
                                          evidence: {
                                              artifact: | { artifact_id: string; available: true; sha256: string }
                                              | {
                                                  available: false;
                                                  detail: string;
                                                  reason:
                                                      | "unknown"
                                                      | "truncated"
                                                      | "unresolved"
                                                      | "not-applicable"
                                                      | "not-observed"
                                                      | "not-approved"
                                                      | "provider-unavailable";
                                              };
                                              authority: | "unknown"
                                              | "controlled-replay"
                                              | "historical-reference"
                                              | "artifact-bytes"
                                              | "ast-static-analysis"
                                              | "static-relationship-inference"
                                              | "passive-cdp-runtime"
                                              | "cross-layer-reconciliation"
                                              | "cross-version-comparison"
                                              | "native-analysis-provider"
                                              | "user-assertion";
                                              confidence: "unknown"
                                              | "exact"
                                              | "low"
                                              | "medium"
                                              | "high";
                                              coverage: {
                                                  limits: {
                                                      name: string;
                                                      unit:
                                                          | "other"
                                                          | "items"
                                                          | "bytes"
                                                          | "depth"
                                                          | "milliseconds"
                                                          | "characters"
                                                          | "instructions";
                                                      value: number;
                                                  }[];
                                                  omitted_count: number
                                                  | null;
                                                  status: "unknown" | "unavailable" | "complete" | "partial";
                                                  truncated: boolean;
                                              };
                                              evidence_ids: string[];
                                              extractor: {
                                                  executable_sha256: string
                                                  | null;
                                                  name: string;
                                                  operation: string;
                                                  version: string;
                                              };
                                              limitations: string[];
                                              location: | {
                                                  available: false;
                                                  detail: string;
                                                  reason: | "unknown"
                                                  | "truncated"
                                                  | "unresolved"
                                                  | "not-applicable"
                                                  | "not-observed"
                                                  | "not-approved"
                                                  | "provider-unavailable";
                                              }
                                              | {
                                                  available: true;
                                                  value: | {
                                                      end: { column: number; line: number };
                                                      kind: "source-range";
                                                      source: string;
                                                      start: { column: number; line: number };
                                                  }
                                                  | { end: number; kind: "file-offset-range"; start: number }
                                                  | { kind: "artifact-path"; path: string }
                                                  | { kind: "url"; url: string }
                                                  | {
                                                      capture_sha256: string;
                                                      frame_key: string | null;
                                                      kind: "runtime";
                                                      script_key: string | null;
                                                      target_key: string;
                                                  }
                                                  | { address: string; kind: "native-address"; symbol: string
                                                  | null }
                                                  | { export_path: string; kind: "package-export"; package_name: string };
                                              };
                                              state: "unknown"
                                              | "observed"
                                              | "inferred"
                                              | "unavailable";
                                          };
                                          identifier_strategy: {
                                              stability: "observation-exact";
                                              strategy: "semantic-content-sha256";
                                          };
                                          label: string
                                          | null;
                                          observation_id: string;
                                          properties: Record<string, JSONType>;
                                      }[];
                                  };
                                  target: {
                                      identity: | {
                                          sha256: string;
                                          stability: "global-exact";
                                          strategy: "content-digest";
                                      }
                                      | {
                                          original_source: string;
                                          source_map_sha256: string;
                                          source_sha256: string
                                          | null;
                                          stability: "source-map-exact";
                                          strategy: "source-map-original";
                                      }
                                      | {
                                          artifact_sha256: string;
                                          path: string;
                                          stability: "artifact-version";
                                          strategy: "canonical-path";
                                      }
                                      | {
                                          algorithm: string;
                                          basis: (
                                              | "imports"
                                              | "exports"
                                              | "syntax-tree"
                                              | "control-flow"
                                              | "literals"
                                              | "api-usage"
                                          )[];
                                          fingerprint_sha256: string;
                                          stability: "cross-version-inference";
                                          strategy: "structural-fingerprint";
                                      }
                                      | {
                                          artifact_sha256: string;
                                          key: string;
                                          namespace: string;
                                          stability: "artifact-version";
                                          strategy: "artifact-local-key";
                                      }
                                      | {
                                          capture_sha256: string;
                                          runtime_key: string;
                                          stability: "capture-only";
                                          strategy: "runtime-instance";
                                      }
                                      | {
                                          observation_sha256: string;
                                          scope: string;
                                          stability: "observation-only";
                                          strategy: "observation-fingerprint";
                                      };
                                      kind: | "unknown"
                                      | "target"
                                      | "native-addon"
                                      | "source-map"
                                      | "artifact"
                                      | "package"
                                      | "storage"
                                      | "installer"
                                      | "asar-entry"
                                      | "electron-main"
                                      | "electron-preload"
                                      | "electron-renderer"
                                      | "electron-utility"
                                      | "javascript-asset"
                                      | "javascript-chunk"
                                      | "javascript-module"
                                      | "source-module"
                                      | "browser-window"
                                      | "frame"
                                      | "context-bridge-api"
                                      | "ipc-channel"
                                      | "ipc-handler"
                                      | "worker"
                                      | "service-worker"
                                      | "endpoint"
                                      | "native-export"
                                      | "runtime-script-instance";
                                      node_id: string;
                                      observations: {
                                          evidence: {
                                              artifact: | { artifact_id: string; available: true; sha256: string }
                                              | {
                                                  available: false;
                                                  detail: string;
                                                  reason:
                                                      | "unknown"
                                                      | "truncated"
                                                      | "unresolved"
                                                      | "not-applicable"
                                                      | "not-observed"
                                                      | "not-approved"
                                                      | "provider-unavailable";
                                              };
                                              authority: | "unknown"
                                              | "controlled-replay"
                                              | "historical-reference"
                                              | "artifact-bytes"
                                              | "ast-static-analysis"
                                              | "static-relationship-inference"
                                              | "passive-cdp-runtime"
                                              | "cross-layer-reconciliation"
                                              | "cross-version-comparison"
                                              | "native-analysis-provider"
                                              | "user-assertion";
                                              confidence: "unknown"
                                              | "exact"
                                              | "low"
                                              | "medium"
                                              | "high";
                                              coverage: {
                                                  limits: {
                                                      name: string;
                                                      unit:
                                                          | "other"
                                                          | "items"
                                                          | "bytes"
                                                          | "depth"
                                                          | "milliseconds"
                                                          | "characters"
                                                          | "instructions";
                                                      value: number;
                                                  }[];
                                                  omitted_count: number
                                                  | null;
                                                  status: "unknown" | "unavailable" | "complete" | "partial";
                                                  truncated: boolean;
                                              };
                                              evidence_ids: string[];
                                              extractor: {
                                                  executable_sha256: string
                                                  | null;
                                                  name: string;
                                                  operation: string;
                                                  version: string;
                                              };
                                              limitations: string[];
                                              location: | {
                                                  available: false;
                                                  detail: string;
                                                  reason: | "unknown"
                                                  | "truncated"
                                                  | "unresolved"
                                                  | "not-applicable"
                                                  | "not-observed"
                                                  | "not-approved"
                                                  | "provider-unavailable";
                                              }
                                              | {
                                                  available: true;
                                                  value: | {
                                                      end: { column: number; line: number };
                                                      kind: "source-range";
                                                      source: string;
                                                      start: { column: number; line: number };
                                                  }
                                                  | { end: number; kind: "file-offset-range"; start: number }
                                                  | { kind: "artifact-path"; path: string }
                                                  | { kind: "url"; url: string }
                                                  | {
                                                      capture_sha256: string;
                                                      frame_key: string | null;
                                                      kind: "runtime";
                                                      script_key: string | null;
                                                      target_key: string;
                                                  }
                                                  | { address: string; kind: "native-address"; symbol: string
                                                  | null }
                                                  | { export_path: string; kind: "package-export"; package_name: string };
                                              };
                                              state: "unknown"
                                              | "observed"
                                              | "inferred"
                                              | "unavailable";
                                          };
                                          identifier_strategy: {
                                              stability: "observation-exact";
                                              strategy: "semantic-content-sha256";
                                          };
                                          label: string
                                          | null;
                                          observation_id: string;
                                          properties: Record<string, JSONType>;
                                      }[];
                                  };
                              }
                              +

                              Hierarchy (View Summary)

                              -
                              source: {
                                  identity:
                                      | {
                                          sha256: string;
                                          stability: "global-exact";
                                          strategy: "content-digest";
                                      }
                                      | {
                                          original_source: string;
                                          source_map_sha256: string;
                                          source_sha256: string
                                          | null;
                                          stability: "source-map-exact";
                                          strategy: "source-map-original";
                                      }
                                      | {
                                          artifact_sha256: string;
                                          path: string;
                                          stability: "artifact-version";
                                          strategy: "canonical-path";
                                      }
                                      | {
                                          algorithm: string;
                                          basis: (
                                              | "imports"
                                              | "exports"
                                              | "syntax-tree"
                                              | "control-flow"
                                              | "literals"
                                              | "api-usage"
                                          )[];
                                          fingerprint_sha256: string;
                                          stability: "cross-version-inference";
                                          strategy: "structural-fingerprint";
                                      }
                                      | {
                                          artifact_sha256: string;
                                          key: string;
                                          namespace: string;
                                          stability: "artifact-version";
                                          strategy: "artifact-local-key";
                                      }
                                      | {
                                          capture_sha256: string;
                                          runtime_key: string;
                                          stability: "capture-only";
                                          strategy: "runtime-instance";
                                      }
                                      | {
                                          observation_sha256: string;
                                          scope: string;
                                          stability: "observation-only";
                                          strategy: "observation-fingerprint";
                                      };
                                  kind: | "unknown"
                                  | "target"
                                  | "native-addon"
                                  | "source-map"
                                  | "artifact"
                                  | "package"
                                  | "storage"
                                  | "installer"
                                  | "asar-entry"
                                  | "electron-main"
                                  | "electron-preload"
                                  | "electron-renderer"
                                  | "electron-utility"
                                  | "javascript-asset"
                                  | "javascript-chunk"
                                  | "javascript-module"
                                  | "source-module"
                                  | "browser-window"
                                  | "frame"
                                  | "context-bridge-api"
                                  | "ipc-channel"
                                  | "ipc-handler"
                                  | "worker"
                                  | "service-worker"
                                  | "endpoint"
                                  | "native-export"
                                  | "runtime-script-instance";
                                  node_id: string;
                                  observations: {
                                      evidence: {
                                          artifact: | { artifact_id: string; available: true; sha256: string }
                                          | {
                                              available: false;
                                              detail: string;
                                              reason:
                                                  | "unknown"
                                                  | "truncated"
                                                  | "unresolved"
                                                  | "not-applicable"
                                                  | "not-observed"
                                                  | "not-approved"
                                                  | "provider-unavailable";
                                          };
                                          authority: | "unknown"
                                          | "controlled-replay"
                                          | "historical-reference"
                                          | "artifact-bytes"
                                          | "ast-static-analysis"
                                          | "static-relationship-inference"
                                          | "passive-cdp-runtime"
                                          | "cross-layer-reconciliation"
                                          | "native-analysis-provider"
                                          | "user-assertion";
                                          confidence: "unknown"
                                          | "exact"
                                          | "low"
                                          | "medium"
                                          | "high";
                                          coverage: {
                                              limits: {
                                                  name: string;
                                                  unit:
                                                      | "other"
                                                      | "items"
                                                      | "bytes"
                                                      | "depth"
                                                      | "milliseconds"
                                                      | "characters"
                                                      | "instructions";
                                                  value: number;
                                              }[];
                                              omitted_count: number
                                              | null;
                                              status: "unknown" | "unavailable" | "complete" | "partial";
                                              truncated: boolean;
                                          };
                                          evidence_ids: string[];
                                          extractor: {
                                              executable_sha256: string
                                              | null;
                                              name: string;
                                              operation: string;
                                              version: string;
                                          };
                                          limitations: string[];
                                          location: | {
                                              available: false;
                                              detail: string;
                                              reason: | "unknown"
                                              | "truncated"
                                              | "unresolved"
                                              | "not-applicable"
                                              | "not-observed"
                                              | "not-approved"
                                              | "provider-unavailable";
                                          }
                                          | {
                                              available: true;
                                              value: | {
                                                  end: { column: number; line: number };
                                                  kind: "source-range";
                                                  source: string;
                                                  start: { column: number; line: number };
                                              }
                                              | { end: number; kind: "file-offset-range"; start: number }
                                              | { kind: "artifact-path"; path: string }
                                              | { kind: "url"; url: string }
                                              | {
                                                  capture_sha256: string;
                                                  frame_key: string | null;
                                                  kind: "runtime";
                                                  script_key: string | null;
                                                  target_key: string;
                                              }
                                              | { address: string; kind: "native-address"; symbol: string
                                              | null }
                                              | { export_path: string; kind: "package-export"; package_name: string };
                                          };
                                          state: "unknown"
                                          | "observed"
                                          | "inferred"
                                          | "unavailable";
                                      };
                                      identifier_strategy: {
                                          stability: "observation-exact";
                                          strategy: "semantic-content-sha256";
                                      };
                                      label: string
                                      | null;
                                      observation_id: string;
                                      properties: Record<string, JSONType>;
                                  }[];
                              }
                              -
                              target: {
                                  identity:
                                      | {
                                          sha256: string;
                                          stability: "global-exact";
                                          strategy: "content-digest";
                                      }
                                      | {
                                          original_source: string;
                                          source_map_sha256: string;
                                          source_sha256: string
                                          | null;
                                          stability: "source-map-exact";
                                          strategy: "source-map-original";
                                      }
                                      | {
                                          artifact_sha256: string;
                                          path: string;
                                          stability: "artifact-version";
                                          strategy: "canonical-path";
                                      }
                                      | {
                                          algorithm: string;
                                          basis: (
                                              | "imports"
                                              | "exports"
                                              | "syntax-tree"
                                              | "control-flow"
                                              | "literals"
                                              | "api-usage"
                                          )[];
                                          fingerprint_sha256: string;
                                          stability: "cross-version-inference";
                                          strategy: "structural-fingerprint";
                                      }
                                      | {
                                          artifact_sha256: string;
                                          key: string;
                                          namespace: string;
                                          stability: "artifact-version";
                                          strategy: "artifact-local-key";
                                      }
                                      | {
                                          capture_sha256: string;
                                          runtime_key: string;
                                          stability: "capture-only";
                                          strategy: "runtime-instance";
                                      }
                                      | {
                                          observation_sha256: string;
                                          scope: string;
                                          stability: "observation-only";
                                          strategy: "observation-fingerprint";
                                      };
                                  kind: | "unknown"
                                  | "target"
                                  | "native-addon"
                                  | "source-map"
                                  | "artifact"
                                  | "package"
                                  | "storage"
                                  | "installer"
                                  | "asar-entry"
                                  | "electron-main"
                                  | "electron-preload"
                                  | "electron-renderer"
                                  | "electron-utility"
                                  | "javascript-asset"
                                  | "javascript-chunk"
                                  | "javascript-module"
                                  | "source-module"
                                  | "browser-window"
                                  | "frame"
                                  | "context-bridge-api"
                                  | "ipc-channel"
                                  | "ipc-handler"
                                  | "worker"
                                  | "service-worker"
                                  | "endpoint"
                                  | "native-export"
                                  | "runtime-script-instance";
                                  node_id: string;
                                  observations: {
                                      evidence: {
                                          artifact: | { artifact_id: string; available: true; sha256: string }
                                          | {
                                              available: false;
                                              detail: string;
                                              reason:
                                                  | "unknown"
                                                  | "truncated"
                                                  | "unresolved"
                                                  | "not-applicable"
                                                  | "not-observed"
                                                  | "not-approved"
                                                  | "provider-unavailable";
                                          };
                                          authority: | "unknown"
                                          | "controlled-replay"
                                          | "historical-reference"
                                          | "artifact-bytes"
                                          | "ast-static-analysis"
                                          | "static-relationship-inference"
                                          | "passive-cdp-runtime"
                                          | "cross-layer-reconciliation"
                                          | "native-analysis-provider"
                                          | "user-assertion";
                                          confidence: "unknown"
                                          | "exact"
                                          | "low"
                                          | "medium"
                                          | "high";
                                          coverage: {
                                              limits: {
                                                  name: string;
                                                  unit:
                                                      | "other"
                                                      | "items"
                                                      | "bytes"
                                                      | "depth"
                                                      | "milliseconds"
                                                      | "characters"
                                                      | "instructions";
                                                  value: number;
                                              }[];
                                              omitted_count: number
                                              | null;
                                              status: "unknown" | "unavailable" | "complete" | "partial";
                                              truncated: boolean;
                                          };
                                          evidence_ids: string[];
                                          extractor: {
                                              executable_sha256: string
                                              | null;
                                              name: string;
                                              operation: string;
                                              version: string;
                                          };
                                          limitations: string[];
                                          location: | {
                                              available: false;
                                              detail: string;
                                              reason: | "unknown"
                                              | "truncated"
                                              | "unresolved"
                                              | "not-applicable"
                                              | "not-observed"
                                              | "not-approved"
                                              | "provider-unavailable";
                                          }
                                          | {
                                              available: true;
                                              value: | {
                                                  end: { column: number; line: number };
                                                  kind: "source-range";
                                                  source: string;
                                                  start: { column: number; line: number };
                                              }
                                              | { end: number; kind: "file-offset-range"; start: number }
                                              | { kind: "artifact-path"; path: string }
                                              | { kind: "url"; url: string }
                                              | {
                                                  capture_sha256: string;
                                                  frame_key: string | null;
                                                  kind: "runtime";
                                                  script_key: string | null;
                                                  target_key: string;
                                              }
                                              | { address: string; kind: "native-address"; symbol: string
                                              | null }
                                              | { export_path: string; kind: "package-export"; package_name: string };
                                          };
                                          state: "unknown"
                                          | "observed"
                                          | "inferred"
                                          | "unavailable";
                                      };
                                      identifier_strategy: {
                                          stability: "observation-exact";
                                          strategy: "semantic-content-sha256";
                                      };
                                      label: string
                                      | null;
                                      observation_id: string;
                                      properties: Record<string, JSONType>;
                                  }[];
                              }
                              diff --git a/docs/api/interfaces/application_JavaScriptArtifactGraphContext.JavaScriptArtifactGraphContext.html b/docs/api/interfaces/application_JavaScriptArtifactGraphContext.JavaScriptArtifactGraphContext.html index edb924683..d7d322708 100644 --- a/docs/api/interfaces/application_JavaScriptArtifactGraphContext.JavaScriptArtifactGraphContext.html +++ b/docs/api/interfaces/application_JavaScriptArtifactGraphContext.JavaScriptArtifactGraphContext.html @@ -14,7 +14,7 @@

                              Mutable graph-construction state scoped to one reconstruction.

                              -
                              interface JavaScriptArtifactGraphContext {
                                  accumulator: JavaScriptArtifactGraphAccumulator;
                                  analysis: JavaScriptArtifactAnalysis;
                                  assetNodes: Map<
                                      string,
                                      {
                                          identity: | {
                                              sha256: string;
                                              stability: "global-exact";
                                              strategy: "content-digest";
                                          }
                                          | {
                                              original_source: string;
                                              source_map_sha256: string;
                                              source_sha256: string
                                              | null;
                                              stability: "source-map-exact";
                                              strategy: "source-map-original";
                                          }
                                          | {
                                              artifact_sha256: string;
                                              path: string;
                                              stability: "artifact-version";
                                              strategy: "canonical-path";
                                          }
                                          | {
                                              algorithm: string;
                                              basis: (
                                                  | "imports"
                                                  | "exports"
                                                  | "syntax-tree"
                                                  | "control-flow"
                                                  | "literals"
                                                  | "api-usage"
                                              )[];
                                              fingerprint_sha256: string;
                                              stability: "cross-version-inference";
                                              strategy: "structural-fingerprint";
                                          }
                                          | {
                                              artifact_sha256: string;
                                              key: string;
                                              namespace: string;
                                              stability: "artifact-version";
                                              strategy: "artifact-local-key";
                                          }
                                          | {
                                              capture_sha256: string;
                                              runtime_key: string;
                                              stability: "capture-only";
                                              strategy: "runtime-instance";
                                          }
                                          | {
                                              observation_sha256: string;
                                              scope: string;
                                              stability: "observation-only";
                                              strategy: "observation-fingerprint";
                                          };
                                          kind: | "unknown"
                                          | "target"
                                          | "native-addon"
                                          | "source-map"
                                          | "artifact"
                                          | "package"
                                          | "storage"
                                          | "installer"
                                          | "asar-entry"
                                          | "electron-main"
                                          | "electron-preload"
                                          | "electron-renderer"
                                          | "electron-utility"
                                          | "javascript-asset"
                                          | "javascript-chunk"
                                          | "javascript-module"
                                          | "source-module"
                                          | "browser-window"
                                          | "frame"
                                          | "context-bridge-api"
                                          | "ipc-channel"
                                          | "ipc-handler"
                                          | "worker"
                                          | "service-worker"
                                          | "endpoint"
                                          | "native-export"
                                          | "runtime-script-instance";
                                          node_id: string;
                                          observations: {
                                              evidence: {
                                                  artifact: | { artifact_id: string; available: true; sha256: string }
                                                  | {
                                                      available: false;
                                                      detail: string;
                                                      reason:
                                                          | "unknown"
                                                          | "truncated"
                                                          | "unresolved"
                                                          | "not-applicable"
                                                          | "not-observed"
                                                          | "not-approved"
                                                          | "provider-unavailable";
                                                  };
                                                  authority: | "unknown"
                                                  | "controlled-replay"
                                                  | "historical-reference"
                                                  | "artifact-bytes"
                                                  | "ast-static-analysis"
                                                  | "static-relationship-inference"
                                                  | "passive-cdp-runtime"
                                                  | "cross-layer-reconciliation"
                                                  | "native-analysis-provider"
                                                  | "user-assertion";
                                                  confidence: "unknown"
                                                  | "exact"
                                                  | "low"
                                                  | "medium"
                                                  | "high";
                                                  coverage: {
                                                      limits: {
                                                          name: string;
                                                          unit:
                                                              | "other"
                                                              | "items"
                                                              | "bytes"
                                                              | "depth"
                                                              | "milliseconds"
                                                              | "characters"
                                                              | "instructions";
                                                          value: number;
                                                      }[];
                                                      omitted_count: number
                                                      | null;
                                                      status: "unknown" | "unavailable" | "complete" | "partial";
                                                      truncated: boolean;
                                                  };
                                                  evidence_ids: string[];
                                                  extractor: {
                                                      executable_sha256: string
                                                      | null;
                                                      name: string;
                                                      operation: string;
                                                      version: string;
                                                  };
                                                  limitations: string[];
                                                  location: | {
                                                      available: false;
                                                      detail: string;
                                                      reason: | "unknown"
                                                      | "truncated"
                                                      | "unresolved"
                                                      | "not-applicable"
                                                      | "not-observed"
                                                      | "not-approved"
                                                      | "provider-unavailable";
                                                  }
                                                  | {
                                                      available: true;
                                                      value: | {
                                                          end: { column: number; line: number };
                                                          kind: "source-range";
                                                          source: string;
                                                          start: { column: number; line: number };
                                                      }
                                                      | { end: number; kind: "file-offset-range"; start: number }
                                                      | { kind: "artifact-path"; path: string }
                                                      | { kind: "url"; url: string }
                                                      | {
                                                          capture_sha256: string;
                                                          frame_key: string | null;
                                                          kind: "runtime";
                                                          script_key: string | null;
                                                          target_key: string;
                                                      }
                                                      | { address: string; kind: "native-address"; symbol: string
                                                      | null }
                                                      | {
                                                          export_path: string;
                                                          kind: "package-export";
                                                          package_name: string;
                                                      };
                                                  };
                                                  state: "unknown"
                                                  | "observed"
                                                  | "inferred"
                                                  | "unavailable";
                                              };
                                              identifier_strategy: {
                                                  stability: "observation-exact";
                                                  strategy: "semantic-content-sha256";
                                              };
                                              label: string
                                              | null;
                                              observation_id: string;
                                              properties: Record<string, JSONType>;
                                          }[];
                                      },
                                  >;
                                  containerNodes: Map<
                                      string,
                                      {
                                          identity: | {
                                              sha256: string;
                                              stability: "global-exact";
                                              strategy: "content-digest";
                                          }
                                          | {
                                              original_source: string;
                                              source_map_sha256: string;
                                              source_sha256: string
                                              | null;
                                              stability: "source-map-exact";
                                              strategy: "source-map-original";
                                          }
                                          | {
                                              artifact_sha256: string;
                                              path: string;
                                              stability: "artifact-version";
                                              strategy: "canonical-path";
                                          }
                                          | {
                                              algorithm: string;
                                              basis: (
                                                  | "imports"
                                                  | "exports"
                                                  | "syntax-tree"
                                                  | "control-flow"
                                                  | "literals"
                                                  | "api-usage"
                                              )[];
                                              fingerprint_sha256: string;
                                              stability: "cross-version-inference";
                                              strategy: "structural-fingerprint";
                                          }
                                          | {
                                              artifact_sha256: string;
                                              key: string;
                                              namespace: string;
                                              stability: "artifact-version";
                                              strategy: "artifact-local-key";
                                          }
                                          | {
                                              capture_sha256: string;
                                              runtime_key: string;
                                              stability: "capture-only";
                                              strategy: "runtime-instance";
                                          }
                                          | {
                                              observation_sha256: string;
                                              scope: string;
                                              stability: "observation-only";
                                              strategy: "observation-fingerprint";
                                          };
                                          kind: | "unknown"
                                          | "target"
                                          | "native-addon"
                                          | "source-map"
                                          | "artifact"
                                          | "package"
                                          | "storage"
                                          | "installer"
                                          | "asar-entry"
                                          | "electron-main"
                                          | "electron-preload"
                                          | "electron-renderer"
                                          | "electron-utility"
                                          | "javascript-asset"
                                          | "javascript-chunk"
                                          | "javascript-module"
                                          | "source-module"
                                          | "browser-window"
                                          | "frame"
                                          | "context-bridge-api"
                                          | "ipc-channel"
                                          | "ipc-handler"
                                          | "worker"
                                          | "service-worker"
                                          | "endpoint"
                                          | "native-export"
                                          | "runtime-script-instance";
                                          node_id: string;
                                          observations: {
                                              evidence: {
                                                  artifact: | { artifact_id: string; available: true; sha256: string }
                                                  | {
                                                      available: false;
                                                      detail: string;
                                                      reason:
                                                          | "unknown"
                                                          | "truncated"
                                                          | "unresolved"
                                                          | "not-applicable"
                                                          | "not-observed"
                                                          | "not-approved"
                                                          | "provider-unavailable";
                                                  };
                                                  authority: | "unknown"
                                                  | "controlled-replay"
                                                  | "historical-reference"
                                                  | "artifact-bytes"
                                                  | "ast-static-analysis"
                                                  | "static-relationship-inference"
                                                  | "passive-cdp-runtime"
                                                  | "cross-layer-reconciliation"
                                                  | "native-analysis-provider"
                                                  | "user-assertion";
                                                  confidence: "unknown"
                                                  | "exact"
                                                  | "low"
                                                  | "medium"
                                                  | "high";
                                                  coverage: {
                                                      limits: {
                                                          name: string;
                                                          unit:
                                                              | "other"
                                                              | "items"
                                                              | "bytes"
                                                              | "depth"
                                                              | "milliseconds"
                                                              | "characters"
                                                              | "instructions";
                                                          value: number;
                                                      }[];
                                                      omitted_count: number
                                                      | null;
                                                      status: "unknown" | "unavailable" | "complete" | "partial";
                                                      truncated: boolean;
                                                  };
                                                  evidence_ids: string[];
                                                  extractor: {
                                                      executable_sha256: string
                                                      | null;
                                                      name: string;
                                                      operation: string;
                                                      version: string;
                                                  };
                                                  limitations: string[];
                                                  location: | {
                                                      available: false;
                                                      detail: string;
                                                      reason: | "unknown"
                                                      | "truncated"
                                                      | "unresolved"
                                                      | "not-applicable"
                                                      | "not-observed"
                                                      | "not-approved"
                                                      | "provider-unavailable";
                                                  }
                                                  | {
                                                      available: true;
                                                      value: | {
                                                          end: { column: number; line: number };
                                                          kind: "source-range";
                                                          source: string;
                                                          start: { column: number; line: number };
                                                      }
                                                      | { end: number; kind: "file-offset-range"; start: number }
                                                      | { kind: "artifact-path"; path: string }
                                                      | { kind: "url"; url: string }
                                                      | {
                                                          capture_sha256: string;
                                                          frame_key: string | null;
                                                          kind: "runtime";
                                                          script_key: string | null;
                                                          target_key: string;
                                                      }
                                                      | { address: string; kind: "native-address"; symbol: string
                                                      | null }
                                                      | {
                                                          export_path: string;
                                                          kind: "package-export";
                                                          package_name: string;
                                                      };
                                                  };
                                                  state: "unknown"
                                                  | "observed"
                                                  | "inferred"
                                                  | "unavailable";
                                              };
                                              identifier_strategy: {
                                                  stability: "observation-exact";
                                                  strategy: "semantic-content-sha256";
                                              };
                                              label: string
                                              | null;
                                              observation_id: string;
                                              properties: Record<string, JSONType>;
                                          }[];
                                      },
                                  >;
                                  fileNodes: Map<
                                      string,
                                      {
                                          identity: | {
                                              sha256: string;
                                              stability: "global-exact";
                                              strategy: "content-digest";
                                          }
                                          | {
                                              original_source: string;
                                              source_map_sha256: string;
                                              source_sha256: string
                                              | null;
                                              stability: "source-map-exact";
                                              strategy: "source-map-original";
                                          }
                                          | {
                                              artifact_sha256: string;
                                              path: string;
                                              stability: "artifact-version";
                                              strategy: "canonical-path";
                                          }
                                          | {
                                              algorithm: string;
                                              basis: (
                                                  | "imports"
                                                  | "exports"
                                                  | "syntax-tree"
                                                  | "control-flow"
                                                  | "literals"
                                                  | "api-usage"
                                              )[];
                                              fingerprint_sha256: string;
                                              stability: "cross-version-inference";
                                              strategy: "structural-fingerprint";
                                          }
                                          | {
                                              artifact_sha256: string;
                                              key: string;
                                              namespace: string;
                                              stability: "artifact-version";
                                              strategy: "artifact-local-key";
                                          }
                                          | {
                                              capture_sha256: string;
                                              runtime_key: string;
                                              stability: "capture-only";
                                              strategy: "runtime-instance";
                                          }
                                          | {
                                              observation_sha256: string;
                                              scope: string;
                                              stability: "observation-only";
                                              strategy: "observation-fingerprint";
                                          };
                                          kind: | "unknown"
                                          | "target"
                                          | "native-addon"
                                          | "source-map"
                                          | "artifact"
                                          | "package"
                                          | "storage"
                                          | "installer"
                                          | "asar-entry"
                                          | "electron-main"
                                          | "electron-preload"
                                          | "electron-renderer"
                                          | "electron-utility"
                                          | "javascript-asset"
                                          | "javascript-chunk"
                                          | "javascript-module"
                                          | "source-module"
                                          | "browser-window"
                                          | "frame"
                                          | "context-bridge-api"
                                          | "ipc-channel"
                                          | "ipc-handler"
                                          | "worker"
                                          | "service-worker"
                                          | "endpoint"
                                          | "native-export"
                                          | "runtime-script-instance";
                                          node_id: string;
                                          observations: {
                                              evidence: {
                                                  artifact: | { artifact_id: string; available: true; sha256: string }
                                                  | {
                                                      available: false;
                                                      detail: string;
                                                      reason:
                                                          | "unknown"
                                                          | "truncated"
                                                          | "unresolved"
                                                          | "not-applicable"
                                                          | "not-observed"
                                                          | "not-approved"
                                                          | "provider-unavailable";
                                                  };
                                                  authority: | "unknown"
                                                  | "controlled-replay"
                                                  | "historical-reference"
                                                  | "artifact-bytes"
                                                  | "ast-static-analysis"
                                                  | "static-relationship-inference"
                                                  | "passive-cdp-runtime"
                                                  | "cross-layer-reconciliation"
                                                  | "native-analysis-provider"
                                                  | "user-assertion";
                                                  confidence: "unknown"
                                                  | "exact"
                                                  | "low"
                                                  | "medium"
                                                  | "high";
                                                  coverage: {
                                                      limits: {
                                                          name: string;
                                                          unit:
                                                              | "other"
                                                              | "items"
                                                              | "bytes"
                                                              | "depth"
                                                              | "milliseconds"
                                                              | "characters"
                                                              | "instructions";
                                                          value: number;
                                                      }[];
                                                      omitted_count: number
                                                      | null;
                                                      status: "unknown" | "unavailable" | "complete" | "partial";
                                                      truncated: boolean;
                                                  };
                                                  evidence_ids: string[];
                                                  extractor: {
                                                      executable_sha256: string
                                                      | null;
                                                      name: string;
                                                      operation: string;
                                                      version: string;
                                                  };
                                                  limitations: string[];
                                                  location: | {
                                                      available: false;
                                                      detail: string;
                                                      reason: | "unknown"
                                                      | "truncated"
                                                      | "unresolved"
                                                      | "not-applicable"
                                                      | "not-observed"
                                                      | "not-approved"
                                                      | "provider-unavailable";
                                                  }
                                                  | {
                                                      available: true;
                                                      value: | {
                                                          end: { column: number; line: number };
                                                          kind: "source-range";
                                                          source: string;
                                                          start: { column: number; line: number };
                                                      }
                                                      | { end: number; kind: "file-offset-range"; start: number }
                                                      | { kind: "artifact-path"; path: string }
                                                      | { kind: "url"; url: string }
                                                      | {
                                                          capture_sha256: string;
                                                          frame_key: string | null;
                                                          kind: "runtime";
                                                          script_key: string | null;
                                                          target_key: string;
                                                      }
                                                      | { address: string; kind: "native-address"; symbol: string
                                                      | null }
                                                      | {
                                                          export_path: string;
                                                          kind: "package-export";
                                                          package_name: string;
                                                      };
                                                  };
                                                  state: "unknown"
                                                  | "observed"
                                                  | "inferred"
                                                  | "unavailable";
                                              };
                                              identifier_strategy: {
                                                  stability: "observation-exact";
                                                  strategy: "semantic-content-sha256";
                                              };
                                              label: string
                                              | null;
                                              observation_id: string;
                                              properties: Record<string, JSONType>;
                                          }[];
                                      },
                                  >;
                                  filesByPath: ReadonlyMap<string, JavaScriptArtifactFile>;
                                  fileSet: JavaScriptArtifactFileSet;
                                  input: {
                                      format: "directory" | "asar" | "auto";
                                      input_path: string;
                                      limits: {
                                          max_artifact_entry_bytes: number;
                                          max_ast_nodes: number;
                                          max_compression_ratio: number;
                                          max_depth: number;
                                          max_entries: number;
                                          max_findings: number;
                                          max_modules: number;
                                          max_parse_milliseconds: number;
                                          max_path_bytes: number;
                                          max_source_map_sources: number;
                                          max_text_file_bytes: number;
                                          max_text_files: number;
                                          max_total_artifact_bytes: number;
                                          max_total_text_bytes: number;
                                      };
                                      source_map_read_approved: boolean;
                                  };
                                  moduleNodes: Map<
                                      string,
                                      {
                                          identity: | {
                                              sha256: string;
                                              stability: "global-exact";
                                              strategy: "content-digest";
                                          }
                                          | {
                                              original_source: string;
                                              source_map_sha256: string;
                                              source_sha256: string
                                              | null;
                                              stability: "source-map-exact";
                                              strategy: "source-map-original";
                                          }
                                          | {
                                              artifact_sha256: string;
                                              path: string;
                                              stability: "artifact-version";
                                              strategy: "canonical-path";
                                          }
                                          | {
                                              algorithm: string;
                                              basis: (
                                                  | "imports"
                                                  | "exports"
                                                  | "syntax-tree"
                                                  | "control-flow"
                                                  | "literals"
                                                  | "api-usage"
                                              )[];
                                              fingerprint_sha256: string;
                                              stability: "cross-version-inference";
                                              strategy: "structural-fingerprint";
                                          }
                                          | {
                                              artifact_sha256: string;
                                              key: string;
                                              namespace: string;
                                              stability: "artifact-version";
                                              strategy: "artifact-local-key";
                                          }
                                          | {
                                              capture_sha256: string;
                                              runtime_key: string;
                                              stability: "capture-only";
                                              strategy: "runtime-instance";
                                          }
                                          | {
                                              observation_sha256: string;
                                              scope: string;
                                              stability: "observation-only";
                                              strategy: "observation-fingerprint";
                                          };
                                          kind: | "unknown"
                                          | "target"
                                          | "native-addon"
                                          | "source-map"
                                          | "artifact"
                                          | "package"
                                          | "storage"
                                          | "installer"
                                          | "asar-entry"
                                          | "electron-main"
                                          | "electron-preload"
                                          | "electron-renderer"
                                          | "electron-utility"
                                          | "javascript-asset"
                                          | "javascript-chunk"
                                          | "javascript-module"
                                          | "source-module"
                                          | "browser-window"
                                          | "frame"
                                          | "context-bridge-api"
                                          | "ipc-channel"
                                          | "ipc-handler"
                                          | "worker"
                                          | "service-worker"
                                          | "endpoint"
                                          | "native-export"
                                          | "runtime-script-instance";
                                          node_id: string;
                                          observations: {
                                              evidence: {
                                                  artifact: | { artifact_id: string; available: true; sha256: string }
                                                  | {
                                                      available: false;
                                                      detail: string;
                                                      reason:
                                                          | "unknown"
                                                          | "truncated"
                                                          | "unresolved"
                                                          | "not-applicable"
                                                          | "not-observed"
                                                          | "not-approved"
                                                          | "provider-unavailable";
                                                  };
                                                  authority: | "unknown"
                                                  | "controlled-replay"
                                                  | "historical-reference"
                                                  | "artifact-bytes"
                                                  | "ast-static-analysis"
                                                  | "static-relationship-inference"
                                                  | "passive-cdp-runtime"
                                                  | "cross-layer-reconciliation"
                                                  | "native-analysis-provider"
                                                  | "user-assertion";
                                                  confidence: "unknown"
                                                  | "exact"
                                                  | "low"
                                                  | "medium"
                                                  | "high";
                                                  coverage: {
                                                      limits: {
                                                          name: string;
                                                          unit:
                                                              | "other"
                                                              | "items"
                                                              | "bytes"
                                                              | "depth"
                                                              | "milliseconds"
                                                              | "characters"
                                                              | "instructions";
                                                          value: number;
                                                      }[];
                                                      omitted_count: number
                                                      | null;
                                                      status: "unknown" | "unavailable" | "complete" | "partial";
                                                      truncated: boolean;
                                                  };
                                                  evidence_ids: string[];
                                                  extractor: {
                                                      executable_sha256: string
                                                      | null;
                                                      name: string;
                                                      operation: string;
                                                      version: string;
                                                  };
                                                  limitations: string[];
                                                  location: | {
                                                      available: false;
                                                      detail: string;
                                                      reason: | "unknown"
                                                      | "truncated"
                                                      | "unresolved"
                                                      | "not-applicable"
                                                      | "not-observed"
                                                      | "not-approved"
                                                      | "provider-unavailable";
                                                  }
                                                  | {
                                                      available: true;
                                                      value: | {
                                                          end: { column: number; line: number };
                                                          kind: "source-range";
                                                          source: string;
                                                          start: { column: number; line: number };
                                                      }
                                                      | { end: number; kind: "file-offset-range"; start: number }
                                                      | { kind: "artifact-path"; path: string }
                                                      | { kind: "url"; url: string }
                                                      | {
                                                          capture_sha256: string;
                                                          frame_key: string | null;
                                                          kind: "runtime";
                                                          script_key: string | null;
                                                          target_key: string;
                                                      }
                                                      | { address: string; kind: "native-address"; symbol: string
                                                      | null }
                                                      | {
                                                          export_path: string;
                                                          kind: "package-export";
                                                          package_name: string;
                                                      };
                                                  };
                                                  state: "unknown"
                                                  | "observed"
                                                  | "inferred"
                                                  | "unavailable";
                                              };
                                              identifier_strategy: {
                                                  stability: "observation-exact";
                                                  strategy: "semantic-content-sha256";
                                              };
                                              label: string
                                              | null;
                                              observation_id: string;
                                              properties: Record<string, JSONType>;
                                          }[];
                                      },
                                  >;
                                  root: {
                                      identity: | {
                                          sha256: string;
                                          stability: "global-exact";
                                          strategy: "content-digest";
                                      }
                                      | {
                                          original_source: string;
                                          source_map_sha256: string;
                                          source_sha256: string
                                          | null;
                                          stability: "source-map-exact";
                                          strategy: "source-map-original";
                                      }
                                      | {
                                          artifact_sha256: string;
                                          path: string;
                                          stability: "artifact-version";
                                          strategy: "canonical-path";
                                      }
                                      | {
                                          algorithm: string;
                                          basis: (
                                              | "imports"
                                              | "exports"
                                              | "syntax-tree"
                                              | "control-flow"
                                              | "literals"
                                              | "api-usage"
                                          )[];
                                          fingerprint_sha256: string;
                                          stability: "cross-version-inference";
                                          strategy: "structural-fingerprint";
                                      }
                                      | {
                                          artifact_sha256: string;
                                          key: string;
                                          namespace: string;
                                          stability: "artifact-version";
                                          strategy: "artifact-local-key";
                                      }
                                      | {
                                          capture_sha256: string;
                                          runtime_key: string;
                                          stability: "capture-only";
                                          strategy: "runtime-instance";
                                      }
                                      | {
                                          observation_sha256: string;
                                          scope: string;
                                          stability: "observation-only";
                                          strategy: "observation-fingerprint";
                                      };
                                      kind: | "unknown"
                                      | "target"
                                      | "native-addon"
                                      | "source-map"
                                      | "artifact"
                                      | "package"
                                      | "storage"
                                      | "installer"
                                      | "asar-entry"
                                      | "electron-main"
                                      | "electron-preload"
                                      | "electron-renderer"
                                      | "electron-utility"
                                      | "javascript-asset"
                                      | "javascript-chunk"
                                      | "javascript-module"
                                      | "source-module"
                                      | "browser-window"
                                      | "frame"
                                      | "context-bridge-api"
                                      | "ipc-channel"
                                      | "ipc-handler"
                                      | "worker"
                                      | "service-worker"
                                      | "endpoint"
                                      | "native-export"
                                      | "runtime-script-instance";
                                      node_id: string;
                                      observations: {
                                          evidence: {
                                              artifact: | { artifact_id: string; available: true; sha256: string }
                                              | {
                                                  available: false;
                                                  detail: string;
                                                  reason:
                                                      | "unknown"
                                                      | "truncated"
                                                      | "unresolved"
                                                      | "not-applicable"
                                                      | "not-observed"
                                                      | "not-approved"
                                                      | "provider-unavailable";
                                              };
                                              authority: | "unknown"
                                              | "controlled-replay"
                                              | "historical-reference"
                                              | "artifact-bytes"
                                              | "ast-static-analysis"
                                              | "static-relationship-inference"
                                              | "passive-cdp-runtime"
                                              | "cross-layer-reconciliation"
                                              | "native-analysis-provider"
                                              | "user-assertion";
                                              confidence: "unknown"
                                              | "exact"
                                              | "low"
                                              | "medium"
                                              | "high";
                                              coverage: {
                                                  limits: {
                                                      name: string;
                                                      unit:
                                                          | "other"
                                                          | "items"
                                                          | "bytes"
                                                          | "depth"
                                                          | "milliseconds"
                                                          | "characters"
                                                          | "instructions";
                                                      value: number;
                                                  }[];
                                                  omitted_count: number
                                                  | null;
                                                  status: "unknown" | "unavailable" | "complete" | "partial";
                                                  truncated: boolean;
                                              };
                                              evidence_ids: string[];
                                              extractor: {
                                                  executable_sha256: string
                                                  | null;
                                                  name: string;
                                                  operation: string;
                                                  version: string;
                                              };
                                              limitations: string[];
                                              location: | {
                                                  available: false;
                                                  detail: string;
                                                  reason: | "unknown"
                                                  | "truncated"
                                                  | "unresolved"
                                                  | "not-applicable"
                                                  | "not-observed"
                                                  | "not-approved"
                                                  | "provider-unavailable";
                                              }
                                              | {
                                                  available: true;
                                                  value: | {
                                                      end: { column: number; line: number };
                                                      kind: "source-range";
                                                      source: string;
                                                      start: { column: number; line: number };
                                                  }
                                                  | { end: number; kind: "file-offset-range"; start: number }
                                                  | { kind: "artifact-path"; path: string }
                                                  | { kind: "url"; url: string }
                                                  | {
                                                      capture_sha256: string;
                                                      frame_key: string | null;
                                                      kind: "runtime";
                                                      script_key: string | null;
                                                      target_key: string;
                                                  }
                                                  | { address: string; kind: "native-address"; symbol: string
                                                  | null }
                                                  | { export_path: string; kind: "package-export"; package_name: string };
                                              };
                                              state: "unknown"
                                              | "observed"
                                              | "inferred"
                                              | "unavailable";
                                          };
                                          identifier_strategy: {
                                              stability: "observation-exact";
                                              strategy: "semantic-content-sha256";
                                          };
                                          label: string
                                          | null;
                                          observation_id: string;
                                          properties: Record<string, JSONType>;
                                      }[];
                                  };
                                  snapshot: ArtifactInventorySnapshot;
                              }
                              -
                              assetNodes: Map<
                                  string,
                                  {
                                      identity: | {
                                          sha256: string;
                                          stability: "global-exact";
                                          strategy: "content-digest";
                                      }
                                      | {
                                          original_source: string;
                                          source_map_sha256: string;
                                          source_sha256: string
                                          | null;
                                          stability: "source-map-exact";
                                          strategy: "source-map-original";
                                      }
                                      | {
                                          artifact_sha256: string;
                                          path: string;
                                          stability: "artifact-version";
                                          strategy: "canonical-path";
                                      }
                                      | {
                                          algorithm: string;
                                          basis: (
                                              | "imports"
                                              | "exports"
                                              | "syntax-tree"
                                              | "control-flow"
                                              | "literals"
                                              | "api-usage"
                                          )[];
                                          fingerprint_sha256: string;
                                          stability: "cross-version-inference";
                                          strategy: "structural-fingerprint";
                                      }
                                      | {
                                          artifact_sha256: string;
                                          key: string;
                                          namespace: string;
                                          stability: "artifact-version";
                                          strategy: "artifact-local-key";
                                      }
                                      | {
                                          capture_sha256: string;
                                          runtime_key: string;
                                          stability: "capture-only";
                                          strategy: "runtime-instance";
                                      }
                                      | {
                                          observation_sha256: string;
                                          scope: string;
                                          stability: "observation-only";
                                          strategy: "observation-fingerprint";
                                      };
                                      kind: | "unknown"
                                      | "target"
                                      | "native-addon"
                                      | "source-map"
                                      | "artifact"
                                      | "package"
                                      | "storage"
                                      | "installer"
                                      | "asar-entry"
                                      | "electron-main"
                                      | "electron-preload"
                                      | "electron-renderer"
                                      | "electron-utility"
                                      | "javascript-asset"
                                      | "javascript-chunk"
                                      | "javascript-module"
                                      | "source-module"
                                      | "browser-window"
                                      | "frame"
                                      | "context-bridge-api"
                                      | "ipc-channel"
                                      | "ipc-handler"
                                      | "worker"
                                      | "service-worker"
                                      | "endpoint"
                                      | "native-export"
                                      | "runtime-script-instance";
                                      node_id: string;
                                      observations: {
                                          evidence: {
                                              artifact: | { artifact_id: string; available: true; sha256: string }
                                              | {
                                                  available: false;
                                                  detail: string;
                                                  reason:
                                                      | "unknown"
                                                      | "truncated"
                                                      | "unresolved"
                                                      | "not-applicable"
                                                      | "not-observed"
                                                      | "not-approved"
                                                      | "provider-unavailable";
                                              };
                                              authority: | "unknown"
                                              | "controlled-replay"
                                              | "historical-reference"
                                              | "artifact-bytes"
                                              | "ast-static-analysis"
                                              | "static-relationship-inference"
                                              | "passive-cdp-runtime"
                                              | "cross-layer-reconciliation"
                                              | "native-analysis-provider"
                                              | "user-assertion";
                                              confidence: "unknown"
                                              | "exact"
                                              | "low"
                                              | "medium"
                                              | "high";
                                              coverage: {
                                                  limits: {
                                                      name: string;
                                                      unit:
                                                          | "other"
                                                          | "items"
                                                          | "bytes"
                                                          | "depth"
                                                          | "milliseconds"
                                                          | "characters"
                                                          | "instructions";
                                                      value: number;
                                                  }[];
                                                  omitted_count: number
                                                  | null;
                                                  status: "unknown" | "unavailable" | "complete" | "partial";
                                                  truncated: boolean;
                                              };
                                              evidence_ids: string[];
                                              extractor: {
                                                  executable_sha256: string
                                                  | null;
                                                  name: string;
                                                  operation: string;
                                                  version: string;
                                              };
                                              limitations: string[];
                                              location: | {
                                                  available: false;
                                                  detail: string;
                                                  reason: | "unknown"
                                                  | "truncated"
                                                  | "unresolved"
                                                  | "not-applicable"
                                                  | "not-observed"
                                                  | "not-approved"
                                                  | "provider-unavailable";
                                              }
                                              | {
                                                  available: true;
                                                  value: | {
                                                      end: { column: number; line: number };
                                                      kind: "source-range";
                                                      source: string;
                                                      start: { column: number; line: number };
                                                  }
                                                  | { end: number; kind: "file-offset-range"; start: number }
                                                  | { kind: "artifact-path"; path: string }
                                                  | { kind: "url"; url: string }
                                                  | {
                                                      capture_sha256: string;
                                                      frame_key: string | null;
                                                      kind: "runtime";
                                                      script_key: string | null;
                                                      target_key: string;
                                                  }
                                                  | { address: string; kind: "native-address"; symbol: string
                                                  | null }
                                                  | { export_path: string; kind: "package-export"; package_name: string };
                                              };
                                              state: "unknown"
                                              | "observed"
                                              | "inferred"
                                              | "unavailable";
                                          };
                                          identifier_strategy: {
                                              stability: "observation-exact";
                                              strategy: "semantic-content-sha256";
                                          };
                                          label: string
                                          | null;
                                          observation_id: string;
                                          properties: Record<string, JSONType>;
                                      }[];
                                  },
                              >
                              -
                              containerNodes: Map<
                                  string,
                                  {
                                      identity: | {
                                          sha256: string;
                                          stability: "global-exact";
                                          strategy: "content-digest";
                                      }
                                      | {
                                          original_source: string;
                                          source_map_sha256: string;
                                          source_sha256: string
                                          | null;
                                          stability: "source-map-exact";
                                          strategy: "source-map-original";
                                      }
                                      | {
                                          artifact_sha256: string;
                                          path: string;
                                          stability: "artifact-version";
                                          strategy: "canonical-path";
                                      }
                                      | {
                                          algorithm: string;
                                          basis: (
                                              | "imports"
                                              | "exports"
                                              | "syntax-tree"
                                              | "control-flow"
                                              | "literals"
                                              | "api-usage"
                                          )[];
                                          fingerprint_sha256: string;
                                          stability: "cross-version-inference";
                                          strategy: "structural-fingerprint";
                                      }
                                      | {
                                          artifact_sha256: string;
                                          key: string;
                                          namespace: string;
                                          stability: "artifact-version";
                                          strategy: "artifact-local-key";
                                      }
                                      | {
                                          capture_sha256: string;
                                          runtime_key: string;
                                          stability: "capture-only";
                                          strategy: "runtime-instance";
                                      }
                                      | {
                                          observation_sha256: string;
                                          scope: string;
                                          stability: "observation-only";
                                          strategy: "observation-fingerprint";
                                      };
                                      kind: | "unknown"
                                      | "target"
                                      | "native-addon"
                                      | "source-map"
                                      | "artifact"
                                      | "package"
                                      | "storage"
                                      | "installer"
                                      | "asar-entry"
                                      | "electron-main"
                                      | "electron-preload"
                                      | "electron-renderer"
                                      | "electron-utility"
                                      | "javascript-asset"
                                      | "javascript-chunk"
                                      | "javascript-module"
                                      | "source-module"
                                      | "browser-window"
                                      | "frame"
                                      | "context-bridge-api"
                                      | "ipc-channel"
                                      | "ipc-handler"
                                      | "worker"
                                      | "service-worker"
                                      | "endpoint"
                                      | "native-export"
                                      | "runtime-script-instance";
                                      node_id: string;
                                      observations: {
                                          evidence: {
                                              artifact: | { artifact_id: string; available: true; sha256: string }
                                              | {
                                                  available: false;
                                                  detail: string;
                                                  reason:
                                                      | "unknown"
                                                      | "truncated"
                                                      | "unresolved"
                                                      | "not-applicable"
                                                      | "not-observed"
                                                      | "not-approved"
                                                      | "provider-unavailable";
                                              };
                                              authority: | "unknown"
                                              | "controlled-replay"
                                              | "historical-reference"
                                              | "artifact-bytes"
                                              | "ast-static-analysis"
                                              | "static-relationship-inference"
                                              | "passive-cdp-runtime"
                                              | "cross-layer-reconciliation"
                                              | "native-analysis-provider"
                                              | "user-assertion";
                                              confidence: "unknown"
                                              | "exact"
                                              | "low"
                                              | "medium"
                                              | "high";
                                              coverage: {
                                                  limits: {
                                                      name: string;
                                                      unit:
                                                          | "other"
                                                          | "items"
                                                          | "bytes"
                                                          | "depth"
                                                          | "milliseconds"
                                                          | "characters"
                                                          | "instructions";
                                                      value: number;
                                                  }[];
                                                  omitted_count: number
                                                  | null;
                                                  status: "unknown" | "unavailable" | "complete" | "partial";
                                                  truncated: boolean;
                                              };
                                              evidence_ids: string[];
                                              extractor: {
                                                  executable_sha256: string
                                                  | null;
                                                  name: string;
                                                  operation: string;
                                                  version: string;
                                              };
                                              limitations: string[];
                                              location: | {
                                                  available: false;
                                                  detail: string;
                                                  reason: | "unknown"
                                                  | "truncated"
                                                  | "unresolved"
                                                  | "not-applicable"
                                                  | "not-observed"
                                                  | "not-approved"
                                                  | "provider-unavailable";
                                              }
                                              | {
                                                  available: true;
                                                  value: | {
                                                      end: { column: number; line: number };
                                                      kind: "source-range";
                                                      source: string;
                                                      start: { column: number; line: number };
                                                  }
                                                  | { end: number; kind: "file-offset-range"; start: number }
                                                  | { kind: "artifact-path"; path: string }
                                                  | { kind: "url"; url: string }
                                                  | {
                                                      capture_sha256: string;
                                                      frame_key: string | null;
                                                      kind: "runtime";
                                                      script_key: string | null;
                                                      target_key: string;
                                                  }
                                                  | { address: string; kind: "native-address"; symbol: string
                                                  | null }
                                                  | { export_path: string; kind: "package-export"; package_name: string };
                                              };
                                              state: "unknown"
                                              | "observed"
                                              | "inferred"
                                              | "unavailable";
                                          };
                                          identifier_strategy: {
                                              stability: "observation-exact";
                                              strategy: "semantic-content-sha256";
                                          };
                                          label: string
                                          | null;
                                          observation_id: string;
                                          properties: Record<string, JSONType>;
                                      }[];
                                  },
                              >
                              -
                              fileNodes: Map<
                                  string,
                                  {
                                      identity: | {
                                          sha256: string;
                                          stability: "global-exact";
                                          strategy: "content-digest";
                                      }
                                      | {
                                          original_source: string;
                                          source_map_sha256: string;
                                          source_sha256: string
                                          | null;
                                          stability: "source-map-exact";
                                          strategy: "source-map-original";
                                      }
                                      | {
                                          artifact_sha256: string;
                                          path: string;
                                          stability: "artifact-version";
                                          strategy: "canonical-path";
                                      }
                                      | {
                                          algorithm: string;
                                          basis: (
                                              | "imports"
                                              | "exports"
                                              | "syntax-tree"
                                              | "control-flow"
                                              | "literals"
                                              | "api-usage"
                                          )[];
                                          fingerprint_sha256: string;
                                          stability: "cross-version-inference";
                                          strategy: "structural-fingerprint";
                                      }
                                      | {
                                          artifact_sha256: string;
                                          key: string;
                                          namespace: string;
                                          stability: "artifact-version";
                                          strategy: "artifact-local-key";
                                      }
                                      | {
                                          capture_sha256: string;
                                          runtime_key: string;
                                          stability: "capture-only";
                                          strategy: "runtime-instance";
                                      }
                                      | {
                                          observation_sha256: string;
                                          scope: string;
                                          stability: "observation-only";
                                          strategy: "observation-fingerprint";
                                      };
                                      kind: | "unknown"
                                      | "target"
                                      | "native-addon"
                                      | "source-map"
                                      | "artifact"
                                      | "package"
                                      | "storage"
                                      | "installer"
                                      | "asar-entry"
                                      | "electron-main"
                                      | "electron-preload"
                                      | "electron-renderer"
                                      | "electron-utility"
                                      | "javascript-asset"
                                      | "javascript-chunk"
                                      | "javascript-module"
                                      | "source-module"
                                      | "browser-window"
                                      | "frame"
                                      | "context-bridge-api"
                                      | "ipc-channel"
                                      | "ipc-handler"
                                      | "worker"
                                      | "service-worker"
                                      | "endpoint"
                                      | "native-export"
                                      | "runtime-script-instance";
                                      node_id: string;
                                      observations: {
                                          evidence: {
                                              artifact: | { artifact_id: string; available: true; sha256: string }
                                              | {
                                                  available: false;
                                                  detail: string;
                                                  reason:
                                                      | "unknown"
                                                      | "truncated"
                                                      | "unresolved"
                                                      | "not-applicable"
                                                      | "not-observed"
                                                      | "not-approved"
                                                      | "provider-unavailable";
                                              };
                                              authority: | "unknown"
                                              | "controlled-replay"
                                              | "historical-reference"
                                              | "artifact-bytes"
                                              | "ast-static-analysis"
                                              | "static-relationship-inference"
                                              | "passive-cdp-runtime"
                                              | "cross-layer-reconciliation"
                                              | "native-analysis-provider"
                                              | "user-assertion";
                                              confidence: "unknown"
                                              | "exact"
                                              | "low"
                                              | "medium"
                                              | "high";
                                              coverage: {
                                                  limits: {
                                                      name: string;
                                                      unit:
                                                          | "other"
                                                          | "items"
                                                          | "bytes"
                                                          | "depth"
                                                          | "milliseconds"
                                                          | "characters"
                                                          | "instructions";
                                                      value: number;
                                                  }[];
                                                  omitted_count: number
                                                  | null;
                                                  status: "unknown" | "unavailable" | "complete" | "partial";
                                                  truncated: boolean;
                                              };
                                              evidence_ids: string[];
                                              extractor: {
                                                  executable_sha256: string
                                                  | null;
                                                  name: string;
                                                  operation: string;
                                                  version: string;
                                              };
                                              limitations: string[];
                                              location: | {
                                                  available: false;
                                                  detail: string;
                                                  reason: | "unknown"
                                                  | "truncated"
                                                  | "unresolved"
                                                  | "not-applicable"
                                                  | "not-observed"
                                                  | "not-approved"
                                                  | "provider-unavailable";
                                              }
                                              | {
                                                  available: true;
                                                  value: | {
                                                      end: { column: number; line: number };
                                                      kind: "source-range";
                                                      source: string;
                                                      start: { column: number; line: number };
                                                  }
                                                  | { end: number; kind: "file-offset-range"; start: number }
                                                  | { kind: "artifact-path"; path: string }
                                                  | { kind: "url"; url: string }
                                                  | {
                                                      capture_sha256: string;
                                                      frame_key: string | null;
                                                      kind: "runtime";
                                                      script_key: string | null;
                                                      target_key: string;
                                                  }
                                                  | { address: string; kind: "native-address"; symbol: string
                                                  | null }
                                                  | { export_path: string; kind: "package-export"; package_name: string };
                                              };
                                              state: "unknown"
                                              | "observed"
                                              | "inferred"
                                              | "unavailable";
                                          };
                                          identifier_strategy: {
                                              stability: "observation-exact";
                                              strategy: "semantic-content-sha256";
                                          };
                                          label: string
                                          | null;
                                          observation_id: string;
                                          properties: Record<string, JSONType>;
                                      }[];
                                  },
                              >
                              @@ -81,12 +81,12 @@
                            • Defined in src/application/JavaScriptArtifactGraphContext.ts:29
                            • -
                              moduleNodes: Map<
                                  string,
                                  {
                                      identity: | {
                                          sha256: string;
                                          stability: "global-exact";
                                          strategy: "content-digest";
                                      }
                                      | {
                                          original_source: string;
                                          source_map_sha256: string;
                                          source_sha256: string
                                          | null;
                                          stability: "source-map-exact";
                                          strategy: "source-map-original";
                                      }
                                      | {
                                          artifact_sha256: string;
                                          path: string;
                                          stability: "artifact-version";
                                          strategy: "canonical-path";
                                      }
                                      | {
                                          algorithm: string;
                                          basis: (
                                              | "imports"
                                              | "exports"
                                              | "syntax-tree"
                                              | "control-flow"
                                              | "literals"
                                              | "api-usage"
                                          )[];
                                          fingerprint_sha256: string;
                                          stability: "cross-version-inference";
                                          strategy: "structural-fingerprint";
                                      }
                                      | {
                                          artifact_sha256: string;
                                          key: string;
                                          namespace: string;
                                          stability: "artifact-version";
                                          strategy: "artifact-local-key";
                                      }
                                      | {
                                          capture_sha256: string;
                                          runtime_key: string;
                                          stability: "capture-only";
                                          strategy: "runtime-instance";
                                      }
                                      | {
                                          observation_sha256: string;
                                          scope: string;
                                          stability: "observation-only";
                                          strategy: "observation-fingerprint";
                                      };
                                      kind: | "unknown"
                                      | "target"
                                      | "native-addon"
                                      | "source-map"
                                      | "artifact"
                                      | "package"
                                      | "storage"
                                      | "installer"
                                      | "asar-entry"
                                      | "electron-main"
                                      | "electron-preload"
                                      | "electron-renderer"
                                      | "electron-utility"
                                      | "javascript-asset"
                                      | "javascript-chunk"
                                      | "javascript-module"
                                      | "source-module"
                                      | "browser-window"
                                      | "frame"
                                      | "context-bridge-api"
                                      | "ipc-channel"
                                      | "ipc-handler"
                                      | "worker"
                                      | "service-worker"
                                      | "endpoint"
                                      | "native-export"
                                      | "runtime-script-instance";
                                      node_id: string;
                                      observations: {
                                          evidence: {
                                              artifact: | { artifact_id: string; available: true; sha256: string }
                                              | {
                                                  available: false;
                                                  detail: string;
                                                  reason:
                                                      | "unknown"
                                                      | "truncated"
                                                      | "unresolved"
                                                      | "not-applicable"
                                                      | "not-observed"
                                                      | "not-approved"
                                                      | "provider-unavailable";
                                              };
                                              authority: | "unknown"
                                              | "controlled-replay"
                                              | "historical-reference"
                                              | "artifact-bytes"
                                              | "ast-static-analysis"
                                              | "static-relationship-inference"
                                              | "passive-cdp-runtime"
                                              | "cross-layer-reconciliation"
                                              | "native-analysis-provider"
                                              | "user-assertion";
                                              confidence: "unknown"
                                              | "exact"
                                              | "low"
                                              | "medium"
                                              | "high";
                                              coverage: {
                                                  limits: {
                                                      name: string;
                                                      unit:
                                                          | "other"
                                                          | "items"
                                                          | "bytes"
                                                          | "depth"
                                                          | "milliseconds"
                                                          | "characters"
                                                          | "instructions";
                                                      value: number;
                                                  }[];
                                                  omitted_count: number
                                                  | null;
                                                  status: "unknown" | "unavailable" | "complete" | "partial";
                                                  truncated: boolean;
                                              };
                                              evidence_ids: string[];
                                              extractor: {
                                                  executable_sha256: string
                                                  | null;
                                                  name: string;
                                                  operation: string;
                                                  version: string;
                                              };
                                              limitations: string[];
                                              location: | {
                                                  available: false;
                                                  detail: string;
                                                  reason: | "unknown"
                                                  | "truncated"
                                                  | "unresolved"
                                                  | "not-applicable"
                                                  | "not-observed"
                                                  | "not-approved"
                                                  | "provider-unavailable";
                                              }
                                              | {
                                                  available: true;
                                                  value: | {
                                                      end: { column: number; line: number };
                                                      kind: "source-range";
                                                      source: string;
                                                      start: { column: number; line: number };
                                                  }
                                                  | { end: number; kind: "file-offset-range"; start: number }
                                                  | { kind: "artifact-path"; path: string }
                                                  | { kind: "url"; url: string }
                                                  | {
                                                      capture_sha256: string;
                                                      frame_key: string | null;
                                                      kind: "runtime";
                                                      script_key: string | null;
                                                      target_key: string;
                                                  }
                                                  | { address: string; kind: "native-address"; symbol: string
                                                  | null }
                                                  | { export_path: string; kind: "package-export"; package_name: string };
                                              };
                                              state: "unknown"
                                              | "observed"
                                              | "inferred"
                                              | "unavailable";
                                          };
                                          identifier_strategy: {
                                              stability: "observation-exact";
                                              strategy: "semantic-content-sha256";
                                          };
                                          label: string
                                          | null;
                                          observation_id: string;
                                          properties: Record<string, JSONType>;
                                      }[];
                                  },
                              >
                              -
                              root: {
                                  identity:
                                      | {
                                          sha256: string;
                                          stability: "global-exact";
                                          strategy: "content-digest";
                                      }
                                      | {
                                          original_source: string;
                                          source_map_sha256: string;
                                          source_sha256: string
                                          | null;
                                          stability: "source-map-exact";
                                          strategy: "source-map-original";
                                      }
                                      | {
                                          artifact_sha256: string;
                                          path: string;
                                          stability: "artifact-version";
                                          strategy: "canonical-path";
                                      }
                                      | {
                                          algorithm: string;
                                          basis: (
                                              | "imports"
                                              | "exports"
                                              | "syntax-tree"
                                              | "control-flow"
                                              | "literals"
                                              | "api-usage"
                                          )[];
                                          fingerprint_sha256: string;
                                          stability: "cross-version-inference";
                                          strategy: "structural-fingerprint";
                                      }
                                      | {
                                          artifact_sha256: string;
                                          key: string;
                                          namespace: string;
                                          stability: "artifact-version";
                                          strategy: "artifact-local-key";
                                      }
                                      | {
                                          capture_sha256: string;
                                          runtime_key: string;
                                          stability: "capture-only";
                                          strategy: "runtime-instance";
                                      }
                                      | {
                                          observation_sha256: string;
                                          scope: string;
                                          stability: "observation-only";
                                          strategy: "observation-fingerprint";
                                      };
                                  kind: | "unknown"
                                  | "target"
                                  | "native-addon"
                                  | "source-map"
                                  | "artifact"
                                  | "package"
                                  | "storage"
                                  | "installer"
                                  | "asar-entry"
                                  | "electron-main"
                                  | "electron-preload"
                                  | "electron-renderer"
                                  | "electron-utility"
                                  | "javascript-asset"
                                  | "javascript-chunk"
                                  | "javascript-module"
                                  | "source-module"
                                  | "browser-window"
                                  | "frame"
                                  | "context-bridge-api"
                                  | "ipc-channel"
                                  | "ipc-handler"
                                  | "worker"
                                  | "service-worker"
                                  | "endpoint"
                                  | "native-export"
                                  | "runtime-script-instance";
                                  node_id: string;
                                  observations: {
                                      evidence: {
                                          artifact: | { artifact_id: string; available: true; sha256: string }
                                          | {
                                              available: false;
                                              detail: string;
                                              reason:
                                                  | "unknown"
                                                  | "truncated"
                                                  | "unresolved"
                                                  | "not-applicable"
                                                  | "not-observed"
                                                  | "not-approved"
                                                  | "provider-unavailable";
                                          };
                                          authority: | "unknown"
                                          | "controlled-replay"
                                          | "historical-reference"
                                          | "artifact-bytes"
                                          | "ast-static-analysis"
                                          | "static-relationship-inference"
                                          | "passive-cdp-runtime"
                                          | "cross-layer-reconciliation"
                                          | "native-analysis-provider"
                                          | "user-assertion";
                                          confidence: "unknown"
                                          | "exact"
                                          | "low"
                                          | "medium"
                                          | "high";
                                          coverage: {
                                              limits: {
                                                  name: string;
                                                  unit:
                                                      | "other"
                                                      | "items"
                                                      | "bytes"
                                                      | "depth"
                                                      | "milliseconds"
                                                      | "characters"
                                                      | "instructions";
                                                  value: number;
                                              }[];
                                              omitted_count: number
                                              | null;
                                              status: "unknown" | "unavailable" | "complete" | "partial";
                                              truncated: boolean;
                                          };
                                          evidence_ids: string[];
                                          extractor: {
                                              executable_sha256: string
                                              | null;
                                              name: string;
                                              operation: string;
                                              version: string;
                                          };
                                          limitations: string[];
                                          location: | {
                                              available: false;
                                              detail: string;
                                              reason: | "unknown"
                                              | "truncated"
                                              | "unresolved"
                                              | "not-applicable"
                                              | "not-observed"
                                              | "not-approved"
                                              | "provider-unavailable";
                                          }
                                          | {
                                              available: true;
                                              value: | {
                                                  end: { column: number; line: number };
                                                  kind: "source-range";
                                                  source: string;
                                                  start: { column: number; line: number };
                                              }
                                              | { end: number; kind: "file-offset-range"; start: number }
                                              | { kind: "artifact-path"; path: string }
                                              | { kind: "url"; url: string }
                                              | {
                                                  capture_sha256: string;
                                                  frame_key: string | null;
                                                  kind: "runtime";
                                                  script_key: string | null;
                                                  target_key: string;
                                              }
                                              | { address: string; kind: "native-address"; symbol: string
                                              | null }
                                              | { export_path: string; kind: "package-export"; package_name: string };
                                          };
                                          state: "unknown"
                                          | "observed"
                                          | "inferred"
                                          | "unavailable";
                                      };
                                      identifier_strategy: {
                                          stability: "observation-exact";
                                          strategy: "semantic-content-sha256";
                                      };
                                      label: string
                                      | null;
                                      observation_id: string;
                                      properties: Record<string, JSONType>;
                                  }[];
                              }
                              diff --git a/docs/api/interfaces/application_JavaScriptArtifactGraphContext.RoleAssetLinkInput.html b/docs/api/interfaces/application_JavaScriptArtifactGraphContext.RoleAssetLinkInput.html index 7394e5cb8..5de8bcdcd 100644 --- a/docs/api/interfaces/application_JavaScriptArtifactGraphContext.RoleAssetLinkInput.html +++ b/docs/api/interfaces/application_JavaScriptArtifactGraphContext.RoleAssetLinkInput.html @@ -14,7 +14,7 @@

                              Resolution from an inferred Electron role to an artifact asset.

                              -
                              interface RoleAssetLinkInput {
                                  anchor: JavaScriptArtifactFile;
                                  coverage?: {
                                      limits: {
                                          name: string;
                                          unit:
                                              | "other"
                                              | "items"
                                              | "bytes"
                                              | "depth"
                                              | "milliseconds"
                                              | "characters"
                                              | "instructions";
                                          value: number;
                                      }[];
                                      omitted_count: number
                                      | null;
                                      status: "unknown" | "unavailable" | "complete" | "partial";
                                      truncated: boolean;
                                  };
                                  path: string
                                  | null;
                                  range?: JavaScriptSourceRange;
                                  role: {
                                      identity:
                                          | {
                                              sha256: string;
                                              stability: "global-exact";
                                              strategy: "content-digest";
                                          }
                                          | {
                                              original_source: string;
                                              source_map_sha256: string;
                                              source_sha256: string
                                              | null;
                                              stability: "source-map-exact";
                                              strategy: "source-map-original";
                                          }
                                          | {
                                              artifact_sha256: string;
                                              path: string;
                                              stability: "artifact-version";
                                              strategy: "canonical-path";
                                          }
                                          | {
                                              algorithm: string;
                                              basis: (
                                                  | "imports"
                                                  | "exports"
                                                  | "syntax-tree"
                                                  | "control-flow"
                                                  | "literals"
                                                  | "api-usage"
                                              )[];
                                              fingerprint_sha256: string;
                                              stability: "cross-version-inference";
                                              strategy: "structural-fingerprint";
                                          }
                                          | {
                                              artifact_sha256: string;
                                              key: string;
                                              namespace: string;
                                              stability: "artifact-version";
                                              strategy: "artifact-local-key";
                                          }
                                          | {
                                              capture_sha256: string;
                                              runtime_key: string;
                                              stability: "capture-only";
                                              strategy: "runtime-instance";
                                          }
                                          | {
                                              observation_sha256: string;
                                              scope: string;
                                              stability: "observation-only";
                                              strategy: "observation-fingerprint";
                                          };
                                      kind: | "unknown"
                                      | "target"
                                      | "native-addon"
                                      | "source-map"
                                      | "artifact"
                                      | "package"
                                      | "storage"
                                      | "installer"
                                      | "asar-entry"
                                      | "electron-main"
                                      | "electron-preload"
                                      | "electron-renderer"
                                      | "electron-utility"
                                      | "javascript-asset"
                                      | "javascript-chunk"
                                      | "javascript-module"
                                      | "source-module"
                                      | "browser-window"
                                      | "frame"
                                      | "context-bridge-api"
                                      | "ipc-channel"
                                      | "ipc-handler"
                                      | "worker"
                                      | "service-worker"
                                      | "endpoint"
                                      | "native-export"
                                      | "runtime-script-instance";
                                      node_id: string;
                                      observations: {
                                          evidence: {
                                              artifact: | { artifact_id: string; available: true; sha256: string }
                                              | {
                                                  available: false;
                                                  detail: string;
                                                  reason:
                                                      | "unknown"
                                                      | "truncated"
                                                      | "unresolved"
                                                      | "not-applicable"
                                                      | "not-observed"
                                                      | "not-approved"
                                                      | "provider-unavailable";
                                              };
                                              authority: | "unknown"
                                              | "controlled-replay"
                                              | "historical-reference"
                                              | "artifact-bytes"
                                              | "ast-static-analysis"
                                              | "static-relationship-inference"
                                              | "passive-cdp-runtime"
                                              | "cross-layer-reconciliation"
                                              | "native-analysis-provider"
                                              | "user-assertion";
                                              confidence: "unknown"
                                              | "exact"
                                              | "low"
                                              | "medium"
                                              | "high";
                                              coverage: {
                                                  limits: {
                                                      name: string;
                                                      unit:
                                                          | "other"
                                                          | "items"
                                                          | "bytes"
                                                          | "depth"
                                                          | "milliseconds"
                                                          | "characters"
                                                          | "instructions";
                                                      value: number;
                                                  }[];
                                                  omitted_count: number
                                                  | null;
                                                  status: "unknown" | "unavailable" | "complete" | "partial";
                                                  truncated: boolean;
                                              };
                                              evidence_ids: string[];
                                              extractor: {
                                                  executable_sha256: string
                                                  | null;
                                                  name: string;
                                                  operation: string;
                                                  version: string;
                                              };
                                              limitations: string[];
                                              location: | {
                                                  available: false;
                                                  detail: string;
                                                  reason: | "unknown"
                                                  | "truncated"
                                                  | "unresolved"
                                                  | "not-applicable"
                                                  | "not-observed"
                                                  | "not-approved"
                                                  | "provider-unavailable";
                                              }
                                              | {
                                                  available: true;
                                                  value: | {
                                                      end: { column: number; line: number };
                                                      kind: "source-range";
                                                      source: string;
                                                      start: { column: number; line: number };
                                                  }
                                                  | { end: number; kind: "file-offset-range"; start: number }
                                                  | { kind: "artifact-path"; path: string }
                                                  | { kind: "url"; url: string }
                                                  | {
                                                      capture_sha256: string;
                                                      frame_key: string | null;
                                                      kind: "runtime";
                                                      script_key: string | null;
                                                      target_key: string;
                                                  }
                                                  | { address: string; kind: "native-address"; symbol: string
                                                  | null }
                                                  | { export_path: string; kind: "package-export"; package_name: string };
                                              };
                                              state: "unknown"
                                              | "observed"
                                              | "inferred"
                                              | "unavailable";
                                          };
                                          identifier_strategy: {
                                              stability: "observation-exact";
                                              strategy: "semantic-content-sha256";
                                          };
                                          label: string
                                          | null;
                                          observation_id: string;
                                          properties: Record<string, JSONType>;
                                      }[];
                                  };
                              }
                              -
                              role: {
                                  identity:
                                      | {
                                          sha256: string;
                                          stability: "global-exact";
                                          strategy: "content-digest";
                                      }
                                      | {
                                          original_source: string;
                                          source_map_sha256: string;
                                          source_sha256: string
                                          | null;
                                          stability: "source-map-exact";
                                          strategy: "source-map-original";
                                      }
                                      | {
                                          artifact_sha256: string;
                                          path: string;
                                          stability: "artifact-version";
                                          strategy: "canonical-path";
                                      }
                                      | {
                                          algorithm: string;
                                          basis: (
                                              | "imports"
                                              | "exports"
                                              | "syntax-tree"
                                              | "control-flow"
                                              | "literals"
                                              | "api-usage"
                                          )[];
                                          fingerprint_sha256: string;
                                          stability: "cross-version-inference";
                                          strategy: "structural-fingerprint";
                                      }
                                      | {
                                          artifact_sha256: string;
                                          key: string;
                                          namespace: string;
                                          stability: "artifact-version";
                                          strategy: "artifact-local-key";
                                      }
                                      | {
                                          capture_sha256: string;
                                          runtime_key: string;
                                          stability: "capture-only";
                                          strategy: "runtime-instance";
                                      }
                                      | {
                                          observation_sha256: string;
                                          scope: string;
                                          stability: "observation-only";
                                          strategy: "observation-fingerprint";
                                      };
                                  kind: | "unknown"
                                  | "target"
                                  | "native-addon"
                                  | "source-map"
                                  | "artifact"
                                  | "package"
                                  | "storage"
                                  | "installer"
                                  | "asar-entry"
                                  | "electron-main"
                                  | "electron-preload"
                                  | "electron-renderer"
                                  | "electron-utility"
                                  | "javascript-asset"
                                  | "javascript-chunk"
                                  | "javascript-module"
                                  | "source-module"
                                  | "browser-window"
                                  | "frame"
                                  | "context-bridge-api"
                                  | "ipc-channel"
                                  | "ipc-handler"
                                  | "worker"
                                  | "service-worker"
                                  | "endpoint"
                                  | "native-export"
                                  | "runtime-script-instance";
                                  node_id: string;
                                  observations: {
                                      evidence: {
                                          artifact: | { artifact_id: string; available: true; sha256: string }
                                          | {
                                              available: false;
                                              detail: string;
                                              reason:
                                                  | "unknown"
                                                  | "truncated"
                                                  | "unresolved"
                                                  | "not-applicable"
                                                  | "not-observed"
                                                  | "not-approved"
                                                  | "provider-unavailable";
                                          };
                                          authority: | "unknown"
                                          | "controlled-replay"
                                          | "historical-reference"
                                          | "artifact-bytes"
                                          | "ast-static-analysis"
                                          | "static-relationship-inference"
                                          | "passive-cdp-runtime"
                                          | "cross-layer-reconciliation"
                                          | "native-analysis-provider"
                                          | "user-assertion";
                                          confidence: "unknown"
                                          | "exact"
                                          | "low"
                                          | "medium"
                                          | "high";
                                          coverage: {
                                              limits: {
                                                  name: string;
                                                  unit:
                                                      | "other"
                                                      | "items"
                                                      | "bytes"
                                                      | "depth"
                                                      | "milliseconds"
                                                      | "characters"
                                                      | "instructions";
                                                  value: number;
                                              }[];
                                              omitted_count: number
                                              | null;
                                              status: "unknown" | "unavailable" | "complete" | "partial";
                                              truncated: boolean;
                                          };
                                          evidence_ids: string[];
                                          extractor: {
                                              executable_sha256: string
                                              | null;
                                              name: string;
                                              operation: string;
                                              version: string;
                                          };
                                          limitations: string[];
                                          location: | {
                                              available: false;
                                              detail: string;
                                              reason: | "unknown"
                                              | "truncated"
                                              | "unresolved"
                                              | "not-applicable"
                                              | "not-observed"
                                              | "not-approved"
                                              | "provider-unavailable";
                                          }
                                          | {
                                              available: true;
                                              value: | {
                                                  end: { column: number; line: number };
                                                  kind: "source-range";
                                                  source: string;
                                                  start: { column: number; line: number };
                                              }
                                              | { end: number; kind: "file-offset-range"; start: number }
                                              | { kind: "artifact-path"; path: string }
                                              | { kind: "url"; url: string }
                                              | {
                                                  capture_sha256: string;
                                                  frame_key: string | null;
                                                  kind: "runtime";
                                                  script_key: string | null;
                                                  target_key: string;
                                              }
                                              | { address: string; kind: "native-address"; symbol: string
                                              | null }
                                              | { export_path: string; kind: "package-export"; package_name: string };
                                          };
                                          state: "unknown"
                                          | "observed"
                                          | "inferred"
                                          | "unavailable";
                                      };
                                      identifier_strategy: {
                                          stability: "observation-exact";
                                          strategy: "semantic-content-sha256";
                                      };
                                      label: string
                                      | null;
                                      observation_id: string;
                                      properties: Record<string, JSONType>;
                                  }[];
                              }
                              diff --git a/docs/api/interfaces/application_JavaScriptArtifactGraphContext.UnavailableParseInput.html b/docs/api/interfaces/application_JavaScriptArtifactGraphContext.UnavailableParseInput.html index 188448b2a..3f0e26569 100644 --- a/docs/api/interfaces/application_JavaScriptArtifactGraphContext.UnavailableParseInput.html +++ b/docs/api/interfaces/application_JavaScriptArtifactGraphContext.UnavailableParseInput.html @@ -14,7 +14,7 @@

                              Explicit package, JavaScript, or source-map parse gap.

                              -
                              interface UnavailableParseInput {
                                  asset: {
                                      identity:
                                          | {
                                              sha256: string;
                                              stability: "global-exact";
                                              strategy: "content-digest";
                                          }
                                          | {
                                              original_source: string;
                                              source_map_sha256: string;
                                              source_sha256: string
                                              | null;
                                              stability: "source-map-exact";
                                              strategy: "source-map-original";
                                          }
                                          | {
                                              artifact_sha256: string;
                                              path: string;
                                              stability: "artifact-version";
                                              strategy: "canonical-path";
                                          }
                                          | {
                                              algorithm: string;
                                              basis: (
                                                  | "imports"
                                                  | "exports"
                                                  | "syntax-tree"
                                                  | "control-flow"
                                                  | "literals"
                                                  | "api-usage"
                                              )[];
                                              fingerprint_sha256: string;
                                              stability: "cross-version-inference";
                                              strategy: "structural-fingerprint";
                                          }
                                          | {
                                              artifact_sha256: string;
                                              key: string;
                                              namespace: string;
                                              stability: "artifact-version";
                                              strategy: "artifact-local-key";
                                          }
                                          | {
                                              capture_sha256: string;
                                              runtime_key: string;
                                              stability: "capture-only";
                                              strategy: "runtime-instance";
                                          }
                                          | {
                                              observation_sha256: string;
                                              scope: string;
                                              stability: "observation-only";
                                              strategy: "observation-fingerprint";
                                          };
                                      kind: | "unknown"
                                      | "target"
                                      | "native-addon"
                                      | "source-map"
                                      | "artifact"
                                      | "package"
                                      | "storage"
                                      | "installer"
                                      | "asar-entry"
                                      | "electron-main"
                                      | "electron-preload"
                                      | "electron-renderer"
                                      | "electron-utility"
                                      | "javascript-asset"
                                      | "javascript-chunk"
                                      | "javascript-module"
                                      | "source-module"
                                      | "browser-window"
                                      | "frame"
                                      | "context-bridge-api"
                                      | "ipc-channel"
                                      | "ipc-handler"
                                      | "worker"
                                      | "service-worker"
                                      | "endpoint"
                                      | "native-export"
                                      | "runtime-script-instance";
                                      node_id: string;
                                      observations: {
                                          evidence: {
                                              artifact: | { artifact_id: string; available: true; sha256: string }
                                              | {
                                                  available: false;
                                                  detail: string;
                                                  reason:
                                                      | "unknown"
                                                      | "truncated"
                                                      | "unresolved"
                                                      | "not-applicable"
                                                      | "not-observed"
                                                      | "not-approved"
                                                      | "provider-unavailable";
                                              };
                                              authority: | "unknown"
                                              | "controlled-replay"
                                              | "historical-reference"
                                              | "artifact-bytes"
                                              | "ast-static-analysis"
                                              | "static-relationship-inference"
                                              | "passive-cdp-runtime"
                                              | "cross-layer-reconciliation"
                                              | "native-analysis-provider"
                                              | "user-assertion";
                                              confidence: "unknown"
                                              | "exact"
                                              | "low"
                                              | "medium"
                                              | "high";
                                              coverage: {
                                                  limits: {
                                                      name: string;
                                                      unit:
                                                          | "other"
                                                          | "items"
                                                          | "bytes"
                                                          | "depth"
                                                          | "milliseconds"
                                                          | "characters"
                                                          | "instructions";
                                                      value: number;
                                                  }[];
                                                  omitted_count: number
                                                  | null;
                                                  status: "unknown" | "unavailable" | "complete" | "partial";
                                                  truncated: boolean;
                                              };
                                              evidence_ids: string[];
                                              extractor: {
                                                  executable_sha256: string
                                                  | null;
                                                  name: string;
                                                  operation: string;
                                                  version: string;
                                              };
                                              limitations: string[];
                                              location: | {
                                                  available: false;
                                                  detail: string;
                                                  reason: | "unknown"
                                                  | "truncated"
                                                  | "unresolved"
                                                  | "not-applicable"
                                                  | "not-observed"
                                                  | "not-approved"
                                                  | "provider-unavailable";
                                              }
                                              | {
                                                  available: true;
                                                  value: | {
                                                      end: { column: number; line: number };
                                                      kind: "source-range";
                                                      source: string;
                                                      start: { column: number; line: number };
                                                  }
                                                  | { end: number; kind: "file-offset-range"; start: number }
                                                  | { kind: "artifact-path"; path: string }
                                                  | { kind: "url"; url: string }
                                                  | {
                                                      capture_sha256: string;
                                                      frame_key: string | null;
                                                      kind: "runtime";
                                                      script_key: string | null;
                                                      target_key: string;
                                                  }
                                                  | { address: string; kind: "native-address"; symbol: string
                                                  | null }
                                                  | { export_path: string; kind: "package-export"; package_name: string };
                                              };
                                              state: "unknown"
                                              | "observed"
                                              | "inferred"
                                              | "unavailable";
                                          };
                                          identifier_strategy: {
                                              stability: "observation-exact";
                                              strategy: "semantic-content-sha256";
                                          };
                                          label: string
                                          | null;
                                          observation_id: string;
                                          properties: Record<string, JSONType>;
                                      }[];
                                  };
                                  file: JavaScriptArtifactFile;
                                  limitation: string;
                                  operation: string;
                              }
                              -
                              interface SetupHost {
                                  nodeVersion: string;
                                  platform: Platform;
                                  clientNeedsConfigure(
                                      client: SetupClient,
                                      providerEnvironment: SetupProviderEnvironment,
                                      command: readonly string[],
                                  ): Promise<boolean>;
                                  configureClient(
                                      client: SetupClient,
                                      providerEnvironment: SetupProviderEnvironment,
                                      command: readonly string[],
                                  ): Promise<ClientConfigurationResult>;
                                  detectedClients(): Promise<readonly SetupClient[]>;
                                  doctor(): Promise<
                                      {
                                          checks: readonly DoctorCheck[];
                                          healthy: boolean;
                                          hopperPath?: string;
                                          identity?: {
                                              catalog: {
                                                  counts: {
                                                      cli_commands: number;
                                                      mcp_prompts: number;
                                                      mcp_resource_templates: 7;
                                                      mcp_resources: 2;
                                                      mcp_tools: number;
                                                  };
                                                  digests: {
                                                      combined_sha256: string;
                                                      prompts_sha256: string;
                                                      resources_sha256: string;
                                                      tools_sha256: string;
                                                  };
                                                  tools: {
                                                      annotations: {
                                                          destructive: boolean;
                                                          idempotent: boolean;
                                                          open_world: boolean;
                                                          read_only: boolean;
                                                      };
                                                      name: | "open_binary"
                                                      | "list_browser_targets"
                                                      | "inspect_web_page"
                                                      | "analyze_web_bundle"
                                                      | "observe_web_session"
                                                      | "discover_webmcp_tools"
                                                      | "compare_web_captures"
                                                      | "capture_web_screenshot"
                                                      | "compare_web_screenshots"
                                                      | "list_electron_targets"
                                                      | "inspect_electron_page"
                                                      | "inventory_artifact"
                                                      | "extract_artifact"
                                                      | "analyze_javascript_application"
                                                      | "swift_classes"
                                                      | "get_objc_classes"
                                                      | "get_objc_protocols"
                                                      | "batch_decompile"
                                                      | "get_call_graph"
                                                      | "analyze_swift_types"
                                                      | "find_xrefs_to_name"
                                                      | "binary_overview"
                                                      | "analyze_function"
                                                      | "trace_feature"
                                                      | "comment"
                                                      | "compare_artifacts"
                                                      | "find_changed_behavior"
                                                      | "compare_process_captures"
                                                      | "compare_functions"
                                                      | "capture_process_scenario"
                                                      | "address_name"
                                                      | "current_address"
                                                      | "current_procedure"
                                                      | "current_document"
                                                      | "goto_address"
                                                      | "inline_comment"
                                                      | "list_bookmarks"
                                                      | "list_documents"
                                                      | "list_names"
                                                      | "list_procedures"
                                                      | "list_segments"
                                                      | "list_strings"
                                                      | "next_address"
                                                      | "prev_address"
                                                      | "procedure_address"
                                                      | "procedure_assembly"
                                                      | "procedure_callees"
                                                      | "procedure_callers"
                                                      | "procedure_info"
                                                      | "procedure_references"
                                                      | "procedure_pseudo_code"
                                                      | "resolve_containing_procedure"
                                                      | "search_procedures"
                                                      | "search_strings"
                                                      | "set_address_name"
                                                      | "set_addresses_names"
                                                      | "set_bookmark"
                                                      | "set_comment"
                                                      | "set_current_document"
                                                      | "set_inline_comment"
                                                      | "unset_bookmark"
                                                      | "xrefs"
                                                      | "inspect_macho"
                                                      | "inspect_signature"
                                                      | "inspect_plist"
                                                      | "list_architectures"
                                                      | "demangle_swift"
                                                      | "close_binary"
                                                      | "binary_session"
                                                      | "export_evidence_bundle"
                                                      | "import_evidence_bundle"
                                                      | "compare_bundles"
                                                      | "build_call_path"
                                                      | "correlate_static_and_runtime"
                                                      | "verify_reconstruction"
                                                      | "list_unknowns"
                                                      | "record_unknown"
                                                      | "update_unknown"
                                                      | "verify_unknown_resolution"
                                                      | "reconcile_javascript_runtime";
                                                      surface: ToolKind;
                                                  }[];
                                              };
                                              cli_package_version: string;
                                              expected_skill_version: string;
                                              installations: {
                                                  paths: readonly string[];
                                                  state: "unknown"
                                                  | "single"
                                                  | "multiple";
                                              };
                                              live_server: { remediation: string; state: "unknown" };
                                              registrations: readonly ClientRegistrationStatus[];
                                              sdk: {
                                                  client_test: "2.0.0-beta.4";
                                                  core: "2.0.0-beta.4";
                                                  server: "2.0.0-beta.4";
                                              };
                                              skill: {
                                                  installed_version: string
                                                  | null;
                                                  remediation: string | null;
                                                  state: "unknown" | "aligned" | "stale";
                                              };
                                          };
                                          providerInspections?: readonly DoctorProviderInspection[];
                                      },
                                  >;
                                  hopperPath(): Promise<string | undefined>;
                                  installHopper(replaceExisting: boolean): Promise<SetupHopperInstallResult>;
                                  installSkill(): Promise<"failed" | "unchanged" | "installed">;
                                  linuxDistribution(): Promise<LinuxDistribution | undefined>;
                                  macosVersion(): Promise<string | undefined>;
                                  providerEnvironment?(): Promise<Readonly<Record<string, string>>>;
                                  skillNeedsInstall(): Promise<boolean>;
                              }
                              -
                              interface SetupResult {
                                  appliedActions: readonly string[];
                                  clients: Readonly<Record<string, ClientConfigurationResult>>;
                                  code?: SetupFailureCode;
                                  doctor: {
                                      checks: readonly DoctorCheck[];
                                      healthy: boolean;
                                      hopperPath?: string;
                                      identity?: {
                                          catalog: {
                                              counts: {
                                                  cli_commands: number;
                                                  mcp_prompts: number;
                                                  mcp_resource_templates: 7;
                                                  mcp_resources: 2;
                                                  mcp_tools: number;
                                              };
                                              digests: {
                                                  combined_sha256: string;
                                                  prompts_sha256: string;
                                                  resources_sha256: string;
                                                  tools_sha256: string;
                                              };
                                              tools: {
                                                  annotations: {
                                                      destructive: boolean;
                                                      idempotent: boolean;
                                                      open_world: boolean;
                                                      read_only: boolean;
                                                  };
                                                  name: | "open_binary"
                                                  | "list_browser_targets"
                                                  | "inspect_web_page"
                                                  | "analyze_web_bundle"
                                                  | "observe_web_session"
                                                  | "discover_webmcp_tools"
                                                  | "compare_web_captures"
                                                  | "capture_web_screenshot"
                                                  | "compare_web_screenshots"
                                                  | "list_electron_targets"
                                                  | "inspect_electron_page"
                                                  | "inventory_artifact"
                                                  | "extract_artifact"
                                                  | "analyze_javascript_application"
                                                  | "swift_classes"
                                                  | "get_objc_classes"
                                                  | "get_objc_protocols"
                                                  | "batch_decompile"
                                                  | "get_call_graph"
                                                  | "analyze_swift_types"
                                                  | "find_xrefs_to_name"
                                                  | "binary_overview"
                                                  | "analyze_function"
                                                  | "trace_feature"
                                                  | "comment"
                                                  | "compare_artifacts"
                                                  | "find_changed_behavior"
                                                  | "compare_process_captures"
                                                  | "compare_functions"
                                                  | "capture_process_scenario"
                                                  | "address_name"
                                                  | "current_address"
                                                  | "current_procedure"
                                                  | "current_document"
                                                  | "goto_address"
                                                  | "inline_comment"
                                                  | "list_bookmarks"
                                                  | "list_documents"
                                                  | "list_names"
                                                  | "list_procedures"
                                                  | "list_segments"
                                                  | "list_strings"
                                                  | "next_address"
                                                  | "prev_address"
                                                  | "procedure_address"
                                                  | "procedure_assembly"
                                                  | "procedure_callees"
                                                  | "procedure_callers"
                                                  | "procedure_info"
                                                  | "procedure_references"
                                                  | "procedure_pseudo_code"
                                                  | "resolve_containing_procedure"
                                                  | "search_procedures"
                                                  | "search_strings"
                                                  | "set_address_name"
                                                  | "set_addresses_names"
                                                  | "set_bookmark"
                                                  | "set_comment"
                                                  | "set_current_document"
                                                  | "set_inline_comment"
                                                  | "unset_bookmark"
                                                  | "xrefs"
                                                  | "inspect_macho"
                                                  | "inspect_signature"
                                                  | "inspect_plist"
                                                  | "list_architectures"
                                                  | "demangle_swift"
                                                  | "close_binary"
                                                  | "binary_session"
                                                  | "export_evidence_bundle"
                                                  | "import_evidence_bundle"
                                                  | "compare_bundles"
                                                  | "build_call_path"
                                                  | "correlate_static_and_runtime"
                                                  | "verify_reconstruction"
                                                  | "list_unknowns"
                                                  | "record_unknown"
                                                  | "update_unknown"
                                                  | "verify_unknown_resolution"
                                                  | "reconcile_javascript_runtime";
                                                  surface: ToolKind;
                                              }[];
                                          };
                                          cli_package_version: string;
                                          expected_skill_version: string;
                                          installations: {
                                              paths: readonly string[];
                                              state: "unknown"
                                              | "single"
                                              | "multiple";
                                          };
                                          live_server: { remediation: string; state: "unknown" };
                                          registrations: readonly ClientRegistrationStatus[];
                                          sdk: {
                                              client_test: "2.0.0-beta.4";
                                              core: "2.0.0-beta.4";
                                              server: "2.0.0-beta.4";
                                          };
                                          skill: {
                                              installed_version: string
                                              | null;
                                              remediation: string | null;
                                              state: "unknown" | "aligned" | "stale";
                                          };
                                      };
                                      providerInspections?: readonly DoctorProviderInspection[];
                                  };
                                  plannedActions: readonly SetupAction[];
                                  remediation?: string;
                                  status: "ready"
                                  | "planned"
                                  | "needs_confirmation"
                                  | "needs_human";
                              }
                              -
                              doctor: {
                                  checks: readonly DoctorCheck[];
                                  healthy: boolean;
                                  hopperPath?: string;
                                  identity?: {
                                      catalog: {
                                          counts: {
                                              cli_commands: number;
                                              mcp_prompts: number;
                                              mcp_resource_templates: 7;
                                              mcp_resources: 2;
                                              mcp_tools: number;
                                          };
                                          digests: {
                                              combined_sha256: string;
                                              prompts_sha256: string;
                                              resources_sha256: string;
                                              tools_sha256: string;
                                          };
                                          tools: {
                                              annotations: {
                                                  destructive: boolean;
                                                  idempotent: boolean;
                                                  open_world: boolean;
                                                  read_only: boolean;
                                              };
                                              name: | "open_binary"
                                              | "list_browser_targets"
                                              | "inspect_web_page"
                                              | "analyze_web_bundle"
                                              | "observe_web_session"
                                              | "discover_webmcp_tools"
                                              | "compare_web_captures"
                                              | "capture_web_screenshot"
                                              | "compare_web_screenshots"
                                              | "list_electron_targets"
                                              | "inspect_electron_page"
                                              | "inventory_artifact"
                                              | "extract_artifact"
                                              | "analyze_javascript_application"
                                              | "swift_classes"
                                              | "get_objc_classes"
                                              | "get_objc_protocols"
                                              | "batch_decompile"
                                              | "get_call_graph"
                                              | "analyze_swift_types"
                                              | "find_xrefs_to_name"
                                              | "binary_overview"
                                              | "analyze_function"
                                              | "trace_feature"
                                              | "comment"
                                              | "compare_artifacts"
                                              | "find_changed_behavior"
                                              | "compare_process_captures"
                                              | "compare_functions"
                                              | "capture_process_scenario"
                                              | "address_name"
                                              | "current_address"
                                              | "current_procedure"
                                              | "current_document"
                                              | "goto_address"
                                              | "inline_comment"
                                              | "list_bookmarks"
                                              | "list_documents"
                                              | "list_names"
                                              | "list_procedures"
                                              | "list_segments"
                                              | "list_strings"
                                              | "next_address"
                                              | "prev_address"
                                              | "procedure_address"
                                              | "procedure_assembly"
                                              | "procedure_callees"
                                              | "procedure_callers"
                                              | "procedure_info"
                                              | "procedure_references"
                                              | "procedure_pseudo_code"
                                              | "resolve_containing_procedure"
                                              | "search_procedures"
                                              | "search_strings"
                                              | "set_address_name"
                                              | "set_addresses_names"
                                              | "set_bookmark"
                                              | "set_comment"
                                              | "set_current_document"
                                              | "set_inline_comment"
                                              | "unset_bookmark"
                                              | "xrefs"
                                              | "inspect_macho"
                                              | "inspect_signature"
                                              | "inspect_plist"
                                              | "list_architectures"
                                              | "demangle_swift"
                                              | "close_binary"
                                              | "binary_session"
                                              | "export_evidence_bundle"
                                              | "import_evidence_bundle"
                                              | "compare_bundles"
                                              | "build_call_path"
                                              | "correlate_static_and_runtime"
                                              | "verify_reconstruction"
                                              | "list_unknowns"
                                              | "record_unknown"
                                              | "update_unknown"
                                              | "verify_unknown_resolution"
                                              | "reconcile_javascript_runtime";
                                              surface: ToolKind;
                                          }[];
                                      };
                                      cli_package_version: string;
                                      expected_skill_version: string;
                                      installations: {
                                          paths: readonly string[];
                                          state: "unknown"
                                          | "single"
                                          | "multiple";
                                      };
                                      live_server: { remediation: string; state: "unknown" };
                                      registrations: readonly ClientRegistrationStatus[];
                                      sdk: {
                                          client_test: "2.0.0-beta.4";
                                          core: "2.0.0-beta.4";
                                          server: "2.0.0-beta.4";
                                      };
                                      skill: {
                                          installed_version: string
                                          | null;
                                          remediation: string | null;
                                          state: "unknown" | "aligned" | "stale";
                                      };
                                  };
                                  providerInspections?: readonly DoctorProviderInspection[];
                              }
                              diff --git a/docs/api/interfaces/contracts_toolContractTypes.ToolContract.html b/docs/api/interfaces/contracts_toolContractTypes.ToolContract.html index 0ce658174..8239b1c2d 100644 --- a/docs/api/interfaces/contracts_toolContractTypes.ToolContract.html +++ b/docs/api/interfaces/contracts_toolContractTypes.ToolContract.html @@ -20,7 +20,7 @@
                              +
                            • Defined in src/contracts/toolContractTypes.ts:31
                            • @@ -43,37 +43,37 @@
                              annotations: ToolAnnotations
                              +
                            • Defined in src/contracts/toolContractTypes.ts:37
                            • description: string
                              +
                            • Defined in src/contracts/toolContractTypes.ts:33
                            • examples: readonly ToolExample[]
                              +
                            • Defined in src/contracts/toolContractTypes.ts:38
                            • inputSchema: ZodObject
                              +
                            • Defined in src/contracts/toolContractTypes.ts:35
                            • kind: ToolKind
                              +
                            • Defined in src/contracts/toolContractTypes.ts:34
                            • name: Name
                              +
                            • Defined in src/contracts/toolContractTypes.ts:32
                            • outputSchema: ZodObject
                              +
                            • Defined in src/contracts/toolContractTypes.ts:36
                            • -
                              interface ParsedStaticLayer {
                                  evidence:
                                      | {
                                          analysis_profile: {
                                              digest: string;
                                              parameters: Record<string, JSONType>;
                                              provider: { id: string; name: string; version: string };
                                              provider_profile_schema_version: number;
                                              schema_version: 1;
                                          };
                                          authority: | "shipped-artifact"
                                          | "controlled-replay"
                                          | "historical-reference"
                                          | "external-service"
                                          | "analyst-inference";
                                          confidence: "observed"
                                          | "derived"
                                          | "inferred";
                                          environment:
                                              | {
                                                  architecture: string;
                                                  id: string;
                                                  isolation: "process"
                                                  | "none"
                                                  | "container"
                                                  | "virtual-machine";
                                                  platform: string;
                                              }
                                              | null;
                                          evidence_id: string;
                                          evidence_links: string[];
                                          limitations: string[];
                                          locations: (
                                              | { address: string; kind: "address" }
                                              | { end: string; kind: "address-range"; start: string }
                                              | { kind: "artifact-path"; path: string }
                                              | { kind: "file-offset"; offset: number }
                                              | { end: number; kind: "file-offset-range"; start: number }
                                          )[];
                                          normalized_result: JSONType;
                                          operation: string;
                                          parameters: Record<string, JSONType>;
                                          predicate_type: string;
                                          provider: { id: string; name: string; version: string | null };
                                          raw_result: JSONType;
                                          schema_version: 2;
                                          subject:
                                              | {
                                                  architecture: "x86"
                                                  | "x86_64"
                                                  | "arm"
                                                  | "arm64"
                                                  | null;
                                                  digest: { sha256: string };
                                                  format:
                                                      | "unknown"
                                                      | "file"
                                                      | "directory"
                                                      | "javascript"
                                                      | "source-map"
                                                      | "plist"
                                                      | "entitlements"
                                                      | "dmg"
                                                      | "zip"
                                                      | "pkg"
                                                      | "asar"
                                                      | "javascript-bundle"
                                                      | "mach-o-universal"
                                                      | "mach-o"
                                                      | "elf"
                                                      | "pe"
                                                      | "hopper"
                                                      | "analysis-database"
                                                      | "ipa"
                                                      | "apk";
                                                  local_path: string;
                                                  name: string;
                                              }
                                              | null;
                                      }
                                      | {
                                          authority: | "shipped-artifact"
                                          | "controlled-replay"
                                          | "historical-reference"
                                          | "external-service"
                                          | "analyst-inference";
                                          confidence: "observed"
                                          | "derived"
                                          | "inferred";
                                          environment:
                                              | {
                                                  architecture: string;
                                                  id: string;
                                                  isolation: "process"
                                                  | "none"
                                                  | "container"
                                                  | "virtual-machine";
                                                  platform: string;
                                              }
                                              | null;
                                          evidence_id: string;
                                          evidence_links: string[];
                                          limitations: string[];
                                          locations: (
                                              | { address: string; kind: "address" }
                                              | { end: string; kind: "address-range"; start: string }
                                              | { kind: "artifact-path"; path: string }
                                              | { kind: "file-offset"; offset: number }
                                              | { end: number; kind: "file-offset-range"; start: number }
                                          )[];
                                          normalized_result: JSONType;
                                          operation: string;
                                          parameters: Record<string, JSONType>;
                                          predicate_type: string;
                                          provider: { id: string; name: string; version: string | null };
                                          raw_result: JSONType;
                                          schema_version: 2;
                                          subject:
                                              | {
                                                  architecture: "x86"
                                                  | "x86_64"
                                                  | "arm"
                                                  | "arm64"
                                                  | null;
                                                  digest: { sha256: string };
                                                  format:
                                                      | "unknown"
                                                      | "file"
                                                      | "directory"
                                                      | "javascript"
                                                      | "source-map"
                                                      | "plist"
                                                      | "entitlements"
                                                      | "dmg"
                                                      | "zip"
                                                      | "pkg"
                                                      | "asar"
                                                      | "javascript-bundle"
                                                      | "mach-o-universal"
                                                      | "mach-o"
                                                      | "elf"
                                                      | "pe"
                                                      | "hopper"
                                                      | "analysis-database"
                                                      | "ipa"
                                                      | "apk";
                                                  local_path: string;
                                                  name: string;
                                              }
                                              | null;
                                      };
                                  graph: {
                                      coverage: {
                                          limits: {
                                              name: string;
                                              unit: | "other"
                                              | "items"
                                              | "bytes"
                                              | "depth"
                                              | "milliseconds"
                                              | "characters"
                                              | "instructions";
                                              value: number;
                                          }[];
                                          omitted_count: number
                                          | null;
                                          status: "unknown" | "unavailable" | "complete" | "partial";
                                          truncated: boolean;
                                      };
                                      edges: {
                                          edge_id: string;
                                          evidence: {
                                              artifact: | { artifact_id: string; available: true; sha256: string }
                                              | {
                                                  available: false;
                                                  detail: string;
                                                  reason:
                                                      | "unknown"
                                                      | "truncated"
                                                      | "unresolved"
                                                      | "not-applicable"
                                                      | "not-observed"
                                                      | "not-approved"
                                                      | "provider-unavailable";
                                              };
                                              authority: | "unknown"
                                              | "controlled-replay"
                                              | "historical-reference"
                                              | "artifact-bytes"
                                              | "ast-static-analysis"
                                              | "static-relationship-inference"
                                              | "passive-cdp-runtime"
                                              | "cross-layer-reconciliation"
                                              | "native-analysis-provider"
                                              | "user-assertion";
                                              confidence: "unknown"
                                              | "exact"
                                              | "low"
                                              | "medium"
                                              | "high";
                                              coverage: {
                                                  limits: {
                                                      name: string;
                                                      unit:
                                                          | "other"
                                                          | "items"
                                                          | "bytes"
                                                          | "depth"
                                                          | "milliseconds"
                                                          | "characters"
                                                          | "instructions";
                                                      value: number;
                                                  }[];
                                                  omitted_count: number
                                                  | null;
                                                  status: "unknown" | "unavailable" | "complete" | "partial";
                                                  truncated: boolean;
                                              };
                                              evidence_ids: string[];
                                              extractor: {
                                                  executable_sha256: string
                                                  | null;
                                                  name: string;
                                                  operation: string;
                                                  version: string;
                                              };
                                              limitations: string[];
                                              location: | {
                                                  available: false;
                                                  detail: string;
                                                  reason: | "unknown"
                                                  | "truncated"
                                                  | "unresolved"
                                                  | "not-applicable"
                                                  | "not-observed"
                                                  | "not-approved"
                                                  | "provider-unavailable";
                                              }
                                              | {
                                                  available: true;
                                                  value: | {
                                                      end: { column: number; line: number };
                                                      kind: "source-range";
                                                      source: string;
                                                      start: { column: number; line: number };
                                                  }
                                                  | { end: number; kind: "file-offset-range"; start: number }
                                                  | { kind: "artifact-path"; path: string }
                                                  | { kind: "url"; url: string }
                                                  | {
                                                      capture_sha256: string;
                                                      frame_key: string | null;
                                                      kind: "runtime";
                                                      script_key: string | null;
                                                      target_key: string;
                                                  }
                                                  | { address: string; kind: "native-address"; symbol: string
                                                  | null }
                                                  | { export_path: string; kind: "package-export"; package_name: string };
                                              };
                                              state: "unknown"
                                              | "observed"
                                              | "inferred"
                                              | "unavailable";
                                          };
                                          identifier_strategy: {
                                              stability: "relationship-exact";
                                              strategy: "semantic-content-sha256";
                                          };
                                          properties: Record<string, JSONType>;
                                          relation:
                                              | "contains"
                                              | "loads"
                                              | "calls"
                                              | "imports"
                                              | "maps_to"
                                              | "exposes"
                                              | "sends"
                                              | "invokes"
                                              | "handles"
                                              | "persists_to"
                                              | "observed_as"
                                              | "changed_from";
                                          source_node_id: string;
                                          target_node_id: string;
                                      }[];
                                      graph_id: string;
                                      limitations: string[];
                                      nodes: {
                                          identity: | {
                                              sha256: string;
                                              stability: "global-exact";
                                              strategy: "content-digest";
                                          }
                                          | {
                                              original_source: string;
                                              source_map_sha256: string;
                                              source_sha256: string
                                              | null;
                                              stability: "source-map-exact";
                                              strategy: "source-map-original";
                                          }
                                          | {
                                              artifact_sha256: string;
                                              path: string;
                                              stability: "artifact-version";
                                              strategy: "canonical-path";
                                          }
                                          | {
                                              algorithm: string;
                                              basis: (
                                                  | "imports"
                                                  | "exports"
                                                  | "syntax-tree"
                                                  | "control-flow"
                                                  | "literals"
                                                  | "api-usage"
                                              )[];
                                              fingerprint_sha256: string;
                                              stability: "cross-version-inference";
                                              strategy: "structural-fingerprint";
                                          }
                                          | {
                                              artifact_sha256: string;
                                              key: string;
                                              namespace: string;
                                              stability: "artifact-version";
                                              strategy: "artifact-local-key";
                                          }
                                          | {
                                              capture_sha256: string;
                                              runtime_key: string;
                                              stability: "capture-only";
                                              strategy: "runtime-instance";
                                          }
                                          | {
                                              observation_sha256: string;
                                              scope: string;
                                              stability: "observation-only";
                                              strategy: "observation-fingerprint";
                                          };
                                          kind: | "unknown"
                                          | "target"
                                          | "native-addon"
                                          | "source-map"
                                          | "artifact"
                                          | "package"
                                          | "storage"
                                          | "installer"
                                          | "asar-entry"
                                          | "electron-main"
                                          | "electron-preload"
                                          | "electron-renderer"
                                          | "electron-utility"
                                          | "javascript-asset"
                                          | "javascript-chunk"
                                          | "javascript-module"
                                          | "source-module"
                                          | "browser-window"
                                          | "frame"
                                          | "context-bridge-api"
                                          | "ipc-channel"
                                          | "ipc-handler"
                                          | "worker"
                                          | "service-worker"
                                          | "endpoint"
                                          | "native-export"
                                          | "runtime-script-instance";
                                          node_id: string;
                                          observations: {
                                              evidence: {
                                                  artifact: | { artifact_id: string; available: true; sha256: string }
                                                  | {
                                                      available: false;
                                                      detail: string;
                                                      reason:
                                                          | "unknown"
                                                          | "truncated"
                                                          | "unresolved"
                                                          | "not-applicable"
                                                          | "not-observed"
                                                          | "not-approved"
                                                          | "provider-unavailable";
                                                  };
                                                  authority: | "unknown"
                                                  | "controlled-replay"
                                                  | "historical-reference"
                                                  | "artifact-bytes"
                                                  | "ast-static-analysis"
                                                  | "static-relationship-inference"
                                                  | "passive-cdp-runtime"
                                                  | "cross-layer-reconciliation"
                                                  | "native-analysis-provider"
                                                  | "user-assertion";
                                                  confidence: "unknown"
                                                  | "exact"
                                                  | "low"
                                                  | "medium"
                                                  | "high";
                                                  coverage: {
                                                      limits: {
                                                          name: string;
                                                          unit:
                                                              | "other"
                                                              | "items"
                                                              | "bytes"
                                                              | "depth"
                                                              | "milliseconds"
                                                              | "characters"
                                                              | "instructions";
                                                          value: number;
                                                      }[];
                                                      omitted_count: number
                                                      | null;
                                                      status: "unknown" | "unavailable" | "complete" | "partial";
                                                      truncated: boolean;
                                                  };
                                                  evidence_ids: string[];
                                                  extractor: {
                                                      executable_sha256: string
                                                      | null;
                                                      name: string;
                                                      operation: string;
                                                      version: string;
                                                  };
                                                  limitations: string[];
                                                  location: | {
                                                      available: false;
                                                      detail: string;
                                                      reason: | "unknown"
                                                      | "truncated"
                                                      | "unresolved"
                                                      | "not-applicable"
                                                      | "not-observed"
                                                      | "not-approved"
                                                      | "provider-unavailable";
                                                  }
                                                  | {
                                                      available: true;
                                                      value: | {
                                                          end: { column: ...; line: ... };
                                                          kind: "source-range";
                                                          source: string;
                                                          start: { column: ...; line: ... };
                                                      }
                                                      | { end: number; kind: "file-offset-range"; start: number }
                                                      | { kind: "artifact-path"; path: string }
                                                      | { kind: "url"; url: string }
                                                      | {
                                                          capture_sha256: string;
                                                          frame_key: (...) | (...);
                                                          kind: "runtime";
                                                          script_key: (...) | (...);
                                                          target_key: string;
                                                      }
                                                      | { address: string; kind: "native-address"; symbol: (...)
                                                      | (...) }
                                                      | {
                                                          export_path: string;
                                                          kind: "package-export";
                                                          package_name: string;
                                                      };
                                                  };
                                                  state: "unknown"
                                                  | "observed"
                                                  | "inferred"
                                                  | "unavailable";
                                              };
                                              identifier_strategy: {
                                                  stability: "observation-exact";
                                                  strategy: "semantic-content-sha256";
                                              };
                                              label: string
                                              | null;
                                              observation_id: string;
                                              properties: Record<string, JSONType>;
                                          }[];
                                      }[];
                                      root_node_ids: string[];
                                      schema: "JavaScriptApplicationGraph";
                                      schema_version: 1;
                                  };
                                  layerId: string;
                                  result: {
                                      format: "directory"
                                      | "asar";
                                      graph: {
                                          coverage: {
                                              limits: {
                                                  name: string;
                                                  unit:
                                                      | "other"
                                                      | "items"
                                                      | "bytes"
                                                      | "depth"
                                                      | "milliseconds"
                                                      | "characters"
                                                      | "instructions";
                                                  value: number;
                                              }[];
                                              omitted_count: number
                                              | null;
                                              status: "unknown" | "unavailable" | "complete" | "partial";
                                              truncated: boolean;
                                          };
                                          edges: {
                                              edge_id: string;
                                              evidence: {
                                                  artifact: | { artifact_id: string; available: true; sha256: string }
                                                  | {
                                                      available: false;
                                                      detail: string;
                                                      reason:
                                                          | "unknown"
                                                          | "truncated"
                                                          | "unresolved"
                                                          | "not-applicable"
                                                          | "not-observed"
                                                          | "not-approved"
                                                          | "provider-unavailable";
                                                  };
                                                  authority: | "unknown"
                                                  | "controlled-replay"
                                                  | "historical-reference"
                                                  | "artifact-bytes"
                                                  | "ast-static-analysis"
                                                  | "static-relationship-inference"
                                                  | "passive-cdp-runtime"
                                                  | "cross-layer-reconciliation"
                                                  | "native-analysis-provider"
                                                  | "user-assertion";
                                                  confidence: "unknown"
                                                  | "exact"
                                                  | "low"
                                                  | "medium"
                                                  | "high";
                                                  coverage: {
                                                      limits: {
                                                          name: string;
                                                          unit:
                                                              | "other"
                                                              | "items"
                                                              | "bytes"
                                                              | "depth"
                                                              | "milliseconds"
                                                              | "characters"
                                                              | "instructions";
                                                          value: number;
                                                      }[];
                                                      omitted_count: number
                                                      | null;
                                                      status: "unknown" | "unavailable" | "complete" | "partial";
                                                      truncated: boolean;
                                                  };
                                                  evidence_ids: string[];
                                                  extractor: {
                                                      executable_sha256: string
                                                      | null;
                                                      name: string;
                                                      operation: string;
                                                      version: string;
                                                  };
                                                  limitations: string[];
                                                  location: | {
                                                      available: false;
                                                      detail: string;
                                                      reason: | "unknown"
                                                      | "truncated"
                                                      | "unresolved"
                                                      | "not-applicable"
                                                      | "not-observed"
                                                      | "not-approved"
                                                      | "provider-unavailable";
                                                  }
                                                  | {
                                                      available: true;
                                                      value: | {
                                                          end: { column: number; line: number };
                                                          kind: "source-range";
                                                          source: string;
                                                          start: { column: number; line: number };
                                                      }
                                                      | { end: number; kind: "file-offset-range"; start: number }
                                                      | { kind: "artifact-path"; path: string }
                                                      | { kind: "url"; url: string }
                                                      | {
                                                          capture_sha256: string;
                                                          frame_key: string | null;
                                                          kind: "runtime";
                                                          script_key: string | null;
                                                          target_key: string;
                                                      }
                                                      | { address: string; kind: "native-address"; symbol: string
                                                      | null }
                                                      | {
                                                          export_path: string;
                                                          kind: "package-export";
                                                          package_name: string;
                                                      };
                                                  };
                                                  state: "unknown"
                                                  | "observed"
                                                  | "inferred"
                                                  | "unavailable";
                                              };
                                              identifier_strategy: {
                                                  stability: "relationship-exact";
                                                  strategy: "semantic-content-sha256";
                                              };
                                              properties: Record<string, JSONType>;
                                              relation:
                                                  | "contains"
                                                  | "loads"
                                                  | "calls"
                                                  | "imports"
                                                  | "maps_to"
                                                  | "exposes"
                                                  | "sends"
                                                  | "invokes"
                                                  | "handles"
                                                  | "persists_to"
                                                  | "observed_as"
                                                  | "changed_from";
                                              source_node_id: string;
                                              target_node_id: string;
                                          }[];
                                          graph_id: string;
                                          limitations: string[];
                                          nodes: {
                                              identity: | {
                                                  sha256: string;
                                                  stability: "global-exact";
                                                  strategy: "content-digest";
                                              }
                                              | {
                                                  original_source: string;
                                                  source_map_sha256: string;
                                                  source_sha256: string
                                                  | null;
                                                  stability: "source-map-exact";
                                                  strategy: "source-map-original";
                                              }
                                              | {
                                                  artifact_sha256: string;
                                                  path: string;
                                                  stability: "artifact-version";
                                                  strategy: "canonical-path";
                                              }
                                              | {
                                                  algorithm: string;
                                                  basis: (
                                                      | "imports"
                                                      | "exports"
                                                      | "syntax-tree"
                                                      | "control-flow"
                                                      | "literals"
                                                      | "api-usage"
                                                  )[];
                                                  fingerprint_sha256: string;
                                                  stability: "cross-version-inference";
                                                  strategy: "structural-fingerprint";
                                              }
                                              | {
                                                  artifact_sha256: string;
                                                  key: string;
                                                  namespace: string;
                                                  stability: "artifact-version";
                                                  strategy: "artifact-local-key";
                                              }
                                              | {
                                                  capture_sha256: string;
                                                  runtime_key: string;
                                                  stability: "capture-only";
                                                  strategy: "runtime-instance";
                                              }
                                              | {
                                                  observation_sha256: string;
                                                  scope: string;
                                                  stability: "observation-only";
                                                  strategy: "observation-fingerprint";
                                              };
                                              kind: | "unknown"
                                              | "target"
                                              | "native-addon"
                                              | "source-map"
                                              | "artifact"
                                              | "package"
                                              | "storage"
                                              | "installer"
                                              | "asar-entry"
                                              | "electron-main"
                                              | "electron-preload"
                                              | "electron-renderer"
                                              | "electron-utility"
                                              | "javascript-asset"
                                              | "javascript-chunk"
                                              | "javascript-module"
                                              | "source-module"
                                              | "browser-window"
                                              | "frame"
                                              | "context-bridge-api"
                                              | "ipc-channel"
                                              | "ipc-handler"
                                              | "worker"
                                              | "service-worker"
                                              | "endpoint"
                                              | "native-export"
                                              | "runtime-script-instance";
                                              node_id: string;
                                              observations: {
                                                  evidence: {
                                                      artifact: | {
                                                          artifact_id: string;
                                                          available: true;
                                                          sha256: string;
                                                      }
                                                      | {
                                                          available: false;
                                                          detail: string;
                                                          reason: | "unknown"
                                                          | "truncated"
                                                          | "unresolved"
                                                          | "not-applicable"
                                                          | "not-observed"
                                                          | "not-approved"
                                                          | "provider-unavailable";
                                                      };
                                                      authority: | "unknown"
                                                      | "controlled-replay"
                                                      | "historical-reference"
                                                      | "artifact-bytes"
                                                      | "ast-static-analysis"
                                                      | "static-relationship-inference"
                                                      | "passive-cdp-runtime"
                                                      | "cross-layer-reconciliation"
                                                      | "native-analysis-provider"
                                                      | "user-assertion";
                                                      confidence: "unknown"
                                                      | "exact"
                                                      | "low"
                                                      | "medium"
                                                      | "high";
                                                      coverage: {
                                                          limits: {
                                                              name: string;
                                                              unit: (...) | (...) | (...) | (...) | (...) | (...) | (...);
                                                              value: number;
                                                          }[];
                                                          omitted_count: number
                                                          | null;
                                                          status: "unknown" | "unavailable" | "complete" | "partial";
                                                          truncated: boolean;
                                                      };
                                                      evidence_ids: string[];
                                                      extractor: {
                                                          executable_sha256: string
                                                          | null;
                                                          name: string;
                                                          operation: string;
                                                          version: string;
                                                      };
                                                      limitations: string[];
                                                      location: | {
                                                          available: false;
                                                          detail: string;
                                                          reason: | "unknown"
                                                          | "truncated"
                                                          | "unresolved"
                                                          | "not-applicable"
                                                          | "not-observed"
                                                          | "not-approved"
                                                          | "provider-unavailable";
                                                      }
                                                      | {
                                                          available: true;
                                                          value: | { end: ...; kind: ...; source: ...; start: ... }
                                                          | { end: ...; kind: ...; start: ... }
                                                          | { kind: ...; path: ... }
                                                          | { kind: ...; url: ... }
                                                          | {
                                                              capture_sha256: ...;
                                                              frame_key: ...;
                                                              kind: ...;
                                                              script_key: ...;
                                                              target_key: ...;
                                                          }
                                                          | { address: ...; kind: ...; symbol: ... }
                                                          | { export_path: ...; kind: ...; package_name: ... };
                                                      };
                                                      state: "unknown"
                                                      | "observed"
                                                      | "inferred"
                                                      | "unavailable";
                                                  };
                                                  identifier_strategy: {
                                                      stability: "observation-exact";
                                                      strategy: "semantic-content-sha256";
                                                  };
                                                  label: string
                                                  | null;
                                                  observation_id: string;
                                                  properties: Record<string, JSONType>;
                                              }[];
                                          }[];
                                          root_node_ids: string[];
                                          schema: "JavaScriptApplicationGraph";
                                          schema_version: 1;
                                      };
                                      input_path: string;
                                      inventory_graph_sha256: string;
                                      inventory_manifest_id: string;
                                      limitations: string[];
                                      root_artifact_sha256: string;
                                      schema_version: 1;
                                      statistics: {
                                          findings: number;
                                          invalid_utf8_files: number;
                                          limit_omitted_text_files: number;
                                          modules: number;
                                          nested_asar_containers: number;
                                          omitted_text_files: number;
                                          parse_failures: number;
                                          parsed_javascript_files: number;
                                          policy_filtered_text_files: number;
                                          relevant_files: number;
                                          text_bytes_read: number;
                                          text_files_selected: number;
                                          truncated_scopes: number;
                                          visited_ast_nodes: number;
                                      };
                                      summary: {
                                          browser_windows: number;
                                          context_bridge_apis: number;
                                          explicit_web_preferences: number;
                                          exposed_api_members: number;
                                          ipc: {
                                              ambiguous_renderer_transmissions: number;
                                              dynamic_channel_operations: number;
                                              literal_channels: number;
                                              main_handlers: number;
                                              operations: number;
                                              paired_renderer_transmissions: number;
                                              renderer_listeners: number;
                                              renderer_transmissions: number;
                                              unpaired_literal_renderer_transmissions: number;
                                          };
                                          native_addon_bindings: number;
                                          preload_entrypoints: number;
                                          resolved_native_addon_bindings: number;
                                          resolved_utility_entrypoints: number;
                                          sender_validation_observations: number;
                                          utility_processes: number;
                                      };
                                  };
                                  role: "application"
                                  | "cache"
                                  | "assets";
                                  runtimeMappings: readonly (
                                      | { artifact_prefix: string; kind: "file-root"; root: string }
                                      | { artifact_prefix: string; kind: "url-prefix"; prefix: string }
                                  )[];
                                  sourceMapReadApproved: boolean;
                              }
                              -
                              graph: {
                                  coverage: {
                                      limits: {
                                          name: string;
                                          unit:
                                              | "other"
                                              | "items"
                                              | "bytes"
                                              | "depth"
                                              | "milliseconds"
                                              | "characters"
                                              | "instructions";
                                          value: number;
                                      }[];
                                      omitted_count: number
                                      | null;
                                      status: "unknown" | "unavailable" | "complete" | "partial";
                                      truncated: boolean;
                                  };
                                  edges: {
                                      edge_id: string;
                                      evidence: {
                                          artifact: | { artifact_id: string; available: true; sha256: string }
                                          | {
                                              available: false;
                                              detail: string;
                                              reason:
                                                  | "unknown"
                                                  | "truncated"
                                                  | "unresolved"
                                                  | "not-applicable"
                                                  | "not-observed"
                                                  | "not-approved"
                                                  | "provider-unavailable";
                                          };
                                          authority: | "unknown"
                                          | "controlled-replay"
                                          | "historical-reference"
                                          | "artifact-bytes"
                                          | "ast-static-analysis"
                                          | "static-relationship-inference"
                                          | "passive-cdp-runtime"
                                          | "cross-layer-reconciliation"
                                          | "native-analysis-provider"
                                          | "user-assertion";
                                          confidence: "unknown"
                                          | "exact"
                                          | "low"
                                          | "medium"
                                          | "high";
                                          coverage: {
                                              limits: {
                                                  name: string;
                                                  unit:
                                                      | "other"
                                                      | "items"
                                                      | "bytes"
                                                      | "depth"
                                                      | "milliseconds"
                                                      | "characters"
                                                      | "instructions";
                                                  value: number;
                                              }[];
                                              omitted_count: number
                                              | null;
                                              status: "unknown" | "unavailable" | "complete" | "partial";
                                              truncated: boolean;
                                          };
                                          evidence_ids: string[];
                                          extractor: {
                                              executable_sha256: string
                                              | null;
                                              name: string;
                                              operation: string;
                                              version: string;
                                          };
                                          limitations: string[];
                                          location: | {
                                              available: false;
                                              detail: string;
                                              reason: | "unknown"
                                              | "truncated"
                                              | "unresolved"
                                              | "not-applicable"
                                              | "not-observed"
                                              | "not-approved"
                                              | "provider-unavailable";
                                          }
                                          | {
                                              available: true;
                                              value: | {
                                                  end: { column: number; line: number };
                                                  kind: "source-range";
                                                  source: string;
                                                  start: { column: number; line: number };
                                              }
                                              | { end: number; kind: "file-offset-range"; start: number }
                                              | { kind: "artifact-path"; path: string }
                                              | { kind: "url"; url: string }
                                              | {
                                                  capture_sha256: string;
                                                  frame_key: string | null;
                                                  kind: "runtime";
                                                  script_key: string | null;
                                                  target_key: string;
                                              }
                                              | { address: string; kind: "native-address"; symbol: string
                                              | null }
                                              | { export_path: string; kind: "package-export"; package_name: string };
                                          };
                                          state: "unknown"
                                          | "observed"
                                          | "inferred"
                                          | "unavailable";
                                      };
                                      identifier_strategy: {
                                          stability: "relationship-exact";
                                          strategy: "semantic-content-sha256";
                                      };
                                      properties: Record<string, JSONType>;
                                      relation:
                                          | "contains"
                                          | "loads"
                                          | "calls"
                                          | "imports"
                                          | "maps_to"
                                          | "exposes"
                                          | "sends"
                                          | "invokes"
                                          | "handles"
                                          | "persists_to"
                                          | "observed_as"
                                          | "changed_from";
                                      source_node_id: string;
                                      target_node_id: string;
                                  }[];
                                  graph_id: string;
                                  limitations: string[];
                                  nodes: {
                                      identity: | {
                                          sha256: string;
                                          stability: "global-exact";
                                          strategy: "content-digest";
                                      }
                                      | {
                                          original_source: string;
                                          source_map_sha256: string;
                                          source_sha256: string
                                          | null;
                                          stability: "source-map-exact";
                                          strategy: "source-map-original";
                                      }
                                      | {
                                          artifact_sha256: string;
                                          path: string;
                                          stability: "artifact-version";
                                          strategy: "canonical-path";
                                      }
                                      | {
                                          algorithm: string;
                                          basis: (
                                              | "imports"
                                              | "exports"
                                              | "syntax-tree"
                                              | "control-flow"
                                              | "literals"
                                              | "api-usage"
                                          )[];
                                          fingerprint_sha256: string;
                                          stability: "cross-version-inference";
                                          strategy: "structural-fingerprint";
                                      }
                                      | {
                                          artifact_sha256: string;
                                          key: string;
                                          namespace: string;
                                          stability: "artifact-version";
                                          strategy: "artifact-local-key";
                                      }
                                      | {
                                          capture_sha256: string;
                                          runtime_key: string;
                                          stability: "capture-only";
                                          strategy: "runtime-instance";
                                      }
                                      | {
                                          observation_sha256: string;
                                          scope: string;
                                          stability: "observation-only";
                                          strategy: "observation-fingerprint";
                                      };
                                      kind: | "unknown"
                                      | "target"
                                      | "native-addon"
                                      | "source-map"
                                      | "artifact"
                                      | "package"
                                      | "storage"
                                      | "installer"
                                      | "asar-entry"
                                      | "electron-main"
                                      | "electron-preload"
                                      | "electron-renderer"
                                      | "electron-utility"
                                      | "javascript-asset"
                                      | "javascript-chunk"
                                      | "javascript-module"
                                      | "source-module"
                                      | "browser-window"
                                      | "frame"
                                      | "context-bridge-api"
                                      | "ipc-channel"
                                      | "ipc-handler"
                                      | "worker"
                                      | "service-worker"
                                      | "endpoint"
                                      | "native-export"
                                      | "runtime-script-instance";
                                      node_id: string;
                                      observations: {
                                          evidence: {
                                              artifact: | { artifact_id: string; available: true; sha256: string }
                                              | {
                                                  available: false;
                                                  detail: string;
                                                  reason:
                                                      | "unknown"
                                                      | "truncated"
                                                      | "unresolved"
                                                      | "not-applicable"
                                                      | "not-observed"
                                                      | "not-approved"
                                                      | "provider-unavailable";
                                              };
                                              authority: | "unknown"
                                              | "controlled-replay"
                                              | "historical-reference"
                                              | "artifact-bytes"
                                              | "ast-static-analysis"
                                              | "static-relationship-inference"
                                              | "passive-cdp-runtime"
                                              | "cross-layer-reconciliation"
                                              | "native-analysis-provider"
                                              | "user-assertion";
                                              confidence: "unknown"
                                              | "exact"
                                              | "low"
                                              | "medium"
                                              | "high";
                                              coverage: {
                                                  limits: {
                                                      name: string;
                                                      unit:
                                                          | "other"
                                                          | "items"
                                                          | "bytes"
                                                          | "depth"
                                                          | "milliseconds"
                                                          | "characters"
                                                          | "instructions";
                                                      value: number;
                                                  }[];
                                                  omitted_count: number
                                                  | null;
                                                  status: "unknown" | "unavailable" | "complete" | "partial";
                                                  truncated: boolean;
                                              };
                                              evidence_ids: string[];
                                              extractor: {
                                                  executable_sha256: string
                                                  | null;
                                                  name: string;
                                                  operation: string;
                                                  version: string;
                                              };
                                              limitations: string[];
                                              location: | {
                                                  available: false;
                                                  detail: string;
                                                  reason: | "unknown"
                                                  | "truncated"
                                                  | "unresolved"
                                                  | "not-applicable"
                                                  | "not-observed"
                                                  | "not-approved"
                                                  | "provider-unavailable";
                                              }
                                              | {
                                                  available: true;
                                                  value: | {
                                                      end: { column: ...; line: ... };
                                                      kind: "source-range";
                                                      source: string;
                                                      start: { column: ...; line: ... };
                                                  }
                                                  | { end: number; kind: "file-offset-range"; start: number }
                                                  | { kind: "artifact-path"; path: string }
                                                  | { kind: "url"; url: string }
                                                  | {
                                                      capture_sha256: string;
                                                      frame_key: (...) | (...);
                                                      kind: "runtime";
                                                      script_key: (...) | (...);
                                                      target_key: string;
                                                  }
                                                  | { address: string; kind: "native-address"; symbol: (...)
                                                  | (...) }
                                                  | { export_path: string; kind: "package-export"; package_name: string };
                                              };
                                              state: "unknown"
                                              | "observed"
                                              | "inferred"
                                              | "unavailable";
                                          };
                                          identifier_strategy: {
                                              stability: "observation-exact";
                                              strategy: "semantic-content-sha256";
                                          };
                                          label: string
                                          | null;
                                          observation_id: string;
                                          properties: Record<string, JSONType>;
                                      }[];
                                  }[];
                                  root_node_ids: string[];
                                  schema: "JavaScriptApplicationGraph";
                                  schema_version: 1;
                              }
                              @@ -49,7 +49,7 @@
                            • Defined in src/domain/javascriptRuntimeReconciliationParsing.ts:33
                            • -
                              result: {
                                  format: "directory" | "asar";
                                  graph: {
                                      coverage: {
                                          limits: {
                                              name: string;
                                              unit:
                                                  | "other"
                                                  | "items"
                                                  | "bytes"
                                                  | "depth"
                                                  | "milliseconds"
                                                  | "characters"
                                                  | "instructions";
                                              value: number;
                                          }[];
                                          omitted_count: number
                                          | null;
                                          status: "unknown" | "unavailable" | "complete" | "partial";
                                          truncated: boolean;
                                      };
                                      edges: {
                                          edge_id: string;
                                          evidence: {
                                              artifact: | { artifact_id: string; available: true; sha256: string }
                                              | {
                                                  available: false;
                                                  detail: string;
                                                  reason:
                                                      | "unknown"
                                                      | "truncated"
                                                      | "unresolved"
                                                      | "not-applicable"
                                                      | "not-observed"
                                                      | "not-approved"
                                                      | "provider-unavailable";
                                              };
                                              authority: | "unknown"
                                              | "controlled-replay"
                                              | "historical-reference"
                                              | "artifact-bytes"
                                              | "ast-static-analysis"
                                              | "static-relationship-inference"
                                              | "passive-cdp-runtime"
                                              | "cross-layer-reconciliation"
                                              | "native-analysis-provider"
                                              | "user-assertion";
                                              confidence: "unknown"
                                              | "exact"
                                              | "low"
                                              | "medium"
                                              | "high";
                                              coverage: {
                                                  limits: {
                                                      name: string;
                                                      unit:
                                                          | "other"
                                                          | "items"
                                                          | "bytes"
                                                          | "depth"
                                                          | "milliseconds"
                                                          | "characters"
                                                          | "instructions";
                                                      value: number;
                                                  }[];
                                                  omitted_count: number
                                                  | null;
                                                  status: "unknown" | "unavailable" | "complete" | "partial";
                                                  truncated: boolean;
                                              };
                                              evidence_ids: string[];
                                              extractor: {
                                                  executable_sha256: string
                                                  | null;
                                                  name: string;
                                                  operation: string;
                                                  version: string;
                                              };
                                              limitations: string[];
                                              location: | {
                                                  available: false;
                                                  detail: string;
                                                  reason: | "unknown"
                                                  | "truncated"
                                                  | "unresolved"
                                                  | "not-applicable"
                                                  | "not-observed"
                                                  | "not-approved"
                                                  | "provider-unavailable";
                                              }
                                              | {
                                                  available: true;
                                                  value: | {
                                                      end: { column: number; line: number };
                                                      kind: "source-range";
                                                      source: string;
                                                      start: { column: number; line: number };
                                                  }
                                                  | { end: number; kind: "file-offset-range"; start: number }
                                                  | { kind: "artifact-path"; path: string }
                                                  | { kind: "url"; url: string }
                                                  | {
                                                      capture_sha256: string;
                                                      frame_key: string | null;
                                                      kind: "runtime";
                                                      script_key: string | null;
                                                      target_key: string;
                                                  }
                                                  | { address: string; kind: "native-address"; symbol: string
                                                  | null }
                                                  | { export_path: string; kind: "package-export"; package_name: string };
                                              };
                                              state: "unknown"
                                              | "observed"
                                              | "inferred"
                                              | "unavailable";
                                          };
                                          identifier_strategy: {
                                              stability: "relationship-exact";
                                              strategy: "semantic-content-sha256";
                                          };
                                          properties: Record<string, JSONType>;
                                          relation:
                                              | "contains"
                                              | "loads"
                                              | "calls"
                                              | "imports"
                                              | "maps_to"
                                              | "exposes"
                                              | "sends"
                                              | "invokes"
                                              | "handles"
                                              | "persists_to"
                                              | "observed_as"
                                              | "changed_from";
                                          source_node_id: string;
                                          target_node_id: string;
                                      }[];
                                      graph_id: string;
                                      limitations: string[];
                                      nodes: {
                                          identity: | {
                                              sha256: string;
                                              stability: "global-exact";
                                              strategy: "content-digest";
                                          }
                                          | {
                                              original_source: string;
                                              source_map_sha256: string;
                                              source_sha256: string
                                              | null;
                                              stability: "source-map-exact";
                                              strategy: "source-map-original";
                                          }
                                          | {
                                              artifact_sha256: string;
                                              path: string;
                                              stability: "artifact-version";
                                              strategy: "canonical-path";
                                          }
                                          | {
                                              algorithm: string;
                                              basis: (
                                                  | "imports"
                                                  | "exports"
                                                  | "syntax-tree"
                                                  | "control-flow"
                                                  | "literals"
                                                  | "api-usage"
                                              )[];
                                              fingerprint_sha256: string;
                                              stability: "cross-version-inference";
                                              strategy: "structural-fingerprint";
                                          }
                                          | {
                                              artifact_sha256: string;
                                              key: string;
                                              namespace: string;
                                              stability: "artifact-version";
                                              strategy: "artifact-local-key";
                                          }
                                          | {
                                              capture_sha256: string;
                                              runtime_key: string;
                                              stability: "capture-only";
                                              strategy: "runtime-instance";
                                          }
                                          | {
                                              observation_sha256: string;
                                              scope: string;
                                              stability: "observation-only";
                                              strategy: "observation-fingerprint";
                                          };
                                          kind: | "unknown"
                                          | "target"
                                          | "native-addon"
                                          | "source-map"
                                          | "artifact"
                                          | "package"
                                          | "storage"
                                          | "installer"
                                          | "asar-entry"
                                          | "electron-main"
                                          | "electron-preload"
                                          | "electron-renderer"
                                          | "electron-utility"
                                          | "javascript-asset"
                                          | "javascript-chunk"
                                          | "javascript-module"
                                          | "source-module"
                                          | "browser-window"
                                          | "frame"
                                          | "context-bridge-api"
                                          | "ipc-channel"
                                          | "ipc-handler"
                                          | "worker"
                                          | "service-worker"
                                          | "endpoint"
                                          | "native-export"
                                          | "runtime-script-instance";
                                          node_id: string;
                                          observations: {
                                              evidence: {
                                                  artifact: | { artifact_id: string; available: true; sha256: string }
                                                  | {
                                                      available: false;
                                                      detail: string;
                                                      reason:
                                                          | "unknown"
                                                          | "truncated"
                                                          | "unresolved"
                                                          | "not-applicable"
                                                          | "not-observed"
                                                          | "not-approved"
                                                          | "provider-unavailable";
                                                  };
                                                  authority: | "unknown"
                                                  | "controlled-replay"
                                                  | "historical-reference"
                                                  | "artifact-bytes"
                                                  | "ast-static-analysis"
                                                  | "static-relationship-inference"
                                                  | "passive-cdp-runtime"
                                                  | "cross-layer-reconciliation"
                                                  | "native-analysis-provider"
                                                  | "user-assertion";
                                                  confidence: "unknown"
                                                  | "exact"
                                                  | "low"
                                                  | "medium"
                                                  | "high";
                                                  coverage: {
                                                      limits: {
                                                          name: string;
                                                          unit: (...) | (...) | (...) | (...) | (...) | (...) | (...);
                                                          value: number;
                                                      }[];
                                                      omitted_count: number
                                                      | null;
                                                      status: "unknown" | "unavailable" | "complete" | "partial";
                                                      truncated: boolean;
                                                  };
                                                  evidence_ids: string[];
                                                  extractor: {
                                                      executable_sha256: string
                                                      | null;
                                                      name: string;
                                                      operation: string;
                                                      version: string;
                                                  };
                                                  limitations: string[];
                                                  location: | {
                                                      available: false;
                                                      detail: string;
                                                      reason: | "unknown"
                                                      | "truncated"
                                                      | "unresolved"
                                                      | "not-applicable"
                                                      | "not-observed"
                                                      | "not-approved"
                                                      | "provider-unavailable";
                                                  }
                                                  | {
                                                      available: true;
                                                      value: | { end: ...; kind: ...; source: ...; start: ... }
                                                      | { end: ...; kind: ...; start: ... }
                                                      | { kind: ...; path: ... }
                                                      | { kind: ...; url: ... }
                                                      | {
                                                          capture_sha256: ...;
                                                          frame_key: ...;
                                                          kind: ...;
                                                          script_key: ...;
                                                          target_key: ...;
                                                      }
                                                      | { address: ...; kind: ...; symbol: ... }
                                                      | { export_path: ...; kind: ...; package_name: ... };
                                                  };
                                                  state: "unknown"
                                                  | "observed"
                                                  | "inferred"
                                                  | "unavailable";
                                              };
                                              identifier_strategy: {
                                                  stability: "observation-exact";
                                                  strategy: "semantic-content-sha256";
                                              };
                                              label: string
                                              | null;
                                              observation_id: string;
                                              properties: Record<string, JSONType>;
                                          }[];
                                      }[];
                                      root_node_ids: string[];
                                      schema: "JavaScriptApplicationGraph";
                                      schema_version: 1;
                                  };
                                  input_path: string;
                                  inventory_graph_sha256: string;
                                  inventory_manifest_id: string;
                                  limitations: string[];
                                  root_artifact_sha256: string;
                                  schema_version: 1;
                                  statistics: {
                                      findings: number;
                                      invalid_utf8_files: number;
                                      limit_omitted_text_files: number;
                                      modules: number;
                                      nested_asar_containers: number;
                                      omitted_text_files: number;
                                      parse_failures: number;
                                      parsed_javascript_files: number;
                                      policy_filtered_text_files: number;
                                      relevant_files: number;
                                      text_bytes_read: number;
                                      text_files_selected: number;
                                      truncated_scopes: number;
                                      visited_ast_nodes: number;
                                  };
                                  summary: {
                                      browser_windows: number;
                                      context_bridge_apis: number;
                                      explicit_web_preferences: number;
                                      exposed_api_members: number;
                                      ipc: {
                                          ambiguous_renderer_transmissions: number;
                                          dynamic_channel_operations: number;
                                          literal_channels: number;
                                          main_handlers: number;
                                          operations: number;
                                          paired_renderer_transmissions: number;
                                          renderer_listeners: number;
                                          renderer_transmissions: number;
                                          unpaired_literal_renderer_transmissions: number;
                                      };
                                      native_addon_bindings: number;
                                      preload_entrypoints: number;
                                      resolved_native_addon_bindings: number;
                                      resolved_utility_entrypoints: number;
                                      sender_validation_observations: number;
                                      utility_processes: number;
                                  };
                              }
                              diff --git a/docs/api/interfaces/domain_javascriptRuntimeReconciliationRuntime.RuntimeProjection.html b/docs/api/interfaces/domain_javascriptRuntimeReconciliationRuntime.RuntimeProjection.html index 905be277b..8c444ecc3 100644 --- a/docs/api/interfaces/domain_javascriptRuntimeReconciliationRuntime.RuntimeProjection.html +++ b/docs/api/interfaces/domain_javascriptRuntimeReconciliationRuntime.RuntimeProjection.html @@ -11,7 +11,7 @@
                            • domain/javascriptRuntimeReconciliationRuntime
                            • RuntimeProjection
                            • Interface RuntimeProjection

                              -
                              interface RuntimeProjection {
                                  edges: readonly {
                                      edge_id: string;
                                      evidence: {
                                          artifact:
                                              | { artifact_id: string; available: true; sha256: string }
                                              | {
                                                  available: false;
                                                  detail: string;
                                                  reason:
                                                      | "unknown"
                                                      | "truncated"
                                                      | "unresolved"
                                                      | "not-applicable"
                                                      | "not-observed"
                                                      | "not-approved"
                                                      | "provider-unavailable";
                                              };
                                          authority: | "unknown"
                                          | "controlled-replay"
                                          | "historical-reference"
                                          | "artifact-bytes"
                                          | "ast-static-analysis"
                                          | "static-relationship-inference"
                                          | "passive-cdp-runtime"
                                          | "cross-layer-reconciliation"
                                          | "native-analysis-provider"
                                          | "user-assertion";
                                          confidence: "unknown"
                                          | "exact"
                                          | "low"
                                          | "medium"
                                          | "high";
                                          coverage: {
                                              limits: {
                                                  name: string;
                                                  unit:
                                                      | "other"
                                                      | "items"
                                                      | "bytes"
                                                      | "depth"
                                                      | "milliseconds"
                                                      | "characters"
                                                      | "instructions";
                                                  value: number;
                                              }[];
                                              omitted_count: number
                                              | null;
                                              status: "unknown" | "unavailable" | "complete" | "partial";
                                              truncated: boolean;
                                          };
                                          evidence_ids: string[];
                                          extractor: {
                                              executable_sha256: string
                                              | null;
                                              name: string;
                                              operation: string;
                                              version: string;
                                          };
                                          limitations: string[];
                                          location: | {
                                              available: false;
                                              detail: string;
                                              reason: | "unknown"
                                              | "truncated"
                                              | "unresolved"
                                              | "not-applicable"
                                              | "not-observed"
                                              | "not-approved"
                                              | "provider-unavailable";
                                          }
                                          | {
                                              available: true;
                                              value: | {
                                                  end: { column: number; line: number };
                                                  kind: "source-range";
                                                  source: string;
                                                  start: { column: number; line: number };
                                              }
                                              | { end: number; kind: "file-offset-range"; start: number }
                                              | { kind: "artifact-path"; path: string }
                                              | { kind: "url"; url: string }
                                              | {
                                                  capture_sha256: string;
                                                  frame_key: string | null;
                                                  kind: "runtime";
                                                  script_key: string | null;
                                                  target_key: string;
                                              }
                                              | { address: string; kind: "native-address"; symbol: string
                                              | null }
                                              | { export_path: string; kind: "package-export"; package_name: string };
                                          };
                                          state: "unknown"
                                          | "observed"
                                          | "inferred"
                                          | "unavailable";
                                      };
                                      identifier_strategy: {
                                          stability: "relationship-exact";
                                          strategy: "semantic-content-sha256";
                                      };
                                      properties: Record<string, JSONType>;
                                      relation:
                                          | "contains"
                                          | "loads"
                                          | "calls"
                                          | "imports"
                                          | "maps_to"
                                          | "exposes"
                                          | "sends"
                                          | "invokes"
                                          | "handles"
                                          | "persists_to"
                                          | "observed_as"
                                          | "changed_from";
                                      source_node_id: string;
                                      target_node_id: string;
                                  }[];
                                  entities: readonly RuntimeReconciliationEntity[];
                                  nodes: readonly {
                                      identity: | {
                                          sha256: string;
                                          stability: "global-exact";
                                          strategy: "content-digest";
                                      }
                                      | {
                                          original_source: string;
                                          source_map_sha256: string;
                                          source_sha256: string
                                          | null;
                                          stability: "source-map-exact";
                                          strategy: "source-map-original";
                                      }
                                      | {
                                          artifact_sha256: string;
                                          path: string;
                                          stability: "artifact-version";
                                          strategy: "canonical-path";
                                      }
                                      | {
                                          algorithm: string;
                                          basis: (
                                              | "imports"
                                              | "exports"
                                              | "syntax-tree"
                                              | "control-flow"
                                              | "literals"
                                              | "api-usage"
                                          )[];
                                          fingerprint_sha256: string;
                                          stability: "cross-version-inference";
                                          strategy: "structural-fingerprint";
                                      }
                                      | {
                                          artifact_sha256: string;
                                          key: string;
                                          namespace: string;
                                          stability: "artifact-version";
                                          strategy: "artifact-local-key";
                                      }
                                      | {
                                          capture_sha256: string;
                                          runtime_key: string;
                                          stability: "capture-only";
                                          strategy: "runtime-instance";
                                      }
                                      | {
                                          observation_sha256: string;
                                          scope: string;
                                          stability: "observation-only";
                                          strategy: "observation-fingerprint";
                                      };
                                      kind: | "unknown"
                                      | "target"
                                      | "native-addon"
                                      | "source-map"
                                      | "artifact"
                                      | "package"
                                      | "storage"
                                      | "installer"
                                      | "asar-entry"
                                      | "electron-main"
                                      | "electron-preload"
                                      | "electron-renderer"
                                      | "electron-utility"
                                      | "javascript-asset"
                                      | "javascript-chunk"
                                      | "javascript-module"
                                      | "source-module"
                                      | "browser-window"
                                      | "frame"
                                      | "context-bridge-api"
                                      | "ipc-channel"
                                      | "ipc-handler"
                                      | "worker"
                                      | "service-worker"
                                      | "endpoint"
                                      | "native-export"
                                      | "runtime-script-instance";
                                      node_id: string;
                                      observations: {
                                          evidence: {
                                              artifact: | { artifact_id: string; available: true; sha256: string }
                                              | {
                                                  available: false;
                                                  detail: string;
                                                  reason:
                                                      | "unknown"
                                                      | "truncated"
                                                      | "unresolved"
                                                      | "not-applicable"
                                                      | "not-observed"
                                                      | "not-approved"
                                                      | "provider-unavailable";
                                              };
                                              authority: | "unknown"
                                              | "controlled-replay"
                                              | "historical-reference"
                                              | "artifact-bytes"
                                              | "ast-static-analysis"
                                              | "static-relationship-inference"
                                              | "passive-cdp-runtime"
                                              | "cross-layer-reconciliation"
                                              | "native-analysis-provider"
                                              | "user-assertion";
                                              confidence: "unknown"
                                              | "exact"
                                              | "low"
                                              | "medium"
                                              | "high";
                                              coverage: {
                                                  limits: {
                                                      name: string;
                                                      unit:
                                                          | "other"
                                                          | "items"
                                                          | "bytes"
                                                          | "depth"
                                                          | "milliseconds"
                                                          | "characters"
                                                          | "instructions";
                                                      value: number;
                                                  }[];
                                                  omitted_count: number
                                                  | null;
                                                  status: "unknown" | "unavailable" | "complete" | "partial";
                                                  truncated: boolean;
                                              };
                                              evidence_ids: string[];
                                              extractor: {
                                                  executable_sha256: string
                                                  | null;
                                                  name: string;
                                                  operation: string;
                                                  version: string;
                                              };
                                              limitations: string[];
                                              location: | {
                                                  available: false;
                                                  detail: string;
                                                  reason: | "unknown"
                                                  | "truncated"
                                                  | "unresolved"
                                                  | "not-applicable"
                                                  | "not-observed"
                                                  | "not-approved"
                                                  | "provider-unavailable";
                                              }
                                              | {
                                                  available: true;
                                                  value: | {
                                                      end: { column: number; line: number };
                                                      kind: "source-range";
                                                      source: string;
                                                      start: { column: number; line: number };
                                                  }
                                                  | { end: number; kind: "file-offset-range"; start: number }
                                                  | { kind: "artifact-path"; path: string }
                                                  | { kind: "url"; url: string }
                                                  | {
                                                      capture_sha256: string;
                                                      frame_key: string | null;
                                                      kind: "runtime";
                                                      script_key: string | null;
                                                      target_key: string;
                                                  }
                                                  | { address: string; kind: "native-address"; symbol: string
                                                  | null }
                                                  | { export_path: string; kind: "package-export"; package_name: string };
                                              };
                                              state: "unknown"
                                              | "observed"
                                              | "inferred"
                                              | "unavailable";
                                          };
                                          identifier_strategy: {
                                              stability: "observation-exact";
                                              strategy: "semantic-content-sha256";
                                          };
                                          label: string
                                          | null;
                                          observation_id: string;
                                          properties: Record<string, JSONType>;
                                      }[];
                                  }[];
                                  omittedEntities: number;
                                  targetNodeByEvidenceId: ReadonlyMap<
                                      string,
                                      {
                                          identity: | {
                                              sha256: string;
                                              stability: "global-exact";
                                              strategy: "content-digest";
                                          }
                                          | {
                                              original_source: string;
                                              source_map_sha256: string;
                                              source_sha256: string
                                              | null;
                                              stability: "source-map-exact";
                                              strategy: "source-map-original";
                                          }
                                          | {
                                              artifact_sha256: string;
                                              path: string;
                                              stability: "artifact-version";
                                              strategy: "canonical-path";
                                          }
                                          | {
                                              algorithm: string;
                                              basis: (
                                                  | "imports"
                                                  | "exports"
                                                  | "syntax-tree"
                                                  | "control-flow"
                                                  | "literals"
                                                  | "api-usage"
                                              )[];
                                              fingerprint_sha256: string;
                                              stability: "cross-version-inference";
                                              strategy: "structural-fingerprint";
                                          }
                                          | {
                                              artifact_sha256: string;
                                              key: string;
                                              namespace: string;
                                              stability: "artifact-version";
                                              strategy: "artifact-local-key";
                                          }
                                          | {
                                              capture_sha256: string;
                                              runtime_key: string;
                                              stability: "capture-only";
                                              strategy: "runtime-instance";
                                          }
                                          | {
                                              observation_sha256: string;
                                              scope: string;
                                              stability: "observation-only";
                                              strategy: "observation-fingerprint";
                                          };
                                          kind: | "unknown"
                                          | "target"
                                          | "native-addon"
                                          | "source-map"
                                          | "artifact"
                                          | "package"
                                          | "storage"
                                          | "installer"
                                          | "asar-entry"
                                          | "electron-main"
                                          | "electron-preload"
                                          | "electron-renderer"
                                          | "electron-utility"
                                          | "javascript-asset"
                                          | "javascript-chunk"
                                          | "javascript-module"
                                          | "source-module"
                                          | "browser-window"
                                          | "frame"
                                          | "context-bridge-api"
                                          | "ipc-channel"
                                          | "ipc-handler"
                                          | "worker"
                                          | "service-worker"
                                          | "endpoint"
                                          | "native-export"
                                          | "runtime-script-instance";
                                          node_id: string;
                                          observations: {
                                              evidence: {
                                                  artifact: | { artifact_id: string; available: true; sha256: string }
                                                  | {
                                                      available: false;
                                                      detail: string;
                                                      reason:
                                                          | "unknown"
                                                          | "truncated"
                                                          | "unresolved"
                                                          | "not-applicable"
                                                          | "not-observed"
                                                          | "not-approved"
                                                          | "provider-unavailable";
                                                  };
                                                  authority: | "unknown"
                                                  | "controlled-replay"
                                                  | "historical-reference"
                                                  | "artifact-bytes"
                                                  | "ast-static-analysis"
                                                  | "static-relationship-inference"
                                                  | "passive-cdp-runtime"
                                                  | "cross-layer-reconciliation"
                                                  | "native-analysis-provider"
                                                  | "user-assertion";
                                                  confidence: "unknown"
                                                  | "exact"
                                                  | "low"
                                                  | "medium"
                                                  | "high";
                                                  coverage: {
                                                      limits: {
                                                          name: string;
                                                          unit:
                                                              | "other"
                                                              | "items"
                                                              | "bytes"
                                                              | "depth"
                                                              | "milliseconds"
                                                              | "characters"
                                                              | "instructions";
                                                          value: number;
                                                      }[];
                                                      omitted_count: number
                                                      | null;
                                                      status: "unknown" | "unavailable" | "complete" | "partial";
                                                      truncated: boolean;
                                                  };
                                                  evidence_ids: string[];
                                                  extractor: {
                                                      executable_sha256: string
                                                      | null;
                                                      name: string;
                                                      operation: string;
                                                      version: string;
                                                  };
                                                  limitations: string[];
                                                  location: | {
                                                      available: false;
                                                      detail: string;
                                                      reason: | "unknown"
                                                      | "truncated"
                                                      | "unresolved"
                                                      | "not-applicable"
                                                      | "not-observed"
                                                      | "not-approved"
                                                      | "provider-unavailable";
                                                  }
                                                  | {
                                                      available: true;
                                                      value: | {
                                                          end: { column: number; line: number };
                                                          kind: "source-range";
                                                          source: string;
                                                          start: { column: number; line: number };
                                                      }
                                                      | { end: number; kind: "file-offset-range"; start: number }
                                                      | { kind: "artifact-path"; path: string }
                                                      | { kind: "url"; url: string }
                                                      | {
                                                          capture_sha256: string;
                                                          frame_key: string | null;
                                                          kind: "runtime";
                                                          script_key: string | null;
                                                          target_key: string;
                                                      }
                                                      | { address: string; kind: "native-address"; symbol: string
                                                      | null }
                                                      | {
                                                          export_path: string;
                                                          kind: "package-export";
                                                          package_name: string;
                                                      };
                                                  };
                                                  state: "unknown"
                                                  | "observed"
                                                  | "inferred"
                                                  | "unavailable";
                                              };
                                              identifier_strategy: {
                                                  stability: "observation-exact";
                                                  strategy: "semantic-content-sha256";
                                              };
                                              label: string
                                              | null;
                                              observation_id: string;
                                              properties: Record<string, JSONType>;
                                          }[];
                                      },
                                  >;
                              }
                              -
                              nodes: readonly {
                                  identity:
                                      | {
                                          sha256: string;
                                          stability: "global-exact";
                                          strategy: "content-digest";
                                      }
                                      | {
                                          original_source: string;
                                          source_map_sha256: string;
                                          source_sha256: string
                                          | null;
                                          stability: "source-map-exact";
                                          strategy: "source-map-original";
                                      }
                                      | {
                                          artifact_sha256: string;
                                          path: string;
                                          stability: "artifact-version";
                                          strategy: "canonical-path";
                                      }
                                      | {
                                          algorithm: string;
                                          basis: (
                                              | "imports"
                                              | "exports"
                                              | "syntax-tree"
                                              | "control-flow"
                                              | "literals"
                                              | "api-usage"
                                          )[];
                                          fingerprint_sha256: string;
                                          stability: "cross-version-inference";
                                          strategy: "structural-fingerprint";
                                      }
                                      | {
                                          artifact_sha256: string;
                                          key: string;
                                          namespace: string;
                                          stability: "artifact-version";
                                          strategy: "artifact-local-key";
                                      }
                                      | {
                                          capture_sha256: string;
                                          runtime_key: string;
                                          stability: "capture-only";
                                          strategy: "runtime-instance";
                                      }
                                      | {
                                          observation_sha256: string;
                                          scope: string;
                                          stability: "observation-only";
                                          strategy: "observation-fingerprint";
                                      };
                                  kind: | "unknown"
                                  | "target"
                                  | "native-addon"
                                  | "source-map"
                                  | "artifact"
                                  | "package"
                                  | "storage"
                                  | "installer"
                                  | "asar-entry"
                                  | "electron-main"
                                  | "electron-preload"
                                  | "electron-renderer"
                                  | "electron-utility"
                                  | "javascript-asset"
                                  | "javascript-chunk"
                                  | "javascript-module"
                                  | "source-module"
                                  | "browser-window"
                                  | "frame"
                                  | "context-bridge-api"
                                  | "ipc-channel"
                                  | "ipc-handler"
                                  | "worker"
                                  | "service-worker"
                                  | "endpoint"
                                  | "native-export"
                                  | "runtime-script-instance";
                                  node_id: string;
                                  observations: {
                                      evidence: {
                                          artifact: | { artifact_id: string; available: true; sha256: string }
                                          | {
                                              available: false;
                                              detail: string;
                                              reason:
                                                  | "unknown"
                                                  | "truncated"
                                                  | "unresolved"
                                                  | "not-applicable"
                                                  | "not-observed"
                                                  | "not-approved"
                                                  | "provider-unavailable";
                                          };
                                          authority: | "unknown"
                                          | "controlled-replay"
                                          | "historical-reference"
                                          | "artifact-bytes"
                                          | "ast-static-analysis"
                                          | "static-relationship-inference"
                                          | "passive-cdp-runtime"
                                          | "cross-layer-reconciliation"
                                          | "native-analysis-provider"
                                          | "user-assertion";
                                          confidence: "unknown"
                                          | "exact"
                                          | "low"
                                          | "medium"
                                          | "high";
                                          coverage: {
                                              limits: {
                                                  name: string;
                                                  unit:
                                                      | "other"
                                                      | "items"
                                                      | "bytes"
                                                      | "depth"
                                                      | "milliseconds"
                                                      | "characters"
                                                      | "instructions";
                                                  value: number;
                                              }[];
                                              omitted_count: number
                                              | null;
                                              status: "unknown" | "unavailable" | "complete" | "partial";
                                              truncated: boolean;
                                          };
                                          evidence_ids: string[];
                                          extractor: {
                                              executable_sha256: string
                                              | null;
                                              name: string;
                                              operation: string;
                                              version: string;
                                          };
                                          limitations: string[];
                                          location: | {
                                              available: false;
                                              detail: string;
                                              reason: | "unknown"
                                              | "truncated"
                                              | "unresolved"
                                              | "not-applicable"
                                              | "not-observed"
                                              | "not-approved"
                                              | "provider-unavailable";
                                          }
                                          | {
                                              available: true;
                                              value: | {
                                                  end: { column: number; line: number };
                                                  kind: "source-range";
                                                  source: string;
                                                  start: { column: number; line: number };
                                              }
                                              | { end: number; kind: "file-offset-range"; start: number }
                                              | { kind: "artifact-path"; path: string }
                                              | { kind: "url"; url: string }
                                              | {
                                                  capture_sha256: string;
                                                  frame_key: string | null;
                                                  kind: "runtime";
                                                  script_key: string | null;
                                                  target_key: string;
                                              }
                                              | { address: string; kind: "native-address"; symbol: string
                                              | null }
                                              | { export_path: string; kind: "package-export"; package_name: string };
                                          };
                                          state: "unknown"
                                          | "observed"
                                          | "inferred"
                                          | "unavailable";
                                      };
                                      identifier_strategy: {
                                          stability: "observation-exact";
                                          strategy: "semantic-content-sha256";
                                      };
                                      label: string
                                      | null;
                                      observation_id: string;
                                      properties: Record<string, JSONType>;
                                  }[];
                              }[]
                              @@ -52,7 +52,7 @@
                            • Defined in src/domain/javascriptRuntimeReconciliationRuntime.ts:28
                            • -
                              targetNodeByEvidenceId: ReadonlyMap<
                                  string,
                                  {
                                      identity: | {
                                          sha256: string;
                                          stability: "global-exact";
                                          strategy: "content-digest";
                                      }
                                      | {
                                          original_source: string;
                                          source_map_sha256: string;
                                          source_sha256: string
                                          | null;
                                          stability: "source-map-exact";
                                          strategy: "source-map-original";
                                      }
                                      | {
                                          artifact_sha256: string;
                                          path: string;
                                          stability: "artifact-version";
                                          strategy: "canonical-path";
                                      }
                                      | {
                                          algorithm: string;
                                          basis: (
                                              | "imports"
                                              | "exports"
                                              | "syntax-tree"
                                              | "control-flow"
                                              | "literals"
                                              | "api-usage"
                                          )[];
                                          fingerprint_sha256: string;
                                          stability: "cross-version-inference";
                                          strategy: "structural-fingerprint";
                                      }
                                      | {
                                          artifact_sha256: string;
                                          key: string;
                                          namespace: string;
                                          stability: "artifact-version";
                                          strategy: "artifact-local-key";
                                      }
                                      | {
                                          capture_sha256: string;
                                          runtime_key: string;
                                          stability: "capture-only";
                                          strategy: "runtime-instance";
                                      }
                                      | {
                                          observation_sha256: string;
                                          scope: string;
                                          stability: "observation-only";
                                          strategy: "observation-fingerprint";
                                      };
                                      kind: | "unknown"
                                      | "target"
                                      | "native-addon"
                                      | "source-map"
                                      | "artifact"
                                      | "package"
                                      | "storage"
                                      | "installer"
                                      | "asar-entry"
                                      | "electron-main"
                                      | "electron-preload"
                                      | "electron-renderer"
                                      | "electron-utility"
                                      | "javascript-asset"
                                      | "javascript-chunk"
                                      | "javascript-module"
                                      | "source-module"
                                      | "browser-window"
                                      | "frame"
                                      | "context-bridge-api"
                                      | "ipc-channel"
                                      | "ipc-handler"
                                      | "worker"
                                      | "service-worker"
                                      | "endpoint"
                                      | "native-export"
                                      | "runtime-script-instance";
                                      node_id: string;
                                      observations: {
                                          evidence: {
                                              artifact: | { artifact_id: string; available: true; sha256: string }
                                              | {
                                                  available: false;
                                                  detail: string;
                                                  reason:
                                                      | "unknown"
                                                      | "truncated"
                                                      | "unresolved"
                                                      | "not-applicable"
                                                      | "not-observed"
                                                      | "not-approved"
                                                      | "provider-unavailable";
                                              };
                                              authority: | "unknown"
                                              | "controlled-replay"
                                              | "historical-reference"
                                              | "artifact-bytes"
                                              | "ast-static-analysis"
                                              | "static-relationship-inference"
                                              | "passive-cdp-runtime"
                                              | "cross-layer-reconciliation"
                                              | "native-analysis-provider"
                                              | "user-assertion";
                                              confidence: "unknown"
                                              | "exact"
                                              | "low"
                                              | "medium"
                                              | "high";
                                              coverage: {
                                                  limits: {
                                                      name: string;
                                                      unit:
                                                          | "other"
                                                          | "items"
                                                          | "bytes"
                                                          | "depth"
                                                          | "milliseconds"
                                                          | "characters"
                                                          | "instructions";
                                                      value: number;
                                                  }[];
                                                  omitted_count: number
                                                  | null;
                                                  status: "unknown" | "unavailable" | "complete" | "partial";
                                                  truncated: boolean;
                                              };
                                              evidence_ids: string[];
                                              extractor: {
                                                  executable_sha256: string
                                                  | null;
                                                  name: string;
                                                  operation: string;
                                                  version: string;
                                              };
                                              limitations: string[];
                                              location: | {
                                                  available: false;
                                                  detail: string;
                                                  reason: | "unknown"
                                                  | "truncated"
                                                  | "unresolved"
                                                  | "not-applicable"
                                                  | "not-observed"
                                                  | "not-approved"
                                                  | "provider-unavailable";
                                              }
                                              | {
                                                  available: true;
                                                  value: | {
                                                      end: { column: number; line: number };
                                                      kind: "source-range";
                                                      source: string;
                                                      start: { column: number; line: number };
                                                  }
                                                  | { end: number; kind: "file-offset-range"; start: number }
                                                  | { kind: "artifact-path"; path: string }
                                                  | { kind: "url"; url: string }
                                                  | {
                                                      capture_sha256: string;
                                                      frame_key: string | null;
                                                      kind: "runtime";
                                                      script_key: string | null;
                                                      target_key: string;
                                                  }
                                                  | { address: string; kind: "native-address"; symbol: string
                                                  | null }
                                                  | { export_path: string; kind: "package-export"; package_name: string };
                                              };
                                              state: "unknown"
                                              | "observed"
                                              | "inferred"
                                              | "unavailable";
                                          };
                                          identifier_strategy: {
                                              stability: "observation-exact";
                                              strategy: "semantic-content-sha256";
                                          };
                                          label: string
                                          | null;
                                          observation_id: string;
                                          properties: Record<string, JSONType>;
                                      }[];
                                  },
                              >
                              diff --git a/docs/api/interfaces/domain_javascriptRuntimeReconciliationRuntime.RuntimeReconciliationEntity.html b/docs/api/interfaces/domain_javascriptRuntimeReconciliationRuntime.RuntimeReconciliationEntity.html index bf151bcf2..9fe86eeef 100644 --- a/docs/api/interfaces/domain_javascriptRuntimeReconciliationRuntime.RuntimeReconciliationEntity.html +++ b/docs/api/interfaces/domain_javascriptRuntimeReconciliationRuntime.RuntimeReconciliationEntity.html @@ -11,7 +11,7 @@
                            • domain/javascriptRuntimeReconciliationRuntime
                            • RuntimeReconciliationEntity
                            • Interface RuntimeReconciliationEntity

                              -
                              interface RuntimeReconciliationEntity {
                                  capture: ParsedRuntimeCapture;
                                  frameKey: string | null;
                                  kind: "target" | "frame" | "worker" | "script";
                                  location: { kind: "file" | "url"; value: string };
                                  node: {
                                      identity:
                                          | {
                                              sha256: string;
                                              stability: "global-exact";
                                              strategy: "content-digest";
                                          }
                                          | {
                                              original_source: string;
                                              source_map_sha256: string;
                                              source_sha256: string
                                              | null;
                                              stability: "source-map-exact";
                                              strategy: "source-map-original";
                                          }
                                          | {
                                              artifact_sha256: string;
                                              path: string;
                                              stability: "artifact-version";
                                              strategy: "canonical-path";
                                          }
                                          | {
                                              algorithm: string;
                                              basis: (
                                                  | "imports"
                                                  | "exports"
                                                  | "syntax-tree"
                                                  | "control-flow"
                                                  | "literals"
                                                  | "api-usage"
                                              )[];
                                              fingerprint_sha256: string;
                                              stability: "cross-version-inference";
                                              strategy: "structural-fingerprint";
                                          }
                                          | {
                                              artifact_sha256: string;
                                              key: string;
                                              namespace: string;
                                              stability: "artifact-version";
                                              strategy: "artifact-local-key";
                                          }
                                          | {
                                              capture_sha256: string;
                                              runtime_key: string;
                                              stability: "capture-only";
                                              strategy: "runtime-instance";
                                          }
                                          | {
                                              observation_sha256: string;
                                              scope: string;
                                              stability: "observation-only";
                                              strategy: "observation-fingerprint";
                                          };
                                      kind: | "unknown"
                                      | "target"
                                      | "native-addon"
                                      | "source-map"
                                      | "artifact"
                                      | "package"
                                      | "storage"
                                      | "installer"
                                      | "asar-entry"
                                      | "electron-main"
                                      | "electron-preload"
                                      | "electron-renderer"
                                      | "electron-utility"
                                      | "javascript-asset"
                                      | "javascript-chunk"
                                      | "javascript-module"
                                      | "source-module"
                                      | "browser-window"
                                      | "frame"
                                      | "context-bridge-api"
                                      | "ipc-channel"
                                      | "ipc-handler"
                                      | "worker"
                                      | "service-worker"
                                      | "endpoint"
                                      | "native-export"
                                      | "runtime-script-instance";
                                      node_id: string;
                                      observations: {
                                          evidence: {
                                              artifact: | { artifact_id: string; available: true; sha256: string }
                                              | {
                                                  available: false;
                                                  detail: string;
                                                  reason:
                                                      | "unknown"
                                                      | "truncated"
                                                      | "unresolved"
                                                      | "not-applicable"
                                                      | "not-observed"
                                                      | "not-approved"
                                                      | "provider-unavailable";
                                              };
                                              authority: | "unknown"
                                              | "controlled-replay"
                                              | "historical-reference"
                                              | "artifact-bytes"
                                              | "ast-static-analysis"
                                              | "static-relationship-inference"
                                              | "passive-cdp-runtime"
                                              | "cross-layer-reconciliation"
                                              | "native-analysis-provider"
                                              | "user-assertion";
                                              confidence: "unknown"
                                              | "exact"
                                              | "low"
                                              | "medium"
                                              | "high";
                                              coverage: {
                                                  limits: {
                                                      name: string;
                                                      unit:
                                                          | "other"
                                                          | "items"
                                                          | "bytes"
                                                          | "depth"
                                                          | "milliseconds"
                                                          | "characters"
                                                          | "instructions";
                                                      value: number;
                                                  }[];
                                                  omitted_count: number
                                                  | null;
                                                  status: "unknown" | "unavailable" | "complete" | "partial";
                                                  truncated: boolean;
                                              };
                                              evidence_ids: string[];
                                              extractor: {
                                                  executable_sha256: string
                                                  | null;
                                                  name: string;
                                                  operation: string;
                                                  version: string;
                                              };
                                              limitations: string[];
                                              location: | {
                                                  available: false;
                                                  detail: string;
                                                  reason: | "unknown"
                                                  | "truncated"
                                                  | "unresolved"
                                                  | "not-applicable"
                                                  | "not-observed"
                                                  | "not-approved"
                                                  | "provider-unavailable";
                                              }
                                              | {
                                                  available: true;
                                                  value: | {
                                                      end: { column: number; line: number };
                                                      kind: "source-range";
                                                      source: string;
                                                      start: { column: number; line: number };
                                                  }
                                                  | { end: number; kind: "file-offset-range"; start: number }
                                                  | { kind: "artifact-path"; path: string }
                                                  | { kind: "url"; url: string }
                                                  | {
                                                      capture_sha256: string;
                                                      frame_key: string | null;
                                                      kind: "runtime";
                                                      script_key: string | null;
                                                      target_key: string;
                                                  }
                                                  | { address: string; kind: "native-address"; symbol: string
                                                  | null }
                                                  | { export_path: string; kind: "package-export"; package_name: string };
                                              };
                                              state: "unknown"
                                              | "observed"
                                              | "inferred"
                                              | "unavailable";
                                          };
                                          identifier_strategy: {
                                              stability: "observation-exact";
                                              strategy: "semantic-content-sha256";
                                          };
                                          label: string
                                          | null;
                                          observation_id: string;
                                          properties: Record<string, JSONType>;
                                      }[];
                                  };
                                  runtimeKey: string;
                                  section: "frames"
                                  | "target"
                                  | "scripts"
                                  | "workers";
                                  sourceSha256: string | null;
                                  staticKind: "javascript" | "worker" | "service-worker" | "renderer";
                              }
                              -
                              node: {
                                  identity:
                                      | {
                                          sha256: string;
                                          stability: "global-exact";
                                          strategy: "content-digest";
                                      }
                                      | {
                                          original_source: string;
                                          source_map_sha256: string;
                                          source_sha256: string
                                          | null;
                                          stability: "source-map-exact";
                                          strategy: "source-map-original";
                                      }
                                      | {
                                          artifact_sha256: string;
                                          path: string;
                                          stability: "artifact-version";
                                          strategy: "canonical-path";
                                      }
                                      | {
                                          algorithm: string;
                                          basis: (
                                              | "imports"
                                              | "exports"
                                              | "syntax-tree"
                                              | "control-flow"
                                              | "literals"
                                              | "api-usage"
                                          )[];
                                          fingerprint_sha256: string;
                                          stability: "cross-version-inference";
                                          strategy: "structural-fingerprint";
                                      }
                                      | {
                                          artifact_sha256: string;
                                          key: string;
                                          namespace: string;
                                          stability: "artifact-version";
                                          strategy: "artifact-local-key";
                                      }
                                      | {
                                          capture_sha256: string;
                                          runtime_key: string;
                                          stability: "capture-only";
                                          strategy: "runtime-instance";
                                      }
                                      | {
                                          observation_sha256: string;
                                          scope: string;
                                          stability: "observation-only";
                                          strategy: "observation-fingerprint";
                                      };
                                  kind: | "unknown"
                                  | "target"
                                  | "native-addon"
                                  | "source-map"
                                  | "artifact"
                                  | "package"
                                  | "storage"
                                  | "installer"
                                  | "asar-entry"
                                  | "electron-main"
                                  | "electron-preload"
                                  | "electron-renderer"
                                  | "electron-utility"
                                  | "javascript-asset"
                                  | "javascript-chunk"
                                  | "javascript-module"
                                  | "source-module"
                                  | "browser-window"
                                  | "frame"
                                  | "context-bridge-api"
                                  | "ipc-channel"
                                  | "ipc-handler"
                                  | "worker"
                                  | "service-worker"
                                  | "endpoint"
                                  | "native-export"
                                  | "runtime-script-instance";
                                  node_id: string;
                                  observations: {
                                      evidence: {
                                          artifact: | { artifact_id: string; available: true; sha256: string }
                                          | {
                                              available: false;
                                              detail: string;
                                              reason:
                                                  | "unknown"
                                                  | "truncated"
                                                  | "unresolved"
                                                  | "not-applicable"
                                                  | "not-observed"
                                                  | "not-approved"
                                                  | "provider-unavailable";
                                          };
                                          authority: | "unknown"
                                          | "controlled-replay"
                                          | "historical-reference"
                                          | "artifact-bytes"
                                          | "ast-static-analysis"
                                          | "static-relationship-inference"
                                          | "passive-cdp-runtime"
                                          | "cross-layer-reconciliation"
                                          | "native-analysis-provider"
                                          | "user-assertion";
                                          confidence: "unknown"
                                          | "exact"
                                          | "low"
                                          | "medium"
                                          | "high";
                                          coverage: {
                                              limits: {
                                                  name: string;
                                                  unit:
                                                      | "other"
                                                      | "items"
                                                      | "bytes"
                                                      | "depth"
                                                      | "milliseconds"
                                                      | "characters"
                                                      | "instructions";
                                                  value: number;
                                              }[];
                                              omitted_count: number
                                              | null;
                                              status: "unknown" | "unavailable" | "complete" | "partial";
                                              truncated: boolean;
                                          };
                                          evidence_ids: string[];
                                          extractor: {
                                              executable_sha256: string
                                              | null;
                                              name: string;
                                              operation: string;
                                              version: string;
                                          };
                                          limitations: string[];
                                          location: | {
                                              available: false;
                                              detail: string;
                                              reason: | "unknown"
                                              | "truncated"
                                              | "unresolved"
                                              | "not-applicable"
                                              | "not-observed"
                                              | "not-approved"
                                              | "provider-unavailable";
                                          }
                                          | {
                                              available: true;
                                              value: | {
                                                  end: { column: number; line: number };
                                                  kind: "source-range";
                                                  source: string;
                                                  start: { column: number; line: number };
                                              }
                                              | { end: number; kind: "file-offset-range"; start: number }
                                              | { kind: "artifact-path"; path: string }
                                              | { kind: "url"; url: string }
                                              | {
                                                  capture_sha256: string;
                                                  frame_key: string | null;
                                                  kind: "runtime";
                                                  script_key: string | null;
                                                  target_key: string;
                                              }
                                              | { address: string; kind: "native-address"; symbol: string
                                              | null }
                                              | { export_path: string; kind: "package-export"; package_name: string };
                                          };
                                          state: "unknown"
                                          | "observed"
                                          | "inferred"
                                          | "unavailable";
                                      };
                                      identifier_strategy: {
                                          stability: "observation-exact";
                                          strategy: "semantic-content-sha256";
                                      };
                                      label: string
                                      | null;
                                      observation_id: string;
                                      properties: Record<string, JSONType>;
                                  }[];
                              }
                              diff --git a/docs/api/interfaces/domain_javascriptRuntimeStaticCandidates.StaticRuntimeCandidate.html b/docs/api/interfaces/domain_javascriptRuntimeStaticCandidates.StaticRuntimeCandidate.html index 5ef09189b..efc1ec1ac 100644 --- a/docs/api/interfaces/domain_javascriptRuntimeStaticCandidates.StaticRuntimeCandidate.html +++ b/docs/api/interfaces/domain_javascriptRuntimeStaticCandidates.StaticRuntimeCandidate.html @@ -11,7 +11,7 @@
                            • domain/javascriptRuntimeStaticCandidates
                            • StaticRuntimeCandidate
                            • Interface StaticRuntimeCandidate

                              -
                              interface StaticRuntimeCandidate {
                                  category: "javascript" | "worker" | "service-worker" | "renderer";
                                  digests: readonly {
                                      basis: "content-sha256" | "module-source-sha256";
                                      sha256: string;
                                  }[];
                                  layer: ParsedStaticLayer;
                                  node: {
                                      identity: | {
                                          sha256: string;
                                          stability: "global-exact";
                                          strategy: "content-digest";
                                      }
                                      | {
                                          original_source: string;
                                          source_map_sha256: string;
                                          source_sha256: string
                                          | null;
                                          stability: "source-map-exact";
                                          strategy: "source-map-original";
                                      }
                                      | {
                                          artifact_sha256: string;
                                          path: string;
                                          stability: "artifact-version";
                                          strategy: "canonical-path";
                                      }
                                      | {
                                          algorithm: string;
                                          basis: (
                                              | "imports"
                                              | "exports"
                                              | "syntax-tree"
                                              | "control-flow"
                                              | "literals"
                                              | "api-usage"
                                          )[];
                                          fingerprint_sha256: string;
                                          stability: "cross-version-inference";
                                          strategy: "structural-fingerprint";
                                      }
                                      | {
                                          artifact_sha256: string;
                                          key: string;
                                          namespace: string;
                                          stability: "artifact-version";
                                          strategy: "artifact-local-key";
                                      }
                                      | {
                                          capture_sha256: string;
                                          runtime_key: string;
                                          stability: "capture-only";
                                          strategy: "runtime-instance";
                                      }
                                      | {
                                          observation_sha256: string;
                                          scope: string;
                                          stability: "observation-only";
                                          strategy: "observation-fingerprint";
                                      };
                                      kind: | "unknown"
                                      | "target"
                                      | "native-addon"
                                      | "source-map"
                                      | "artifact"
                                      | "package"
                                      | "storage"
                                      | "installer"
                                      | "asar-entry"
                                      | "electron-main"
                                      | "electron-preload"
                                      | "electron-renderer"
                                      | "electron-utility"
                                      | "javascript-asset"
                                      | "javascript-chunk"
                                      | "javascript-module"
                                      | "source-module"
                                      | "browser-window"
                                      | "frame"
                                      | "context-bridge-api"
                                      | "ipc-channel"
                                      | "ipc-handler"
                                      | "worker"
                                      | "service-worker"
                                      | "endpoint"
                                      | "native-export"
                                      | "runtime-script-instance";
                                      node_id: string;
                                      observations: {
                                          evidence: {
                                              artifact: | { artifact_id: string; available: true; sha256: string }
                                              | {
                                                  available: false;
                                                  detail: string;
                                                  reason:
                                                      | "unknown"
                                                      | "truncated"
                                                      | "unresolved"
                                                      | "not-applicable"
                                                      | "not-observed"
                                                      | "not-approved"
                                                      | "provider-unavailable";
                                              };
                                              authority: | "unknown"
                                              | "controlled-replay"
                                              | "historical-reference"
                                              | "artifact-bytes"
                                              | "ast-static-analysis"
                                              | "static-relationship-inference"
                                              | "passive-cdp-runtime"
                                              | "cross-layer-reconciliation"
                                              | "native-analysis-provider"
                                              | "user-assertion";
                                              confidence: "unknown"
                                              | "exact"
                                              | "low"
                                              | "medium"
                                              | "high";
                                              coverage: {
                                                  limits: {
                                                      name: string;
                                                      unit:
                                                          | "other"
                                                          | "items"
                                                          | "bytes"
                                                          | "depth"
                                                          | "milliseconds"
                                                          | "characters"
                                                          | "instructions";
                                                      value: number;
                                                  }[];
                                                  omitted_count: number
                                                  | null;
                                                  status: "unknown" | "unavailable" | "complete" | "partial";
                                                  truncated: boolean;
                                              };
                                              evidence_ids: string[];
                                              extractor: {
                                                  executable_sha256: string
                                                  | null;
                                                  name: string;
                                                  operation: string;
                                                  version: string;
                                              };
                                              limitations: string[];
                                              location: | {
                                                  available: false;
                                                  detail: string;
                                                  reason: | "unknown"
                                                  | "truncated"
                                                  | "unresolved"
                                                  | "not-applicable"
                                                  | "not-observed"
                                                  | "not-approved"
                                                  | "provider-unavailable";
                                              }
                                              | {
                                                  available: true;
                                                  value: | {
                                                      end: { column: number; line: number };
                                                      kind: "source-range";
                                                      source: string;
                                                      start: { column: number; line: number };
                                                  }
                                                  | { end: number; kind: "file-offset-range"; start: number }
                                                  | { kind: "artifact-path"; path: string }
                                                  | { kind: "url"; url: string }
                                                  | {
                                                      capture_sha256: string;
                                                      frame_key: string | null;
                                                      kind: "runtime";
                                                      script_key: string | null;
                                                      target_key: string;
                                                  }
                                                  | { address: string; kind: "native-address"; symbol: string
                                                  | null }
                                                  | { export_path: string; kind: "package-export"; package_name: string };
                                              };
                                              state: "unknown"
                                              | "observed"
                                              | "inferred"
                                              | "unavailable";
                                          };
                                          identifier_strategy: {
                                              stability: "observation-exact";
                                              strategy: "semantic-content-sha256";
                                          };
                                          label: string
                                          | null;
                                          observation_id: string;
                                          properties: Record<string, JSONType>;
                                      }[];
                                  };
                                  paths: readonly string[];
                              }
                              -
                              node: {
                                  identity:
                                      | {
                                          sha256: string;
                                          stability: "global-exact";
                                          strategy: "content-digest";
                                      }
                                      | {
                                          original_source: string;
                                          source_map_sha256: string;
                                          source_sha256: string
                                          | null;
                                          stability: "source-map-exact";
                                          strategy: "source-map-original";
                                      }
                                      | {
                                          artifact_sha256: string;
                                          path: string;
                                          stability: "artifact-version";
                                          strategy: "canonical-path";
                                      }
                                      | {
                                          algorithm: string;
                                          basis: (
                                              | "imports"
                                              | "exports"
                                              | "syntax-tree"
                                              | "control-flow"
                                              | "literals"
                                              | "api-usage"
                                          )[];
                                          fingerprint_sha256: string;
                                          stability: "cross-version-inference";
                                          strategy: "structural-fingerprint";
                                      }
                                      | {
                                          artifact_sha256: string;
                                          key: string;
                                          namespace: string;
                                          stability: "artifact-version";
                                          strategy: "artifact-local-key";
                                      }
                                      | {
                                          capture_sha256: string;
                                          runtime_key: string;
                                          stability: "capture-only";
                                          strategy: "runtime-instance";
                                      }
                                      | {
                                          observation_sha256: string;
                                          scope: string;
                                          stability: "observation-only";
                                          strategy: "observation-fingerprint";
                                      };
                                  kind: | "unknown"
                                  | "target"
                                  | "native-addon"
                                  | "source-map"
                                  | "artifact"
                                  | "package"
                                  | "storage"
                                  | "installer"
                                  | "asar-entry"
                                  | "electron-main"
                                  | "electron-preload"
                                  | "electron-renderer"
                                  | "electron-utility"
                                  | "javascript-asset"
                                  | "javascript-chunk"
                                  | "javascript-module"
                                  | "source-module"
                                  | "browser-window"
                                  | "frame"
                                  | "context-bridge-api"
                                  | "ipc-channel"
                                  | "ipc-handler"
                                  | "worker"
                                  | "service-worker"
                                  | "endpoint"
                                  | "native-export"
                                  | "runtime-script-instance";
                                  node_id: string;
                                  observations: {
                                      evidence: {
                                          artifact: | { artifact_id: string; available: true; sha256: string }
                                          | {
                                              available: false;
                                              detail: string;
                                              reason:
                                                  | "unknown"
                                                  | "truncated"
                                                  | "unresolved"
                                                  | "not-applicable"
                                                  | "not-observed"
                                                  | "not-approved"
                                                  | "provider-unavailable";
                                          };
                                          authority: | "unknown"
                                          | "controlled-replay"
                                          | "historical-reference"
                                          | "artifact-bytes"
                                          | "ast-static-analysis"
                                          | "static-relationship-inference"
                                          | "passive-cdp-runtime"
                                          | "cross-layer-reconciliation"
                                          | "native-analysis-provider"
                                          | "user-assertion";
                                          confidence: "unknown"
                                          | "exact"
                                          | "low"
                                          | "medium"
                                          | "high";
                                          coverage: {
                                              limits: {
                                                  name: string;
                                                  unit:
                                                      | "other"
                                                      | "items"
                                                      | "bytes"
                                                      | "depth"
                                                      | "milliseconds"
                                                      | "characters"
                                                      | "instructions";
                                                  value: number;
                                              }[];
                                              omitted_count: number
                                              | null;
                                              status: "unknown" | "unavailable" | "complete" | "partial";
                                              truncated: boolean;
                                          };
                                          evidence_ids: string[];
                                          extractor: {
                                              executable_sha256: string
                                              | null;
                                              name: string;
                                              operation: string;
                                              version: string;
                                          };
                                          limitations: string[];
                                          location: | {
                                              available: false;
                                              detail: string;
                                              reason: | "unknown"
                                              | "truncated"
                                              | "unresolved"
                                              | "not-applicable"
                                              | "not-observed"
                                              | "not-approved"
                                              | "provider-unavailable";
                                          }
                                          | {
                                              available: true;
                                              value: | {
                                                  end: { column: number; line: number };
                                                  kind: "source-range";
                                                  source: string;
                                                  start: { column: number; line: number };
                                              }
                                              | { end: number; kind: "file-offset-range"; start: number }
                                              | { kind: "artifact-path"; path: string }
                                              | { kind: "url"; url: string }
                                              | {
                                                  capture_sha256: string;
                                                  frame_key: string | null;
                                                  kind: "runtime";
                                                  script_key: string | null;
                                                  target_key: string;
                                              }
                                              | { address: string; kind: "native-address"; symbol: string
                                              | null }
                                              | { export_path: string; kind: "package-export"; package_name: string };
                                          };
                                          state: "unknown"
                                          | "observed"
                                          | "inferred"
                                          | "unavailable";
                                      };
                                      identifier_strategy: {
                                          stability: "observation-exact";
                                          strategy: "semantic-content-sha256";
                                      };
                                      label: string
                                      | null;
                                      observation_id: string;
                                      properties: Record<string, JSONType>;
                                  }[];
                              }
                              diff --git a/docs/api/interfaces/domain_permissionPolicy.PermissionGrant.html b/docs/api/interfaces/domain_permissionPolicy.PermissionGrant.html index bfdaf82aa..5ca1d1020 100644 --- a/docs/api/interfaces/domain_permissionPolicy.PermissionGrant.html +++ b/docs/api/interfaces/domain_permissionPolicy.PermissionGrant.html @@ -15,7 +15,7 @@

                              Authority issued beneath the administrator ceiling.

                              interface PermissionGrant {
                                  capability: PermissionCapability;
                                  environment_names: readonly string[];
                                  executables: readonly string[];
                                  expires_at: string | null;
                                  grant_id: string;
                                  lifetime: "once" | "session" | "project" | "administrator";
                                  mount: boolean;
                                  network: PermissionNetwork;
                                  operation_identity: string | null;
                                  origins?: readonly string[];
                                  roots: readonly string[];
                              }
                              -
                              +

                              Hierarchy (View Summary)

                              interface PermissionRequest {
                                  capability: PermissionCapability;
                                  environment_names: readonly string[];
                                  executables: readonly string[];
                                  mount: boolean;
                                  network: PermissionNetwork;
                                  operation_identity: string;
                                  origins?: readonly string[];
                                  roots: readonly string[];
                              }
                              -
                              +

                              Hierarchy (View Summary)

                              • PermissionScope diff --git a/docs/api/interfaces/domain_permissionPolicy.PermissionScope.html b/docs/api/interfaces/domain_permissionPolicy.PermissionScope.html index f22f665be..6aa86a674 100644 --- a/docs/api/interfaces/domain_permissionPolicy.PermissionScope.html +++ b/docs/api/interfaces/domain_permissionPolicy.PermissionScope.html @@ -15,7 +15,7 @@

                                Exact normalized scope requested by one local operation.

                              interface PermissionScope {
                                  capability: PermissionCapability;
                                  environment_names: readonly string[];
                                  executables: readonly string[];
                                  mount: boolean;
                                  network: PermissionNetwork;
                                  origins?: readonly string[];
                                  roots: readonly string[];
                              }
                              -
                              +

                              Hierarchy (View Summary)

                              • PermissionScope diff --git a/docs/api/interfaces/domain_webInventory.StableWebResource.html b/docs/api/interfaces/domain_webInventory.StableWebResource.html index 1dbde87f4..aef0a68fd 100644 --- a/docs/api/interfaces/domain_webInventory.StableWebResource.html +++ b/docs/api/interfaces/domain_webInventory.StableWebResource.html @@ -12,7 +12,7 @@
                              • StableWebResource

                              Interface StableWebResource

                              interface StableWebResource {
                                  content_size: number | null;
                                  mime_type: string;
                                  origin: string | null;
                                  resource_key: string;
                                  type: string;
                                  url: string;
                              }
                              -
                              +

                              Hierarchy (View Summary)

                              • WebInventoryResourceInput diff --git a/docs/api/interfaces/domain_webInventory.WebInventoryResourceInput.html b/docs/api/interfaces/domain_webInventory.WebInventoryResourceInput.html index 936a27743..f2b607520 100644 --- a/docs/api/interfaces/domain_webInventory.WebInventoryResourceInput.html +++ b/docs/api/interfaces/domain_webInventory.WebInventoryResourceInput.html @@ -12,7 +12,7 @@
                              • WebInventoryResourceInput

                              Interface WebInventoryResourceInput

                              interface WebInventoryResourceInput {
                                  content_size: number | null;
                                  mime_type: string;
                                  origin: string | null;
                                  type: string;
                                  url: string;
                              }
                              -
                              +

                              Hierarchy (View Summary)

                              • WebInventoryResourceInput diff --git a/docs/api/interfaces/ghidra_GhidraLauncher.GhidraLaunch.html b/docs/api/interfaces/ghidra_GhidraLauncher.GhidraLaunch.html index 2a26bb452..f8cddfa56 100644 --- a/docs/api/interfaces/ghidra_GhidraLauncher.GhidraLaunch.html +++ b/docs/api/interfaces/ghidra_GhidraLauncher.GhidraLaunch.html @@ -15,7 +15,7 @@

                                Process plus private log coordinates returned by a Ghidra launcher.

                              interface GhidraLaunch {
                                  cleanup?: () => Promise<ProcessCleanupResult>;
                                  ghidraLogPath: string;
                                  ownsProcessLifetime: boolean;
                                  process: ChildProcess;
                                  projectRoot: string;
                                  scriptLogPath: string;
                              }
                              -
                              +

                              Hierarchy (View Summary)

                              • ProviderProcessLaunch diff --git a/docs/api/interfaces/ghidra_GhidraSessionError.GhidraSessionErrorOptions.html b/docs/api/interfaces/ghidra_GhidraSessionError.GhidraSessionErrorOptions.html index 6984ad5bc..31d732015 100644 --- a/docs/api/interfaces/ghidra_GhidraSessionError.GhidraSessionErrorOptions.html +++ b/docs/api/interfaces/ghidra_GhidraSessionError.GhidraSessionErrorOptions.html @@ -15,7 +15,7 @@

                                Additional structured context for a Ghidra session failure.

                              interface GhidraSessionErrorOptions {
                                  remoteCode?: string;
                                  timeoutMs?: number;
                              }
                              -
                              +

                              Hierarchy

                              • ErrorOptions diff --git a/docs/api/interfaces/hopper_BridgeLauncher.BridgeLaunch.html b/docs/api/interfaces/hopper_BridgeLauncher.BridgeLaunch.html index 1979fe5ca..c917d5c88 100644 --- a/docs/api/interfaces/hopper_BridgeLauncher.BridgeLaunch.html +++ b/docs/api/interfaces/hopper_BridgeLauncher.BridgeLaunch.html @@ -15,7 +15,7 @@

                                Process handle returned by a bridge launcher.

                              interface BridgeLaunch {
                                  cleanup?: () => Promise<ProcessCleanupResult>;
                                  ownsProcessLifetime: boolean;
                                  process: ChildProcess;
                                  shutdownByCleanup?: boolean;
                              }
                              -
                              +

                              Hierarchy (View Summary)

                              • ProviderProcessLaunch diff --git a/docs/api/interfaces/process_ProviderProcess.ProviderProcessLaunch.html b/docs/api/interfaces/process_ProviderProcess.ProviderProcessLaunch.html index 3df9d777d..3cf60c195 100644 --- a/docs/api/interfaces/process_ProviderProcess.ProviderProcessLaunch.html +++ b/docs/api/interfaces/process_ProviderProcess.ProviderProcessLaunch.html @@ -15,7 +15,7 @@

                                Process handle returned by a provider-specific launcher.

                              interface ProviderProcessLaunch {
                                  cleanup?: () => Promise<ProcessCleanupResult>;
                                  ownsProcessLifetime: boolean;
                                  process: ChildProcess;
                              }
                              -
                              +

                              Hierarchy (View Summary)

                              @@ -39,52 +39,52 @@
                              analysisSnapshotFilePolicy?: EvidenceFilePolicy
                              +
                            • Defined in src/server/createServer.ts:29
                            • artifactIntegrityContinueEnabled?: () => boolean
                              +
                            • Defined in src/server/createServer.ts:33
                            • availabilityPolicy?: () => {
                                  browserObservationEnabled?: boolean;
                                  electronObservationEnabled?: boolean;
                                  evidenceFileRoots: number;
                                  processCaptureEnabled: boolean;
                              }
                              +
                            • Defined in src/server/createServer.ts:34
                            • browserObservation?: BrowserObservationPort
                              +
                            • Defined in src/server/createServer.ts:31
                            • electronObservation?: ElectronObservationPort
                              +
                            • Defined in src/server/createServer.ts:32
                            • evidenceFilePolicy?: EvidenceFilePolicy
                              +
                            • Defined in src/server/createServer.ts:27
                            • investigationInputRoots?: readonly string[]
                              +
                            • Defined in src/server/createServer.ts:28
                            • logger?: Logger
                              +
                            • Defined in src/server/createServer.ts:25
                            • permissionAuthority?: PermissionAuthority
                              +
                            • Defined in src/server/createServer.ts:30
                            • processPolicy?: ProcessExecutionPolicy
                              +
                            • Defined in src/server/createServer.ts:26
                            • -
                              JAVASCRIPT_RUNTIME_RECONCILIATION_EXAMPLE
                              +
                              JAVASCRIPT_APPLICATION_EVIDENCE_EXAMPLE
                              JAVASCRIPT_RUNTIME_RECONCILIATION_EXAMPLE
                              -
                              ToolKind:
                                  | "official-proxy"
                                  | "enhanced"
                                  | "native-provider"
                                  | "artifact-provider"
                                  | "browser-provider"
                                  | "electron-provider"
                                  | "session"
                              +
                              ToolKind:
                                  | "official-proxy"
                                  | "enhanced"
                                  | "native-provider"
                                  | "artifact-provider"
                                  | "browser-provider"
                                  | "electron-provider"
                                  | "application"
                                  | "session"

                              Adapter family responsible for implementing a public MCP tool.

                              +
                            • Defined in src/application/InvestigationProviders.ts:50
                            • +
                            • Defined in src/application/InvestigationProviders.ts:64
                            • +
                            • Defined in src/application/InvestigationProviders.ts:78
                            • +
                            • Defined in src/application/InvestigationProviders.ts:71
                            • +
                            • Defined in src/application/InvestigationProviders.ts:57
                            • +
                            • Defined in src/application/InvestigationProviders.ts:92
                            • +
                            • Defined in src/application/InvestigationProviders.ts:85
                            • +
                            • Defined in src/contracts/javascriptRuntimeReconciliationExample.ts:204
                            • +
                            • Defined in src/contracts/toolContracts.ts:346
                            • +
                            • Defined in src/contracts/toolContracts.ts:523
                            • +
                            • Defined in src/domain/javascriptApplicationEvidenceSchemas.ts:194
                            • +
                            • Defined in src/domain/javascriptApplicationEvidenceSchemas.ts:379
                            • -
                              applicationEdgeInputSchema: ZodObject<
                                  {
                                      evidence: ZodObject<
                                          {
                                              artifact: ZodDiscriminatedUnion<
                                                  [
                                                      ZodObject<
                                                          {
                                                              artifact_id: ZodString;
                                                              available: ZodLiteral<true>;
                                                              sha256: ZodString;
                                                          },
                                                          $strict,
                                                      >,
                                                      ZodObject<
                                                          {
                                                              available: ZodLiteral<false>;
                                                              detail: ZodString;
                                                              reason: ZodEnum<
                                                                  {
                                                                      "not-applicable": "not-applicable";
                                                                      "not-approved": "not-approved";
                                                                      "not-observed": "not-observed";
                                                                      "provider-unavailable": "provider-unavailable";
                                                                      truncated: "truncated";
                                                                      unknown: "unknown";
                                                                      unresolved: "unresolved";
                                                                  },
                                                              >;
                                                          },
                                                          $strict,
                                                      >,
                                                  ],
                                                  "available",
                                              >;
                                              authority: ZodEnum<
                                                  {
                                                      "artifact-bytes": "artifact-bytes";
                                                      "ast-static-analysis": "ast-static-analysis";
                                                      "controlled-replay": "controlled-replay";
                                                      "cross-layer-reconciliation": "cross-layer-reconciliation";
                                                      "historical-reference": "historical-reference";
                                                      "native-analysis-provider": "native-analysis-provider";
                                                      "passive-cdp-runtime": "passive-cdp-runtime";
                                                      "static-relationship-inference": "static-relationship-inference";
                                                      unknown: "unknown";
                                                      "user-assertion": "user-assertion";
                                                  },
                                              >;
                                              confidence: ZodEnum<
                                                  {
                                                      exact: "exact";
                                                      high: "high";
                                                      low: "low";
                                                      medium: "medium";
                                                      unknown: "unknown";
                                                  },
                                              >;
                                              coverage: ZodObject<
                                                  {
                                                      limits: ZodArray<
                                                          ZodObject<
                                                              {
                                                                  name: ZodString;
                                                                  unit: ZodEnum<
                                                                      {
                                                                          bytes: ...;
                                                                          characters: ...;
                                                                          depth: ...;
                                                                          instructions: ...;
                                                                          items: ...;
                                                                          milliseconds: ...;
                                                                          other: ...;
                                                                      },
                                                                  >;
                                                                  value: ZodNumber;
                                                              },
                                                              $strict,
                                                          >,
                                                      >;
                                                      omitted_count: ZodNullable<ZodNumber>;
                                                      status: ZodEnum<
                                                          {
                                                              complete: "complete";
                                                              partial: "partial";
                                                              unavailable: "unavailable";
                                                              unknown: "unknown";
                                                          },
                                                      >;
                                                      truncated: ZodBoolean;
                                                  },
                                                  $strict,
                                              >;
                                              evidence_ids: ZodArray<ZodString>;
                                              extractor: ZodObject<
                                                  {
                                                      executable_sha256: ZodNullable<ZodString>;
                                                      name: ZodString;
                                                      operation: ZodString;
                                                      version: ZodString;
                                                  },
                                                  $strict,
                                              >;
                                              limitations: ZodArray<ZodString>;
                                              location: ZodDiscriminatedUnion<
                                                  [
                                                      ZodObject<
                                                          {
                                                              available: ZodLiteral<true>;
                                                              value: ZodDiscriminatedUnion<
                                                                  [
                                                                      ZodObject<(...), (...)>,
                                                                      ZodObject<(...), (...)>,
                                                                      ZodObject<(...), (...)>,
                                                                      ZodObject<(...), (...)>,
                                                                  ],
                                                                  "kind",
                                                              >;
                                                          },
                                                          $strict,
                                                      >,
                                                      ZodObject<
                                                          {
                                                              available: ZodLiteral<false>;
                                                              detail: ZodString;
                                                              reason: ZodEnum<
                                                                  {
                                                                      "not-applicable": "not-applicable";
                                                                      "not-approved": "not-approved";
                                                                      "not-observed": "not-observed";
                                                                      "provider-unavailable": "provider-unavailable";
                                                                      truncated: "truncated";
                                                                      unknown: "unknown";
                                                                      unresolved: "unresolved";
                                                                  },
                                                              >;
                                                          },
                                                          $strict,
                                                      >,
                                                  ],
                                                  "available",
                                              >;
                                              state: ZodEnum<
                                                  {
                                                      inferred: "inferred";
                                                      observed: "observed";
                                                      unavailable: "unavailable";
                                                      unknown: "unknown";
                                                  },
                                              >;
                                          },
                                          $strict,
                                      >;
                                      properties: ZodRecord<ZodString, ZodJSONSchema>;
                                      relation: ZodEnum<
                                          {
                                              calls: "calls";
                                              changed_from: "changed_from";
                                              contains: "contains";
                                              exposes: "exposes";
                                              handles: "handles";
                                              imports: "imports";
                                              invokes: "invokes";
                                              loads: "loads";
                                              maps_to: "maps_to";
                                              observed_as: "observed_as";
                                              persists_to: "persists_to";
                                              sends: "sends";
                                          },
                                      >;
                                      source_node_id: ZodString;
                                      target_node_id: ZodString;
                                  },
                                  $strict,
                              > = ...
                              +
                              applicationEdgeInputSchema: ZodObject<
                                  {
                                      evidence: ZodObject<
                                          {
                                              artifact: ZodDiscriminatedUnion<
                                                  [
                                                      ZodObject<
                                                          {
                                                              artifact_id: ZodString;
                                                              available: ZodLiteral<true>;
                                                              sha256: ZodString;
                                                          },
                                                          $strict,
                                                      >,
                                                      ZodObject<
                                                          {
                                                              available: ZodLiteral<false>;
                                                              detail: ZodString;
                                                              reason: ZodEnum<
                                                                  {
                                                                      "not-applicable": "not-applicable";
                                                                      "not-approved": "not-approved";
                                                                      "not-observed": "not-observed";
                                                                      "provider-unavailable": "provider-unavailable";
                                                                      truncated: "truncated";
                                                                      unknown: "unknown";
                                                                      unresolved: "unresolved";
                                                                  },
                                                              >;
                                                          },
                                                          $strict,
                                                      >,
                                                  ],
                                                  "available",
                                              >;
                                              authority: ZodEnum<
                                                  {
                                                      "artifact-bytes": "artifact-bytes";
                                                      "ast-static-analysis": "ast-static-analysis";
                                                      "controlled-replay": "controlled-replay";
                                                      "cross-layer-reconciliation": "cross-layer-reconciliation";
                                                      "cross-version-comparison": "cross-version-comparison";
                                                      "historical-reference": "historical-reference";
                                                      "native-analysis-provider": "native-analysis-provider";
                                                      "passive-cdp-runtime": "passive-cdp-runtime";
                                                      "static-relationship-inference": "static-relationship-inference";
                                                      unknown: "unknown";
                                                      "user-assertion": "user-assertion";
                                                  },
                                              >;
                                              confidence: ZodEnum<
                                                  {
                                                      exact: "exact";
                                                      high: "high";
                                                      low: "low";
                                                      medium: "medium";
                                                      unknown: "unknown";
                                                  },
                                              >;
                                              coverage: ZodObject<
                                                  {
                                                      limits: ZodArray<
                                                          ZodObject<
                                                              {
                                                                  name: ZodString;
                                                                  unit: ZodEnum<
                                                                      {
                                                                          bytes: ...;
                                                                          characters: ...;
                                                                          depth: ...;
                                                                          instructions: ...;
                                                                          items: ...;
                                                                          milliseconds: ...;
                                                                          other: ...;
                                                                      },
                                                                  >;
                                                                  value: ZodNumber;
                                                              },
                                                              $strict,
                                                          >,
                                                      >;
                                                      omitted_count: ZodNullable<ZodNumber>;
                                                      status: ZodEnum<
                                                          {
                                                              complete: "complete";
                                                              partial: "partial";
                                                              unavailable: "unavailable";
                                                              unknown: "unknown";
                                                          },
                                                      >;
                                                      truncated: ZodBoolean;
                                                  },
                                                  $strict,
                                              >;
                                              evidence_ids: ZodArray<ZodString>;
                                              extractor: ZodObject<
                                                  {
                                                      executable_sha256: ZodNullable<ZodString>;
                                                      name: ZodString;
                                                      operation: ZodString;
                                                      version: ZodString;
                                                  },
                                                  $strict,
                                              >;
                                              limitations: ZodArray<ZodString>;
                                              location: ZodDiscriminatedUnion<
                                                  [
                                                      ZodObject<
                                                          {
                                                              available: ZodLiteral<true>;
                                                              value: ZodDiscriminatedUnion<
                                                                  [
                                                                      ZodObject<(...), (...)>,
                                                                      ZodObject<(...), (...)>,
                                                                      ZodObject<(...), (...)>,
                                                                      ZodObject<(...), (...)>,
                                                                  ],
                                                                  "kind",
                                                              >;
                                                          },
                                                          $strict,
                                                      >,
                                                      ZodObject<
                                                          {
                                                              available: ZodLiteral<false>;
                                                              detail: ZodString;
                                                              reason: ZodEnum<
                                                                  {
                                                                      "not-applicable": "not-applicable";
                                                                      "not-approved": "not-approved";
                                                                      "not-observed": "not-observed";
                                                                      "provider-unavailable": "provider-unavailable";
                                                                      truncated: "truncated";
                                                                      unknown: "unknown";
                                                                      unresolved: "unresolved";
                                                                  },
                                                              >;
                                                          },
                                                          $strict,
                                                      >,
                                                  ],
                                                  "available",
                                              >;
                                              state: ZodEnum<
                                                  {
                                                      inferred: "inferred";
                                                      observed: "observed";
                                                      unavailable: "unavailable";
                                                      unknown: "unknown";
                                                  },
                                              >;
                                          },
                                          $strict,
                                      >;
                                      properties: ZodRecord<ZodString, ZodJSONSchema>;
                                      relation: ZodEnum<
                                          {
                                              calls: "calls";
                                              changed_from: "changed_from";
                                              contains: "contains";
                                              exposes: "exposes";
                                              handles: "handles";
                                              imports: "imports";
                                              invokes: "invokes";
                                              loads: "loads";
                                              maps_to: "maps_to";
                                              observed_as: "observed_as";
                                              persists_to: "persists_to";
                                              sends: "sends";
                                          },
                                      >;
                                      source_node_id: ZodString;
                                      target_node_id: ZodString;
                                  },
                                  $strict,
                              > = ...

                              One directed relationship before its semantic identifier is derived.

                              -
                              applicationEdgeSchema: ZodObject<
                                  {
                                      edge_id: ZodString;
                                      evidence: ZodObject<
                                          {
                                              artifact: ZodDiscriminatedUnion<
                                                  [
                                                      ZodObject<
                                                          {
                                                              artifact_id: ZodString;
                                                              available: ZodLiteral<true>;
                                                              sha256: ZodString;
                                                          },
                                                          $strict,
                                                      >,
                                                      ZodObject<
                                                          {
                                                              available: ZodLiteral<false>;
                                                              detail: ZodString;
                                                              reason: ZodEnum<
                                                                  {
                                                                      "not-applicable": "not-applicable";
                                                                      "not-approved": "not-approved";
                                                                      "not-observed": "not-observed";
                                                                      "provider-unavailable": "provider-unavailable";
                                                                      truncated: "truncated";
                                                                      unknown: "unknown";
                                                                      unresolved: "unresolved";
                                                                  },
                                                              >;
                                                          },
                                                          $strict,
                                                      >,
                                                  ],
                                                  "available",
                                              >;
                                              authority: ZodEnum<
                                                  {
                                                      "artifact-bytes": "artifact-bytes";
                                                      "ast-static-analysis": "ast-static-analysis";
                                                      "controlled-replay": "controlled-replay";
                                                      "cross-layer-reconciliation": "cross-layer-reconciliation";
                                                      "historical-reference": "historical-reference";
                                                      "native-analysis-provider": "native-analysis-provider";
                                                      "passive-cdp-runtime": "passive-cdp-runtime";
                                                      "static-relationship-inference": "static-relationship-inference";
                                                      unknown: "unknown";
                                                      "user-assertion": "user-assertion";
                                                  },
                                              >;
                                              confidence: ZodEnum<
                                                  {
                                                      exact: "exact";
                                                      high: "high";
                                                      low: "low";
                                                      medium: "medium";
                                                      unknown: "unknown";
                                                  },
                                              >;
                                              coverage: ZodObject<
                                                  {
                                                      limits: ZodArray<
                                                          ZodObject<
                                                              {
                                                                  name: ZodString;
                                                                  unit: ZodEnum<
                                                                      {
                                                                          bytes: ...;
                                                                          characters: ...;
                                                                          depth: ...;
                                                                          instructions: ...;
                                                                          items: ...;
                                                                          milliseconds: ...;
                                                                          other: ...;
                                                                      },
                                                                  >;
                                                                  value: ZodNumber;
                                                              },
                                                              $strict,
                                                          >,
                                                      >;
                                                      omitted_count: ZodNullable<ZodNumber>;
                                                      status: ZodEnum<
                                                          {
                                                              complete: "complete";
                                                              partial: "partial";
                                                              unavailable: "unavailable";
                                                              unknown: "unknown";
                                                          },
                                                      >;
                                                      truncated: ZodBoolean;
                                                  },
                                                  $strict,
                                              >;
                                              evidence_ids: ZodArray<ZodString>;
                                              extractor: ZodObject<
                                                  {
                                                      executable_sha256: ZodNullable<ZodString>;
                                                      name: ZodString;
                                                      operation: ZodString;
                                                      version: ZodString;
                                                  },
                                                  $strict,
                                              >;
                                              limitations: ZodArray<ZodString>;
                                              location: ZodDiscriminatedUnion<
                                                  [
                                                      ZodObject<
                                                          {
                                                              available: ZodLiteral<true>;
                                                              value: ZodDiscriminatedUnion<
                                                                  [
                                                                      ZodObject<(...), (...)>,
                                                                      ZodObject<(...), (...)>,
                                                                      ZodObject<(...), (...)>,
                                                                      ZodObject<(...), (...)>,
                                                                  ],
                                                                  "kind",
                                                              >;
                                                          },
                                                          $strict,
                                                      >,
                                                      ZodObject<
                                                          {
                                                              available: ZodLiteral<false>;
                                                              detail: ZodString;
                                                              reason: ZodEnum<
                                                                  {
                                                                      "not-applicable": "not-applicable";
                                                                      "not-approved": "not-approved";
                                                                      "not-observed": "not-observed";
                                                                      "provider-unavailable": "provider-unavailable";
                                                                      truncated: "truncated";
                                                                      unknown: "unknown";
                                                                      unresolved: "unresolved";
                                                                  },
                                                              >;
                                                          },
                                                          $strict,
                                                      >,
                                                  ],
                                                  "available",
                                              >;
                                              state: ZodEnum<
                                                  {
                                                      inferred: "inferred";
                                                      observed: "observed";
                                                      unavailable: "unavailable";
                                                      unknown: "unknown";
                                                  },
                                              >;
                                          },
                                          $strict,
                                      >;
                                      identifier_strategy: ZodObject<
                                          {
                                              stability: ZodLiteral<"relationship-exact">;
                                              strategy: ZodLiteral<"semantic-content-sha256">;
                                          },
                                          $strict,
                                      >;
                                      properties: ZodRecord<ZodString, ZodJSONSchema>;
                                      relation: ZodEnum<
                                          {
                                              calls: "calls";
                                              changed_from: "changed_from";
                                              contains: "contains";
                                              exposes: "exposes";
                                              handles: "handles";
                                              imports: "imports";
                                              invokes: "invokes";
                                              loads: "loads";
                                              maps_to: "maps_to";
                                              observed_as: "observed_as";
                                              persists_to: "persists_to";
                                              sends: "sends";
                                          },
                                      >;
                                      source_node_id: ZodString;
                                      target_node_id: ZodString;
                                  },
                                  $strict,
                              > = ...
                              +
                              applicationEdgeSchema: ZodObject<
                                  {
                                      edge_id: ZodString;
                                      evidence: ZodObject<
                                          {
                                              artifact: ZodDiscriminatedUnion<
                                                  [
                                                      ZodObject<
                                                          {
                                                              artifact_id: ZodString;
                                                              available: ZodLiteral<true>;
                                                              sha256: ZodString;
                                                          },
                                                          $strict,
                                                      >,
                                                      ZodObject<
                                                          {
                                                              available: ZodLiteral<false>;
                                                              detail: ZodString;
                                                              reason: ZodEnum<
                                                                  {
                                                                      "not-applicable": "not-applicable";
                                                                      "not-approved": "not-approved";
                                                                      "not-observed": "not-observed";
                                                                      "provider-unavailable": "provider-unavailable";
                                                                      truncated: "truncated";
                                                                      unknown: "unknown";
                                                                      unresolved: "unresolved";
                                                                  },
                                                              >;
                                                          },
                                                          $strict,
                                                      >,
                                                  ],
                                                  "available",
                                              >;
                                              authority: ZodEnum<
                                                  {
                                                      "artifact-bytes": "artifact-bytes";
                                                      "ast-static-analysis": "ast-static-analysis";
                                                      "controlled-replay": "controlled-replay";
                                                      "cross-layer-reconciliation": "cross-layer-reconciliation";
                                                      "cross-version-comparison": "cross-version-comparison";
                                                      "historical-reference": "historical-reference";
                                                      "native-analysis-provider": "native-analysis-provider";
                                                      "passive-cdp-runtime": "passive-cdp-runtime";
                                                      "static-relationship-inference": "static-relationship-inference";
                                                      unknown: "unknown";
                                                      "user-assertion": "user-assertion";
                                                  },
                                              >;
                                              confidence: ZodEnum<
                                                  {
                                                      exact: "exact";
                                                      high: "high";
                                                      low: "low";
                                                      medium: "medium";
                                                      unknown: "unknown";
                                                  },
                                              >;
                                              coverage: ZodObject<
                                                  {
                                                      limits: ZodArray<
                                                          ZodObject<
                                                              {
                                                                  name: ZodString;
                                                                  unit: ZodEnum<
                                                                      {
                                                                          bytes: ...;
                                                                          characters: ...;
                                                                          depth: ...;
                                                                          instructions: ...;
                                                                          items: ...;
                                                                          milliseconds: ...;
                                                                          other: ...;
                                                                      },
                                                                  >;
                                                                  value: ZodNumber;
                                                              },
                                                              $strict,
                                                          >,
                                                      >;
                                                      omitted_count: ZodNullable<ZodNumber>;
                                                      status: ZodEnum<
                                                          {
                                                              complete: "complete";
                                                              partial: "partial";
                                                              unavailable: "unavailable";
                                                              unknown: "unknown";
                                                          },
                                                      >;
                                                      truncated: ZodBoolean;
                                                  },
                                                  $strict,
                                              >;
                                              evidence_ids: ZodArray<ZodString>;
                                              extractor: ZodObject<
                                                  {
                                                      executable_sha256: ZodNullable<ZodString>;
                                                      name: ZodString;
                                                      operation: ZodString;
                                                      version: ZodString;
                                                  },
                                                  $strict,
                                              >;
                                              limitations: ZodArray<ZodString>;
                                              location: ZodDiscriminatedUnion<
                                                  [
                                                      ZodObject<
                                                          {
                                                              available: ZodLiteral<true>;
                                                              value: ZodDiscriminatedUnion<
                                                                  [
                                                                      ZodObject<(...), (...)>,
                                                                      ZodObject<(...), (...)>,
                                                                      ZodObject<(...), (...)>,
                                                                      ZodObject<(...), (...)>,
                                                                  ],
                                                                  "kind",
                                                              >;
                                                          },
                                                          $strict,
                                                      >,
                                                      ZodObject<
                                                          {
                                                              available: ZodLiteral<false>;
                                                              detail: ZodString;
                                                              reason: ZodEnum<
                                                                  {
                                                                      "not-applicable": "not-applicable";
                                                                      "not-approved": "not-approved";
                                                                      "not-observed": "not-observed";
                                                                      "provider-unavailable": "provider-unavailable";
                                                                      truncated: "truncated";
                                                                      unknown: "unknown";
                                                                      unresolved: "unresolved";
                                                                  },
                                                              >;
                                                          },
                                                          $strict,
                                                      >,
                                                  ],
                                                  "available",
                                              >;
                                              state: ZodEnum<
                                                  {
                                                      inferred: "inferred";
                                                      observed: "observed";
                                                      unavailable: "unavailable";
                                                      unknown: "unknown";
                                                  },
                                              >;
                                          },
                                          $strict,
                                      >;
                                      identifier_strategy: ZodObject<
                                          {
                                              stability: ZodLiteral<"relationship-exact">;
                                              strategy: ZodLiteral<"semantic-content-sha256">;
                                          },
                                          $strict,
                                      >;
                                      properties: ZodRecord<ZodString, ZodJSONSchema>;
                                      relation: ZodEnum<
                                          {
                                              calls: "calls";
                                              changed_from: "changed_from";
                                              contains: "contains";
                                              exposes: "exposes";
                                              handles: "handles";
                                              imports: "imports";
                                              invokes: "invokes";
                                              loads: "loads";
                                              maps_to: "maps_to";
                                              observed_as: "observed_as";
                                              persists_to: "persists_to";
                                              sends: "sends";
                                          },
                                      >;
                                      source_node_id: ZodString;
                                      target_node_id: ZodString;
                                  },
                                  $strict,
                              > = ...

                              One directed, evidence-bearing application relationship.

                              -
                              applicationNodeInputSchema: ZodObject<
                                  {
                                      identity: ZodDiscriminatedUnion<
                                          [
                                              ZodObject<
                                                  {
                                                      sha256: ZodString;
                                                      stability: ZodLiteral<"global-exact">;
                                                      strategy: ZodLiteral<"content-digest">;
                                                  },
                                                  $strict,
                                              >,
                                              ZodObject<
                                                  {
                                                      original_source: ZodString;
                                                      source_map_sha256: ZodString;
                                                      source_sha256: ZodNullable<ZodString>;
                                                      stability: ZodLiteral<"source-map-exact">;
                                                      strategy: ZodLiteral<"source-map-original">;
                                                  },
                                                  $strict,
                                              >,
                                              ZodObject<
                                                  {
                                                      artifact_sha256: ZodString;
                                                      path: ZodString;
                                                      stability: ZodLiteral<"artifact-version">;
                                                      strategy: ZodLiteral<"canonical-path">;
                                                  },
                                                  $strict,
                                              >,
                                          ],
                                          "strategy",
                                      >;
                                      kind: ZodEnum<
                                          {
                                              artifact: "artifact";
                                              "asar-entry": "asar-entry";
                                              "browser-window": "browser-window";
                                              "context-bridge-api": "context-bridge-api";
                                              "electron-main": "electron-main";
                                              "electron-preload": "electron-preload";
                                              "electron-renderer": "electron-renderer";
                                              "electron-utility": "electron-utility";
                                              endpoint: "endpoint";
                                              frame: "frame";
                                              installer: "installer";
                                              "ipc-channel": "ipc-channel";
                                              "ipc-handler": "ipc-handler";
                                              "javascript-asset": "javascript-asset";
                                              "javascript-chunk": "javascript-chunk";
                                              "javascript-module": "javascript-module";
                                              "native-addon": "native-addon";
                                              "native-export": "native-export";
                                              package: "package";
                                              "runtime-script-instance": "runtime-script-instance";
                                              "service-worker": "service-worker";
                                              "source-map": "source-map";
                                              "source-module": "source-module";
                                              storage: "storage";
                                              target: "target";
                                              unknown: "unknown";
                                              worker: "worker";
                                          },
                                      >;
                                      observations: ZodArray<
                                          ZodObject<
                                              {
                                                  evidence: ZodObject<
                                                      {
                                                          artifact: ZodDiscriminatedUnion<
                                                              [
                                                                  ZodObject<
                                                                      { artifact_id: ...; available: ...; sha256: ... },
                                                                      $strict,
                                                                  >,
                                                                  ZodObject<{ available: ...; detail: ...; reason: ... }, $strict>,
                                                              ],
                                                              "available",
                                                          >;
                                                          authority: ZodEnum<
                                                              {
                                                                  "artifact-bytes": "artifact-bytes";
                                                                  "ast-static-analysis": "ast-static-analysis";
                                                                  "controlled-replay": "controlled-replay";
                                                                  "cross-layer-reconciliation": "cross-layer-reconciliation";
                                                                  "historical-reference": "historical-reference";
                                                                  "native-analysis-provider": "native-analysis-provider";
                                                                  "passive-cdp-runtime": "passive-cdp-runtime";
                                                                  "static-relationship-inference": "static-relationship-inference";
                                                                  unknown: "unknown";
                                                                  "user-assertion": "user-assertion";
                                                              },
                                                          >;
                                                          confidence: ZodEnum<
                                                              {
                                                                  exact: "exact";
                                                                  high: "high";
                                                                  low: "low";
                                                                  medium: "medium";
                                                                  unknown: "unknown";
                                                              },
                                                          >;
                                                          coverage: ZodObject<
                                                              {
                                                                  limits: ZodArray<ZodObject<(...), (...)>>;
                                                                  omitted_count: ZodNullable<ZodNumber>;
                                                                  status: ZodEnum<
                                                                      { complete: ...; partial: ...; unavailable: ...; unknown: ... },
                                                                  >;
                                                                  truncated: ZodBoolean;
                                                              },
                                                              $strict,
                                                          >;
                                                          evidence_ids: ZodArray<ZodString>;
                                                          extractor: ZodObject<
                                                              {
                                                                  executable_sha256: ZodNullable<ZodString>;
                                                                  name: ZodString;
                                                                  operation: ZodString;
                                                                  version: ZodString;
                                                              },
                                                              $strict,
                                                          >;
                                                          limitations: ZodArray<ZodString>;
                                                          location: ZodDiscriminatedUnion<
                                                              [
                                                                  ZodObject<{ available: ...; value: ... }, $strict>,
                                                                  ZodObject<{ available: ...; detail: ...; reason: ... }, $strict>,
                                                              ],
                                                              "available",
                                                          >;
                                                          state: ZodEnum<
                                                              {
                                                                  inferred: "inferred";
                                                                  observed: "observed";
                                                                  unavailable: "unavailable";
                                                                  unknown: "unknown";
                                                              },
                                                          >;
                                                      },
                                                      $strict,
                                                  >;
                                                  label: ZodNullable<ZodString>;
                                                  properties: ZodRecord<ZodString, ZodJSONSchema>;
                                              },
                                              $strict,
                                          >,
                                      >;
                                  },
                                  $strict,
                              > = ...
                              +
                              applicationNodeInputSchema: ZodObject<
                                  {
                                      identity: ZodDiscriminatedUnion<
                                          [
                                              ZodObject<
                                                  {
                                                      sha256: ZodString;
                                                      stability: ZodLiteral<"global-exact">;
                                                      strategy: ZodLiteral<"content-digest">;
                                                  },
                                                  $strict,
                                              >,
                                              ZodObject<
                                                  {
                                                      original_source: ZodString;
                                                      source_map_sha256: ZodString;
                                                      source_sha256: ZodNullable<ZodString>;
                                                      stability: ZodLiteral<"source-map-exact">;
                                                      strategy: ZodLiteral<"source-map-original">;
                                                  },
                                                  $strict,
                                              >,
                                              ZodObject<
                                                  {
                                                      artifact_sha256: ZodString;
                                                      path: ZodString;
                                                      stability: ZodLiteral<"artifact-version">;
                                                      strategy: ZodLiteral<"canonical-path">;
                                                  },
                                                  $strict,
                                              >,
                                          ],
                                          "strategy",
                                      >;
                                      kind: ZodEnum<
                                          {
                                              artifact: "artifact";
                                              "asar-entry": "asar-entry";
                                              "browser-window": "browser-window";
                                              "context-bridge-api": "context-bridge-api";
                                              "electron-main": "electron-main";
                                              "electron-preload": "electron-preload";
                                              "electron-renderer": "electron-renderer";
                                              "electron-utility": "electron-utility";
                                              endpoint: "endpoint";
                                              frame: "frame";
                                              installer: "installer";
                                              "ipc-channel": "ipc-channel";
                                              "ipc-handler": "ipc-handler";
                                              "javascript-asset": "javascript-asset";
                                              "javascript-chunk": "javascript-chunk";
                                              "javascript-module": "javascript-module";
                                              "native-addon": "native-addon";
                                              "native-export": "native-export";
                                              package: "package";
                                              "runtime-script-instance": "runtime-script-instance";
                                              "service-worker": "service-worker";
                                              "source-map": "source-map";
                                              "source-module": "source-module";
                                              storage: "storage";
                                              target: "target";
                                              unknown: "unknown";
                                              worker: "worker";
                                          },
                                      >;
                                      observations: ZodArray<
                                          ZodObject<
                                              {
                                                  evidence: ZodObject<
                                                      {
                                                          artifact: ZodDiscriminatedUnion<
                                                              [
                                                                  ZodObject<
                                                                      { artifact_id: ...; available: ...; sha256: ... },
                                                                      $strict,
                                                                  >,
                                                                  ZodObject<{ available: ...; detail: ...; reason: ... }, $strict>,
                                                              ],
                                                              "available",
                                                          >;
                                                          authority: ZodEnum<
                                                              {
                                                                  "artifact-bytes": "artifact-bytes";
                                                                  "ast-static-analysis": "ast-static-analysis";
                                                                  "controlled-replay": "controlled-replay";
                                                                  "cross-layer-reconciliation": "cross-layer-reconciliation";
                                                                  "cross-version-comparison": "cross-version-comparison";
                                                                  "historical-reference": "historical-reference";
                                                                  "native-analysis-provider": "native-analysis-provider";
                                                                  "passive-cdp-runtime": "passive-cdp-runtime";
                                                                  "static-relationship-inference": "static-relationship-inference";
                                                                  unknown: "unknown";
                                                                  "user-assertion": "user-assertion";
                                                              },
                                                          >;
                                                          confidence: ZodEnum<
                                                              {
                                                                  exact: "exact";
                                                                  high: "high";
                                                                  low: "low";
                                                                  medium: "medium";
                                                                  unknown: "unknown";
                                                              },
                                                          >;
                                                          coverage: ZodObject<
                                                              {
                                                                  limits: ZodArray<ZodObject<(...), (...)>>;
                                                                  omitted_count: ZodNullable<ZodNumber>;
                                                                  status: ZodEnum<
                                                                      { complete: ...; partial: ...; unavailable: ...; unknown: ... },
                                                                  >;
                                                                  truncated: ZodBoolean;
                                                              },
                                                              $strict,
                                                          >;
                                                          evidence_ids: ZodArray<ZodString>;
                                                          extractor: ZodObject<
                                                              {
                                                                  executable_sha256: ZodNullable<ZodString>;
                                                                  name: ZodString;
                                                                  operation: ZodString;
                                                                  version: ZodString;
                                                              },
                                                              $strict,
                                                          >;
                                                          limitations: ZodArray<ZodString>;
                                                          location: ZodDiscriminatedUnion<
                                                              [
                                                                  ZodObject<{ available: ...; value: ... }, $strict>,
                                                                  ZodObject<{ available: ...; detail: ...; reason: ... }, $strict>,
                                                              ],
                                                              "available",
                                                          >;
                                                          state: ZodEnum<
                                                              {
                                                                  inferred: "inferred";
                                                                  observed: "observed";
                                                                  unavailable: "unavailable";
                                                                  unknown: "unknown";
                                                              },
                                                          >;
                                                      },
                                                      $strict,
                                                  >;
                                                  label: ZodNullable<ZodString>;
                                                  properties: ZodRecord<ZodString, ZodJSONSchema>;
                                              },
                                              $strict,
                                          >,
                                      >;
                                  },
                                  $strict,
                              > = ...

                              One application entity before its stable identifier is derived.

                              -
                              applicationNodeObservationSchema: ZodObject<
                                  {
                                      evidence: ZodObject<
                                          {
                                              artifact: ZodDiscriminatedUnion<
                                                  [
                                                      ZodObject<
                                                          {
                                                              artifact_id: ZodString;
                                                              available: ZodLiteral<true>;
                                                              sha256: ZodString;
                                                          },
                                                          $strict,
                                                      >,
                                                      ZodObject<
                                                          {
                                                              available: ZodLiteral<false>;
                                                              detail: ZodString;
                                                              reason: ZodEnum<
                                                                  {
                                                                      "not-applicable": "not-applicable";
                                                                      "not-approved": "not-approved";
                                                                      "not-observed": "not-observed";
                                                                      "provider-unavailable": "provider-unavailable";
                                                                      truncated: "truncated";
                                                                      unknown: "unknown";
                                                                      unresolved: "unresolved";
                                                                  },
                                                              >;
                                                          },
                                                          $strict,
                                                      >,
                                                  ],
                                                  "available",
                                              >;
                                              authority: ZodEnum<
                                                  {
                                                      "artifact-bytes": "artifact-bytes";
                                                      "ast-static-analysis": "ast-static-analysis";
                                                      "controlled-replay": "controlled-replay";
                                                      "cross-layer-reconciliation": "cross-layer-reconciliation";
                                                      "historical-reference": "historical-reference";
                                                      "native-analysis-provider": "native-analysis-provider";
                                                      "passive-cdp-runtime": "passive-cdp-runtime";
                                                      "static-relationship-inference": "static-relationship-inference";
                                                      unknown: "unknown";
                                                      "user-assertion": "user-assertion";
                                                  },
                                              >;
                                              confidence: ZodEnum<
                                                  {
                                                      exact: "exact";
                                                      high: "high";
                                                      low: "low";
                                                      medium: "medium";
                                                      unknown: "unknown";
                                                  },
                                              >;
                                              coverage: ZodObject<
                                                  {
                                                      limits: ZodArray<
                                                          ZodObject<
                                                              {
                                                                  name: ZodString;
                                                                  unit: ZodEnum<
                                                                      {
                                                                          bytes: ...;
                                                                          characters: ...;
                                                                          depth: ...;
                                                                          instructions: ...;
                                                                          items: ...;
                                                                          milliseconds: ...;
                                                                          other: ...;
                                                                      },
                                                                  >;
                                                                  value: ZodNumber;
                                                              },
                                                              $strict,
                                                          >,
                                                      >;
                                                      omitted_count: ZodNullable<ZodNumber>;
                                                      status: ZodEnum<
                                                          {
                                                              complete: "complete";
                                                              partial: "partial";
                                                              unavailable: "unavailable";
                                                              unknown: "unknown";
                                                          },
                                                      >;
                                                      truncated: ZodBoolean;
                                                  },
                                                  $strict,
                                              >;
                                              evidence_ids: ZodArray<ZodString>;
                                              extractor: ZodObject<
                                                  {
                                                      executable_sha256: ZodNullable<ZodString>;
                                                      name: ZodString;
                                                      operation: ZodString;
                                                      version: ZodString;
                                                  },
                                                  $strict,
                                              >;
                                              limitations: ZodArray<ZodString>;
                                              location: ZodDiscriminatedUnion<
                                                  [
                                                      ZodObject<
                                                          {
                                                              available: ZodLiteral<true>;
                                                              value: ZodDiscriminatedUnion<
                                                                  [
                                                                      ZodObject<(...), (...)>,
                                                                      ZodObject<(...), (...)>,
                                                                      ZodObject<(...), (...)>,
                                                                      ZodObject<(...), (...)>,
                                                                  ],
                                                                  "kind",
                                                              >;
                                                          },
                                                          $strict,
                                                      >,
                                                      ZodObject<
                                                          {
                                                              available: ZodLiteral<false>;
                                                              detail: ZodString;
                                                              reason: ZodEnum<
                                                                  {
                                                                      "not-applicable": "not-applicable";
                                                                      "not-approved": "not-approved";
                                                                      "not-observed": "not-observed";
                                                                      "provider-unavailable": "provider-unavailable";
                                                                      truncated: "truncated";
                                                                      unknown: "unknown";
                                                                      unresolved: "unresolved";
                                                                  },
                                                              >;
                                                          },
                                                          $strict,
                                                      >,
                                                  ],
                                                  "available",
                                              >;
                                              state: ZodEnum<
                                                  {
                                                      inferred: "inferred";
                                                      observed: "observed";
                                                      unavailable: "unavailable";
                                                      unknown: "unknown";
                                                  },
                                              >;
                                          },
                                          $strict,
                                      >;
                                      identifier_strategy: ZodObject<
                                          {
                                              stability: ZodLiteral<"observation-exact">;
                                              strategy: ZodLiteral<"semantic-content-sha256">;
                                          },
                                          $strict,
                                      >;
                                      label: ZodNullable<ZodString>;
                                      observation_id: ZodString;
                                      properties: ZodRecord<ZodString, ZodJSONSchema>;
                                  },
                                  $strict,
                              > = ...
                              +
                              applicationNodeObservationSchema: ZodObject<
                                  {
                                      evidence: ZodObject<
                                          {
                                              artifact: ZodDiscriminatedUnion<
                                                  [
                                                      ZodObject<
                                                          {
                                                              artifact_id: ZodString;
                                                              available: ZodLiteral<true>;
                                                              sha256: ZodString;
                                                          },
                                                          $strict,
                                                      >,
                                                      ZodObject<
                                                          {
                                                              available: ZodLiteral<false>;
                                                              detail: ZodString;
                                                              reason: ZodEnum<
                                                                  {
                                                                      "not-applicable": "not-applicable";
                                                                      "not-approved": "not-approved";
                                                                      "not-observed": "not-observed";
                                                                      "provider-unavailable": "provider-unavailable";
                                                                      truncated: "truncated";
                                                                      unknown: "unknown";
                                                                      unresolved: "unresolved";
                                                                  },
                                                              >;
                                                          },
                                                          $strict,
                                                      >,
                                                  ],
                                                  "available",
                                              >;
                                              authority: ZodEnum<
                                                  {
                                                      "artifact-bytes": "artifact-bytes";
                                                      "ast-static-analysis": "ast-static-analysis";
                                                      "controlled-replay": "controlled-replay";
                                                      "cross-layer-reconciliation": "cross-layer-reconciliation";
                                                      "cross-version-comparison": "cross-version-comparison";
                                                      "historical-reference": "historical-reference";
                                                      "native-analysis-provider": "native-analysis-provider";
                                                      "passive-cdp-runtime": "passive-cdp-runtime";
                                                      "static-relationship-inference": "static-relationship-inference";
                                                      unknown: "unknown";
                                                      "user-assertion": "user-assertion";
                                                  },
                                              >;
                                              confidence: ZodEnum<
                                                  {
                                                      exact: "exact";
                                                      high: "high";
                                                      low: "low";
                                                      medium: "medium";
                                                      unknown: "unknown";
                                                  },
                                              >;
                                              coverage: ZodObject<
                                                  {
                                                      limits: ZodArray<
                                                          ZodObject<
                                                              {
                                                                  name: ZodString;
                                                                  unit: ZodEnum<
                                                                      {
                                                                          bytes: ...;
                                                                          characters: ...;
                                                                          depth: ...;
                                                                          instructions: ...;
                                                                          items: ...;
                                                                          milliseconds: ...;
                                                                          other: ...;
                                                                      },
                                                                  >;
                                                                  value: ZodNumber;
                                                              },
                                                              $strict,
                                                          >,
                                                      >;
                                                      omitted_count: ZodNullable<ZodNumber>;
                                                      status: ZodEnum<
                                                          {
                                                              complete: "complete";
                                                              partial: "partial";
                                                              unavailable: "unavailable";
                                                              unknown: "unknown";
                                                          },
                                                      >;
                                                      truncated: ZodBoolean;
                                                  },
                                                  $strict,
                                              >;
                                              evidence_ids: ZodArray<ZodString>;
                                              extractor: ZodObject<
                                                  {
                                                      executable_sha256: ZodNullable<ZodString>;
                                                      name: ZodString;
                                                      operation: ZodString;
                                                      version: ZodString;
                                                  },
                                                  $strict,
                                              >;
                                              limitations: ZodArray<ZodString>;
                                              location: ZodDiscriminatedUnion<
                                                  [
                                                      ZodObject<
                                                          {
                                                              available: ZodLiteral<true>;
                                                              value: ZodDiscriminatedUnion<
                                                                  [
                                                                      ZodObject<(...), (...)>,
                                                                      ZodObject<(...), (...)>,
                                                                      ZodObject<(...), (...)>,
                                                                      ZodObject<(...), (...)>,
                                                                  ],
                                                                  "kind",
                                                              >;
                                                          },
                                                          $strict,
                                                      >,
                                                      ZodObject<
                                                          {
                                                              available: ZodLiteral<false>;
                                                              detail: ZodString;
                                                              reason: ZodEnum<
                                                                  {
                                                                      "not-applicable": "not-applicable";
                                                                      "not-approved": "not-approved";
                                                                      "not-observed": "not-observed";
                                                                      "provider-unavailable": "provider-unavailable";
                                                                      truncated: "truncated";
                                                                      unknown: "unknown";
                                                                      unresolved: "unresolved";
                                                                  },
                                                              >;
                                                          },
                                                          $strict,
                                                      >,
                                                  ],
                                                  "available",
                                              >;
                                              state: ZodEnum<
                                                  {
                                                      inferred: "inferred";
                                                      observed: "observed";
                                                      unavailable: "unavailable";
                                                      unknown: "unknown";
                                                  },
                                              >;
                                          },
                                          $strict,
                                      >;
                                      identifier_strategy: ZodObject<
                                          {
                                              stability: ZodLiteral<"observation-exact">;
                                              strategy: ZodLiteral<"semantic-content-sha256">;
                                          },
                                          $strict,
                                      >;
                                      label: ZodNullable<ZodString>;
                                      observation_id: ZodString;
                                      properties: ZodRecord<ZodString, ZodJSONSchema>;
                                  },
                                  $strict,
                              > = ...

                              One immutable, evidence-bearing observation attached to an entity.

                              -
                              applicationNodeSchema: ZodObject<
                                  {
                                      identity: ZodDiscriminatedUnion<
                                          [
                                              ZodObject<
                                                  {
                                                      sha256: ZodString;
                                                      stability: ZodLiteral<"global-exact">;
                                                      strategy: ZodLiteral<"content-digest">;
                                                  },
                                                  $strict,
                                              >,
                                              ZodObject<
                                                  {
                                                      original_source: ZodString;
                                                      source_map_sha256: ZodString;
                                                      source_sha256: ZodNullable<ZodString>;
                                                      stability: ZodLiteral<"source-map-exact">;
                                                      strategy: ZodLiteral<"source-map-original">;
                                                  },
                                                  $strict,
                                              >,
                                              ZodObject<
                                                  {
                                                      artifact_sha256: ZodString;
                                                      path: ZodString;
                                                      stability: ZodLiteral<"artifact-version">;
                                                      strategy: ZodLiteral<"canonical-path">;
                                                  },
                                                  $strict,
                                              >,
                                          ],
                                          "strategy",
                                      >;
                                      kind: ZodEnum<
                                          {
                                              artifact: "artifact";
                                              "asar-entry": "asar-entry";
                                              "browser-window": "browser-window";
                                              "context-bridge-api": "context-bridge-api";
                                              "electron-main": "electron-main";
                                              "electron-preload": "electron-preload";
                                              "electron-renderer": "electron-renderer";
                                              "electron-utility": "electron-utility";
                                              endpoint: "endpoint";
                                              frame: "frame";
                                              installer: "installer";
                                              "ipc-channel": "ipc-channel";
                                              "ipc-handler": "ipc-handler";
                                              "javascript-asset": "javascript-asset";
                                              "javascript-chunk": "javascript-chunk";
                                              "javascript-module": "javascript-module";
                                              "native-addon": "native-addon";
                                              "native-export": "native-export";
                                              package: "package";
                                              "runtime-script-instance": "runtime-script-instance";
                                              "service-worker": "service-worker";
                                              "source-map": "source-map";
                                              "source-module": "source-module";
                                              storage: "storage";
                                              target: "target";
                                              unknown: "unknown";
                                              worker: "worker";
                                          },
                                      >;
                                      node_id: ZodString;
                                      observations: ZodArray<
                                          ZodObject<
                                              {
                                                  evidence: ZodObject<
                                                      {
                                                          artifact: ZodDiscriminatedUnion<
                                                              [
                                                                  ZodObject<
                                                                      { artifact_id: ...; available: ...; sha256: ... },
                                                                      $strict,
                                                                  >,
                                                                  ZodObject<{ available: ...; detail: ...; reason: ... }, $strict>,
                                                              ],
                                                              "available",
                                                          >;
                                                          authority: ZodEnum<
                                                              {
                                                                  "artifact-bytes": "artifact-bytes";
                                                                  "ast-static-analysis": "ast-static-analysis";
                                                                  "controlled-replay": "controlled-replay";
                                                                  "cross-layer-reconciliation": "cross-layer-reconciliation";
                                                                  "historical-reference": "historical-reference";
                                                                  "native-analysis-provider": "native-analysis-provider";
                                                                  "passive-cdp-runtime": "passive-cdp-runtime";
                                                                  "static-relationship-inference": "static-relationship-inference";
                                                                  unknown: "unknown";
                                                                  "user-assertion": "user-assertion";
                                                              },
                                                          >;
                                                          confidence: ZodEnum<
                                                              {
                                                                  exact: "exact";
                                                                  high: "high";
                                                                  low: "low";
                                                                  medium: "medium";
                                                                  unknown: "unknown";
                                                              },
                                                          >;
                                                          coverage: ZodObject<
                                                              {
                                                                  limits: ZodArray<ZodObject<(...), (...)>>;
                                                                  omitted_count: ZodNullable<ZodNumber>;
                                                                  status: ZodEnum<
                                                                      { complete: ...; partial: ...; unavailable: ...; unknown: ... },
                                                                  >;
                                                                  truncated: ZodBoolean;
                                                              },
                                                              $strict,
                                                          >;
                                                          evidence_ids: ZodArray<ZodString>;
                                                          extractor: ZodObject<
                                                              {
                                                                  executable_sha256: ZodNullable<ZodString>;
                                                                  name: ZodString;
                                                                  operation: ZodString;
                                                                  version: ZodString;
                                                              },
                                                              $strict,
                                                          >;
                                                          limitations: ZodArray<ZodString>;
                                                          location: ZodDiscriminatedUnion<
                                                              [
                                                                  ZodObject<{ available: ...; value: ... }, $strict>,
                                                                  ZodObject<{ available: ...; detail: ...; reason: ... }, $strict>,
                                                              ],
                                                              "available",
                                                          >;
                                                          state: ZodEnum<
                                                              {
                                                                  inferred: "inferred";
                                                                  observed: "observed";
                                                                  unavailable: "unavailable";
                                                                  unknown: "unknown";
                                                              },
                                                          >;
                                                      },
                                                      $strict,
                                                  >;
                                                  identifier_strategy: ZodObject<
                                                      {
                                                          stability: ZodLiteral<"observation-exact">;
                                                          strategy: ZodLiteral<"semantic-content-sha256">;
                                                      },
                                                      $strict,
                                                  >;
                                                  label: ZodNullable<ZodString>;
                                                  observation_id: ZodString;
                                                  properties: ZodRecord<ZodString, ZodJSONSchema>;
                                              },
                                              $strict,
                                          >,
                                      >;
                                  },
                                  $strict,
                              > = ...
                              +
                              applicationNodeSchema: ZodObject<
                                  {
                                      identity: ZodDiscriminatedUnion<
                                          [
                                              ZodObject<
                                                  {
                                                      sha256: ZodString;
                                                      stability: ZodLiteral<"global-exact">;
                                                      strategy: ZodLiteral<"content-digest">;
                                                  },
                                                  $strict,
                                              >,
                                              ZodObject<
                                                  {
                                                      original_source: ZodString;
                                                      source_map_sha256: ZodString;
                                                      source_sha256: ZodNullable<ZodString>;
                                                      stability: ZodLiteral<"source-map-exact">;
                                                      strategy: ZodLiteral<"source-map-original">;
                                                  },
                                                  $strict,
                                              >,
                                              ZodObject<
                                                  {
                                                      artifact_sha256: ZodString;
                                                      path: ZodString;
                                                      stability: ZodLiteral<"artifact-version">;
                                                      strategy: ZodLiteral<"canonical-path">;
                                                  },
                                                  $strict,
                                              >,
                                          ],
                                          "strategy",
                                      >;
                                      kind: ZodEnum<
                                          {
                                              artifact: "artifact";
                                              "asar-entry": "asar-entry";
                                              "browser-window": "browser-window";
                                              "context-bridge-api": "context-bridge-api";
                                              "electron-main": "electron-main";
                                              "electron-preload": "electron-preload";
                                              "electron-renderer": "electron-renderer";
                                              "electron-utility": "electron-utility";
                                              endpoint: "endpoint";
                                              frame: "frame";
                                              installer: "installer";
                                              "ipc-channel": "ipc-channel";
                                              "ipc-handler": "ipc-handler";
                                              "javascript-asset": "javascript-asset";
                                              "javascript-chunk": "javascript-chunk";
                                              "javascript-module": "javascript-module";
                                              "native-addon": "native-addon";
                                              "native-export": "native-export";
                                              package: "package";
                                              "runtime-script-instance": "runtime-script-instance";
                                              "service-worker": "service-worker";
                                              "source-map": "source-map";
                                              "source-module": "source-module";
                                              storage: "storage";
                                              target: "target";
                                              unknown: "unknown";
                                              worker: "worker";
                                          },
                                      >;
                                      node_id: ZodString;
                                      observations: ZodArray<
                                          ZodObject<
                                              {
                                                  evidence: ZodObject<
                                                      {
                                                          artifact: ZodDiscriminatedUnion<
                                                              [
                                                                  ZodObject<
                                                                      { artifact_id: ...; available: ...; sha256: ... },
                                                                      $strict,
                                                                  >,
                                                                  ZodObject<{ available: ...; detail: ...; reason: ... }, $strict>,
                                                              ],
                                                              "available",
                                                          >;
                                                          authority: ZodEnum<
                                                              {
                                                                  "artifact-bytes": "artifact-bytes";
                                                                  "ast-static-analysis": "ast-static-analysis";
                                                                  "controlled-replay": "controlled-replay";
                                                                  "cross-layer-reconciliation": "cross-layer-reconciliation";
                                                                  "cross-version-comparison": "cross-version-comparison";
                                                                  "historical-reference": "historical-reference";
                                                                  "native-analysis-provider": "native-analysis-provider";
                                                                  "passive-cdp-runtime": "passive-cdp-runtime";
                                                                  "static-relationship-inference": "static-relationship-inference";
                                                                  unknown: "unknown";
                                                                  "user-assertion": "user-assertion";
                                                              },
                                                          >;
                                                          confidence: ZodEnum<
                                                              {
                                                                  exact: "exact";
                                                                  high: "high";
                                                                  low: "low";
                                                                  medium: "medium";
                                                                  unknown: "unknown";
                                                              },
                                                          >;
                                                          coverage: ZodObject<
                                                              {
                                                                  limits: ZodArray<ZodObject<(...), (...)>>;
                                                                  omitted_count: ZodNullable<ZodNumber>;
                                                                  status: ZodEnum<
                                                                      { complete: ...; partial: ...; unavailable: ...; unknown: ... },
                                                                  >;
                                                                  truncated: ZodBoolean;
                                                              },
                                                              $strict,
                                                          >;
                                                          evidence_ids: ZodArray<ZodString>;
                                                          extractor: ZodObject<
                                                              {
                                                                  executable_sha256: ZodNullable<ZodString>;
                                                                  name: ZodString;
                                                                  operation: ZodString;
                                                                  version: ZodString;
                                                              },
                                                              $strict,
                                                          >;
                                                          limitations: ZodArray<ZodString>;
                                                          location: ZodDiscriminatedUnion<
                                                              [
                                                                  ZodObject<{ available: ...; value: ... }, $strict>,
                                                                  ZodObject<{ available: ...; detail: ...; reason: ... }, $strict>,
                                                              ],
                                                              "available",
                                                          >;
                                                          state: ZodEnum<
                                                              {
                                                                  inferred: "inferred";
                                                                  observed: "observed";
                                                                  unavailable: "unavailable";
                                                                  unknown: "unknown";
                                                              },
                                                          >;
                                                      },
                                                      $strict,
                                                  >;
                                                  identifier_strategy: ZodObject<
                                                      {
                                                          stability: ZodLiteral<"observation-exact">;
                                                          strategy: ZodLiteral<"semantic-content-sha256">;
                                                      },
                                                      $strict,
                                                  >;
                                                  label: ZodNullable<ZodString>;
                                                  observation_id: ZodString;
                                                  properties: ZodRecord<ZodString, ZodJSONSchema>;
                                              },
                                              $strict,
                                          >,
                                      >;
                                  },
                                  $strict,
                              > = ...

                              One stable application entity with one or more bounded observations.

                              -
                              javascriptApplicationGraphInputSchema: ZodObject<
                                  {
                                      coverage: ZodObject<
                                          {
                                              limits: ZodArray<
                                                  ZodObject<
                                                      {
                                                          name: ZodString;
                                                          unit: ZodEnum<
                                                              {
                                                                  bytes: "bytes";
                                                                  characters: "characters";
                                                                  depth: "depth";
                                                                  instructions: "instructions";
                                                                  items: "items";
                                                                  milliseconds: "milliseconds";
                                                                  other: "other";
                                                              },
                                                          >;
                                                          value: ZodNumber;
                                                      },
                                                      $strict,
                                                  >,
                                              >;
                                              omitted_count: ZodNullable<ZodNumber>;
                                              status: ZodEnum<
                                                  {
                                                      complete: "complete";
                                                      partial: "partial";
                                                      unavailable: "unavailable";
                                                      unknown: "unknown";
                                                  },
                                              >;
                                              truncated: ZodBoolean;
                                          },
                                          $strict,
                                      >;
                                      edges: ZodArray<
                                          ZodObject<
                                              {
                                                  edge_id: ZodString;
                                                  evidence: ZodObject<
                                                      {
                                                          artifact: ZodDiscriminatedUnion<
                                                              [
                                                                  ZodObject<
                                                                      { artifact_id: ...; available: ...; sha256: ... },
                                                                      $strict,
                                                                  >,
                                                                  ZodObject<{ available: ...; detail: ...; reason: ... }, $strict>,
                                                              ],
                                                              "available",
                                                          >;
                                                          authority: ZodEnum<
                                                              {
                                                                  "artifact-bytes": "artifact-bytes";
                                                                  "ast-static-analysis": "ast-static-analysis";
                                                                  "controlled-replay": "controlled-replay";
                                                                  "cross-layer-reconciliation": "cross-layer-reconciliation";
                                                                  "historical-reference": "historical-reference";
                                                                  "native-analysis-provider": "native-analysis-provider";
                                                                  "passive-cdp-runtime": "passive-cdp-runtime";
                                                                  "static-relationship-inference": "static-relationship-inference";
                                                                  unknown: "unknown";
                                                                  "user-assertion": "user-assertion";
                                                              },
                                                          >;
                                                          confidence: ZodEnum<
                                                              {
                                                                  exact: "exact";
                                                                  high: "high";
                                                                  low: "low";
                                                                  medium: "medium";
                                                                  unknown: "unknown";
                                                              },
                                                          >;
                                                          coverage: ZodObject<
                                                              {
                                                                  limits: ZodArray<ZodObject<(...), (...)>>;
                                                                  omitted_count: ZodNullable<ZodNumber>;
                                                                  status: ZodEnum<
                                                                      { complete: ...; partial: ...; unavailable: ...; unknown: ... },
                                                                  >;
                                                                  truncated: ZodBoolean;
                                                              },
                                                              $strict,
                                                          >;
                                                          evidence_ids: ZodArray<ZodString>;
                                                          extractor: ZodObject<
                                                              {
                                                                  executable_sha256: ZodNullable<ZodString>;
                                                                  name: ZodString;
                                                                  operation: ZodString;
                                                                  version: ZodString;
                                                              },
                                                              $strict,
                                                          >;
                                                          limitations: ZodArray<ZodString>;
                                                          location: ZodDiscriminatedUnion<
                                                              [
                                                                  ZodObject<{ available: ...; value: ... }, $strict>,
                                                                  ZodObject<{ available: ...; detail: ...; reason: ... }, $strict>,
                                                              ],
                                                              "available",
                                                          >;
                                                          state: ZodEnum<
                                                              {
                                                                  inferred: "inferred";
                                                                  observed: "observed";
                                                                  unavailable: "unavailable";
                                                                  unknown: "unknown";
                                                              },
                                                          >;
                                                      },
                                                      $strict,
                                                  >;
                                                  identifier_strategy: ZodObject<
                                                      {
                                                          stability: ZodLiteral<"relationship-exact">;
                                                          strategy: ZodLiteral<"semantic-content-sha256">;
                                                      },
                                                      $strict,
                                                  >;
                                                  properties: ZodRecord<ZodString, ZodJSONSchema>;
                                                  relation: ZodEnum<
                                                      {
                                                          calls: "calls";
                                                          changed_from: "changed_from";
                                                          contains: "contains";
                                                          exposes: "exposes";
                                                          handles: "handles";
                                                          imports: "imports";
                                                          invokes: "invokes";
                                                          loads: "loads";
                                                          maps_to: "maps_to";
                                                          observed_as: "observed_as";
                                                          persists_to: "persists_to";
                                                          sends: "sends";
                                                      },
                                                  >;
                                                  source_node_id: ZodString;
                                                  target_node_id: ZodString;
                                              },
                                              $strict,
                                          >,
                                      >;
                                      limitations: ZodArray<ZodString>;
                                      nodes: ZodArray<
                                          ZodObject<
                                              {
                                                  identity: ZodDiscriminatedUnion<
                                                      [
                                                          ZodObject<
                                                              {
                                                                  sha256: ZodString;
                                                                  stability: ZodLiteral<"global-exact">;
                                                                  strategy: ZodLiteral<"content-digest">;
                                                              },
                                                              $strict,
                                                          >,
                                                          ZodObject<
                                                              {
                                                                  original_source: ZodString;
                                                                  source_map_sha256: ZodString;
                                                                  source_sha256: ZodNullable<ZodString>;
                                                                  stability: ZodLiteral<"source-map-exact">;
                                                                  strategy: ZodLiteral<"source-map-original">;
                                                              },
                                                              $strict,
                                                          >,
                                                          ZodObject<
                                                              {
                                                                  artifact_sha256: ZodString;
                                                                  path: ZodString;
                                                                  stability: ZodLiteral<"artifact-version">;
                                                                  strategy: ZodLiteral<"canonical-path">;
                                                              },
                                                              $strict,
                                                          >,
                                                      ],
                                                      "strategy",
                                                  >;
                                                  kind: ZodEnum<
                                                      {
                                                          artifact: "artifact";
                                                          "asar-entry": "asar-entry";
                                                          "browser-window": "browser-window";
                                                          "context-bridge-api": "context-bridge-api";
                                                          "electron-main": "electron-main";
                                                          "electron-preload": "electron-preload";
                                                          "electron-renderer": "electron-renderer";
                                                          "electron-utility": "electron-utility";
                                                          endpoint: "endpoint";
                                                          frame: "frame";
                                                          installer: "installer";
                                                          "ipc-channel": "ipc-channel";
                                                          "ipc-handler": "ipc-handler";
                                                          "javascript-asset": "javascript-asset";
                                                          "javascript-chunk": "javascript-chunk";
                                                          "javascript-module": "javascript-module";
                                                          "native-addon": "native-addon";
                                                          "native-export": "native-export";
                                                          package: "package";
                                                          "runtime-script-instance": "runtime-script-instance";
                                                          "service-worker": "service-worker";
                                                          "source-map": "source-map";
                                                          "source-module": "source-module";
                                                          storage: "storage";
                                                          target: "target";
                                                          unknown: "unknown";
                                                          worker: "worker";
                                                      },
                                                  >;
                                                  node_id: ZodString;
                                                  observations: ZodArray<
                                                      ZodObject<
                                                          {
                                                              evidence: ZodObject<
                                                                  {
                                                                      artifact: ZodDiscriminatedUnion<(...), (...)>;
                                                                      authority: ZodEnum<(...)>;
                                                                      confidence: ZodEnum<(...)>;
                                                                      coverage: ZodObject<(...), (...)>;
                                                                      evidence_ids: ZodArray<(...)>;
                                                                      extractor: ZodObject<(...), (...)>;
                                                                      limitations: ZodArray<(...)>;
                                                                      location: ZodDiscriminatedUnion<(...), (...)>;
                                                                      state: ZodEnum<(...)>;
                                                                  },
                                                                  $strict,
                                                              >;
                                                              identifier_strategy: ZodObject<
                                                                  { stability: ZodLiteral<(...)>; strategy: ZodLiteral<(...)> },
                                                                  $strict,
                                                              >;
                                                              label: ZodNullable<ZodString>;
                                                              observation_id: ZodString;
                                                              properties: ZodRecord<ZodString, ZodJSONSchema>;
                                                          },
                                                          $strict,
                                                      >,
                                                  >;
                                              },
                                              $strict,
                                          >,
                                      >;
                                      root_node_ids: ZodArray<ZodString>;
                                      schema: ZodLiteral<"JavaScriptApplicationGraph">;
                                      schema_version: ZodLiteral<1>;
                                  },
                                  $strict,
                              > = ...
                              +
                              javascriptApplicationGraphInputSchema: ZodObject<
                                  {
                                      coverage: ZodObject<
                                          {
                                              limits: ZodArray<
                                                  ZodObject<
                                                      {
                                                          name: ZodString;
                                                          unit: ZodEnum<
                                                              {
                                                                  bytes: "bytes";
                                                                  characters: "characters";
                                                                  depth: "depth";
                                                                  instructions: "instructions";
                                                                  items: "items";
                                                                  milliseconds: "milliseconds";
                                                                  other: "other";
                                                              },
                                                          >;
                                                          value: ZodNumber;
                                                      },
                                                      $strict,
                                                  >,
                                              >;
                                              omitted_count: ZodNullable<ZodNumber>;
                                              status: ZodEnum<
                                                  {
                                                      complete: "complete";
                                                      partial: "partial";
                                                      unavailable: "unavailable";
                                                      unknown: "unknown";
                                                  },
                                              >;
                                              truncated: ZodBoolean;
                                          },
                                          $strict,
                                      >;
                                      edges: ZodArray<
                                          ZodObject<
                                              {
                                                  edge_id: ZodString;
                                                  evidence: ZodObject<
                                                      {
                                                          artifact: ZodDiscriminatedUnion<
                                                              [
                                                                  ZodObject<
                                                                      { artifact_id: ...; available: ...; sha256: ... },
                                                                      $strict,
                                                                  >,
                                                                  ZodObject<{ available: ...; detail: ...; reason: ... }, $strict>,
                                                              ],
                                                              "available",
                                                          >;
                                                          authority: ZodEnum<
                                                              {
                                                                  "artifact-bytes": "artifact-bytes";
                                                                  "ast-static-analysis": "ast-static-analysis";
                                                                  "controlled-replay": "controlled-replay";
                                                                  "cross-layer-reconciliation": "cross-layer-reconciliation";
                                                                  "cross-version-comparison": "cross-version-comparison";
                                                                  "historical-reference": "historical-reference";
                                                                  "native-analysis-provider": "native-analysis-provider";
                                                                  "passive-cdp-runtime": "passive-cdp-runtime";
                                                                  "static-relationship-inference": "static-relationship-inference";
                                                                  unknown: "unknown";
                                                                  "user-assertion": "user-assertion";
                                                              },
                                                          >;
                                                          confidence: ZodEnum<
                                                              {
                                                                  exact: "exact";
                                                                  high: "high";
                                                                  low: "low";
                                                                  medium: "medium";
                                                                  unknown: "unknown";
                                                              },
                                                          >;
                                                          coverage: ZodObject<
                                                              {
                                                                  limits: ZodArray<ZodObject<(...), (...)>>;
                                                                  omitted_count: ZodNullable<ZodNumber>;
                                                                  status: ZodEnum<
                                                                      { complete: ...; partial: ...; unavailable: ...; unknown: ... },
                                                                  >;
                                                                  truncated: ZodBoolean;
                                                              },
                                                              $strict,
                                                          >;
                                                          evidence_ids: ZodArray<ZodString>;
                                                          extractor: ZodObject<
                                                              {
                                                                  executable_sha256: ZodNullable<ZodString>;
                                                                  name: ZodString;
                                                                  operation: ZodString;
                                                                  version: ZodString;
                                                              },
                                                              $strict,
                                                          >;
                                                          limitations: ZodArray<ZodString>;
                                                          location: ZodDiscriminatedUnion<
                                                              [
                                                                  ZodObject<{ available: ...; value: ... }, $strict>,
                                                                  ZodObject<{ available: ...; detail: ...; reason: ... }, $strict>,
                                                              ],
                                                              "available",
                                                          >;
                                                          state: ZodEnum<
                                                              {
                                                                  inferred: "inferred";
                                                                  observed: "observed";
                                                                  unavailable: "unavailable";
                                                                  unknown: "unknown";
                                                              },
                                                          >;
                                                      },
                                                      $strict,
                                                  >;
                                                  identifier_strategy: ZodObject<
                                                      {
                                                          stability: ZodLiteral<"relationship-exact">;
                                                          strategy: ZodLiteral<"semantic-content-sha256">;
                                                      },
                                                      $strict,
                                                  >;
                                                  properties: ZodRecord<ZodString, ZodJSONSchema>;
                                                  relation: ZodEnum<
                                                      {
                                                          calls: "calls";
                                                          changed_from: "changed_from";
                                                          contains: "contains";
                                                          exposes: "exposes";
                                                          handles: "handles";
                                                          imports: "imports";
                                                          invokes: "invokes";
                                                          loads: "loads";
                                                          maps_to: "maps_to";
                                                          observed_as: "observed_as";
                                                          persists_to: "persists_to";
                                                          sends: "sends";
                                                      },
                                                  >;
                                                  source_node_id: ZodString;
                                                  target_node_id: ZodString;
                                              },
                                              $strict,
                                          >,
                                      >;
                                      limitations: ZodArray<ZodString>;
                                      nodes: ZodArray<
                                          ZodObject<
                                              {
                                                  identity: ZodDiscriminatedUnion<
                                                      [
                                                          ZodObject<
                                                              {
                                                                  sha256: ZodString;
                                                                  stability: ZodLiteral<"global-exact">;
                                                                  strategy: ZodLiteral<"content-digest">;
                                                              },
                                                              $strict,
                                                          >,
                                                          ZodObject<
                                                              {
                                                                  original_source: ZodString;
                                                                  source_map_sha256: ZodString;
                                                                  source_sha256: ZodNullable<ZodString>;
                                                                  stability: ZodLiteral<"source-map-exact">;
                                                                  strategy: ZodLiteral<"source-map-original">;
                                                              },
                                                              $strict,
                                                          >,
                                                          ZodObject<
                                                              {
                                                                  artifact_sha256: ZodString;
                                                                  path: ZodString;
                                                                  stability: ZodLiteral<"artifact-version">;
                                                                  strategy: ZodLiteral<"canonical-path">;
                                                              },
                                                              $strict,
                                                          >,
                                                      ],
                                                      "strategy",
                                                  >;
                                                  kind: ZodEnum<
                                                      {
                                                          artifact: "artifact";
                                                          "asar-entry": "asar-entry";
                                                          "browser-window": "browser-window";
                                                          "context-bridge-api": "context-bridge-api";
                                                          "electron-main": "electron-main";
                                                          "electron-preload": "electron-preload";
                                                          "electron-renderer": "electron-renderer";
                                                          "electron-utility": "electron-utility";
                                                          endpoint: "endpoint";
                                                          frame: "frame";
                                                          installer: "installer";
                                                          "ipc-channel": "ipc-channel";
                                                          "ipc-handler": "ipc-handler";
                                                          "javascript-asset": "javascript-asset";
                                                          "javascript-chunk": "javascript-chunk";
                                                          "javascript-module": "javascript-module";
                                                          "native-addon": "native-addon";
                                                          "native-export": "native-export";
                                                          package: "package";
                                                          "runtime-script-instance": "runtime-script-instance";
                                                          "service-worker": "service-worker";
                                                          "source-map": "source-map";
                                                          "source-module": "source-module";
                                                          storage: "storage";
                                                          target: "target";
                                                          unknown: "unknown";
                                                          worker: "worker";
                                                      },
                                                  >;
                                                  node_id: ZodString;
                                                  observations: ZodArray<
                                                      ZodObject<
                                                          {
                                                              evidence: ZodObject<
                                                                  {
                                                                      artifact: ZodDiscriminatedUnion<(...), (...)>;
                                                                      authority: ZodEnum<(...)>;
                                                                      confidence: ZodEnum<(...)>;
                                                                      coverage: ZodObject<(...), (...)>;
                                                                      evidence_ids: ZodArray<(...)>;
                                                                      extractor: ZodObject<(...), (...)>;
                                                                      limitations: ZodArray<(...)>;
                                                                      location: ZodDiscriminatedUnion<(...), (...)>;
                                                                      state: ZodEnum<(...)>;
                                                                  },
                                                                  $strict,
                                                              >;
                                                              identifier_strategy: ZodObject<
                                                                  { stability: ZodLiteral<(...)>; strategy: ZodLiteral<(...)> },
                                                                  $strict,
                                                              >;
                                                              label: ZodNullable<ZodString>;
                                                              observation_id: ZodString;
                                                              properties: ZodRecord<ZodString, ZodJSONSchema>;
                                                          },
                                                          $strict,
                                                      >,
                                                  >;
                                              },
                                              $strict,
                                          >,
                                      >;
                                      root_node_ids: ZodArray<ZodString>;
                                      schema: ZodLiteral<"JavaScriptApplicationGraph">;
                                      schema_version: ZodLiteral<1>;
                                  },
                                  $strict,
                              > = ...

                              Graph content before its top-level semantic identifier is derived.

                              -
                              javascriptApplicationGraphRecordSchema: ZodObject<
                                  {
                                      coverage: ZodObject<
                                          {
                                              limits: ZodArray<
                                                  ZodObject<
                                                      {
                                                          name: ZodString;
                                                          unit: ZodEnum<
                                                              {
                                                                  bytes: "bytes";
                                                                  characters: "characters";
                                                                  depth: "depth";
                                                                  instructions: "instructions";
                                                                  items: "items";
                                                                  milliseconds: "milliseconds";
                                                                  other: "other";
                                                              },
                                                          >;
                                                          value: ZodNumber;
                                                      },
                                                      $strict,
                                                  >,
                                              >;
                                              omitted_count: ZodNullable<ZodNumber>;
                                              status: ZodEnum<
                                                  {
                                                      complete: "complete";
                                                      partial: "partial";
                                                      unavailable: "unavailable";
                                                      unknown: "unknown";
                                                  },
                                              >;
                                              truncated: ZodBoolean;
                                          },
                                          $strict,
                                      >;
                                      edges: ZodArray<
                                          ZodObject<
                                              {
                                                  edge_id: ZodString;
                                                  evidence: ZodObject<
                                                      {
                                                          artifact: ZodDiscriminatedUnion<
                                                              [
                                                                  ZodObject<
                                                                      { artifact_id: ...; available: ...; sha256: ... },
                                                                      $strict,
                                                                  >,
                                                                  ZodObject<{ available: ...; detail: ...; reason: ... }, $strict>,
                                                              ],
                                                              "available",
                                                          >;
                                                          authority: ZodEnum<
                                                              {
                                                                  "artifact-bytes": "artifact-bytes";
                                                                  "ast-static-analysis": "ast-static-analysis";
                                                                  "controlled-replay": "controlled-replay";
                                                                  "cross-layer-reconciliation": "cross-layer-reconciliation";
                                                                  "historical-reference": "historical-reference";
                                                                  "native-analysis-provider": "native-analysis-provider";
                                                                  "passive-cdp-runtime": "passive-cdp-runtime";
                                                                  "static-relationship-inference": "static-relationship-inference";
                                                                  unknown: "unknown";
                                                                  "user-assertion": "user-assertion";
                                                              },
                                                          >;
                                                          confidence: ZodEnum<
                                                              {
                                                                  exact: "exact";
                                                                  high: "high";
                                                                  low: "low";
                                                                  medium: "medium";
                                                                  unknown: "unknown";
                                                              },
                                                          >;
                                                          coverage: ZodObject<
                                                              {
                                                                  limits: ZodArray<ZodObject<(...), (...)>>;
                                                                  omitted_count: ZodNullable<ZodNumber>;
                                                                  status: ZodEnum<
                                                                      { complete: ...; partial: ...; unavailable: ...; unknown: ... },
                                                                  >;
                                                                  truncated: ZodBoolean;
                                                              },
                                                              $strict,
                                                          >;
                                                          evidence_ids: ZodArray<ZodString>;
                                                          extractor: ZodObject<
                                                              {
                                                                  executable_sha256: ZodNullable<ZodString>;
                                                                  name: ZodString;
                                                                  operation: ZodString;
                                                                  version: ZodString;
                                                              },
                                                              $strict,
                                                          >;
                                                          limitations: ZodArray<ZodString>;
                                                          location: ZodDiscriminatedUnion<
                                                              [
                                                                  ZodObject<{ available: ...; value: ... }, $strict>,
                                                                  ZodObject<{ available: ...; detail: ...; reason: ... }, $strict>,
                                                              ],
                                                              "available",
                                                          >;
                                                          state: ZodEnum<
                                                              {
                                                                  inferred: "inferred";
                                                                  observed: "observed";
                                                                  unavailable: "unavailable";
                                                                  unknown: "unknown";
                                                              },
                                                          >;
                                                      },
                                                      $strict,
                                                  >;
                                                  identifier_strategy: ZodObject<
                                                      {
                                                          stability: ZodLiteral<"relationship-exact">;
                                                          strategy: ZodLiteral<"semantic-content-sha256">;
                                                      },
                                                      $strict,
                                                  >;
                                                  properties: ZodRecord<ZodString, ZodJSONSchema>;
                                                  relation: ZodEnum<
                                                      {
                                                          calls: "calls";
                                                          changed_from: "changed_from";
                                                          contains: "contains";
                                                          exposes: "exposes";
                                                          handles: "handles";
                                                          imports: "imports";
                                                          invokes: "invokes";
                                                          loads: "loads";
                                                          maps_to: "maps_to";
                                                          observed_as: "observed_as";
                                                          persists_to: "persists_to";
                                                          sends: "sends";
                                                      },
                                                  >;
                                                  source_node_id: ZodString;
                                                  target_node_id: ZodString;
                                              },
                                              $strict,
                                          >,
                                      >;
                                      graph_id: ZodString;
                                      limitations: ZodArray<ZodString>;
                                      nodes: ZodArray<
                                          ZodObject<
                                              {
                                                  identity: ZodDiscriminatedUnion<
                                                      [
                                                          ZodObject<
                                                              {
                                                                  sha256: ZodString;
                                                                  stability: ZodLiteral<"global-exact">;
                                                                  strategy: ZodLiteral<"content-digest">;
                                                              },
                                                              $strict,
                                                          >,
                                                          ZodObject<
                                                              {
                                                                  original_source: ZodString;
                                                                  source_map_sha256: ZodString;
                                                                  source_sha256: ZodNullable<ZodString>;
                                                                  stability: ZodLiteral<"source-map-exact">;
                                                                  strategy: ZodLiteral<"source-map-original">;
                                                              },
                                                              $strict,
                                                          >,
                                                          ZodObject<
                                                              {
                                                                  artifact_sha256: ZodString;
                                                                  path: ZodString;
                                                                  stability: ZodLiteral<"artifact-version">;
                                                                  strategy: ZodLiteral<"canonical-path">;
                                                              },
                                                              $strict,
                                                          >,
                                                      ],
                                                      "strategy",
                                                  >;
                                                  kind: ZodEnum<
                                                      {
                                                          artifact: "artifact";
                                                          "asar-entry": "asar-entry";
                                                          "browser-window": "browser-window";
                                                          "context-bridge-api": "context-bridge-api";
                                                          "electron-main": "electron-main";
                                                          "electron-preload": "electron-preload";
                                                          "electron-renderer": "electron-renderer";
                                                          "electron-utility": "electron-utility";
                                                          endpoint: "endpoint";
                                                          frame: "frame";
                                                          installer: "installer";
                                                          "ipc-channel": "ipc-channel";
                                                          "ipc-handler": "ipc-handler";
                                                          "javascript-asset": "javascript-asset";
                                                          "javascript-chunk": "javascript-chunk";
                                                          "javascript-module": "javascript-module";
                                                          "native-addon": "native-addon";
                                                          "native-export": "native-export";
                                                          package: "package";
                                                          "runtime-script-instance": "runtime-script-instance";
                                                          "service-worker": "service-worker";
                                                          "source-map": "source-map";
                                                          "source-module": "source-module";
                                                          storage: "storage";
                                                          target: "target";
                                                          unknown: "unknown";
                                                          worker: "worker";
                                                      },
                                                  >;
                                                  node_id: ZodString;
                                                  observations: ZodArray<
                                                      ZodObject<
                                                          {
                                                              evidence: ZodObject<
                                                                  {
                                                                      artifact: ZodDiscriminatedUnion<(...), (...)>;
                                                                      authority: ZodEnum<(...)>;
                                                                      confidence: ZodEnum<(...)>;
                                                                      coverage: ZodObject<(...), (...)>;
                                                                      evidence_ids: ZodArray<(...)>;
                                                                      extractor: ZodObject<(...), (...)>;
                                                                      limitations: ZodArray<(...)>;
                                                                      location: ZodDiscriminatedUnion<(...), (...)>;
                                                                      state: ZodEnum<(...)>;
                                                                  },
                                                                  $strict,
                                                              >;
                                                              identifier_strategy: ZodObject<
                                                                  { stability: ZodLiteral<(...)>; strategy: ZodLiteral<(...)> },
                                                                  $strict,
                                                              >;
                                                              label: ZodNullable<ZodString>;
                                                              observation_id: ZodString;
                                                              properties: ZodRecord<ZodString, ZodJSONSchema>;
                                                          },
                                                          $strict,
                                                      >,
                                                  >;
                                              },
                                              $strict,
                                          >,
                                      >;
                                      root_node_ids: ZodArray<ZodString>;
                                      schema: ZodLiteral<"JavaScriptApplicationGraph">;
                                      schema_version: ZodLiteral<1>;
                                  },
                                  $strict,
                              > = ...
                              +
                              javascriptApplicationGraphRecordSchema: ZodObject<
                                  {
                                      coverage: ZodObject<
                                          {
                                              limits: ZodArray<
                                                  ZodObject<
                                                      {
                                                          name: ZodString;
                                                          unit: ZodEnum<
                                                              {
                                                                  bytes: "bytes";
                                                                  characters: "characters";
                                                                  depth: "depth";
                                                                  instructions: "instructions";
                                                                  items: "items";
                                                                  milliseconds: "milliseconds";
                                                                  other: "other";
                                                              },
                                                          >;
                                                          value: ZodNumber;
                                                      },
                                                      $strict,
                                                  >,
                                              >;
                                              omitted_count: ZodNullable<ZodNumber>;
                                              status: ZodEnum<
                                                  {
                                                      complete: "complete";
                                                      partial: "partial";
                                                      unavailable: "unavailable";
                                                      unknown: "unknown";
                                                  },
                                              >;
                                              truncated: ZodBoolean;
                                          },
                                          $strict,
                                      >;
                                      edges: ZodArray<
                                          ZodObject<
                                              {
                                                  edge_id: ZodString;
                                                  evidence: ZodObject<
                                                      {
                                                          artifact: ZodDiscriminatedUnion<
                                                              [
                                                                  ZodObject<
                                                                      { artifact_id: ...; available: ...; sha256: ... },
                                                                      $strict,
                                                                  >,
                                                                  ZodObject<{ available: ...; detail: ...; reason: ... }, $strict>,
                                                              ],
                                                              "available",
                                                          >;
                                                          authority: ZodEnum<
                                                              {
                                                                  "artifact-bytes": "artifact-bytes";
                                                                  "ast-static-analysis": "ast-static-analysis";
                                                                  "controlled-replay": "controlled-replay";
                                                                  "cross-layer-reconciliation": "cross-layer-reconciliation";
                                                                  "cross-version-comparison": "cross-version-comparison";
                                                                  "historical-reference": "historical-reference";
                                                                  "native-analysis-provider": "native-analysis-provider";
                                                                  "passive-cdp-runtime": "passive-cdp-runtime";
                                                                  "static-relationship-inference": "static-relationship-inference";
                                                                  unknown: "unknown";
                                                                  "user-assertion": "user-assertion";
                                                              },
                                                          >;
                                                          confidence: ZodEnum<
                                                              {
                                                                  exact: "exact";
                                                                  high: "high";
                                                                  low: "low";
                                                                  medium: "medium";
                                                                  unknown: "unknown";
                                                              },
                                                          >;
                                                          coverage: ZodObject<
                                                              {
                                                                  limits: ZodArray<ZodObject<(...), (...)>>;
                                                                  omitted_count: ZodNullable<ZodNumber>;
                                                                  status: ZodEnum<
                                                                      { complete: ...; partial: ...; unavailable: ...; unknown: ... },
                                                                  >;
                                                                  truncated: ZodBoolean;
                                                              },
                                                              $strict,
                                                          >;
                                                          evidence_ids: ZodArray<ZodString>;
                                                          extractor: ZodObject<
                                                              {
                                                                  executable_sha256: ZodNullable<ZodString>;
                                                                  name: ZodString;
                                                                  operation: ZodString;
                                                                  version: ZodString;
                                                              },
                                                              $strict,
                                                          >;
                                                          limitations: ZodArray<ZodString>;
                                                          location: ZodDiscriminatedUnion<
                                                              [
                                                                  ZodObject<{ available: ...; value: ... }, $strict>,
                                                                  ZodObject<{ available: ...; detail: ...; reason: ... }, $strict>,
                                                              ],
                                                              "available",
                                                          >;
                                                          state: ZodEnum<
                                                              {
                                                                  inferred: "inferred";
                                                                  observed: "observed";
                                                                  unavailable: "unavailable";
                                                                  unknown: "unknown";
                                                              },
                                                          >;
                                                      },
                                                      $strict,
                                                  >;
                                                  identifier_strategy: ZodObject<
                                                      {
                                                          stability: ZodLiteral<"relationship-exact">;
                                                          strategy: ZodLiteral<"semantic-content-sha256">;
                                                      },
                                                      $strict,
                                                  >;
                                                  properties: ZodRecord<ZodString, ZodJSONSchema>;
                                                  relation: ZodEnum<
                                                      {
                                                          calls: "calls";
                                                          changed_from: "changed_from";
                                                          contains: "contains";
                                                          exposes: "exposes";
                                                          handles: "handles";
                                                          imports: "imports";
                                                          invokes: "invokes";
                                                          loads: "loads";
                                                          maps_to: "maps_to";
                                                          observed_as: "observed_as";
                                                          persists_to: "persists_to";
                                                          sends: "sends";
                                                      },
                                                  >;
                                                  source_node_id: ZodString;
                                                  target_node_id: ZodString;
                                              },
                                              $strict,
                                          >,
                                      >;
                                      graph_id: ZodString;
                                      limitations: ZodArray<ZodString>;
                                      nodes: ZodArray<
                                          ZodObject<
                                              {
                                                  identity: ZodDiscriminatedUnion<
                                                      [
                                                          ZodObject<
                                                              {
                                                                  sha256: ZodString;
                                                                  stability: ZodLiteral<"global-exact">;
                                                                  strategy: ZodLiteral<"content-digest">;
                                                              },
                                                              $strict,
                                                          >,
                                                          ZodObject<
                                                              {
                                                                  original_source: ZodString;
                                                                  source_map_sha256: ZodString;
                                                                  source_sha256: ZodNullable<ZodString>;
                                                                  stability: ZodLiteral<"source-map-exact">;
                                                                  strategy: ZodLiteral<"source-map-original">;
                                                              },
                                                              $strict,
                                                          >,
                                                          ZodObject<
                                                              {
                                                                  artifact_sha256: ZodString;
                                                                  path: ZodString;
                                                                  stability: ZodLiteral<"artifact-version">;
                                                                  strategy: ZodLiteral<"canonical-path">;
                                                              },
                                                              $strict,
                                                          >,
                                                      ],
                                                      "strategy",
                                                  >;
                                                  kind: ZodEnum<
                                                      {
                                                          artifact: "artifact";
                                                          "asar-entry": "asar-entry";
                                                          "browser-window": "browser-window";
                                                          "context-bridge-api": "context-bridge-api";
                                                          "electron-main": "electron-main";
                                                          "electron-preload": "electron-preload";
                                                          "electron-renderer": "electron-renderer";
                                                          "electron-utility": "electron-utility";
                                                          endpoint: "endpoint";
                                                          frame: "frame";
                                                          installer: "installer";
                                                          "ipc-channel": "ipc-channel";
                                                          "ipc-handler": "ipc-handler";
                                                          "javascript-asset": "javascript-asset";
                                                          "javascript-chunk": "javascript-chunk";
                                                          "javascript-module": "javascript-module";
                                                          "native-addon": "native-addon";
                                                          "native-export": "native-export";
                                                          package: "package";
                                                          "runtime-script-instance": "runtime-script-instance";
                                                          "service-worker": "service-worker";
                                                          "source-map": "source-map";
                                                          "source-module": "source-module";
                                                          storage: "storage";
                                                          target: "target";
                                                          unknown: "unknown";
                                                          worker: "worker";
                                                      },
                                                  >;
                                                  node_id: ZodString;
                                                  observations: ZodArray<
                                                      ZodObject<
                                                          {
                                                              evidence: ZodObject<
                                                                  {
                                                                      artifact: ZodDiscriminatedUnion<(...), (...)>;
                                                                      authority: ZodEnum<(...)>;
                                                                      confidence: ZodEnum<(...)>;
                                                                      coverage: ZodObject<(...), (...)>;
                                                                      evidence_ids: ZodArray<(...)>;
                                                                      extractor: ZodObject<(...), (...)>;
                                                                      limitations: ZodArray<(...)>;
                                                                      location: ZodDiscriminatedUnion<(...), (...)>;
                                                                      state: ZodEnum<(...)>;
                                                                  },
                                                                  $strict,
                                                              >;
                                                              identifier_strategy: ZodObject<
                                                                  { stability: ZodLiteral<(...)>; strategy: ZodLiteral<(...)> },
                                                                  $strict,
                                                              >;
                                                              label: ZodNullable<ZodString>;
                                                              observation_id: ZodString;
                                                              properties: ZodRecord<ZodString, ZodJSONSchema>;
                                                          },
                                                          $strict,
                                                      >,
                                                  >;
                                              },
                                              $strict,
                                          >,
                                      >;
                                      root_node_ids: ZodArray<ZodString>;
                                      schema: ZodLiteral<"JavaScriptApplicationGraph">;
                                      schema_version: ZodLiteral<1>;
                                  },
                                  $strict,
                              > = ...

                              Strict stored shape for JavaScript Application Graph v1.

                              -
                              javascriptRuntimeReconciliationResultSchema: ZodObject<
                                  {
                                      coverage: ZodObject<
                                          {
                                              omitted_graph_items: ZodNumber;
                                              omitted_reconciliation_items: ZodNumber;
                                              omitted_runtime_entities: ZodNumber;
                                              omitted_static_load_states: ZodNumber;
                                              status: ZodEnum<
                                                  {
                                                      "complete-within-inputs": "complete-within-inputs";
                                                      partial: "partial";
                                                      truncated: "truncated";
                                                  },
                                              >;
                                              truncated: ZodBoolean;
                                          },
                                          $strict,
                                      >;
                                      evidence_links: ZodArray<ZodString>;
                                      graph: ZodObject<
                                          {
                                              coverage: ZodObject<
                                                  {
                                                      limits: ZodArray<
                                                          ZodObject<
                                                              {
                                                                  name: ZodString;
                                                                  unit: ZodEnum<
                                                                      {
                                                                          bytes: ...;
                                                                          characters: ...;
                                                                          depth: ...;
                                                                          instructions: ...;
                                                                          items: ...;
                                                                          milliseconds: ...;
                                                                          other: ...;
                                                                      },
                                                                  >;
                                                                  value: ZodNumber;
                                                              },
                                                              $strict,
                                                          >,
                                                      >;
                                                      omitted_count: ZodNullable<ZodNumber>;
                                                      status: ZodEnum<
                                                          {
                                                              complete: "complete";
                                                              partial: "partial";
                                                              unavailable: "unavailable";
                                                              unknown: "unknown";
                                                          },
                                                      >;
                                                      truncated: ZodBoolean;
                                                  },
                                                  $strict,
                                              >;
                                              edges: ZodArray<
                                                  ZodObject<
                                                      {
                                                          edge_id: ZodString;
                                                          evidence: ZodObject<
                                                              {
                                                                  artifact: ZodDiscriminatedUnion<[(...), (...)], "available">;
                                                                  authority: ZodEnum<
                                                                      {
                                                                          "artifact-bytes": ...;
                                                                          "ast-static-analysis": ...;
                                                                          "controlled-replay": ...;
                                                                          "cross-layer-reconciliation": ...;
                                                                          "historical-reference": ...;
                                                                          "native-analysis-provider": ...;
                                                                          "passive-cdp-runtime": ...;
                                                                          "static-relationship-inference": ...;
                                                                          unknown: ...;
                                                                          "user-assertion": ...;
                                                                      },
                                                                  >;
                                                                  confidence: ZodEnum<
                                                                      { exact: ...; high: ...; low: ...; medium: ...; unknown: ... },
                                                                  >;
                                                                  coverage: ZodObject<
                                                                      {
                                                                          limits: ...;
                                                                          omitted_count: ...;
                                                                          status: ...;
                                                                          truncated: ...;
                                                                      },
                                                                      $strict,
                                                                  >;
                                                                  evidence_ids: ZodArray<ZodString>;
                                                                  extractor: ZodObject<
                                                                      {
                                                                          executable_sha256: ...;
                                                                          name: ...;
                                                                          operation: ...;
                                                                          version: ...;
                                                                      },
                                                                      $strict,
                                                                  >;
                                                                  limitations: ZodArray<ZodString>;
                                                                  location: ZodDiscriminatedUnion<[(...), (...)], "available">;
                                                                  state: ZodEnum<
                                                                      {
                                                                          inferred: ...;
                                                                          observed: ...;
                                                                          unavailable: ...;
                                                                          unknown: ...;
                                                                      },
                                                                  >;
                                                              },
                                                              $strict,
                                                          >;
                                                          identifier_strategy: ZodObject<
                                                              {
                                                                  stability: ZodLiteral<"relationship-exact">;
                                                                  strategy: ZodLiteral<"semantic-content-sha256">;
                                                              },
                                                              $strict,
                                                          >;
                                                          properties: ZodRecord<ZodString, ZodJSONSchema>;
                                                          relation: ZodEnum<
                                                              {
                                                                  calls: "calls";
                                                                  changed_from: "changed_from";
                                                                  contains: "contains";
                                                                  exposes: "exposes";
                                                                  handles: "handles";
                                                                  imports: "imports";
                                                                  invokes: "invokes";
                                                                  loads: "loads";
                                                                  maps_to: "maps_to";
                                                                  observed_as: "observed_as";
                                                                  persists_to: "persists_to";
                                                                  sends: "sends";
                                                              },
                                                          >;
                                                          source_node_id: ZodString;
                                                          target_node_id: ZodString;
                                                      },
                                                      $strict,
                                                  >,
                                              >;
                                              graph_id: ZodString;
                                              limitations: ZodArray<ZodString>;
                                              nodes: ZodArray<
                                                  ZodObject<
                                                      {
                                                          identity: ZodDiscriminatedUnion<
                                                              [
                                                                  ZodObject<
                                                                      { sha256: ...; stability: ...; strategy: ... },
                                                                      $strict,
                                                                  >,
                                                                  ZodObject<
                                                                      {
                                                                          original_source: ...;
                                                                          source_map_sha256: ...;
                                                                          source_sha256: ...;
                                                                          stability: ...;
                                                                          strategy: ...;
                                                                      },
                                                                      $strict,
                                                                  >,
                                                                  ZodObject<
                                                                      {
                                                                          artifact_sha256: ...;
                                                                          path: ...;
                                                                          stability: ...;
                                                                          strategy: ...;
                                                                      },
                                                                      $strict,
                                                                  >,
                                                              ],
                                                              "strategy",
                                                          >;
                                                          kind: ZodEnum<
                                                              {
                                                                  artifact: "artifact";
                                                                  "asar-entry": "asar-entry";
                                                                  "browser-window": "browser-window";
                                                                  "context-bridge-api": "context-bridge-api";
                                                                  "electron-main": "electron-main";
                                                                  "electron-preload": "electron-preload";
                                                                  "electron-renderer": "electron-renderer";
                                                                  "electron-utility": "electron-utility";
                                                                  endpoint: "endpoint";
                                                                  frame: "frame";
                                                                  installer: "installer";
                                                                  "ipc-channel": "ipc-channel";
                                                                  "ipc-handler": "ipc-handler";
                                                                  "javascript-asset": "javascript-asset";
                                                                  "javascript-chunk": "javascript-chunk";
                                                                  "javascript-module": "javascript-module";
                                                                  "native-addon": "native-addon";
                                                                  "native-export": "native-export";
                                                                  package: "package";
                                                                  "runtime-script-instance": "runtime-script-instance";
                                                                  "service-worker": "service-worker";
                                                                  "source-map": "source-map";
                                                                  "source-module": "source-module";
                                                                  storage: "storage";
                                                                  target: "target";
                                                                  unknown: "unknown";
                                                                  worker: "worker";
                                                              },
                                                          >;
                                                          node_id: ZodString;
                                                          observations: ZodArray<
                                                              ZodObject<
                                                                  {
                                                                      evidence: ZodObject<(...), (...)>;
                                                                      identifier_strategy: ZodObject<(...), (...)>;
                                                                      label: ZodNullable<(...)>;
                                                                      observation_id: ZodString;
                                                                      properties: ZodRecord<(...), (...)>;
                                                                  },
                                                                  $strict,
                                                              >,
                                                          >;
                                                      },
                                                      $strict,
                                                  >,
                                              >;
                                              root_node_ids: ZodArray<ZodString>;
                                              schema: ZodLiteral<"JavaScriptApplicationGraph">;
                                              schema_version: ZodLiteral<1>;
                                          },
                                          $strict,
                                      >;
                                      limitations: ZodArray<ZodString>;
                                      reconciliation_id: ZodString;
                                      reconciliations: ZodArray<
                                          ZodObject<
                                              {
                                                  basis: ZodEnum<
                                                      {
                                                          "artifact-path": "artifact-path";
                                                          "content-and-location": "content-and-location";
                                                          "content-sha256": "content-sha256";
                                                          "module-source-sha256": "module-source-sha256";
                                                          none: "none";
                                                          "operator-file-mapping": "operator-file-mapping";
                                                          "operator-url-mapping": "operator-url-mapping";
                                                      },
                                                  >;
                                                  candidate_static_count: ZodNumber;
                                                  candidate_static_nodes: ZodArray<
                                                      ZodObject<
                                                          { static_layer_id: ZodString; static_node_id: ZodString },
                                                          $strict,
                                                      >,
                                                  >;
                                                  confidence: ZodEnum<
                                                      {
                                                          exact: "exact";
                                                          high: "high";
                                                          low: "low";
                                                          medium: "medium";
                                                          unknown: "unknown";
                                                      },
                                                  >;
                                                  entity_kind: ZodEnum<
                                                      {
                                                          frame: "frame";
                                                          script: "script";
                                                          target: "target";
                                                          worker: "worker";
                                                      },
                                                  >;
                                                  reason: ZodEnum<
                                                      {
                                                          "ambiguous-static-candidates": "ambiguous-static-candidates";
                                                          "captured-content-disagrees-with-static-location": "captured-content-disagrees-with-static-location";
                                                          "content-and-location-match": "content-and-location-match";
                                                          "no-authorized-location-mapping": "no-authorized-location-mapping";
                                                          "no-static-content-match": "no-static-content-match";
                                                          "reconciliation-limit-reached": "reconciliation-limit-reached";
                                                          "runtime-frame-unattributed": "runtime-frame-unattributed";
                                                          "static-or-runtime-coverage-incomplete": "static-or-runtime-coverage-incomplete";
                                                          "unique-content-match": "unique-content-match";
                                                          "unique-location-match": "unique-location-match";
                                                      },
                                                  >;
                                                  reconciliation_id: ZodString;
                                                  runtime_evidence_id: ZodString;
                                                  runtime_node_id: ZodString;
                                                  static_layer_id: ZodNullable<ZodString>;
                                                  static_node_id: ZodNullable<ZodString>;
                                                  status: ZodEnum<
                                                      {
                                                          ambiguous: "ambiguous";
                                                          matched: "matched";
                                                          unknown: "unknown";
                                                          unmatched: "unmatched";
                                                      },
                                                  >;
                                              },
                                              $strict,
                                          >,
                                      >;
                                      runtime_captures: ZodArray<
                                          ZodObject<
                                              {
                                                  capture_sha256: ZodString;
                                                  evidence_id: ZodString;
                                                  frames: ZodNumber;
                                                  kind: ZodEnum<{ browser: "browser"; electron: "electron" }>;
                                                  scripts: ZodNumber;
                                                  scripts_complete_within_scope: ZodBoolean;
                                                  target_key: ZodString;
                                                  target_location: ZodString;
                                                  target_node_id: ZodString;
                                                  workers: ZodNumber;
                                              },
                                              $strict,
                                          >,
                                      >;
                                      schema_version: ZodLiteral<1>;
                                      source_map_authority: ZodObject<
                                          {
                                              limitation: ZodString;
                                              runtime_script_declarations: ZodNumber;
                                              static_layers_with_read_approval: ZodNumber;
                                              used_for_primary_matching: ZodLiteral<false>;
                                          },
                                          $strict,
                                      >;
                                      static_layers: ZodArray<
                                          ZodObject<
                                              {
                                                  evidence_id: ZodString;
                                                  format: ZodEnum<{ asar: "asar"; directory: "directory" }>;
                                                  graph_id: ZodString;
                                                  input_path: ZodString;
                                                  layer_id: ZodString;
                                                  role: ZodEnum<
                                                      { application: "application"; assets: "assets"; cache: "cache" },
                                                  >;
                                                  root_artifact_sha256: ZodString;
                                                  runtime_mappings: ZodArray<
                                                      ZodDiscriminatedUnion<
                                                          [
                                                              ZodObject<
                                                                  {
                                                                      artifact_prefix: ZodDefault<(...)>;
                                                                      kind: ZodLiteral<(...)>;
                                                                      root: ZodString;
                                                                  },
                                                                  $strict,
                                                              >,
                                                              ZodObject<
                                                                  {
                                                                      artifact_prefix: ZodDefault<(...)>;
                                                                      kind: ZodLiteral<(...)>;
                                                                      prefix: ZodString;
                                                                  },
                                                                  $strict,
                                                              >,
                                                          ],
                                                          "kind",
                                                      >,
                                                  >;
                                              },
                                              $strict,
                                          >,
                                      >;
                                      static_load_states: ZodArray<
                                          ZodObject<
                                              {
                                                  kind: ZodEnum<
                                                      {
                                                          "javascript-asset": "javascript-asset";
                                                          "javascript-chunk": "javascript-chunk";
                                                          "javascript-module": "javascript-module";
                                                      },
                                                  >;
                                                  reason: ZodEnum<
                                                      {
                                                          "containing-asset-was-loaded": "containing-asset-was-loaded";
                                                          "layer-outside-runtime-scope": "layer-outside-runtime-scope";
                                                          "not-observed-in-bounded-capture": "not-observed-in-bounded-capture";
                                                          "runtime-script-correspondence": "runtime-script-correspondence";
                                                          "static-or-runtime-coverage-incomplete": "static-or-runtime-coverage-incomplete";
                                                      },
                                                  >;
                                                  runtime_node_ids: ZodArray<ZodString>;
                                                  static_layer_id: ZodString;
                                                  static_node_id: ZodString;
                                                  status: ZodEnum<
                                                      {
                                                          loaded: "loaded";
                                                          "not-observed-in-capture": "not-observed-in-capture";
                                                          "resident-in-loaded-asset": "resident-in-loaded-asset";
                                                          unknown: "unknown";
                                                      },
                                                  >;
                                              },
                                              $strict,
                                          >,
                                      >;
                                      summary: ZodObject<
                                          {
                                              ambiguous: ZodNumber;
                                              matched: ZodNumber;
                                              runtime_frames: ZodNumber;
                                              runtime_scripts: ZodNumber;
                                              runtime_targets: ZodNumber;
                                              runtime_workers: ZodNumber;
                                              static_loaded: ZodNumber;
                                              static_not_observed: ZodNumber;
                                              static_resident: ZodNumber;
                                              static_unknown: ZodNumber;
                                              unknown: ZodNumber;
                                              unmatched: ZodNumber;
                                          },
                                          $strict,
                                      >;
                                  },
                                  $strict,
                              > = ...
                              +
                              javascriptRuntimeReconciliationResultSchema: ZodObject<
                                  {
                                      coverage: ZodObject<
                                          {
                                              omitted_graph_items: ZodNumber;
                                              omitted_reconciliation_items: ZodNumber;
                                              omitted_runtime_entities: ZodNumber;
                                              omitted_static_load_states: ZodNumber;
                                              status: ZodEnum<
                                                  {
                                                      "complete-within-inputs": "complete-within-inputs";
                                                      partial: "partial";
                                                      truncated: "truncated";
                                                  },
                                              >;
                                              truncated: ZodBoolean;
                                          },
                                          $strict,
                                      >;
                                      evidence_links: ZodArray<ZodString>;
                                      graph: ZodObject<
                                          {
                                              coverage: ZodObject<
                                                  {
                                                      limits: ZodArray<
                                                          ZodObject<
                                                              {
                                                                  name: ZodString;
                                                                  unit: ZodEnum<
                                                                      {
                                                                          bytes: ...;
                                                                          characters: ...;
                                                                          depth: ...;
                                                                          instructions: ...;
                                                                          items: ...;
                                                                          milliseconds: ...;
                                                                          other: ...;
                                                                      },
                                                                  >;
                                                                  value: ZodNumber;
                                                              },
                                                              $strict,
                                                          >,
                                                      >;
                                                      omitted_count: ZodNullable<ZodNumber>;
                                                      status: ZodEnum<
                                                          {
                                                              complete: "complete";
                                                              partial: "partial";
                                                              unavailable: "unavailable";
                                                              unknown: "unknown";
                                                          },
                                                      >;
                                                      truncated: ZodBoolean;
                                                  },
                                                  $strict,
                                              >;
                                              edges: ZodArray<
                                                  ZodObject<
                                                      {
                                                          edge_id: ZodString;
                                                          evidence: ZodObject<
                                                              {
                                                                  artifact: ZodDiscriminatedUnion<[(...), (...)], "available">;
                                                                  authority: ZodEnum<
                                                                      {
                                                                          "artifact-bytes": ...;
                                                                          "ast-static-analysis": ...;
                                                                          "controlled-replay": ...;
                                                                          "cross-layer-reconciliation": ...;
                                                                          "cross-version-comparison": ...;
                                                                          "historical-reference": ...;
                                                                          "native-analysis-provider": ...;
                                                                          "passive-cdp-runtime": ...;
                                                                          "static-relationship-inference": ...;
                                                                          unknown: ...;
                                                                          "user-assertion": ...;
                                                                      },
                                                                  >;
                                                                  confidence: ZodEnum<
                                                                      { exact: ...; high: ...; low: ...; medium: ...; unknown: ... },
                                                                  >;
                                                                  coverage: ZodObject<
                                                                      {
                                                                          limits: ...;
                                                                          omitted_count: ...;
                                                                          status: ...;
                                                                          truncated: ...;
                                                                      },
                                                                      $strict,
                                                                  >;
                                                                  evidence_ids: ZodArray<ZodString>;
                                                                  extractor: ZodObject<
                                                                      {
                                                                          executable_sha256: ...;
                                                                          name: ...;
                                                                          operation: ...;
                                                                          version: ...;
                                                                      },
                                                                      $strict,
                                                                  >;
                                                                  limitations: ZodArray<ZodString>;
                                                                  location: ZodDiscriminatedUnion<[(...), (...)], "available">;
                                                                  state: ZodEnum<
                                                                      {
                                                                          inferred: ...;
                                                                          observed: ...;
                                                                          unavailable: ...;
                                                                          unknown: ...;
                                                                      },
                                                                  >;
                                                              },
                                                              $strict,
                                                          >;
                                                          identifier_strategy: ZodObject<
                                                              {
                                                                  stability: ZodLiteral<"relationship-exact">;
                                                                  strategy: ZodLiteral<"semantic-content-sha256">;
                                                              },
                                                              $strict,
                                                          >;
                                                          properties: ZodRecord<ZodString, ZodJSONSchema>;
                                                          relation: ZodEnum<
                                                              {
                                                                  calls: "calls";
                                                                  changed_from: "changed_from";
                                                                  contains: "contains";
                                                                  exposes: "exposes";
                                                                  handles: "handles";
                                                                  imports: "imports";
                                                                  invokes: "invokes";
                                                                  loads: "loads";
                                                                  maps_to: "maps_to";
                                                                  observed_as: "observed_as";
                                                                  persists_to: "persists_to";
                                                                  sends: "sends";
                                                              },
                                                          >;
                                                          source_node_id: ZodString;
                                                          target_node_id: ZodString;
                                                      },
                                                      $strict,
                                                  >,
                                              >;
                                              graph_id: ZodString;
                                              limitations: ZodArray<ZodString>;
                                              nodes: ZodArray<
                                                  ZodObject<
                                                      {
                                                          identity: ZodDiscriminatedUnion<
                                                              [
                                                                  ZodObject<
                                                                      { sha256: ...; stability: ...; strategy: ... },
                                                                      $strict,
                                                                  >,
                                                                  ZodObject<
                                                                      {
                                                                          original_source: ...;
                                                                          source_map_sha256: ...;
                                                                          source_sha256: ...;
                                                                          stability: ...;
                                                                          strategy: ...;
                                                                      },
                                                                      $strict,
                                                                  >,
                                                                  ZodObject<
                                                                      {
                                                                          artifact_sha256: ...;
                                                                          path: ...;
                                                                          stability: ...;
                                                                          strategy: ...;
                                                                      },
                                                                      $strict,
                                                                  >,
                                                              ],
                                                              "strategy",
                                                          >;
                                                          kind: ZodEnum<
                                                              {
                                                                  artifact: "artifact";
                                                                  "asar-entry": "asar-entry";
                                                                  "browser-window": "browser-window";
                                                                  "context-bridge-api": "context-bridge-api";
                                                                  "electron-main": "electron-main";
                                                                  "electron-preload": "electron-preload";
                                                                  "electron-renderer": "electron-renderer";
                                                                  "electron-utility": "electron-utility";
                                                                  endpoint: "endpoint";
                                                                  frame: "frame";
                                                                  installer: "installer";
                                                                  "ipc-channel": "ipc-channel";
                                                                  "ipc-handler": "ipc-handler";
                                                                  "javascript-asset": "javascript-asset";
                                                                  "javascript-chunk": "javascript-chunk";
                                                                  "javascript-module": "javascript-module";
                                                                  "native-addon": "native-addon";
                                                                  "native-export": "native-export";
                                                                  package: "package";
                                                                  "runtime-script-instance": "runtime-script-instance";
                                                                  "service-worker": "service-worker";
                                                                  "source-map": "source-map";
                                                                  "source-module": "source-module";
                                                                  storage: "storage";
                                                                  target: "target";
                                                                  unknown: "unknown";
                                                                  worker: "worker";
                                                              },
                                                          >;
                                                          node_id: ZodString;
                                                          observations: ZodArray<
                                                              ZodObject<
                                                                  {
                                                                      evidence: ZodObject<(...), (...)>;
                                                                      identifier_strategy: ZodObject<(...), (...)>;
                                                                      label: ZodNullable<(...)>;
                                                                      observation_id: ZodString;
                                                                      properties: ZodRecord<(...), (...)>;
                                                                  },
                                                                  $strict,
                                                              >,
                                                          >;
                                                      },
                                                      $strict,
                                                  >,
                                              >;
                                              root_node_ids: ZodArray<ZodString>;
                                              schema: ZodLiteral<"JavaScriptApplicationGraph">;
                                              schema_version: ZodLiteral<1>;
                                          },
                                          $strict,
                                      >;
                                      limitations: ZodArray<ZodString>;
                                      reconciliation_id: ZodString;
                                      reconciliations: ZodArray<
                                          ZodObject<
                                              {
                                                  basis: ZodEnum<
                                                      {
                                                          "artifact-path": "artifact-path";
                                                          "content-and-location": "content-and-location";
                                                          "content-sha256": "content-sha256";
                                                          "module-source-sha256": "module-source-sha256";
                                                          none: "none";
                                                          "operator-file-mapping": "operator-file-mapping";
                                                          "operator-url-mapping": "operator-url-mapping";
                                                      },
                                                  >;
                                                  candidate_static_count: ZodNumber;
                                                  candidate_static_nodes: ZodArray<
                                                      ZodObject<
                                                          { static_layer_id: ZodString; static_node_id: ZodString },
                                                          $strict,
                                                      >,
                                                  >;
                                                  confidence: ZodEnum<
                                                      {
                                                          exact: "exact";
                                                          high: "high";
                                                          low: "low";
                                                          medium: "medium";
                                                          unknown: "unknown";
                                                      },
                                                  >;
                                                  entity_kind: ZodEnum<
                                                      {
                                                          frame: "frame";
                                                          script: "script";
                                                          target: "target";
                                                          worker: "worker";
                                                      },
                                                  >;
                                                  reason: ZodEnum<
                                                      {
                                                          "ambiguous-static-candidates": "ambiguous-static-candidates";
                                                          "captured-content-disagrees-with-static-location": "captured-content-disagrees-with-static-location";
                                                          "content-and-location-match": "content-and-location-match";
                                                          "no-authorized-location-mapping": "no-authorized-location-mapping";
                                                          "no-static-content-match": "no-static-content-match";
                                                          "reconciliation-limit-reached": "reconciliation-limit-reached";
                                                          "runtime-frame-unattributed": "runtime-frame-unattributed";
                                                          "static-or-runtime-coverage-incomplete": "static-or-runtime-coverage-incomplete";
                                                          "unique-content-match": "unique-content-match";
                                                          "unique-location-match": "unique-location-match";
                                                      },
                                                  >;
                                                  reconciliation_id: ZodString;
                                                  runtime_evidence_id: ZodString;
                                                  runtime_node_id: ZodString;
                                                  static_layer_id: ZodNullable<ZodString>;
                                                  static_node_id: ZodNullable<ZodString>;
                                                  status: ZodEnum<
                                                      {
                                                          ambiguous: "ambiguous";
                                                          matched: "matched";
                                                          unknown: "unknown";
                                                          unmatched: "unmatched";
                                                      },
                                                  >;
                                              },
                                              $strict,
                                          >,
                                      >;
                                      runtime_captures: ZodArray<
                                          ZodObject<
                                              {
                                                  capture_sha256: ZodString;
                                                  evidence_id: ZodString;
                                                  frames: ZodNumber;
                                                  kind: ZodEnum<{ browser: "browser"; electron: "electron" }>;
                                                  scripts: ZodNumber;
                                                  scripts_complete_within_scope: ZodBoolean;
                                                  target_key: ZodString;
                                                  target_location: ZodString;
                                                  target_node_id: ZodString;
                                                  workers: ZodNumber;
                                              },
                                              $strict,
                                          >,
                                      >;
                                      schema_version: ZodLiteral<1>;
                                      source_map_authority: ZodObject<
                                          {
                                              limitation: ZodString;
                                              runtime_script_declarations: ZodNumber;
                                              static_layers_with_read_approval: ZodNumber;
                                              used_for_primary_matching: ZodLiteral<false>;
                                          },
                                          $strict,
                                      >;
                                      static_layers: ZodArray<
                                          ZodObject<
                                              {
                                                  evidence_id: ZodString;
                                                  format: ZodEnum<{ asar: "asar"; directory: "directory" }>;
                                                  graph_id: ZodString;
                                                  input_path: ZodString;
                                                  layer_id: ZodString;
                                                  role: ZodEnum<
                                                      { application: "application"; assets: "assets"; cache: "cache" },
                                                  >;
                                                  root_artifact_sha256: ZodString;
                                                  runtime_mappings: ZodArray<
                                                      ZodDiscriminatedUnion<
                                                          [
                                                              ZodObject<
                                                                  {
                                                                      artifact_prefix: ZodDefault<(...)>;
                                                                      kind: ZodLiteral<(...)>;
                                                                      root: ZodString;
                                                                  },
                                                                  $strict,
                                                              >,
                                                              ZodObject<
                                                                  {
                                                                      artifact_prefix: ZodDefault<(...)>;
                                                                      kind: ZodLiteral<(...)>;
                                                                      prefix: ZodString;
                                                                  },
                                                                  $strict,
                                                              >,
                                                          ],
                                                          "kind",
                                                      >,
                                                  >;
                                              },
                                              $strict,
                                          >,
                                      >;
                                      static_load_states: ZodArray<
                                          ZodObject<
                                              {
                                                  kind: ZodEnum<
                                                      {
                                                          "javascript-asset": "javascript-asset";
                                                          "javascript-chunk": "javascript-chunk";
                                                          "javascript-module": "javascript-module";
                                                      },
                                                  >;
                                                  reason: ZodEnum<
                                                      {
                                                          "containing-asset-was-loaded": "containing-asset-was-loaded";
                                                          "layer-outside-runtime-scope": "layer-outside-runtime-scope";
                                                          "not-observed-in-bounded-capture": "not-observed-in-bounded-capture";
                                                          "runtime-script-correspondence": "runtime-script-correspondence";
                                                          "static-or-runtime-coverage-incomplete": "static-or-runtime-coverage-incomplete";
                                                      },
                                                  >;
                                                  runtime_node_ids: ZodArray<ZodString>;
                                                  static_layer_id: ZodString;
                                                  static_node_id: ZodString;
                                                  status: ZodEnum<
                                                      {
                                                          loaded: "loaded";
                                                          "not-observed-in-capture": "not-observed-in-capture";
                                                          "resident-in-loaded-asset": "resident-in-loaded-asset";
                                                          unknown: "unknown";
                                                      },
                                                  >;
                                              },
                                              $strict,
                                          >,
                                      >;
                                      summary: ZodObject<
                                          {
                                              ambiguous: ZodNumber;
                                              matched: ZodNumber;
                                              runtime_frames: ZodNumber;
                                              runtime_scripts: ZodNumber;
                                              runtime_targets: ZodNumber;
                                              runtime_workers: ZodNumber;
                                              static_loaded: ZodNumber;
                                              static_not_observed: ZodNumber;
                                              static_resident: ZodNumber;
                                              static_unknown: ZodNumber;
                                              unknown: ZodNumber;
                                              unmatched: ZodNumber;
                                          },
                                          $strict,
                                      >;
                                  },
                                  $strict,
                              > = ...

                              Deterministic static/passive-runtime reconciliation with a combined JAG.