rea-agents 3.1.0 → 3.2.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +72 -95
- package/bridge/ghidra/ReaGhidraBridge.java +609 -841
- package/bridge/hopper_bridge.py +99 -344
- package/dist/application/AbortablePromise.js +6 -3
- package/dist/application/AnalysisSnapshotCache.js +0 -1
- package/dist/application/AnalysisSnapshotFiles.js +7 -7
- package/dist/application/AndroidApplicationService.js +1 -1
- package/dist/application/AppleApplicationService.js +1 -1
- package/dist/application/ArtifactExtraction.js +35 -54
- package/dist/application/ArtifactExtractionDestination.js +17 -0
- package/dist/application/ArtifactGraphConstruction.js +2 -17
- package/dist/application/ArtifactInventory/classify.js +2 -6
- package/dist/application/ArtifactInventory/hash.js +2 -20
- package/dist/application/ArtifactInventory/scanCanonical.js +8 -12
- package/dist/application/ArtifactInventory/scanReader.js +69 -51
- package/dist/application/ArtifactInventory.js +6 -14
- package/dist/application/AuthorizedArtifactInventory.js +3 -13
- package/dist/application/BinarySession.js +41 -13
- package/dist/application/BinarySessionComposition.js +0 -11
- package/dist/application/BinarySessionOpen.js +2 -1
- package/dist/application/BinarySessionRecords.js +5 -93
- package/dist/application/BinarySessionStatus.js +5 -16
- package/dist/application/BinaryTargetResolver.js +216 -0
- package/dist/application/BrowserEvidence.js +42 -58
- package/dist/application/BrowserObservationService.js +3 -6
- package/dist/application/BrowserScenarioCaptureService.js +3 -6
- package/dist/application/BrowserScenarioEvidence.js +3 -3
- package/dist/application/CallPathTracing.js +2 -36
- package/dist/application/CapabilityInventory.js +10 -15
- package/dist/application/ClientConfigurationDocument.js +27 -0
- package/dist/application/ClientRegistrationStatus.js +16 -13
- package/dist/application/CommandShimReplay.js +14 -1
- package/dist/application/DirectAnalysis.js +22 -46
- package/dist/application/DirectAnalysisStatus.js +5 -61
- package/dist/application/Doctor.js +11 -32
- package/dist/application/DoctorDiagnostics.js +1 -2
- package/dist/application/DoctorScope.js +1 -1
- package/dist/application/ElectronActiveEvidence.js +3 -8
- package/dist/application/ElectronActiveObservationService.js +3 -6
- package/dist/application/ElectronBoundaryAnalysis.js +7 -8
- package/dist/application/ElectronBoundaryGraphContext.js +1 -1
- package/dist/application/ElectronBoundaryGraphIpc.js +3 -3
- package/dist/application/ElectronBoundaryGraphNative.js +1 -2
- package/dist/application/ElectronBoundaryGraphWindows.js +6 -8
- package/dist/application/ElectronEvidence.js +4 -7
- package/dist/application/ElectronObservationService.js +5 -9
- package/dist/application/EnhancedLiteralTracing.js +42 -65
- package/dist/application/EnhancedTools.js +76 -44
- package/dist/application/EvidenceBundleCommands.js +11 -11
- package/dist/application/EvidenceBundleFiles.js +9 -15
- package/dist/application/EvidenceLedger.js +6 -41
- package/dist/application/FilesystemSnapshot.js +2 -3
- package/dist/application/InterfaceBuilderAnalysis.js +266 -0
- package/dist/application/InventoryProjectionEvidence.js +4 -2
- package/dist/application/InvestigationProviders.js +1 -1
- package/dist/application/JavaScriptApplicationEvidence.js +2 -5
- package/dist/application/JavaScriptApplicationEvidenceGraph.js +6 -10
- package/dist/application/JavaScriptApplicationService.js +6 -29
- package/dist/application/JavaScriptApplicationWorkflowEvidence.js +5 -5
- package/dist/application/JavaScriptApplicationWorkflowService.js +0 -8
- package/dist/application/JavaScriptArtifactAnalysis.js +38 -127
- package/dist/application/JavaScriptArtifactFiles.js +67 -107
- package/dist/application/JavaScriptArtifactGraphAccumulator.js +0 -7
- package/dist/application/JavaScriptArtifactGraphBuilder.js +7 -58
- package/dist/application/JavaScriptArtifactGraphBundlers.js +1 -6
- package/dist/application/JavaScriptArtifactGraphContext.js +12 -39
- package/dist/application/JavaScriptArtifactGraphDocuments.js +4 -11
- package/dist/application/JavaScriptArtifactGraphEvidence.js +0 -14
- package/dist/application/JavaScriptArtifactGraphFindings.js +3 -3
- package/dist/application/JavaScriptArtifactGraphStructure.js +16 -17
- package/dist/application/JavaScriptArtifactPathResolution.js +61 -49
- package/dist/application/JavaScriptArtifactReconstruction.js +5 -10
- package/dist/application/JavaScriptArtifactReconstructionInput.js +2 -14
- package/dist/application/JavaScriptJsonModules.js +2 -2
- package/dist/application/JavaScriptModuleRelationships.js +22 -27
- package/dist/application/JavaScriptReplayPlanning.js +9 -3
- package/dist/application/JavaScriptReplayService.js +6 -32
- package/dist/application/JavaScriptReturnShapeProjection.js +12 -42
- package/dist/application/JavaScriptRuntimeObservationEvidence.js +7 -8
- package/dist/application/JavaScriptRuntimeObservationService.js +4 -8
- package/dist/application/JavaScriptRuntimeReconciliationEvidence.js +2 -3
- package/dist/application/JavaScriptSemanticGraphBuilder.js +11 -41
- package/dist/application/JavaScriptSemanticGraphConstruction.js +5 -29
- package/dist/application/JavaScriptSemanticGraphEvidence.js +1 -1
- package/dist/application/JavaScriptSemanticGraphFingerprintProjection.js +1 -1
- package/dist/application/JavaScriptSemanticGraphFlowProjection.js +0 -13
- package/dist/application/JavaScriptSemanticGraphProjection.js +1 -3
- package/dist/application/JavaScriptSemanticTraceService.js +1 -10
- package/dist/application/JsonFiles.js +79 -0
- package/dist/application/LinuxHopper.js +11 -9
- package/dist/application/LoopbackReplay.js +26 -23
- package/dist/application/LoopbackReplayRecorder.js +29 -1
- package/dist/application/ManagedApplicationGraphService.js +1 -2
- package/dist/application/ManagedMemberComparisonService.js +11 -41
- package/dist/application/ManagedNativeVerificationService.js +1 -2
- package/dist/application/ManagedReconstructionService.js +1 -1
- package/dist/application/ManagedRuntimeCorrelationService.js +5 -8
- package/dist/application/NativeApiInspection.js +2 -7
- package/dist/application/NativeUiActionTrace.js +394 -0
- package/dist/application/NodeRuntimeCharacterizationService.js +3 -7
- package/dist/application/PermissionAuthority.js +15 -7
- package/dist/application/PermissionFailure.js +5 -0
- package/dist/application/ProcessCaptureAuthority.js +5 -7
- package/dist/application/ProcessCaptureJournal.js +3 -2
- package/dist/application/ProcessCaptureLifecycle.js +5 -12
- package/dist/application/ProcessCheckpoints.js +29 -11
- package/dist/application/ProcessCli.js +6 -16
- package/dist/application/ProcessEvidence.js +5 -7
- package/dist/application/ProcessHarness.js +52 -17
- package/dist/application/ProcessReactiveCoordinator.js +2 -4
- package/dist/application/ProcessReactiveEffects.js +9 -3
- package/dist/application/ProcessReactiveHarness.js +13 -7
- package/dist/application/ProcessSampling.js +2 -4
- package/dist/application/ProcessTimer.js +39 -0
- package/dist/application/ProjectPermissionStore.js +39 -96
- package/dist/application/RealHopperAssertions.js +20 -66
- package/dist/application/ReconstructionCoverageService.js +12 -58
- package/dist/application/ReconstructionObligationAuthority.js +2 -2
- package/dist/application/ReconstructionObligationCandidates.js +4 -4
- package/dist/application/ReconstructionObligationLedgerEvaluation.js +8 -15
- package/dist/application/ReconstructionObligationLedgerProjection.js +3 -7
- package/dist/application/ReconstructionObligationLedgerService.js +19 -38
- package/dist/application/ReferenceSourceImport.js +19 -45
- package/dist/application/ReferenceSourceImportEntries.js +2 -4
- package/dist/application/ReferenceSourceImportPolicy.js +5 -32
- package/dist/application/ReferenceSourceImportTypes.js +0 -16
- package/dist/application/RuntimeExecutableDiagnostics.js +55 -29
- package/dist/application/SessionProviderRouter.js +2 -2
- package/dist/application/Setup.js +1 -3
- package/dist/application/SetupClientConfiguration.js +22 -93
- package/dist/application/SetupRegistrationEnvironment.js +0 -7
- package/dist/application/StoreFileLock.js +119 -0
- package/dist/application/TerminalRenderer.js +2 -3
- package/dist/application/Uninstall.js +9 -14
- package/dist/application/UnknownEvidence.js +1 -1
- package/dist/artifacts/ArtifactPaths.js +2 -5
- package/dist/artifacts/ArtifactProvider.js +36 -58
- package/dist/artifacts/DirectoryArtifactReader.js +13 -8
- package/dist/artifacts/MachOSliceArtifactReader.js +1 -5
- package/dist/artifacts/NativeDmgArtifactReader.js +11 -11
- package/dist/artifacts/NibArchive.js +269 -0
- package/dist/artifacts/SafeOutputTree.js +15 -24
- package/dist/browser/BrowserProcessStartup.js +1 -2
- package/dist/browser/CdpAuthorizedMainFrame.js +16 -0
- package/dist/browser/CdpBrowserProvider.js +3 -13
- package/dist/browser/CdpCanonicalJsonDigest.js +9 -0
- package/dist/browser/CdpCaptureDocuments.js +28 -76
- package/dist/browser/CdpCaptureEventBodyShapes.js +13 -33
- package/dist/browser/CdpCaptureEventHandlers.js +22 -87
- package/dist/browser/CdpCaptureEvents.js +2 -8
- package/dist/browser/CdpCaptureStorage.js +9 -20
- package/dist/browser/CdpCaptureStorageFingerprints.js +85 -98
- package/dist/browser/CdpCaptureValues.js +21 -21
- package/dist/browser/CdpConnection.js +10 -25
- package/dist/browser/CdpElectronInspection.js +26 -50
- package/dist/browser/CdpElectronProvider.js +10 -35
- package/dist/browser/CdpElectronScriptEvents.js +8 -16
- package/dist/browser/CdpElectronScripts.js +6 -35
- package/dist/browser/CdpElectronWorkers.js +6 -10
- package/dist/browser/CdpEndpoint.js +25 -41
- package/dist/browser/CdpObservationSession.js +14 -26
- package/dist/browser/CdpPageCapture.js +34 -48
- package/dist/browser/CdpPageCaptureScripts.js +1 -19
- package/dist/browser/CdpPageCaptureWorkers.js +6 -10
- package/dist/browser/CdpSafeMetadata.js +19 -22
- package/dist/browser/CdpScreenshot.js +3 -5
- package/dist/browser/CdpTargetSession.js +1 -2
- package/dist/browser/CdpWebMcpDiscovery.js +13 -22
- package/dist/browser/ElectronFileScope.js +8 -19
- package/dist/browser/JavaScriptRuntimeScope.js +9 -14
- package/dist/browser/PlaywrightBrowserScenarioProvider.js +31 -64
- package/dist/browser/PlaywrightElectronActiveActions.js +54 -69
- package/dist/browser/PlaywrightElectronActiveProvider.js +14 -34
- package/dist/browser/PlaywrightExecutionBoundary.js +16 -5
- package/dist/browser/PlaywrightScenarioActions.js +3 -7
- package/dist/browser/PlaywrightScenarioArtifacts.js +23 -92
- package/dist/browser/PlaywrightScenarioBrowser.js +3 -5
- package/dist/browser/PlaywrightScenarioEvents.js +45 -94
- package/dist/browser/PlaywrightScenarioSession.js +14 -30
- package/dist/browser/PngVisualDiff.js +22 -14
- package/dist/browser/SensitiveTextCapture.js +0 -17
- package/dist/browser/V8InspectorCaptureProjection.js +7 -8
- package/dist/browser/V8InspectorEndpoint.js +12 -14
- package/dist/browser/V8InspectorProvider.js +20 -61
- package/dist/browser/WebSourceMapFetcher.js +56 -176
- package/dist/catalogIdentity.js +0 -54
- package/dist/cli/artifactCommands.js +49 -77
- package/dist/cli/coreAnalysisCommands.js +83 -133
- package/dist/cli/javascriptApplicationAnalysis.js +1 -9
- package/dist/cli/managedCommands.js +5 -270
- package/dist/cli/setupCommands.js +3 -12
- package/dist/cli/utilityCommands.js +7 -41
- package/dist/cli.js +0 -2
- package/dist/cliApplicationCommands.js +42 -112
- package/dist/cliBrowserAdvancedCommands.js +10 -106
- package/dist/cliBrowserCommands.js +15 -127
- package/dist/cliBrowserContext.js +30 -0
- package/dist/cliCommandNames.js +4 -5
- package/dist/cliElectronCommands.js +8 -72
- package/dist/cliEvidenceCommands.js +8 -77
- package/dist/cliJavaScriptRuntimeCommands.js +9 -91
- package/dist/cliJsonInput.js +4 -14
- package/dist/cliObservationOptions.js +11 -96
- package/dist/cliPolicyCommands.js +2 -17
- package/dist/cliProcessCommands.js +3 -3
- package/dist/cliSetup.js +0 -13
- package/dist/config/browserScenario.js +2 -2
- package/dist/config/environment.js +0 -9
- package/dist/config/parseConfig.js +1 -33
- package/dist/config/parsers.js +6 -27
- package/dist/config/passiveObservation.js +7 -77
- package/dist/config/permissions.js +0 -7
- package/dist/contracts/analysisSearchContract.js +2 -5
- package/dist/contracts/applicationToolContracts.js +56 -109
- package/dist/contracts/applicationWorkflowInputContracts.js +27 -102
- package/dist/contracts/artifactComparisonExample.js +58 -60
- package/dist/contracts/artifactToolContracts.js +20 -67
- package/dist/contracts/browserScenarioToolContracts.js +6 -51
- package/dist/contracts/browserToolContracts.js +8 -73
- package/dist/contracts/electronToolContracts.js +8 -108
- package/dist/contracts/enhancedInputs.js +23 -54
- package/dist/contracts/errorSchemas.js +0 -1
- package/dist/contracts/functionComparisonExample.js +10 -24
- package/dist/contracts/functionInstructionContract.js +1 -3
- package/dist/contracts/functionWorkflowToolContracts.js +2 -2
- package/dist/contracts/hopperMemoryContracts.js +3 -3
- package/dist/contracts/investigationExamples.js +14 -11
- package/dist/contracts/javascriptApplicationWorkflowExamples.js +12 -19
- package/dist/contracts/javascriptRuntimeObservationToolContracts.js +2 -20
- package/dist/contracts/javascriptRuntimeReconciliationExample.js +45 -12
- package/dist/contracts/managedToolContracts.js +6 -95
- package/dist/contracts/managedWorkflowExamples.js +77 -128
- package/dist/contracts/managedWorkflowToolContracts.js +51 -77
- package/dist/contracts/nativeToolContracts.js +7 -11
- package/dist/contracts/processCaptureExample.js +2 -69
- package/dist/contracts/promptContracts.js +49 -67
- package/dist/contracts/providerSelection.js +0 -1
- package/dist/contracts/reconstructionReadinessExample.js +1 -6
- package/dist/contracts/sessionStatusContract.js +1 -17
- package/dist/contracts/sessionToolSchemas.js +6 -15
- package/dist/contracts/toolContractExamples.js +11 -11
- package/dist/contracts/toolContractHelpers.js +0 -4
- package/dist/contracts/toolContracts.js +60 -71
- package/dist/contracts/toolEffects.js +5 -13
- package/dist/contracts/toolOutputSchemaGroups.js +37 -91
- package/dist/contracts/toolOutputSchemaPrimitives.js +16 -56
- package/dist/contracts/toolSchemaMetadata.js +8 -19
- package/dist/contracts/unknownContractExamples.js +0 -2
- package/dist/domain/analysisErrorPresentation.js +46 -54
- package/dist/domain/analysisErrorProjection.js +28 -37
- package/dist/domain/analysisProfile.js +3 -31
- package/dist/domain/analysisSnapshot.js +3 -12
- package/dist/domain/androidApplication.js +15 -54
- package/dist/domain/appleApplication.js +24 -67
- package/dist/domain/artifactComparison.js +11 -29
- package/dist/domain/artifactGraph.js +14 -44
- package/dist/domain/artifactInspection.js +38 -69
- package/dist/domain/artifactInventoryEvidence.js +27 -21
- package/dist/domain/binaryTarget.js +2 -221
- package/dist/domain/browserCaptureComparison.js +47 -24
- package/dist/domain/browserObservation.js +28 -193
- package/dist/domain/browserObservationSchemas.js +5 -23
- package/dist/domain/browserScenario.js +11 -14
- package/dist/domain/browserScenarioCapture.js +11 -12
- package/dist/domain/browserScenarioCaptureValues.js +146 -84
- package/dist/domain/browserScenarioDiff.js +2 -59
- package/dist/domain/browserScenarioDiffEvidence.js +51 -0
- package/dist/domain/browserScenarioDiffValues.js +21 -38
- package/dist/domain/browserScenarioValues.js +80 -109
- package/dist/domain/browserSession.js +4 -7
- package/dist/domain/bundleComparison.js +6 -32
- package/dist/domain/bytecodeProvider.js +20 -19
- package/dist/domain/callPath.js +47 -167
- package/dist/domain/callPathSchemas.js +79 -0
- package/dist/domain/changedBehavior.js +34 -60
- package/dist/domain/completionLedgerGeneration.js +8 -14
- package/dist/domain/conformancePackage.js +126 -97
- package/dist/domain/conformanceReplay.js +36 -8
- package/dist/domain/conformanceTrustGate.js +23 -14
- package/dist/domain/customProtocolCapture.js +1 -1
- package/dist/domain/electronActiveObservation.js +70 -103
- package/dist/domain/electronObservation.js +14 -80
- package/dist/domain/electronStaticAnalysisBrowser.js +36 -46
- package/dist/domain/electronStaticAnalysisIpc.js +38 -14
- package/dist/domain/electronStaticAnalysisNative.js +1 -8
- package/dist/domain/electronStaticAnalysisValues.js +10 -17
- package/dist/domain/errors.js +33 -54
- package/dist/domain/eventProcessTree.js +20 -12
- package/dist/domain/evidence.js +2 -10
- package/dist/domain/evidenceBundle.js +3 -5
- package/dist/domain/evidenceCompletionLedger.js +6 -8
- package/dist/domain/functionComparison.js +4 -14
- package/dist/domain/functionComparisonNormalization.js +4 -11
- package/dist/domain/functionComparisonResults.js +25 -15
- package/dist/domain/functionComparisonSchemas.js +49 -33
- package/dist/domain/functionDossierEvidence.js +31 -156
- package/dist/domain/hopperStartupFailure.js +1 -1
- package/dist/domain/hopperValues.js +15 -136
- package/dist/domain/interfaceBuilderGraph.js +654 -0
- package/dist/domain/javascriptApplicationAnalysis.js +8 -112
- package/dist/domain/javascriptApplicationChangeGraph.js +22 -82
- package/dist/domain/javascriptApplicationEvidenceSchemas.js +59 -47
- package/dist/domain/javascriptApplicationGraph.js +3 -13
- package/dist/domain/javascriptApplicationGraphSchemas.js +12 -34
- package/dist/domain/javascriptApplicationVersionComparison.js +26 -30
- package/dist/domain/javascriptApplicationVersionComparisonSchemas.js +123 -68
- package/dist/domain/javascriptApplicationVersionItems.js +120 -53
- package/dist/domain/javascriptApplicationVersionKeys.js +24 -11
- package/dist/domain/javascriptAstFingerprint.js +25 -58
- package/dist/domain/javascriptAstValues.js +9 -0
- package/dist/domain/javascriptExportInstrumentation.js +2 -4
- package/dist/domain/javascriptExportShapeComparison.js +6 -7
- package/dist/domain/javascriptExportShapeComparisonSchemas.js +68 -75
- package/dist/domain/javascriptExportShapeSelection.js +17 -19
- package/dist/domain/javascriptFeatureSeed.js +20 -12
- package/dist/domain/javascriptFeatureTrace.js +13 -67
- package/dist/domain/javascriptFeatureTraceSchemas.js +24 -52
- package/dist/domain/javascriptFeatureTraversal.js +1 -44
- package/dist/domain/javascriptNativeHandoff.js +1 -1
- package/dist/domain/javascriptReplay.js +24 -41
- package/dist/domain/javascriptRuntimeLoadState.js +3 -8
- package/dist/domain/javascriptRuntimeObservation.js +42 -103
- package/dist/domain/javascriptRuntimeReconciliation.js +1 -3
- package/dist/domain/javascriptRuntimeReconciliationActive.js +8 -17
- package/dist/domain/javascriptRuntimeReconciliationGraph.js +10 -23
- package/dist/domain/javascriptRuntimeReconciliationMatching.js +18 -12
- package/dist/domain/javascriptRuntimeReconciliationParsing.js +16 -45
- package/dist/domain/javascriptRuntimeReconciliationResult.js +4 -5
- package/dist/domain/javascriptRuntimeReconciliationRuntime.js +8 -12
- package/dist/domain/javascriptRuntimeReconciliationSchemas.js +33 -48
- package/dist/domain/javascriptRuntimeStaticCandidates.js +3 -3
- package/dist/domain/javascriptSemanticAnalysis.js +12 -45
- package/dist/domain/javascriptSemanticAsyncEffects.js +1 -9
- package/dist/domain/javascriptSemanticCallResolution.js +6 -16
- package/dist/domain/javascriptSemanticCalls.js +5 -32
- package/dist/domain/javascriptSemanticChildProcesses.js +1 -11
- package/dist/domain/javascriptSemanticCoverage.js +11 -0
- package/dist/domain/javascriptSemanticDataEffectHelpers.js +1 -8
- package/dist/domain/javascriptSemanticDataEffects.js +1 -11
- package/dist/domain/javascriptSemanticFingerprints.js +3 -5
- package/dist/domain/javascriptSemanticGraphSchemas.js +25 -51
- package/dist/domain/javascriptSemanticGraphSerialization.js +2 -13
- package/dist/domain/javascriptSemanticIr.js +1 -29
- package/dist/domain/javascriptSemanticObjects.js +1 -5
- package/dist/domain/javascriptSemanticPrimitives.js +2 -9
- package/dist/domain/javascriptSemanticProjection.js +0 -18
- package/dist/domain/javascriptSemanticPromises.js +9 -16
- package/dist/domain/javascriptSemanticProvenance.js +16 -19
- package/dist/domain/javascriptSemanticQuery.js +17 -139
- package/dist/domain/javascriptSemanticQueryAssessment.js +9 -37
- package/dist/domain/javascriptSemanticQueryIdentity.js +2 -23
- package/dist/domain/javascriptSemanticQuerySchemas.js +14 -107
- package/dist/domain/javascriptSemanticResources.js +1 -6
- package/dist/domain/javascriptSemanticReturns.js +10 -27
- package/dist/domain/javascriptSemanticValueTypes.js +1 -0
- package/dist/domain/javascriptSemanticValues.js +44 -62
- package/dist/domain/javascriptStaticAnalysis.js +21 -43
- package/dist/domain/javascriptStaticAnalysisBundler.js +34 -93
- package/dist/domain/javascriptStaticAnalysisCalls.js +17 -16
- package/dist/domain/javascriptStaticAnalysisFindings.js +3 -19
- package/dist/domain/javascriptStaticAnalysisHelpers.js +47 -88
- package/dist/domain/javascriptStaticAnalysisState.js +1 -5
- package/dist/domain/javascriptStaticAnalysisTypes.js +1 -0
- package/dist/domain/jsonShape.js +7 -33
- package/dist/domain/localPath.js +7 -0
- package/dist/domain/managedApplicationGraph.js +9 -41
- package/dist/domain/managedApplicationGraphCoverage.js +24 -156
- package/dist/domain/managedApplicationGraphNodes.js +10 -13
- package/dist/domain/managedArtifact.js +14 -27
- package/dist/domain/managedMemberComparison.js +90 -92
- package/dist/domain/managedMemberComparisonCoverage.js +11 -33
- package/dist/domain/managedMemberComparisonItems.js +221 -0
- package/dist/domain/managedMemberComparisonMatch.js +8 -208
- package/dist/domain/managedNativeVerification.js +3 -6
- package/dist/domain/managedNativeVerificationMatch.js +55 -59
- package/dist/domain/managedNativeVerificationSchemas.js +83 -47
- package/dist/domain/managedReconstruction.js +19 -23
- package/dist/domain/managedRuntimeCorrelation.js +6 -9
- package/dist/domain/nativeApiBoundary.js +2 -7
- package/dist/domain/nativeInspection.js +0 -2
- package/dist/domain/nativeInvestigationGraph.js +351 -0
- package/dist/domain/nativeValueFlow.js +61 -0
- package/dist/domain/nodeRuntimeCharacterization.js +1 -5
- package/dist/domain/objcSwiftMetadata.js +254 -0
- package/dist/domain/peInspection.js +1 -1
- package/dist/domain/permissionPolicy.js +13 -0
- package/dist/domain/processCapture.js +76 -113
- package/dist/domain/processCaptureExample.js +68 -0
- package/dist/domain/processCaptureParsing.js +21 -0
- package/dist/domain/processCaptureReactiveSchema.js +68 -0
- package/dist/domain/processCaptureValidation.js +1 -7
- package/dist/domain/processComparison.js +3 -12
- package/dist/domain/processReactiveMatching.js +29 -50
- package/dist/domain/processReactiveRuntime.js +4 -8
- package/dist/domain/processReactiveScenario.js +28 -94
- package/dist/domain/processReactiveScenarioPreflight.js +5 -30
- package/dist/domain/processReactiveTransition.js +33 -18
- package/dist/domain/processScenario.js +56 -90
- package/dist/domain/processTraceComparison.js +0 -8
- package/dist/domain/processTraceEvaluation.js +14 -4
- package/dist/domain/processTraceSpecification.js +11 -17
- package/dist/domain/protocolCapture.js +3 -3
- package/dist/domain/reconstructionCoverage.js +62 -129
- package/dist/domain/reconstructionCoverageEvaluation.js +17 -17
- package/dist/domain/reconstructionObligationLedgerSchemas.js +45 -72
- package/dist/domain/reconstructionReadiness.js +1 -2
- package/dist/domain/reconstructionReadinessSchemas.js +36 -38
- package/dist/domain/reconstructionUnknowns.js +3 -3
- package/dist/domain/reconstructionVerification.js +13 -47
- package/dist/domain/reconstructionVerificationSchemas.js +50 -38
- package/dist/domain/referenceSourceGraph.js +53 -61
- package/dist/domain/referenceSourceImportParsing.js +1 -5
- package/dist/domain/replayMachine.js +19 -31
- package/dist/domain/replayMachineRun.js +15 -63
- package/dist/domain/replayMachineRuntime.js +41 -41
- package/dist/domain/replayMachineValues.js +84 -0
- package/dist/domain/residualUnknown.js +25 -30
- package/dist/domain/runtimeCharacterization.js +15 -16
- package/dist/domain/runtimeIdentification.js +48 -47
- package/dist/domain/sourceToBundleComparison.js +9 -85
- package/dist/domain/sourceToBundleComparisonSchemas.js +17 -42
- package/dist/domain/sourceToBundleSignals.js +4 -15
- package/dist/domain/staticRuntimeCorrelation.js +37 -49
- package/dist/domain/symbolAnalysis.js +10 -19
- package/dist/domain/unicodeCodePointOrder.js +12 -0
- package/dist/domain/webBundleAnalysis.js +70 -99
- package/dist/domain/webBundleAnalyzer.js +2 -4
- package/dist/domain/webBundleAnalyzerAst.js +0 -13
- package/dist/domain/webBundleAnalyzerInspection.js +26 -52
- package/dist/domain/webBundleAnalyzerResult.js +7 -24
- package/dist/domain/webCaptureDiff.js +33 -73
- package/dist/domain/webCaptureDiffSchemas.js +86 -0
- package/dist/domain/webContentArtifact.js +1 -10
- package/dist/domain/webMcpDiscovery.js +3 -14
- package/dist/domain/webScreenshot.js +58 -34
- package/dist/domain/zipPackageFormat.js +7 -0
- package/dist/dotnet/ManagedArtifactInspector.js +17 -50
- package/dist/dotnet/ManagedMemberInspector.js +27 -58
- package/dist/dotnet/ManagedMemberInspectorCore.js +14 -51
- package/dist/dotnet/ManagedMemberInstructionDecoder.js +2 -2
- package/dist/dotnet/ManagedMemberRows.js +16 -16
- package/dist/dotnet/ManagedMetadataHeaps.js +26 -8
- package/dist/dotnet/ManagedMetadataInventory.js +21 -30
- package/dist/dotnet/ManagedMetadataInventoryRows.js +57 -63
- package/dist/dotnet/ManagedMetadataLayout.js +3 -5
- package/dist/dotnet/ManagedMethodBodyReader.js +5 -30
- package/dist/dotnet/ManagedNativeBoundaryHelpers.js +19 -49
- package/dist/dotnet/ManagedNativeBoundaryInspector.js +13 -41
- package/dist/dotnet/ManagedPeReader.js +2 -2
- package/dist/dotnet/ManagedStaticProvider.js +13 -71
- package/dist/generatedMcpToolCatalog.js +1 -1
- package/dist/generatedPackageMetadata.js +1 -1
- package/dist/ghidra/GhidraAnalysisProfile.js +3 -8
- package/dist/ghidra/GhidraClient.js +4 -12
- package/dist/ghidra/GhidraClientWire.js +9 -5
- package/dist/ghidra/GhidraDefaults.js +0 -18
- package/dist/ghidra/GhidraDiagnostics.js +0 -2
- package/dist/ghidra/GhidraDoctor.js +16 -12
- package/dist/ghidra/GhidraFunctionValues.js +65 -108
- package/dist/ghidra/GhidraInstallation.js +98 -42
- package/dist/ghidra/GhidraInventoryValues.js +16 -85
- package/dist/ghidra/GhidraLauncher.js +0 -8
- package/dist/ghidra/GhidraProvider.js +15 -22
- package/dist/ghidra/GhidraProviderCapabilities.js +6 -47
- package/dist/ghidra/GhidraRequestQueue.js +6 -30
- package/dist/ghidra/GhidraResponseBuffer.js +1 -7
- package/dist/ghidra/GhidraSessionValues.js +0 -2
- package/dist/ghidra/GhidraTransport.js +4 -7
- package/dist/ghidra/protocol.js +2 -2
- package/dist/hopper/BridgeLauncher.js +112 -36
- package/dist/hopper/HopperAnalysisProfile.js +1 -1
- package/dist/hopper/HopperCleanup.js +6 -3
- package/dist/hopper/HopperClient.js +4 -7
- package/dist/hopper/HopperProcessDiagnostic.js +2 -2
- package/dist/hopper/HopperProvider.js +0 -16
- package/dist/hopper/HopperRequestQueue.js +21 -40
- package/dist/hopper/HopperResponseStream.js +1 -9
- package/dist/hopper/HopperSessionValues.js +3 -2
- package/dist/hopper/HopperTargetLease.js +119 -0
- package/dist/hopper/LinuxPrivateDisplayDiagnostic.js +24 -31
- package/dist/hopper/LinuxPrivateDisplayProbe.js +5 -16
- package/dist/hopper/protocol.js +6 -4
- package/dist/main/reload.js +0 -3
- package/dist/main/shutdown.js +1 -1
- package/dist/main/state.js +0 -9
- package/dist/main/transport.js +0 -5
- package/dist/mcpDoctor.js +25 -45
- package/dist/native/CommandRunner.js +18 -25
- package/dist/native/NativeMacOSProvider.js +13 -38
- package/dist/native/NativeMachoInspection.js +1 -1
- package/dist/process/BoundedFileBytes.js +17 -0
- package/dist/process/ExecFileOutput.js +11 -0
- package/dist/process/PendingOperations.js +8 -6
- package/dist/process/ProcessOwnership.js +3 -2
- package/dist/process/ProcessOwnershipObservation.js +0 -1
- package/dist/process/ProviderProcess.js +7 -28
- package/dist/reference/ReferenceSourceReader.js +8 -24
- package/dist/reference/ReferenceSourceReaderEntries.js +11 -39
- package/dist/reference/ReferenceSourceReaderFile.js +13 -31
- package/dist/reference/ReferenceSourceReaderPaths.js +3 -18
- package/dist/reference/ReferenceSourceReaderValidate.js +3 -6
- package/dist/replay/JavaScriptReplayWorker.js +3 -5
- package/dist/replay/LinuxJavaScriptReplayRunner.js +33 -29
- package/dist/replay/LinuxJavaScriptReplaySandbox.js +0 -19
- package/dist/replay/LinuxRuntimeClosure.js +1 -3
- package/dist/replay/ReplayOutcome.js +1 -3
- package/dist/replay/ReplayProcessLifecycle.js +32 -7
- package/dist/replay/ReplaySeccompFile.js +29 -0
- package/dist/replay/ReplayWorkerProtocol.js +0 -2
- package/dist/replay/SystemJavaScriptReplayHost.js +45 -74
- package/dist/server/ProcessCaptureElicitation.js +4 -8
- package/dist/server/createServer.js +6 -44
- package/dist/server/promptCompletion.js +37 -61
- package/dist/server/recordDerivedEvidence.js +1 -1
- package/dist/server/registerApplicationTools/characterization.js +4 -8
- package/dist/server/registerApplicationTools/compareExportShapes.js +5 -10
- package/dist/server/registerApplicationTools/compareSourceToBundle.js +6 -10
- package/dist/server/registerApplicationTools/compareVersions.js +5 -10
- package/dist/server/registerApplicationTools/controlledReplay.js +3 -5
- package/dist/server/registerApplicationTools/coverage.js +6 -71
- package/dist/server/registerApplicationTools/helpers.js +1 -13
- package/dist/server/registerApplicationTools/obligationLedger.js +3 -2
- package/dist/server/registerApplicationTools/traceFeature.js +5 -9
- package/dist/server/registerApplicationTools/traceSemantics.js +5 -8
- package/dist/server/registerApplicationTools.js +0 -2
- package/dist/server/registerArtifactComparisonTool.js +23 -27
- package/dist/server/registerBrowserScenarioTool.js +4 -4
- package/dist/server/registerBrowserTools.js +5 -8
- package/dist/server/registerBundleComparisonTool.js +5 -7
- package/dist/server/registerCloseLifecycleTool.js +2 -16
- package/dist/server/registerElectronTools.js +10 -29
- package/dist/server/registerEnhancedTools.js +10 -11
- package/dist/server/registerEvidenceTools.js +15 -22
- package/dist/server/registerFunctionComparisonTool.js +30 -25
- package/dist/server/registerInvestigationTools/helpers.js +3 -32
- package/dist/server/registerInvestigationTools.js +20 -116
- package/dist/server/registerJavaScriptRuntimeObservationTools.js +6 -4
- package/dist/server/registerManagedWorkflowTools/compareManagedMembers.js +15 -17
- package/dist/server/registerManagedWorkflowTools/evidence.js +19 -35
- package/dist/server/registerManagedWorkflowTools/importManagedReconstruction.js +3 -8
- package/dist/server/registerManagedWorkflowTools/planManagedRuntimeCorrelation.js +3 -8
- package/dist/server/registerManagedWorkflowTools/projectManagedApplicationGraph.js +10 -14
- package/dist/server/registerManagedWorkflowTools/verifyManagedNativeBoundaries.js +9 -15
- package/dist/server/registerOfficialTools.js +1 -43
- package/dist/server/registerProcessComparisonTool.js +33 -23
- package/dist/server/registerPrompts.js +19 -17
- package/dist/server/registerSessionRecordTools.js +10 -156
- package/dist/server/registerSessionStatusTool.js +6 -69
- package/dist/server/registerSessionTools.js +10 -51
- package/dist/server/sessionAvailabilityPolicy.js +0 -2
- package/dist/server/sessionEvidence.js +9 -15
- package/dist/server/sessionToolPolicies.js +0 -8
- package/dist/server/toolResult.js +14 -50
- package/dist/serverIdentity.js +0 -20
- package/install.sh +1 -1
- package/package.json +11 -7
- package/scripts/electron-active-hook.cjs +23 -55
- package/scripts/hopper-demo-x11.py +13 -32
- package/skills/reverse-engineer-anything/SKILL.md +47 -12
- package/skills/reverse-engineer-anything/references/evidence-workflows.md +6 -4
- package/skills/reverse-engineer-anything/references/javascript-applications.md +13 -13
- package/skills/reverse-engineer-anything/references/native-and-artifacts.md +12 -8
- package/dist/application/ApplicationWorkflowEvidenceResolver.js +0 -188
- package/dist/application/BoundedJsonFiles.js +0 -86
- package/dist/application/CrossVersionInventory.js +0 -129
- package/dist/application/CrossVersionInvestigation.js +0 -301
- package/dist/application/CrossVersionInvestigationCollections.js +0 -23
- package/dist/application/CrossVersionInvestigationEvidence.js +0 -64
- package/dist/application/CrossVersionInvestigationReplay.js +0 -170
- package/dist/application/DeferredFileAuthorization.js +0 -61
- package/dist/application/DoctorProjection.js +0 -43
- package/dist/application/EnhancedToolPagination.js +0 -22
- package/dist/application/EvidenceReferenceResolver.js +0 -26
- package/dist/application/InvestigationWorkspaceStore.js +0 -204
- package/dist/application/ProcessPairedExperiment.js +0 -72
- package/dist/application/ReconstructionCoverageWorkspaceStore.js +0 -31
- package/dist/application/ReconstructionReadinessService.js +0 -48
- package/dist/cliInvestigationCommands.js +0 -173
- package/dist/domain/boundedCartesianProjection.js +0 -15
- package/dist/domain/investigationWorkspace.js +0 -347
- package/dist/domain/jsonLimits.js +0 -26
- package/dist/domain/knownPageCoverage.js +0 -29
- package/dist/domain/processPairedExperiment.js +0 -128
- package/dist/server/javascriptApplicationResult.js +0 -106
- package/dist/server/permissionFailure.js +0 -12
- package/dist/server/registerApplicationTools/readiness.js +0 -50
- package/dist/server/registerEvidenceResources.js +0 -315
- package/dist/server/registerJavaScriptApplicationGraphResource.js +0 -65
- package/dist/server/registerReconstructionObligationLedgerResource.js +0 -32
- package/dist/server/registerReconstructionReadinessResource.js +0 -32
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { ConfigurationError } from "../domain/errors.js";
|
|
2
2
|
import { err, ok } from "../domain/result.js";
|
|
3
3
|
import { browserEndpointSchema, browserOriginSchema, } from "../domain/browserObservation.js";
|
|
4
|
-
import {
|
|
4
|
+
import { parseBrowserArray } from "./parsers.js";
|
|
5
5
|
import { browserNetworkScope, permissionScope } from "./permissions.js";
|
|
6
6
|
/** Parse every passive observation capability into closed policy variants. */
|
|
7
7
|
export const parsePassiveObservationPolicies = (env) => {
|
|
@@ -26,22 +26,11 @@ export const appendPassiveObservationCeilings = (ceilings, policies) => {
|
|
|
26
26
|
appendElectronCeiling(ceilings, policies.electron);
|
|
27
27
|
appendV8InspectorCeiling(ceilings, policies.v8Inspector);
|
|
28
28
|
};
|
|
29
|
-
/** Project the legal file and origin scopes from an enabled V8 policy. */
|
|
30
|
-
export const v8InspectorLocationScopes = (locations) => {
|
|
31
|
-
switch (locations.scope) {
|
|
32
|
-
case "files":
|
|
33
|
-
return { fileRoots: locations.fileRoots, allowedOrigins: [] };
|
|
34
|
-
case "origins":
|
|
35
|
-
return { fileRoots: [], allowedOrigins: locations.allowedOrigins };
|
|
36
|
-
case "files-and-origins":
|
|
37
|
-
return locations;
|
|
38
|
-
}
|
|
39
|
-
};
|
|
40
29
|
const parseBrowserObservationPolicy = (env) => {
|
|
41
|
-
const endpoints = parseBrowserArray(env.REA_BROWSER_CDP_ENDPOINTS_JSON, "REA_BROWSER_CDP_ENDPOINTS_JSON", browserEndpointSchema
|
|
30
|
+
const endpoints = parseBrowserArray(env.REA_BROWSER_CDP_ENDPOINTS_JSON, "REA_BROWSER_CDP_ENDPOINTS_JSON", browserEndpointSchema);
|
|
42
31
|
if (!endpoints.ok)
|
|
43
32
|
return endpoints;
|
|
44
|
-
const origins = parseBrowserArray(env.REA_BROWSER_ALLOWED_ORIGINS_JSON, "REA_BROWSER_ALLOWED_ORIGINS_JSON", browserOriginSchema
|
|
33
|
+
const origins = parseBrowserArray(env.REA_BROWSER_ALLOWED_ORIGINS_JSON, "REA_BROWSER_ALLOWED_ORIGINS_JSON", browserOriginSchema);
|
|
45
34
|
if (!origins.ok)
|
|
46
35
|
return origins;
|
|
47
36
|
if (env.REA_BROWSER_OBSERVE_ENABLED !== "true")
|
|
@@ -59,70 +48,14 @@ const parseBrowserObservationPolicy = (env) => {
|
|
|
59
48
|
});
|
|
60
49
|
};
|
|
61
50
|
const parseElectronObservationPolicy = (env) => {
|
|
62
|
-
const endpoints = parseBrowserArray(env.REA_ELECTRON_CDP_ENDPOINTS_JSON, "REA_ELECTRON_CDP_ENDPOINTS_JSON", browserEndpointSchema, 16);
|
|
63
|
-
if (!endpoints.ok)
|
|
64
|
-
return endpoints;
|
|
65
|
-
const roots = parseElectronFileRoots(env.REA_ELECTRON_FILE_ROOTS_JSON);
|
|
66
|
-
if (!roots.ok)
|
|
67
|
-
return roots;
|
|
68
51
|
if (env.REA_ELECTRON_OBSERVE_ENABLED !== "true")
|
|
69
52
|
return ok({ status: "disabled" });
|
|
70
|
-
|
|
71
|
-
if (!parsedEndpoints.ok)
|
|
72
|
-
return parsedEndpoints;
|
|
73
|
-
const parsedRoots = requireFirst(roots.value, "REA_ELECTRON_FILE_ROOTS_JSON must encode at least one absolute root when Electron observation is enabled");
|
|
74
|
-
if (!parsedRoots.ok)
|
|
75
|
-
return parsedRoots;
|
|
76
|
-
return ok({
|
|
77
|
-
status: "enabled",
|
|
78
|
-
cdpEndpoints: parsedEndpoints.value,
|
|
79
|
-
fileRoots: parsedRoots.value,
|
|
80
|
-
});
|
|
53
|
+
return ok({ status: "enabled" });
|
|
81
54
|
};
|
|
82
55
|
const parseV8InspectorObservationPolicy = (env) => {
|
|
83
|
-
const endpoints = parseBrowserArray(env.REA_V8_INSPECTOR_ENDPOINTS_JSON, "REA_V8_INSPECTOR_ENDPOINTS_JSON", browserEndpointSchema, 16);
|
|
84
|
-
if (!endpoints.ok)
|
|
85
|
-
return endpoints;
|
|
86
|
-
const roots = parseAbsoluteRoots(env.REA_V8_INSPECTOR_FILE_ROOTS_JSON, "REA_V8_INSPECTOR_FILE_ROOTS_JSON");
|
|
87
|
-
if (!roots.ok)
|
|
88
|
-
return roots;
|
|
89
|
-
const origins = parseBrowserArray(env.REA_V8_INSPECTOR_ALLOWED_ORIGINS_JSON, "REA_V8_INSPECTOR_ALLOWED_ORIGINS_JSON", browserOriginSchema, 32);
|
|
90
|
-
if (!origins.ok)
|
|
91
|
-
return origins;
|
|
92
56
|
if (env.REA_V8_INSPECTOR_OBSERVE_ENABLED !== "true")
|
|
93
57
|
return ok({ status: "disabled" });
|
|
94
|
-
|
|
95
|
-
if (!parsedEndpoints.ok)
|
|
96
|
-
return parsedEndpoints;
|
|
97
|
-
const locations = parseV8Locations(roots.value, origins.value);
|
|
98
|
-
if (!locations.ok)
|
|
99
|
-
return locations;
|
|
100
|
-
return ok({
|
|
101
|
-
status: "enabled",
|
|
102
|
-
endpoints: parsedEndpoints.value,
|
|
103
|
-
locations: locations.value,
|
|
104
|
-
});
|
|
105
|
-
};
|
|
106
|
-
const parseV8Locations = (roots, origins) => {
|
|
107
|
-
const [firstRoot, ...remainingRoots] = roots;
|
|
108
|
-
const [firstOrigin, ...remainingOrigins] = origins;
|
|
109
|
-
if (firstRoot !== undefined && firstOrigin !== undefined)
|
|
110
|
-
return ok({
|
|
111
|
-
scope: "files-and-origins",
|
|
112
|
-
fileRoots: [firstRoot, ...remainingRoots],
|
|
113
|
-
allowedOrigins: [firstOrigin, ...remainingOrigins],
|
|
114
|
-
});
|
|
115
|
-
if (firstRoot !== undefined)
|
|
116
|
-
return ok({
|
|
117
|
-
scope: "files",
|
|
118
|
-
fileRoots: [firstRoot, ...remainingRoots],
|
|
119
|
-
});
|
|
120
|
-
if (firstOrigin !== undefined)
|
|
121
|
-
return ok({
|
|
122
|
-
scope: "origins",
|
|
123
|
-
allowedOrigins: [firstOrigin, ...remainingOrigins],
|
|
124
|
-
});
|
|
125
|
-
return err(new ConfigurationError("V8 Inspector observation requires at least one file root or exact origin when enabled"));
|
|
58
|
+
return ok({ status: "enabled" });
|
|
126
59
|
};
|
|
127
60
|
const requireFirst = (values, message) => {
|
|
128
61
|
const [first, ...remaining] = values;
|
|
@@ -141,17 +74,14 @@ const appendBrowserCeiling = (ceilings, policy) => {
|
|
|
141
74
|
const appendElectronCeiling = (ceilings, policy) => {
|
|
142
75
|
if (policy.status === "disabled")
|
|
143
76
|
return;
|
|
144
|
-
ceilings.push(permissionScope("electron_observe",
|
|
145
|
-
origins: policy.cdpEndpoints,
|
|
77
|
+
ceilings.push(permissionScope("electron_observe", [], {
|
|
146
78
|
network: "loopback",
|
|
147
79
|
}));
|
|
148
80
|
};
|
|
149
81
|
const appendV8InspectorCeiling = (ceilings, policy) => {
|
|
150
82
|
if (policy.status === "disabled")
|
|
151
83
|
return;
|
|
152
|
-
|
|
153
|
-
ceilings.push(permissionScope("v8_inspector_observe", scopes.fileRoots, {
|
|
154
|
-
origins: [...policy.endpoints, ...scopes.allowedOrigins],
|
|
84
|
+
ceilings.push(permissionScope("v8_inspector_observe", [], {
|
|
155
85
|
network: "loopback",
|
|
156
86
|
}));
|
|
157
87
|
};
|
|
@@ -1,11 +1,4 @@
|
|
|
1
1
|
import { isLiteralLoopbackHostname } from "../domain/browserObservation.js";
|
|
2
|
-
export const filePolicy = (roots) => ({
|
|
3
|
-
roots,
|
|
4
|
-
maxBytes: 64 * 1024 * 1024,
|
|
5
|
-
maxDepth: 64,
|
|
6
|
-
maxStringLength: 1024 * 1024,
|
|
7
|
-
maxNodes: 1_000_000,
|
|
8
|
-
});
|
|
9
2
|
export const permissionScope = (capability, roots, options = {}) => ({
|
|
10
3
|
capability,
|
|
11
4
|
roots,
|
|
@@ -1,14 +1,11 @@
|
|
|
1
1
|
import { z } from "zod";
|
|
2
|
-
/** Shared
|
|
2
|
+
/** Shared provider search input fields. */
|
|
3
3
|
export const analysisSearchInput = {
|
|
4
4
|
pattern: z
|
|
5
5
|
.string()
|
|
6
6
|
.min(1)
|
|
7
|
-
.
|
|
8
|
-
.describe("The literal text or bounded regex pattern to search for"),
|
|
7
|
+
.describe("The literal text or regex pattern to search for"),
|
|
9
8
|
mode: z.enum(["literal", "regex"]).default("literal"),
|
|
10
9
|
case_sensitive: z.boolean().default(false).describe("Whether to match case"),
|
|
11
|
-
offset: z.number().int().min(0).default(0),
|
|
12
|
-
limit: z.number().int().min(1).max(100).default(100),
|
|
13
10
|
document: z.string().optional().describe("The document name"),
|
|
14
11
|
};
|
|
@@ -1,5 +1,4 @@
|
|
|
1
1
|
import { applicationVersionComparisonResultSchema } from "../domain/javascriptApplicationVersionComparisonSchemas.js";
|
|
2
|
-
import { z } from "zod";
|
|
3
2
|
import { applicationFeatureTraceResultSchema } from "../domain/javascriptFeatureTraceSchemas.js";
|
|
4
3
|
import { javaScriptSemanticTraceResultSchema } from "../domain/javascriptSemanticTraceSchemas.js";
|
|
5
4
|
import { javaScriptExportShapeComparisonResultSchema } from "../domain/javascriptExportShapeComparisonSchemas.js";
|
|
@@ -7,44 +6,25 @@ import { sourceToBundleComparisonResultSchema } from "../domain/sourceToBundleCo
|
|
|
7
6
|
import { compareApplicationVersionsRequestSchema, compareJavaScriptExportShapesRequestSchema, compareSourceToBundleRequestSchema, traceApplicationFeatureRequestSchema, traceJavaScriptSemanticsRequestSchema, } from "./applicationWorkflowInputContracts.js";
|
|
8
7
|
import { controlledReplayInputSchema, controlledReplayOutputSchema, } from "../domain/javascriptReplay.js";
|
|
9
8
|
import { nodeCharacterizationExecutionInputSchema, nodeCharacterizationExecutionOutputSchema, nodeCharacterizationPreparationInputSchema, nodeCharacterizationPreparationOutputSchema, } from "../domain/nodeRuntimeCharacterization.js";
|
|
10
|
-
import {
|
|
9
|
+
import { reconstructionCoverageEvaluationInputSchema } from "../application/ReconstructionCoverageService.js";
|
|
11
10
|
import { reconstructionClosureResultSchema } from "../domain/reconstructionCoverage.js";
|
|
12
|
-
import { reconstructionObligationLedgerInputSchema,
|
|
13
|
-
import { reconstructionReadinessInputSchema, reconstructionReadinessReportSchema, } from "../domain/reconstructionReadinessSchemas.js";
|
|
11
|
+
import { reconstructionObligationLedgerInputSchema, reconstructionObligationLedgerSchema, } from "../domain/reconstructionObligationLedgerSchemas.js";
|
|
14
12
|
import { jsonObjectSchema } from "../domain/jsonValue.js";
|
|
15
13
|
import { toolContractMetadata } from "./toolEffects.js";
|
|
16
14
|
import { evidenceResultOf } from "./toolOutputSchemas.js";
|
|
17
15
|
import { JAVASCRIPT_APPLICATION_VERSION_COMPARISON_EXAMPLE, JAVASCRIPT_EXPORT_SHAPE_COMPARISON_EXAMPLE, JAVASCRIPT_FEATURE_TRACE_EXAMPLE, SOURCE_TO_BUNDLE_COMPARISON_EXAMPLE, } from "./javascriptApplicationWorkflowExamples.js";
|
|
18
|
-
import { RECONSTRUCTION_READINESS_EXAMPLE } from "./reconstructionReadinessExample.js";
|
|
19
16
|
const traceOutputSchema = evidenceResultOf(applicationFeatureTraceResultSchema);
|
|
20
17
|
const semanticTraceOutputSchema = evidenceResultOf(javaScriptSemanticTraceResultSchema);
|
|
21
18
|
const comparisonOutputSchema = evidenceResultOf(applicationVersionComparisonResultSchema);
|
|
22
19
|
const sourceToBundleOutputSchema = evidenceResultOf(sourceToBundleComparisonResultSchema);
|
|
23
20
|
const exportShapeComparisonOutputSchema = evidenceResultOf(javaScriptExportShapeComparisonResultSchema);
|
|
24
|
-
const reconstructionObligationLedgerOutputSchema = evidenceResultOf(
|
|
25
|
-
const reconstructionReadinessOutputSchema = evidenceResultOf(reconstructionReadinessReportSchema
|
|
26
|
-
.pick({
|
|
27
|
-
schema: true,
|
|
28
|
-
schema_version: true,
|
|
29
|
-
report_id: true,
|
|
30
|
-
source_digest: true,
|
|
31
|
-
report_digest: true,
|
|
32
|
-
status: true,
|
|
33
|
-
summary: true,
|
|
34
|
-
metrics: true,
|
|
35
|
-
})
|
|
36
|
-
.extend({
|
|
37
|
-
report_resource_uri: z
|
|
38
|
-
.string()
|
|
39
|
-
.regex(/^rea:\/\/evidence\/ev_[a-f0-9]{64}\/reconstruction-readiness-report$/u),
|
|
40
|
-
}));
|
|
21
|
+
const reconstructionObligationLedgerOutputSchema = evidenceResultOf(reconstructionObligationLedgerSchema);
|
|
41
22
|
const HASH = "0".repeat(64);
|
|
42
23
|
const NODE_PREPARATION_EXAMPLE = jsonObjectSchema.parse({
|
|
43
|
-
preparation_approved: true,
|
|
44
24
|
selected_alias: "bundle",
|
|
45
25
|
expected_effect: "pure",
|
|
46
26
|
instrumentation: {
|
|
47
|
-
artifact_path: "/
|
|
27
|
+
artifact_path: "/tmp/example/bundle.js",
|
|
48
28
|
artifact_sha256: HASH,
|
|
49
29
|
selection: {
|
|
50
30
|
byte_start: 100,
|
|
@@ -59,7 +39,7 @@ const NODE_PREPARATION_EXAMPLE = jsonObjectSchema.parse({
|
|
|
59
39
|
modules: [
|
|
60
40
|
{
|
|
61
41
|
alias: "bundle",
|
|
62
|
-
path: "/
|
|
42
|
+
path: "/tmp/example/bundle.js",
|
|
63
43
|
format: "commonjs-factory",
|
|
64
44
|
role: "module",
|
|
65
45
|
dependencies: {},
|
|
@@ -71,40 +51,12 @@ const NODE_PREPARATION_EXAMPLE = jsonObjectSchema.parse({
|
|
|
71
51
|
cases: [{ case_id: "empty", arguments: [""] }],
|
|
72
52
|
},
|
|
73
53
|
});
|
|
74
|
-
const COVERAGE_WORKSPACE_EXAMPLE = jsonObjectSchema.parse({
|
|
75
|
-
schema_version: 1,
|
|
76
|
-
workspace_id: `rcw_${HASH}`,
|
|
77
|
-
name: "replacement",
|
|
78
|
-
revision: 1,
|
|
79
|
-
previous_revision_sha256: null,
|
|
80
|
-
revision_sha256: HASH,
|
|
81
|
-
evidence_bundle: {
|
|
82
|
-
bundle_version: 2,
|
|
83
|
-
artifacts: [],
|
|
84
|
-
providers: [],
|
|
85
|
-
environments: [],
|
|
86
|
-
scenarios: [],
|
|
87
|
-
captures: [],
|
|
88
|
-
unknowns: [],
|
|
89
|
-
records: [],
|
|
90
|
-
},
|
|
91
|
-
artifacts: [],
|
|
92
|
-
surfaces: [],
|
|
93
|
-
owners: [],
|
|
94
|
-
claims: [],
|
|
95
|
-
verifier_contracts: [],
|
|
96
|
-
verifier_results: [],
|
|
97
|
-
residual_unknown_ids: [],
|
|
98
|
-
contradictions: [],
|
|
99
|
-
package_proofs: [],
|
|
100
|
-
boundaries: [],
|
|
101
|
-
});
|
|
102
54
|
/** Provider-neutral graph workflow contracts shared by MCP and CLI adapters. */
|
|
103
55
|
export const APPLICATION_TOOL_CONTRACTS = [
|
|
104
56
|
{
|
|
105
57
|
name: "trace_application_feature",
|
|
106
58
|
...toolContractMetadata("trace_application_feature"),
|
|
107
|
-
description: "Trace a typed literal seed through an authenticated JavaScript Application Graph supplied as
|
|
59
|
+
description: "Trace a typed literal seed through every reachable part of an authenticated JavaScript Application Graph supplied as inline Evidence. Original static, native, passive-runtime, inferred, and unknown authorities remain distinct; native addon handoffs never open a provider or execute the application.",
|
|
108
60
|
kind: "application",
|
|
109
61
|
inputSchema: traceApplicationFeatureRequestSchema,
|
|
110
62
|
outputSchema: traceOutputSchema,
|
|
@@ -118,7 +70,7 @@ export const APPLICATION_TOOL_CONTRACTS = [
|
|
|
118
70
|
{
|
|
119
71
|
name: "trace_javascript_semantics",
|
|
120
72
|
...toolContractMetadata("trace_javascript_semantics"),
|
|
121
|
-
description: "Trace
|
|
73
|
+
description: "Trace static JavaScript data-flow, direct call/return, and closure relations from inline application Evidence. Dynamic or unsupported semantics remain explicit unknowns; static reachability never claims runtime execution.",
|
|
122
74
|
kind: "application",
|
|
123
75
|
inputSchema: traceJavaScriptSemanticsRequestSchema,
|
|
124
76
|
outputSchema: semanticTraceOutputSchema,
|
|
@@ -126,7 +78,7 @@ export const APPLICATION_TOOL_CONTRACTS = [
|
|
|
126
78
|
{
|
|
127
79
|
title: "Trace backward provenance from one semantic node",
|
|
128
80
|
input: {
|
|
129
|
-
|
|
81
|
+
application: JAVASCRIPT_FEATURE_TRACE_EXAMPLE.application,
|
|
130
82
|
query: {
|
|
131
83
|
seed: { kind: "semantic-node", node_id: `jsrg_node_${HASH}` },
|
|
132
84
|
direction: "backward-provenance",
|
|
@@ -139,7 +91,7 @@ export const APPLICATION_TOOL_CONTRACTS = [
|
|
|
139
91
|
{
|
|
140
92
|
name: "compare_application_versions",
|
|
141
93
|
...toolContractMetadata("compare_application_versions"),
|
|
142
|
-
description: "Compare two authenticated JavaScript Application Graph versions supplied as
|
|
94
|
+
description: "Compare two authenticated JavaScript Application Graph versions supplied as inline Evidence. Uses unique-only exact digest, module source digest, source-map identity, structural fingerprint, and non-module semantic-key tiers. Reports added, removed, changed, ambiguous, and unknown entities plus the complete matching changed_from graph without fuzzy or module-ordinal pairing.",
|
|
143
95
|
kind: "application",
|
|
144
96
|
inputSchema: compareApplicationVersionsRequestSchema,
|
|
145
97
|
outputSchema: comparisonOutputSchema,
|
|
@@ -153,7 +105,7 @@ export const APPLICATION_TOOL_CONTRACTS = [
|
|
|
153
105
|
{
|
|
154
106
|
name: "compare_source_to_bundle",
|
|
155
107
|
...toolContractMetadata("compare_source_to_bundle"),
|
|
156
|
-
description: "Compare a cryptographically committed HistoricalSourceGraph
|
|
108
|
+
description: "Compare a cryptographically committed HistoricalSourceGraph with inline authenticated JavaScript Application Graph Evidence. Uses explicit exact-digest, source-map path, current-path, suffix, and basename signals with stable weights. Classifies unchanged, modified, removed, split, merged, duplicated, and unknown; incomplete coverage and ambiguous weak signals never become absence or forced matches.",
|
|
157
109
|
kind: "application",
|
|
158
110
|
inputSchema: compareSourceToBundleRequestSchema,
|
|
159
111
|
outputSchema: sourceToBundleOutputSchema,
|
|
@@ -167,7 +119,7 @@ export const APPLICATION_TOOL_CONTRACTS = [
|
|
|
167
119
|
{
|
|
168
120
|
name: "compare_javascript_export_shapes",
|
|
169
121
|
...toolContractMetadata("compare_javascript_export_shapes"),
|
|
170
|
-
description: "Compare
|
|
122
|
+
description: "Compare static return shapes for one exact module/export selector on each authenticated JavaScript Application Graph supplied as inline Evidence. Variants pair only by reciprocal unique literal discriminants; dynamic values, incomplete properties, and ambiguous variants remain unknown. Reports JSON Pointer changes and recommends controlled replay separately without executing JavaScript.",
|
|
171
123
|
kind: "application",
|
|
172
124
|
inputSchema: compareJavaScriptExportShapesRequestSchema,
|
|
173
125
|
outputSchema: exportShapeComparisonOutputSchema,
|
|
@@ -181,7 +133,7 @@ export const APPLICATION_TOOL_CONTRACTS = [
|
|
|
181
133
|
{
|
|
182
134
|
name: "run_controlled_replay",
|
|
183
135
|
...toolContractMetadata("run_controlled_replay"),
|
|
184
|
-
description: "Plan or execute a content-bound extracted-module JavaScript replay inside the Linux Bubblewrap, seccomp, and cgroup boundary. Execution requires
|
|
136
|
+
description: "Plan or execute a content-bound extracted-module JavaScript replay inside the Linux Bubblewrap, seccomp, and cgroup boundary. Execution requires the exact plan digest. Supports deterministic boundary cases and optional left/right differential comparison; observations have controlled-replay authority and do not claim real application runtime behavior.",
|
|
185
137
|
kind: "application",
|
|
186
138
|
inputSchema: controlledReplayInputSchema,
|
|
187
139
|
outputSchema: controlledReplayOutputSchema,
|
|
@@ -194,7 +146,7 @@ export const APPLICATION_TOOL_CONTRACTS = [
|
|
|
194
146
|
modules: [
|
|
195
147
|
{
|
|
196
148
|
alias: "parser",
|
|
197
|
-
path: "/
|
|
149
|
+
path: "/tmp/example/parser.mjs",
|
|
198
150
|
format: "esm",
|
|
199
151
|
role: "module",
|
|
200
152
|
dependencies: {},
|
|
@@ -232,7 +184,7 @@ export const APPLICATION_TOOL_CONTRACTS = [
|
|
|
232
184
|
{
|
|
233
185
|
name: "prepare_node_characterization",
|
|
234
186
|
...toolContractMetadata("prepare_node_characterization"),
|
|
235
|
-
description: "Prepare a hash-bound Node/JavaScript characterization plan and deterministic reversible export transformation without executing target code. The exact source, selected byte range, runtime closure, sandbox profile, cases, and limits are committed for
|
|
187
|
+
description: "Prepare a hash-bound Node/JavaScript characterization plan and deterministic reversible export transformation without executing target code. The exact source, selected byte range, runtime closure, sandbox profile, cases, and limits are committed for later execution.",
|
|
236
188
|
kind: "application",
|
|
237
189
|
inputSchema: nodeCharacterizationPreparationInputSchema,
|
|
238
190
|
outputSchema: nodeCharacterizationPreparationOutputSchema,
|
|
@@ -246,15 +198,14 @@ export const APPLICATION_TOOL_CONTRACTS = [
|
|
|
246
198
|
{
|
|
247
199
|
name: "execute_node_characterization",
|
|
248
200
|
...toolContractMetadata("execute_node_characterization"),
|
|
249
|
-
description: "Recompute and execute one
|
|
201
|
+
description: "Recompute and execute one exact Node characterization plan in the owned controlled-replay boundary. Returns transformation, replay, cleanup, and provider-neutral characterization Evidence; stale plans fail before execution.",
|
|
250
202
|
kind: "application",
|
|
251
203
|
inputSchema: nodeCharacterizationExecutionInputSchema,
|
|
252
204
|
outputSchema: nodeCharacterizationExecutionOutputSchema,
|
|
253
205
|
examples: [
|
|
254
206
|
{
|
|
255
|
-
title: "Execute one
|
|
207
|
+
title: "Execute one exact characterization plan",
|
|
256
208
|
input: {
|
|
257
|
-
execution_approved: true,
|
|
258
209
|
approved_plan_sha256: HASH,
|
|
259
210
|
preparation: NODE_PREPARATION_EXAMPLE,
|
|
260
211
|
},
|
|
@@ -264,16 +215,15 @@ export const APPLICATION_TOOL_CONTRACTS = [
|
|
|
264
215
|
{
|
|
265
216
|
name: "build_reconstruction_obligation_ledger",
|
|
266
217
|
...toolContractMetadata("build_reconstruction_obligation_ledger"),
|
|
267
|
-
description: "Generate
|
|
218
|
+
description: "Generate the complete deterministic ReconstructionObligationLedger from an authenticated Evidence bundle, reviewed obligations, and an explicit reconstruction manifest. Static candidates remain candidates; duplicate ownership, missing original or reconstruction cases, missing parser/type, weak verifier authority, unenumerated claims, contradictions, dependencies, and residual unknowns fail closed. The inline result carries the full-ledger closure digest and typed per-obligation diagnostics.",
|
|
268
219
|
kind: "application",
|
|
269
220
|
inputSchema: reconstructionObligationLedgerInputSchema,
|
|
270
221
|
outputSchema: reconstructionObligationLedgerOutputSchema,
|
|
271
222
|
examples: [
|
|
272
223
|
{
|
|
273
|
-
title: "Generate the
|
|
224
|
+
title: "Generate the complete obligation ledger",
|
|
274
225
|
input: {
|
|
275
226
|
evidence_bundle: {
|
|
276
|
-
bundle_version: 2,
|
|
277
227
|
artifacts: [],
|
|
278
228
|
providers: [],
|
|
279
229
|
environments: [],
|
|
@@ -284,61 +234,58 @@ export const APPLICATION_TOOL_CONTRACTS = [
|
|
|
284
234
|
},
|
|
285
235
|
reviewed_obligations: [],
|
|
286
236
|
manifest: {
|
|
287
|
-
schema_version: 1,
|
|
288
237
|
bindings: [],
|
|
289
238
|
contradictions: [],
|
|
290
239
|
},
|
|
291
|
-
limits: { max_obligations: 1_000 },
|
|
292
|
-
page: { offset: 0, limit: 50 },
|
|
293
|
-
},
|
|
294
|
-
},
|
|
295
|
-
],
|
|
296
|
-
},
|
|
297
|
-
{
|
|
298
|
-
name: "evaluate_reconstruction_readiness",
|
|
299
|
-
...toolContractMetadata("evaluate_reconstruction_readiness"),
|
|
300
|
-
description: "Evaluate the fixed nine-stage public reconstruction journey into a deterministic ReconstructionReadinessReport/v1. Exact capability limits, provider routing, CLI/MCP status parity, bounded authority, partial-order comparison, contradictions, obligation closure, cleanup, and replay digests fail closed. Aggregate pass is emitted only when every required stage and check passes with attributable Evidence.",
|
|
301
|
-
kind: "application",
|
|
302
|
-
inputSchema: reconstructionReadinessInputSchema,
|
|
303
|
-
outputSchema: reconstructionReadinessOutputSchema,
|
|
304
|
-
examples: [
|
|
305
|
-
{
|
|
306
|
-
title: "Evaluate the complete synthetic reconstruction journey",
|
|
307
|
-
input: RECONSTRUCTION_READINESS_EXAMPLE,
|
|
308
|
-
},
|
|
309
|
-
],
|
|
310
|
-
},
|
|
311
|
-
{
|
|
312
|
-
name: "commit_reconstruction_coverage",
|
|
313
|
-
...toolContractMetadata("commit_reconstruction_coverage"),
|
|
314
|
-
description: "Atomically commit one canonical evidence-backed reconstruction coverage workspace revision under an approved root. CAS revisions reject lost updates; every Evidence and residual-unknown reference must resolve in the embedded canonical bundle.",
|
|
315
|
-
kind: "application",
|
|
316
|
-
inputSchema: reconstructionCoverageCommitInputSchema,
|
|
317
|
-
outputSchema: reconstructionCoverageCommitOutputSchema,
|
|
318
|
-
examples: [
|
|
319
|
-
{
|
|
320
|
-
title: "Commit the first canonical coverage revision",
|
|
321
|
-
input: {
|
|
322
|
-
approved: true,
|
|
323
|
-
workspace_path: "/approved/coverage.json",
|
|
324
|
-
expected_revision: null,
|
|
325
|
-
workspace: COVERAGE_WORKSPACE_EXAMPLE,
|
|
326
240
|
},
|
|
327
241
|
},
|
|
328
242
|
],
|
|
329
243
|
},
|
|
330
244
|
{
|
|
331
|
-
name: "
|
|
332
|
-
...toolContractMetadata("
|
|
333
|
-
description: "Evaluate
|
|
245
|
+
name: "evaluate_reconstruction_coverage",
|
|
246
|
+
...toolContractMetadata("evaluate_reconstruction_coverage"),
|
|
247
|
+
description: "Evaluate inline evidence-backed reconstruction coverage against one named boundary. Missing ownership or inventory is partial; stale, weak, truncated, skipped, or unresolved proof is unknown; contradictions, failed proof, missing owners, and authority routing fail closed.",
|
|
334
248
|
kind: "application",
|
|
335
|
-
inputSchema:
|
|
249
|
+
inputSchema: reconstructionCoverageEvaluationInputSchema,
|
|
336
250
|
outputSchema: reconstructionClosureResultSchema,
|
|
337
251
|
examples: [
|
|
338
252
|
{
|
|
339
253
|
title: "Evaluate one replacement boundary",
|
|
340
254
|
input: {
|
|
341
|
-
|
|
255
|
+
coverage: {
|
|
256
|
+
evidence_bundle: {
|
|
257
|
+
artifacts: [],
|
|
258
|
+
providers: [],
|
|
259
|
+
environments: [],
|
|
260
|
+
scenarios: [],
|
|
261
|
+
captures: [],
|
|
262
|
+
unknowns: [],
|
|
263
|
+
records: [],
|
|
264
|
+
},
|
|
265
|
+
artifacts: [],
|
|
266
|
+
surfaces: [],
|
|
267
|
+
owners: [],
|
|
268
|
+
claims: [],
|
|
269
|
+
verifier_contracts: [],
|
|
270
|
+
verifier_results: [],
|
|
271
|
+
residual_unknown_ids: [],
|
|
272
|
+
contradictions: [],
|
|
273
|
+
package_proofs: [],
|
|
274
|
+
boundaries: [
|
|
275
|
+
{
|
|
276
|
+
boundary_id: "replacement.cli",
|
|
277
|
+
title: "CLI replacement",
|
|
278
|
+
required_surface_ids: ["cli.help"],
|
|
279
|
+
required_claim_ids: ["claim.cli.help"],
|
|
280
|
+
required_package_proof_kinds: [
|
|
281
|
+
"clean-install",
|
|
282
|
+
"authority-independence",
|
|
283
|
+
],
|
|
284
|
+
allowed_dispositions: [],
|
|
285
|
+
allowed_unknown_ids: [],
|
|
286
|
+
},
|
|
287
|
+
],
|
|
288
|
+
},
|
|
342
289
|
boundary_id: "replacement.cli",
|
|
343
290
|
},
|
|
344
291
|
},
|
|
@@ -5,123 +5,48 @@ import { compareJavaScriptExportShapesInputSchema } from "../domain/javascriptEx
|
|
|
5
5
|
import { traceApplicationFeatureInputSchema } from "../domain/javascriptFeatureTraceSchemas.js";
|
|
6
6
|
import { javaScriptSemanticQueryInputSchema } from "../domain/javascriptSemanticQuerySchemas.js";
|
|
7
7
|
import { compareSourceToBundleInputSchema } from "../domain/sourceToBundleComparisonSchemas.js";
|
|
8
|
-
const evidenceIdSchema = z
|
|
9
|
-
.string()
|
|
10
|
-
.regex(/^ev_[a-f0-9]{64}$/u)
|
|
11
|
-
.describe("Evidence ID returned earlier in this session");
|
|
12
8
|
const traceApplicationFeatureFacts = {
|
|
13
9
|
native_observations: traceApplicationFeatureInputSchema.shape.native_observations,
|
|
14
|
-
native_observation_evidence_ids: z
|
|
15
|
-
.array(evidenceIdSchema)
|
|
16
|
-
.max(64)
|
|
17
|
-
.default([]),
|
|
18
10
|
seed: traceApplicationFeatureInputSchema.shape.seed,
|
|
19
11
|
direction: traceApplicationFeatureInputSchema.shape.direction,
|
|
20
|
-
limits: traceApplicationFeatureInputSchema.shape.limits,
|
|
21
12
|
};
|
|
22
|
-
/** MCP/CLI trace request
|
|
23
|
-
export const traceApplicationFeatureRequestSchema = z.
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
]);
|
|
33
|
-
/** MCP/CLI semantic trace request accepting full Evidence or a ledger reference. */
|
|
34
|
-
export const traceJavaScriptSemanticsRequestSchema = z.union([
|
|
35
|
-
z.strictObject({
|
|
36
|
-
application: evidenceSchema,
|
|
37
|
-
query: javaScriptSemanticQueryInputSchema,
|
|
38
|
-
}),
|
|
39
|
-
z.strictObject({
|
|
40
|
-
application_evidence_id: evidenceIdSchema,
|
|
41
|
-
query: javaScriptSemanticQueryInputSchema,
|
|
42
|
-
}),
|
|
43
|
-
]);
|
|
13
|
+
/** MCP/CLI trace request carrying all Evidence inline. */
|
|
14
|
+
export const traceApplicationFeatureRequestSchema = z.strictObject({
|
|
15
|
+
...traceApplicationFeatureFacts,
|
|
16
|
+
application: evidenceSchema,
|
|
17
|
+
});
|
|
18
|
+
/** MCP/CLI semantic trace request carrying Evidence inline. */
|
|
19
|
+
export const traceJavaScriptSemanticsRequestSchema = z.strictObject({
|
|
20
|
+
application: evidenceSchema,
|
|
21
|
+
query: javaScriptSemanticQueryInputSchema,
|
|
22
|
+
});
|
|
44
23
|
const compareApplicationVersionsFacts = {
|
|
45
24
|
left_native_observations: compareApplicationVersionsInputSchema.shape.left_native_observations,
|
|
46
|
-
left_native_observation_evidence_ids: z
|
|
47
|
-
.array(evidenceIdSchema)
|
|
48
|
-
.max(64)
|
|
49
|
-
.default([]),
|
|
50
25
|
right_native_observations: compareApplicationVersionsInputSchema.shape.right_native_observations,
|
|
51
|
-
right_native_observation_evidence_ids: z
|
|
52
|
-
.array(evidenceIdSchema)
|
|
53
|
-
.max(64)
|
|
54
|
-
.default([]),
|
|
55
|
-
limits: compareApplicationVersionsInputSchema.shape.limits,
|
|
56
|
-
unknown_registry_approved: compareApplicationVersionsInputSchema.shape.unknown_registry_approved,
|
|
57
26
|
};
|
|
58
|
-
/** MCP/CLI comparison request
|
|
59
|
-
export const compareApplicationVersionsRequestSchema = z.
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
}),
|
|
65
|
-
z.strictObject({
|
|
66
|
-
...compareApplicationVersionsFacts,
|
|
67
|
-
left: evidenceSchema,
|
|
68
|
-
right_evidence_id: evidenceIdSchema,
|
|
69
|
-
}),
|
|
70
|
-
z.strictObject({
|
|
71
|
-
...compareApplicationVersionsFacts,
|
|
72
|
-
left_evidence_id: evidenceIdSchema,
|
|
73
|
-
right: evidenceSchema,
|
|
74
|
-
}),
|
|
75
|
-
z.strictObject({
|
|
76
|
-
...compareApplicationVersionsFacts,
|
|
77
|
-
left_evidence_id: evidenceIdSchema,
|
|
78
|
-
right_evidence_id: evidenceIdSchema,
|
|
79
|
-
}),
|
|
80
|
-
]);
|
|
27
|
+
/** MCP/CLI comparison request carrying all Evidence inline. */
|
|
28
|
+
export const compareApplicationVersionsRequestSchema = z.strictObject({
|
|
29
|
+
...compareApplicationVersionsFacts,
|
|
30
|
+
left: evidenceSchema,
|
|
31
|
+
right: evidenceSchema,
|
|
32
|
+
});
|
|
81
33
|
const compareSourceToBundleFacts = {
|
|
82
34
|
reference: compareSourceToBundleInputSchema.shape.reference,
|
|
83
|
-
limits: compareSourceToBundleInputSchema.shape.limits,
|
|
84
|
-
unknown_registry_approved: compareSourceToBundleInputSchema.shape.unknown_registry_approved,
|
|
85
35
|
};
|
|
86
|
-
/** Historical-source comparison
|
|
87
|
-
export const compareSourceToBundleRequestSchema = z.
|
|
88
|
-
|
|
89
|
-
|
|
90
|
-
|
|
91
|
-
}),
|
|
92
|
-
z.strictObject({
|
|
93
|
-
...compareSourceToBundleFacts,
|
|
94
|
-
application_evidence_id: evidenceIdSchema,
|
|
95
|
-
}),
|
|
96
|
-
]);
|
|
36
|
+
/** Historical-source comparison carrying application Evidence inline. */
|
|
37
|
+
export const compareSourceToBundleRequestSchema = z.strictObject({
|
|
38
|
+
...compareSourceToBundleFacts,
|
|
39
|
+
application: evidenceSchema,
|
|
40
|
+
});
|
|
97
41
|
const compareJavaScriptExportShapesFacts = {
|
|
98
42
|
left_module_path: compareJavaScriptExportShapesInputSchema.shape.left_module_path,
|
|
99
43
|
left_export_name: compareJavaScriptExportShapesInputSchema.shape.left_export_name,
|
|
100
44
|
right_module_path: compareJavaScriptExportShapesInputSchema.shape.right_module_path,
|
|
101
45
|
right_export_name: compareJavaScriptExportShapesInputSchema.shape.right_export_name,
|
|
102
|
-
limits: compareJavaScriptExportShapesInputSchema.shape.limits,
|
|
103
|
-
unknown_registry_approved: compareJavaScriptExportShapesInputSchema.shape.unknown_registry_approved,
|
|
104
46
|
};
|
|
105
|
-
/** MCP/CLI export-shape request
|
|
106
|
-
export const compareJavaScriptExportShapesRequestSchema = z.
|
|
107
|
-
|
|
108
|
-
|
|
109
|
-
|
|
110
|
-
|
|
111
|
-
}),
|
|
112
|
-
z.strictObject({
|
|
113
|
-
...compareJavaScriptExportShapesFacts,
|
|
114
|
-
left: evidenceSchema,
|
|
115
|
-
right_evidence_id: evidenceIdSchema,
|
|
116
|
-
}),
|
|
117
|
-
z.strictObject({
|
|
118
|
-
...compareJavaScriptExportShapesFacts,
|
|
119
|
-
left_evidence_id: evidenceIdSchema,
|
|
120
|
-
right: evidenceSchema,
|
|
121
|
-
}),
|
|
122
|
-
z.strictObject({
|
|
123
|
-
...compareJavaScriptExportShapesFacts,
|
|
124
|
-
left_evidence_id: evidenceIdSchema,
|
|
125
|
-
right_evidence_id: evidenceIdSchema,
|
|
126
|
-
}),
|
|
127
|
-
]);
|
|
47
|
+
/** MCP/CLI export-shape request carrying application Evidence inline. */
|
|
48
|
+
export const compareJavaScriptExportShapesRequestSchema = z.strictObject({
|
|
49
|
+
...compareJavaScriptExportShapesFacts,
|
|
50
|
+
left: evidenceSchema,
|
|
51
|
+
right: evidenceSchema,
|
|
52
|
+
});
|