mirror of
https://github.com/morluto/rea
synced 2026-10-25 22:08:11 -04:00
refactor(providers): separate identities from workflow profiles
This commit is contained in:
@@ -125,7 +125,7 @@ const SOURCE_PATHS = {
|
||||
idaProvider: "dist/ida/IdaProviderCapabilities.js",
|
||||
kunaProvider: "dist/kuna/KunaProviderCapabilities.js",
|
||||
nativeProvider: "dist/native/NativeMacOSProviderMetadata.js",
|
||||
artifactProviders: "dist/application/InvestigationProviders.js",
|
||||
artifactProviders: "dist/domain/investigationProviders.js",
|
||||
browserIdentities: "dist/browser/providerIdentities.js",
|
||||
v8InspectorProvider: "dist/inspector/providerIdentity.js",
|
||||
evidence: "dist/domain/evidence.js",
|
||||
|
||||
@@ -13,7 +13,7 @@ import {
|
||||
} from "../dist/application/RealHopperAssertions.js";
|
||||
import { HOPPER_PROVIDER_IDENTITY } from "../dist/hopper/HopperProviderCapabilities.js";
|
||||
import { HOPPER_TARGET_LEASE_DIRECTORY } from "../dist/process/HopperLease.js";
|
||||
import { REA_WORKFLOW_PROVIDER } from "../dist/application/InvestigationProviders.js";
|
||||
import { REA_WORKFLOW_PROVIDER } from "../dist/domain/investigationProviders.js";
|
||||
import { loadRealHopperFixtureTargets } from "./lib/real-hopper-fixture.mjs";
|
||||
import { verifyHopperStringObjects } from "./lib/real-hopper-search.mjs";
|
||||
import {
|
||||
|
||||
@@ -11,7 +11,7 @@ import { verifyManagedNativeBoundariesEvidence } from "../../../dist/application
|
||||
import { importManagedReconstructionEvidence } from "../../../dist/application/managed/ManagedReconstructionService.js";
|
||||
import { projectManagedApplicationGraphEvidence } from "../../../dist/application/managed/ManagedApplicationGraphService.js";
|
||||
import { traceApplicationFeatureEvidence } from "../../../dist/application/javascript/JavaScriptApplicationWorkflowService.js";
|
||||
import { MANAGED_STATIC_PROVIDER } from "../../../dist/application/InvestigationProviders.js";
|
||||
import { MANAGED_STATIC_PROVIDER } from "../../../dist/domain/investigationProviders.js";
|
||||
import { createEvidence } from "../../../dist/domain/evidence.js";
|
||||
import { functionDossier } from "../../fixtures/managed/function-dossier.mjs";
|
||||
import {
|
||||
|
||||
@@ -7,7 +7,7 @@ import { inspectManagedMembersBytes } from "../../../dist/dotnet/ManagedMemberIn
|
||||
import { projectManagedApplicationGraphEvidence } from "../../../dist/application/managed/ManagedApplicationGraphService.js";
|
||||
import { traceApplicationFeatureEvidence } from "../../../dist/application/javascript/JavaScriptApplicationWorkflowService.js";
|
||||
import { createEvidence } from "../../../dist/domain/evidence.js";
|
||||
import { MANAGED_STATIC_PROVIDER } from "../../../dist/application/InvestigationProviders.js";
|
||||
import { MANAGED_STATIC_PROVIDER } from "../../../dist/domain/investigationProviders.js";
|
||||
import {
|
||||
ensure,
|
||||
methodTokenRow,
|
||||
|
||||
@@ -9,7 +9,7 @@ import { inspectManagedArtifactBytes } from "../../../dist/dotnet/ManagedArtifac
|
||||
import { inspectManagedMembersBytes } from "../../../dist/dotnet/ManagedMemberInspector.js";
|
||||
import { importManagedReconstructionEvidence } from "../../../dist/application/managed/ManagedReconstructionService.js";
|
||||
import { createEvidence } from "../../../dist/domain/evidence.js";
|
||||
import { MANAGED_STATIC_PROVIDER } from "../../../dist/application/InvestigationProviders.js";
|
||||
import { MANAGED_STATIC_PROVIDER } from "../../../dist/domain/investigationProviders.js";
|
||||
import { createManagedManifestVerifier } from "./manifest.mjs";
|
||||
|
||||
const execFileAsync = promisify(execFile);
|
||||
|
||||
@@ -48,10 +48,8 @@ import type {
|
||||
ProviderIdentity,
|
||||
} from "./AnalysisProvider.js";
|
||||
import { createAnalysisExecutionEvidence } from "../domain/analysisObservation.js";
|
||||
import {
|
||||
REA_WORKFLOW_PROVIDER,
|
||||
workflowAnalysisProfile,
|
||||
} from "./InvestigationProviders.js";
|
||||
import { REA_WORKFLOW_PROVIDER } from "../domain/investigationProviders.js";
|
||||
import { workflowAnalysisProfile } from "./WorkflowAnalysisProfile.js";
|
||||
import {
|
||||
executeComposedWorkflow,
|
||||
createWorkflowEvidence,
|
||||
|
||||
@@ -34,7 +34,7 @@ import {
|
||||
createJavaScriptApplicationNode,
|
||||
} from "../domain/javascript/javascriptApplicationGraph.js";
|
||||
import { jsonValueSchema } from "../domain/jsonValue.js";
|
||||
import { MANAGED_WORKFLOW_PROVIDER } from "./InvestigationProviders.js";
|
||||
import { MANAGED_WORKFLOW_PROVIDER } from "../domain/investigationProviders.js";
|
||||
import { createProcessCaptureEvidence } from "./process/ProcessEvidence.js";
|
||||
|
||||
const applicationWithUnknowns = (
|
||||
|
||||
@@ -2,7 +2,7 @@ import type { AnalysisError } from "../domain/analysisErrorBase.js";
|
||||
import { createEvidence, type Evidence } from "../domain/evidence.js";
|
||||
import type { ReconstructionObligationLedger } from "../domain/reconstructionObligationLedgerSchemas.js";
|
||||
import { ok, type Result } from "../domain/result.js";
|
||||
import { JAVASCRIPT_APPLICATION_WORKFLOW_PROVIDER } from "./InvestigationProviders.js";
|
||||
import { JAVASCRIPT_APPLICATION_WORKFLOW_PROVIDER } from "../domain/investigationProviders.js";
|
||||
import { deriveReconstructionObligationCandidates } from "./ReconstructionObligationCandidates.js";
|
||||
import { evaluateReconstructionObligationLedger } from "./ReconstructionObligationLedgerEvaluation.js";
|
||||
import {
|
||||
|
||||
@@ -32,7 +32,7 @@ import {
|
||||
} from "../domain/webScriptExport.js";
|
||||
import { WebScriptExportError } from "../domain/webScriptExportError.js";
|
||||
import type { ExecutionOptions } from "./AnalysisProvider.js";
|
||||
import { WEB_SCRIPT_EXPORT_PROVIDER as PROVIDER } from "./InvestigationProviders.js";
|
||||
import { WEB_SCRIPT_EXPORT_PROVIDER as PROVIDER } from "../domain/investigationProviders.js";
|
||||
import {
|
||||
readRegularFile,
|
||||
RegularFileReadFailure,
|
||||
|
||||
@@ -0,0 +1,23 @@
|
||||
import type { AnalysisOperation } from "./AnalysisProvider.js";
|
||||
import {
|
||||
createAnalysisProfile,
|
||||
type AnalysisProfileCommitment,
|
||||
} from "../domain/analysisProfile.js";
|
||||
import { REA_WORKFLOW_PROVIDER } from "../domain/investigationProviders.js";
|
||||
|
||||
/** Commit a workflow result to its upstream profile and applicable semantic revision. */
|
||||
export const workflowAnalysisProfile = (
|
||||
upstream: AnalysisProfileCommitment,
|
||||
operation?: AnalysisOperation,
|
||||
): AnalysisProfileCommitment =>
|
||||
createAnalysisProfile(REA_WORKFLOW_PROVIDER, {
|
||||
upstream_analysis_profile: upstream,
|
||||
source_limitations: "provider-operation-caveats-v1",
|
||||
...(operation === "binary_overview"
|
||||
? { workflow_revision: 4 }
|
||||
: operation === "batch_decompile" ||
|
||||
operation === "get_call_graph" ||
|
||||
operation === "trace_feature"
|
||||
? { workflow_revision: 3 }
|
||||
: { workflow_revision: 1 }),
|
||||
});
|
||||
@@ -1,7 +1,5 @@
|
||||
import {
|
||||
REA_WORKFLOW_PROVIDER,
|
||||
workflowAnalysisProfile,
|
||||
} from "./InvestigationProviders.js";
|
||||
import { REA_WORKFLOW_PROVIDER } from "../domain/investigationProviders.js";
|
||||
import { workflowAnalysisProfile } from "./WorkflowAnalysisProfile.js";
|
||||
import type {
|
||||
AnalysisOperation,
|
||||
AnalysisOperationPort,
|
||||
|
||||
@@ -4,7 +4,7 @@ import { readImmutableEvidenceBundle } from "../EvidenceBundleFiles.js";
|
||||
import { INSPECT_ANALYSIS_VIEW_OPERATION } from "../../domain/analysisView/analysisViewErrors.js";
|
||||
import { jsonValueSchema } from "../../domain/jsonValue.js";
|
||||
|
||||
import { ANALYSIS_VIEW_PROVIDER } from "../InvestigationProviders.js";
|
||||
import { ANALYSIS_VIEW_PROVIDER } from "../../domain/investigationProviders.js";
|
||||
import type { EvidenceLookup } from "../EvidenceInputResolver.js";
|
||||
import { resolveEvidenceInput } from "../EvidenceInputResolver.js";
|
||||
import type { EvidenceWriter } from "../investigation/InvestigationRecordPort.js";
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
import type { AnalysisError } from "../../domain/analysisErrorBase.js";
|
||||
import { projectAndroidInventory } from "../../domain/android/androidApplication.js";
|
||||
import type { Result } from "../../domain/result.js";
|
||||
import { ANDROID_APPLICATION_PROVIDER } from "../InvestigationProviders.js";
|
||||
import { ANDROID_APPLICATION_PROVIDER } from "../../domain/investigationProviders.js";
|
||||
import {
|
||||
projectInventoryEvidence,
|
||||
type InventoryProjectionEvidenceResult,
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
import type { AnalysisError } from "../../domain/analysisErrorBase.js";
|
||||
import { projectAppleInventory } from "../../domain/apple/appleApplication.js";
|
||||
import type { Result } from "../../domain/result.js";
|
||||
import { APPLE_APPLICATION_PROVIDER } from "../InvestigationProviders.js";
|
||||
import { APPLE_APPLICATION_PROVIDER } from "../../domain/investigationProviders.js";
|
||||
import {
|
||||
projectInventoryEvidence,
|
||||
type InventoryProjectionEvidenceResult,
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
import type { ExecutionOptions } from "../AnalysisProvider.js";
|
||||
import type { DesktopApplicationPort } from "./DesktopApplicationPort.js";
|
||||
import { ARTIFACT_GRAPH_PROVIDER } from "../InvestigationProviders.js";
|
||||
import { ARTIFACT_GRAPH_PROVIDER } from "../../domain/investigationProviders.js";
|
||||
import { completeProviderEvidence } from "../ProviderOperationExecution.js";
|
||||
import {
|
||||
AnalysisInputError,
|
||||
|
||||
@@ -19,10 +19,8 @@ import {
|
||||
snapshotBinding,
|
||||
snapshotTarget,
|
||||
} from "../../domain/analysisSnapshot.js";
|
||||
import {
|
||||
REA_WORKFLOW_PROVIDER,
|
||||
workflowAnalysisProfile,
|
||||
} from "../InvestigationProviders.js";
|
||||
import { REA_WORKFLOW_PROVIDER } from "../../domain/investigationProviders.js";
|
||||
import { workflowAnalysisProfile } from "../WorkflowAnalysisProfile.js";
|
||||
import type {
|
||||
AnalysisOperation,
|
||||
CapabilityDescriptor,
|
||||
|
||||
@@ -34,7 +34,7 @@ import { InvestigationRecords } from "../investigation/InvestigationRecords.js";
|
||||
import { ArtifactResourceScope } from "../../artifacts/ArtifactResourceScope.js";
|
||||
import { ArtifactReaderFailure } from "../../artifacts/ArtifactReader.js";
|
||||
import { writeAnalysisSnapshot as writeSnapshotFile } from "./AnalysisSnapshotFiles.js";
|
||||
import { workflowAnalysisProfile } from "../InvestigationProviders.js";
|
||||
import { workflowAnalysisProfile } from "../WorkflowAnalysisProfile.js";
|
||||
import {
|
||||
hasOnlyProfilelessNativeDispatchEntries,
|
||||
isProfilelessNativeDispatchSnapshot,
|
||||
|
||||
@@ -5,7 +5,7 @@ import {
|
||||
type AnalysisSnapshot,
|
||||
} from "../../domain/analysisSnapshot.js";
|
||||
import type { BinaryTarget } from "../../domain/binaryTargetTypes.js";
|
||||
import { workflowAnalysisProfile } from "../InvestigationProviders.js";
|
||||
import { workflowAnalysisProfile } from "../WorkflowAnalysisProfile.js";
|
||||
import type { SessionProviderRoute } from "./SessionProviderRouter.js";
|
||||
|
||||
/** Return the exact currently declared native dispatch reader profile, if any. */
|
||||
|
||||
@@ -3,7 +3,7 @@ import { constants } from "node:fs";
|
||||
import { open, stat } from "node:fs/promises";
|
||||
import { isAbsolute } from "node:path";
|
||||
import type { ExecutionOptions } from "../AnalysisProvider.js";
|
||||
import { BYTE_ENTROPY_PROVIDER } from "../InvestigationProviders.js";
|
||||
import { BYTE_ENTROPY_PROVIDER } from "../../domain/investigationProviders.js";
|
||||
import { AnalysisError } from "../../domain/analysisErrorBase.js";
|
||||
import {
|
||||
AnalysisOutputError,
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
import { expect, it } from "vitest";
|
||||
import { ElfNotesService } from "./ElfNotesService.js";
|
||||
import { ELF_NOTES_PROVIDER } from "../InvestigationProviders.js";
|
||||
import { ELF_NOTES_PROVIDER } from "../../domain/investigationProviders.js";
|
||||
import type { ElfNotes } from "../../domain/native/elfNotes.js";
|
||||
import { ok } from "../../domain/result.js";
|
||||
import {
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
import { expect, it } from "vitest";
|
||||
import { PeCertificatesService } from "./PeCertificatesService.js";
|
||||
import { PE_CERTIFICATES_PROVIDER } from "../InvestigationProviders.js";
|
||||
import { PE_CERTIFICATES_PROVIDER } from "../../domain/investigationProviders.js";
|
||||
import type { PeCertificates } from "../../domain/native/peCertificates.js";
|
||||
import { ok } from "../../domain/result.js";
|
||||
import {
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
import { createHash } from "node:crypto";
|
||||
import { expect, it } from "vitest";
|
||||
import { PeResourcesService } from "./PeResourcesService.js";
|
||||
import { PE_RESOURCES_PROVIDER } from "../InvestigationProviders.js";
|
||||
import { PE_RESOURCES_PROVIDER } from "../../domain/investigationProviders.js";
|
||||
import { inspectPeResourcesInputSchema } from "../../domain/native/peResources.js";
|
||||
import { parsePeResources } from "../../native/pe/PeResourceParser.js";
|
||||
import { peResourceFixture } from "../../native/pe/PeResources.fixture.js";
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
import type { AnalysisError } from "../../domain/analysisErrorBase.js";
|
||||
import { projectHarmonyInventory } from "../../domain/harmony/harmonyApplication.js";
|
||||
import type { Result } from "../../domain/result.js";
|
||||
import { HARMONY_APPLICATION_PROVIDER } from "../InvestigationProviders.js";
|
||||
import { HARMONY_APPLICATION_PROVIDER } from "../../domain/investigationProviders.js";
|
||||
import {
|
||||
projectInventoryEvidence,
|
||||
type InventoryProjectionEvidenceResult,
|
||||
|
||||
@@ -7,7 +7,7 @@ import type {
|
||||
AnalyzeJavaScriptApplicationInput,
|
||||
JavaScriptApplicationAnalysisResult,
|
||||
} from "../../domain/javascript/javascriptApplicationAnalysis.js";
|
||||
import { JAVASCRIPT_APPLICATION_PROVIDER } from "../InvestigationProviders.js";
|
||||
import { JAVASCRIPT_APPLICATION_PROVIDER } from "../../domain/investigationProviders.js";
|
||||
import { freezeOwnedJsonSnapshotSteps } from "../../domain/immutableJson.js";
|
||||
import { rememberOwnedApplicationGraphEvidence } from "./JavaScriptApplicationEvidenceGraph.js";
|
||||
import { completeJavaScriptAnalysisSteps } from "./JavaScriptAnalysisControl.js";
|
||||
|
||||
@@ -2,7 +2,7 @@ import {
|
||||
JAVASCRIPT_APPLICATION_PROVIDER,
|
||||
JAVASCRIPT_RUNTIME_RECONCILIATION_PROVIDER,
|
||||
MANAGED_WORKFLOW_PROVIDER,
|
||||
} from "../InvestigationProviders.js";
|
||||
} from "../../domain/investigationProviders.js";
|
||||
import { isImmutableEvidence, type Evidence } from "../../domain/evidence.js";
|
||||
import { safeParseEvidence } from "../../domain/evidenceValidation.js";
|
||||
import {
|
||||
|
||||
@@ -30,7 +30,7 @@ import {
|
||||
reconstructJavaScriptArtifact,
|
||||
type JavaScriptArtifactReconstructionResult,
|
||||
} from "./JavaScriptArtifactReconstruction.js";
|
||||
import { JAVASCRIPT_APPLICATION_PROVIDER } from "../InvestigationProviders.js";
|
||||
import { JAVASCRIPT_APPLICATION_PROVIDER } from "../../domain/investigationProviders.js";
|
||||
|
||||
const OPERATION = "analyze_javascript_application" as const;
|
||||
|
||||
|
||||
@@ -8,7 +8,7 @@ import type { JavaScriptExportShapeComparisonResult } from "../../domain/javascr
|
||||
import type { ApplicationFeatureTraceResult } from "../../domain/javascript/javascriptFeatureTraceSchemas.js";
|
||||
import type { JavaScriptSemanticTraceResult } from "../../domain/javascript/javascriptSemanticTraceSchemas.js";
|
||||
import type { SourceToBundleComparisonResult } from "../../domain/javascript/sourceToBundleComparisonSchemas.js";
|
||||
import { JAVASCRIPT_APPLICATION_WORKFLOW_PROVIDER } from "../InvestigationProviders.js";
|
||||
import { JAVASCRIPT_APPLICATION_WORKFLOW_PROVIDER } from "../../domain/investigationProviders.js";
|
||||
|
||||
/** Create derived Evidence for one bounded application-graph feature trace. */
|
||||
export const createApplicationFeatureTraceEvidence = (
|
||||
|
||||
@@ -7,7 +7,7 @@ import type {
|
||||
JavaScriptRuntimeReconciliationResult,
|
||||
ReconcileJavaScriptRuntimeInput,
|
||||
} from "../../domain/javascript/javascriptRuntimeReconciliationSchemas.js";
|
||||
import { JAVASCRIPT_RUNTIME_RECONCILIATION_PROVIDER } from "../InvestigationProviders.js";
|
||||
import { JAVASCRIPT_RUNTIME_RECONCILIATION_PROVIDER } from "../../domain/investigationProviders.js";
|
||||
|
||||
/** Create derived Evidence for one exact set of static/runtime inputs. */
|
||||
export const createJavaScriptRuntimeReconciliationEvidence = (
|
||||
|
||||
@@ -12,7 +12,7 @@ import {
|
||||
type ParsedManagedGraphInput,
|
||||
} from "../../domain/managed/managedApplicationGraph.js";
|
||||
import { ok, type Result } from "../../domain/result.js";
|
||||
import { MANAGED_WORKFLOW_PROVIDER } from "../InvestigationProviders.js";
|
||||
import { MANAGED_WORKFLOW_PROVIDER } from "../../domain/investigationProviders.js";
|
||||
|
||||
const OPERATION = "project_managed_application_graph" as const;
|
||||
|
||||
|
||||
@@ -24,7 +24,7 @@ import { readManagedSnapshot } from "../../dotnet/ManagedSnapshot.js";
|
||||
import {
|
||||
MANAGED_STATIC_PROVIDER,
|
||||
MANAGED_WORKFLOW_PROVIDER,
|
||||
} from "../InvestigationProviders.js";
|
||||
} from "../../domain/investigationProviders.js";
|
||||
import { requestInputError } from "../workflowInputError.js";
|
||||
|
||||
const managedMemberComparisonRequestSchema = z.strictObject({
|
||||
|
||||
@@ -7,7 +7,7 @@ import {
|
||||
type ManagedNativeVerificationSource,
|
||||
} from "../../domain/managed/managedNativeVerificationSource.js";
|
||||
import type { ManagedNativeVerificationResult } from "../../domain/managed/managedNativeVerificationSchemas.js";
|
||||
import { MANAGED_WORKFLOW_PROVIDER } from "../InvestigationProviders.js";
|
||||
import { MANAGED_WORKFLOW_PROVIDER } from "../../domain/investigationProviders.js";
|
||||
|
||||
const OPERATION = "verify_managed_native_boundaries" as const;
|
||||
|
||||
|
||||
@@ -9,7 +9,7 @@ import {
|
||||
type ResolvedManagedReconstructionImport,
|
||||
} from "../../domain/managed/managedReconstruction.js";
|
||||
import { err, ok, type Result } from "../../domain/result.js";
|
||||
import { MANAGED_WORKFLOW_PROVIDER } from "../InvestigationProviders.js";
|
||||
import { MANAGED_WORKFLOW_PROVIDER } from "../../domain/investigationProviders.js";
|
||||
import { requestInputError } from "../workflowInputError.js";
|
||||
|
||||
const OPERATION = "import_managed_reconstruction" as const;
|
||||
|
||||
@@ -38,7 +38,7 @@ import { err, ok, type Result } from "../domain/result.js";
|
||||
import { ArtifactReaderFailure } from "./ArtifactReader.js";
|
||||
import { ArtifactResourceScope } from "./ArtifactResourceScope.js";
|
||||
import { artifactCapabilities } from "./ArtifactProviderMetadata.js";
|
||||
import { ARTIFACT_GRAPH_PROVIDER } from "../application/InvestigationProviders.js";
|
||||
import { ARTIFACT_GRAPH_PROVIDER } from "../domain/investigationProviders.js";
|
||||
import { createEvidence } from "../domain/evidence.js";
|
||||
import { freezeJsonSnapshot } from "../domain/immutableJson.js";
|
||||
import { createArtifactInspection } from "../domain/artifactInspection.js";
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
import type { CapabilityDescriptor } from "../application/AnalysisProvider.js";
|
||||
import { ARTIFACT_GRAPH_PROVIDER } from "../application/InvestigationProviders.js";
|
||||
import { ARTIFACT_GRAPH_PROVIDER } from "../domain/investigationProviders.js";
|
||||
import { ARTIFACT_ANALYSIS_OPERATIONS } from "../contracts/artifactToolContracts.js";
|
||||
|
||||
/** Declare artifact coverage without constructing readers or acquiring resources. */
|
||||
|
||||
@@ -30,7 +30,7 @@ import { projectDesktopApplication } from "../domain/desktopApplicationProjectio
|
||||
import { digestCanonicalValue } from "../domain/canonicalDigest.js";
|
||||
import { err, ok } from "../domain/result.js";
|
||||
import { createDesktopApplicationEvidence } from "../domain/desktopApplicationEvidence.js";
|
||||
import { ARTIFACT_GRAPH_PROVIDER } from "../application/InvestigationProviders.js";
|
||||
import { ARTIFACT_GRAPH_PROVIDER } from "../domain/investigationProviders.js";
|
||||
import {
|
||||
AnalysisResourceConstraintError,
|
||||
AnalysisUnsupportedTargetError,
|
||||
|
||||
@@ -2,7 +2,7 @@ import { z } from "incur";
|
||||
|
||||
import { inspectAnalysisView } from "../application/analysisView/AnalysisViewService.js";
|
||||
import { ArtifactResourceScope } from "../artifacts/ArtifactResourceScope.js";
|
||||
import { ANALYSIS_VIEW_PROVIDER } from "../application/InvestigationProviders.js";
|
||||
import { ANALYSIS_VIEW_PROVIDER } from "../domain/investigationProviders.js";
|
||||
import { readEvidenceBundle } from "../application/EvidenceBundleFiles.js";
|
||||
import { inspectEvidenceBundle } from "../application/investigation/InspectEvidenceBundle.js";
|
||||
import {
|
||||
|
||||
@@ -5,7 +5,7 @@ import {
|
||||
} from "./analysisEvidenceDelivery.js";
|
||||
import { withCommandCancellation } from "./commandCancellation.js";
|
||||
import { projectAnalysisError } from "../domain/analysisErrorProjection.js";
|
||||
import { ARTIFACT_GRAPH_PROVIDER } from "../application/InvestigationProviders.js";
|
||||
import { ARTIFACT_GRAPH_PROVIDER } from "../domain/investigationProviders.js";
|
||||
import { z } from "incur";
|
||||
|
||||
import type { DirectAnalysis } from "../composition/directAnalysis.js";
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
import type { AnalysisViewRequest } from "../domain/analysisView/analysisView.js";
|
||||
import { publishCliAnalysisEvidence } from "./analysisEvidenceDelivery.js";
|
||||
import { JAVASCRIPT_APPLICATION_PROVIDER } from "../application/InvestigationProviders.js";
|
||||
import { JAVASCRIPT_APPLICATION_PROVIDER } from "../domain/investigationProviders.js";
|
||||
import { createProgressReporter } from "../application/ProgressReporter.js";
|
||||
import { ArtifactReaderFailure } from "../artifacts/ArtifactReader.js";
|
||||
import { ArtifactResourceScope } from "../artifacts/ArtifactResourceScope.js";
|
||||
|
||||
@@ -7,7 +7,7 @@ import type { DirectAnalysis } from "../composition/directAnalysis.js";
|
||||
import { ArtifactReaderFailure } from "../artifacts/ArtifactReader.js";
|
||||
import { ArtifactResourceScope } from "../artifacts/ArtifactResourceScope.js";
|
||||
import { parseCliJsonInput } from "../cliJsonInput.js";
|
||||
import { MANAGED_STATIC_PROVIDER } from "../application/InvestigationProviders.js";
|
||||
import { MANAGED_STATIC_PROVIDER } from "../domain/investigationProviders.js";
|
||||
import { analysisErrorWithCleanupFailure } from "../domain/analysisErrorCleanup.js";
|
||||
import { projectAnalysisError } from "../domain/analysisErrorProjection.js";
|
||||
import { ProviderCleanupError } from "../domain/providerCleanupError.js";
|
||||
|
||||
@@ -4,7 +4,7 @@ import { artifactCapabilities } from "../artifacts/ArtifactProviderMetadata.js";
|
||||
import {
|
||||
ARTIFACT_GRAPH_PROVIDER,
|
||||
MANAGED_STATIC_PROVIDER,
|
||||
} from "../application/InvestigationProviders.js";
|
||||
} from "../domain/investigationProviders.js";
|
||||
import { managedStaticCapabilities } from "../dotnet/ManagedStaticProviderMetadata.js";
|
||||
import {
|
||||
NATIVE_MACOS_PROVIDER_IDENTITY,
|
||||
|
||||
@@ -1,8 +1,3 @@
|
||||
import type { AnalysisOperation } from "./AnalysisProvider.js";
|
||||
import {
|
||||
createAnalysisProfile,
|
||||
type AnalysisProfileCommitment,
|
||||
} from "../domain/analysisProfile.js";
|
||||
/** Provider identity for deterministic composed analysis workflows. */
|
||||
export const REA_WORKFLOW_PROVIDER = {
|
||||
id: "rea-workflow",
|
||||
@@ -10,23 +5,6 @@ export const REA_WORKFLOW_PROVIDER = {
|
||||
version: "1",
|
||||
} as const;
|
||||
|
||||
/** Commit a workflow result to its upstream profile and applicable semantic revision. */
|
||||
export const workflowAnalysisProfile = (
|
||||
upstream: AnalysisProfileCommitment,
|
||||
operation?: AnalysisOperation,
|
||||
): AnalysisProfileCommitment =>
|
||||
createAnalysisProfile(REA_WORKFLOW_PROVIDER, {
|
||||
upstream_analysis_profile: upstream,
|
||||
source_limitations: "provider-operation-caveats-v1",
|
||||
...(operation === "binary_overview"
|
||||
? { workflow_revision: 4 }
|
||||
: operation === "batch_decompile" ||
|
||||
operation === "get_call_graph" ||
|
||||
operation === "trace_feature"
|
||||
? { workflow_revision: 3 }
|
||||
: { workflow_revision: 1 }),
|
||||
});
|
||||
|
||||
/** Provider identity for deterministic artifact inventories. */
|
||||
export const ARTIFACT_GRAPH_PROVIDER = Object.freeze({
|
||||
id: "rea-artifact-graph",
|
||||
@@ -2,7 +2,7 @@ import { createHash } from "node:crypto";
|
||||
import type { Stats } from "node:fs";
|
||||
import type { FileHandle } from "node:fs/promises";
|
||||
|
||||
import { MANAGED_STATIC_PROVIDER } from "../application/InvestigationProviders.js";
|
||||
import { MANAGED_STATIC_PROVIDER } from "../domain/investigationProviders.js";
|
||||
import { classifyBinaryTargetFilesystemFailure } from "../application/BinaryTargetResolver.js";
|
||||
import { RegularFileCleanupFailure } from "../filesystem/OwnedRegularFile.js";
|
||||
import {
|
||||
|
||||
@@ -10,7 +10,7 @@ import {
|
||||
import { ArtifactReaderFailure } from "../artifacts/ArtifactReader.js";
|
||||
import { ArtifactResourceScope } from "../artifacts/ArtifactResourceScope.js";
|
||||
import { managedStaticCapabilities } from "./ManagedStaticProviderMetadata.js";
|
||||
import { MANAGED_STATIC_PROVIDER } from "../application/InvestigationProviders.js";
|
||||
import { MANAGED_STATIC_PROVIDER } from "../domain/investigationProviders.js";
|
||||
import {
|
||||
MANAGED_TOOL_CONTRACTS,
|
||||
managedMembersInputSchema,
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
import type { CapabilityDescriptor } from "../application/AnalysisProvider.js";
|
||||
import { MANAGED_STATIC_PROVIDER } from "../application/InvestigationProviders.js";
|
||||
import { MANAGED_STATIC_PROVIDER } from "../domain/investigationProviders.js";
|
||||
import {
|
||||
MANAGED_TOOL_CONTRACTS,
|
||||
type ManagedToolName,
|
||||
|
||||
@@ -26,7 +26,7 @@ import {
|
||||
} from "../../domain/native/elfNotes.js";
|
||||
import { err, ok } from "../../domain/result.js";
|
||||
import { ProviderCleanupError } from "../../domain/providerCleanupError.js";
|
||||
import { ELF_NOTES_PROVIDER } from "../../application/InvestigationProviders.js";
|
||||
import { ELF_NOTES_PROVIDER } from "../../domain/investigationProviders.js";
|
||||
import { BinaryFormatFailure } from "../metadata/BinaryContainer.js";
|
||||
import {
|
||||
ElfNoteSectionNameBudgetFailure,
|
||||
|
||||
@@ -27,7 +27,7 @@ import {
|
||||
import { ProviderAdapterError } from "../../domain/providerAdapterError.js";
|
||||
import { ProviderCleanupError } from "../../domain/providerCleanupError.js";
|
||||
import { err, ok } from "../../domain/result.js";
|
||||
import { NATIVE_EXPORTS_PROVIDER } from "../../application/InvestigationProviders.js";
|
||||
import { NATIVE_EXPORTS_PROVIDER } from "../../domain/investigationProviders.js";
|
||||
import {
|
||||
BinaryFormatFailure,
|
||||
BinaryResourceFailure,
|
||||
|
||||
@@ -24,7 +24,7 @@ import {
|
||||
} from "../../domain/native/peCertificates.js";
|
||||
import { err, ok } from "../../domain/result.js";
|
||||
import { ProviderCleanupError } from "../../domain/providerCleanupError.js";
|
||||
import { PE_CERTIFICATES_PROVIDER } from "../../application/InvestigationProviders.js";
|
||||
import { PE_CERTIFICATES_PROVIDER } from "../../domain/investigationProviders.js";
|
||||
import { parsePeCertificates } from "./PeCertificateParser.js";
|
||||
|
||||
const OPERATION = "inspect_pe_certificates";
|
||||
|
||||
@@ -25,7 +25,7 @@ import {
|
||||
} from "../../domain/native/peResources.js";
|
||||
import { err, ok } from "../../domain/result.js";
|
||||
import { ProviderCleanupError } from "../../domain/providerCleanupError.js";
|
||||
import { PE_RESOURCES_PROVIDER } from "../../application/InvestigationProviders.js";
|
||||
import { PE_RESOURCES_PROVIDER } from "../../domain/investigationProviders.js";
|
||||
import {
|
||||
parsePeResources,
|
||||
PE_RESOURCE_METADATA_BYTES,
|
||||
|
||||
@@ -8,7 +8,7 @@ import { createEvidence } from "../domain/evidence.js";
|
||||
import { jsonValueSchema } from "../domain/jsonValue.js";
|
||||
import { runDerivedOperation } from "./runDerivedOperation.js";
|
||||
import { recordSessionEvidenceSources } from "./sessionEvidence.js";
|
||||
import { BUNDLE_COMPARISON_PROVIDER } from "../application/InvestigationProviders.js";
|
||||
import { BUNDLE_COMPARISON_PROVIDER } from "../domain/investigationProviders.js";
|
||||
import { toolRegistrationOptions } from "./toolRegistrationOptions.js";
|
||||
import { withAdmittedAnalysis } from "./analysisAdmission.js";
|
||||
import { runAdmittedToolOperation } from "./admittedToolOperation.js";
|
||||
|
||||
@@ -22,7 +22,7 @@ import {
|
||||
CHANGED_BEHAVIOR_PROVIDER,
|
||||
RECONSTRUCTION_PROVIDER,
|
||||
STATIC_RUNTIME_PROVIDER,
|
||||
} from "../application/InvestigationProviders.js";
|
||||
} from "../domain/investigationProviders.js";
|
||||
import {
|
||||
applicationToolRegistrationOptions,
|
||||
toolRegistrationOptions,
|
||||
|
||||
@@ -17,10 +17,8 @@ import {
|
||||
import { parseBinaryTarget } from "../../../src/application/BinaryTargetResolver.js";
|
||||
import { createEvidence } from "../../../src/domain/evidence.js";
|
||||
import { createEvidenceBundle } from "../../../src/domain/evidenceBundle.js";
|
||||
import {
|
||||
REA_WORKFLOW_PROVIDER,
|
||||
workflowAnalysisProfile,
|
||||
} from "../../../src/application/InvestigationProviders.js";
|
||||
import { REA_WORKFLOW_PROVIDER } from "../../../src/domain/investigationProviders.js";
|
||||
import { workflowAnalysisProfile } from "../../../src/application/WorkflowAnalysisProfile.js";
|
||||
import { HOPPER_PROVIDER_IDENTITY } from "../../../src/hopper/HopperProviderCapabilities.js";
|
||||
|
||||
import { resolveHopperAnalysisProfile } from "../../../src/hopper/HopperAnalysisProfile.js";
|
||||
|
||||
@@ -25,10 +25,8 @@ import {
|
||||
type Evidence,
|
||||
} from "../../../src/domain/evidence.js";
|
||||
import { createEvidenceBundle } from "../../../src/domain/evidenceBundle.js";
|
||||
import {
|
||||
REA_WORKFLOW_PROVIDER,
|
||||
workflowAnalysisProfile,
|
||||
} from "../../../src/application/InvestigationProviders.js";
|
||||
import { REA_WORKFLOW_PROVIDER } from "../../../src/domain/investigationProviders.js";
|
||||
import { workflowAnalysisProfile } from "../../../src/application/WorkflowAnalysisProfile.js";
|
||||
import {
|
||||
analysisQueryId,
|
||||
createAnalysisSnapshotWorkflowEntry,
|
||||
|
||||
@@ -31,7 +31,7 @@ import {
|
||||
buildSyntheticJavaScriptApplicationGraph,
|
||||
} from "../../../src/domain/javascript/javascriptApplicationGraph.fixture.js";
|
||||
import { writeVersionedJavaScriptApplicationFixtures } from "../../fixtures/javascriptArtifactApplication.js";
|
||||
import { JAVASCRIPT_APPLICATION_PROVIDER } from "../../../src/application/InvestigationProviders.js";
|
||||
import { JAVASCRIPT_APPLICATION_PROVIDER } from "../../../src/domain/investigationProviders.js";
|
||||
import { projectManagedApplicationGraphEvidence } from "../../../src/application/managed/ManagedApplicationGraphService.js";
|
||||
import { MANAGED_APPLICATION_GRAPH_EXAMPLE } from "../../../src/contracts/managed/managedWorkflowExamples.js";
|
||||
import { JAVASCRIPT_RUNTIME_RECONCILIATION_EXAMPLE } from "../../../src/contracts/javascript/javascriptRuntimeReconciliationExample.js";
|
||||
|
||||
@@ -6,7 +6,7 @@ import { afterEach, describe, expect, it } from "vitest";
|
||||
|
||||
import { createTestTempDirectory } from "../../fixtures/temporaryDirectory.js";
|
||||
|
||||
import { BYTE_ENTROPY_PROVIDER } from "../../../src/application/InvestigationProviders.js";
|
||||
import { BYTE_ENTROPY_PROVIDER } from "../../../src/domain/investigationProviders.js";
|
||||
import { SUPPORTED_CLIENT_DEFINITIONS } from "../../../src/application/SupportedClients.js";
|
||||
import { CLI_COMMAND_NAMES } from "../../../src/cliCommandNames.js";
|
||||
import { createCli } from "../../../src/cli.js";
|
||||
|
||||
@@ -4,7 +4,7 @@ import { projectManagedApplicationGraphEvidence } from "../../../src/application
|
||||
import { managedApplicationGraphReferenceInputSchema } from "../../../src/contracts/managed/managedWorkflowToolContracts.js";
|
||||
import { MANAGED_APPLICATION_GRAPH_EXAMPLE } from "../../../src/contracts/managed/managedWorkflowExamples.js";
|
||||
import { traceApplicationFeatureEvidence } from "../../../src/application/javascript/JavaScriptApplicationWorkflowService.js";
|
||||
import { MANAGED_STATIC_PROVIDER } from "../../../src/application/InvestigationProviders.js";
|
||||
import { MANAGED_STATIC_PROVIDER } from "../../../src/domain/investigationProviders.js";
|
||||
import { createEvidence, parseEvidence } from "../../../src/domain/evidence.js";
|
||||
import { parseJavaScriptApplicationGraph } from "../../../src/domain/javascript/javascriptApplicationGraph.js";
|
||||
import { managedApplicationGraphResultSchema } from "../../../src/domain/managed/managedApplicationGraph.js";
|
||||
|
||||
@@ -14,7 +14,7 @@ import {
|
||||
BINARY_LAYOUT_TEST_PROVIDER,
|
||||
} from "../fixtures/binaryDiagnostics/layout.js";
|
||||
import { PeResourcesService } from "../../src/application/binaryDiagnostics/PeResourcesService.js";
|
||||
import { PE_RESOURCES_PROVIDER } from "../../src/application/InvestigationProviders.js";
|
||||
import { PE_RESOURCES_PROVIDER } from "../../src/domain/investigationProviders.js";
|
||||
import { inspectPeResourcesInputSchema } from "../../src/domain/native/peResources.js";
|
||||
import { parsePeResources } from "../../src/native/pe/PeResourceParser.js";
|
||||
import { peResourceFixture } from "../../src/native/pe/PeResources.fixture.js";
|
||||
|
||||
Reference in New Issue
Block a user