rea-agents 6.5.0 → 6.7.0
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 +12 -3
- package/THIRD_PARTY_NOTICES.md +1 -0
- package/bridge/android/ReaJadxBridge.java +167 -23
- package/bridge/cutter/rea_bridge.py +19 -10
- package/bridge/ghidra/ReaGhidraBridge.java +98 -66
- package/bridge/hopper_bridge.py +9 -1
- package/bridge/native/rea_lldb_tracer.py +48 -4
- package/bridge/pwndbg/core_context.py +15 -2
- package/dist/adb/AdbCommand.js +148 -0
- package/dist/adb/AdbConfiguration.js +26 -4
- package/dist/adb/AdbInputSnapshot.js +126 -0
- package/dist/adb/AdbProvider.js +765 -248
- package/dist/adb/AdbShellOutput.js +92 -21
- package/dist/android/AndroidTargetSnapshot.js +7 -7
- package/dist/android/JadxAnalysis.js +27 -32
- package/dist/android/JadxConfiguration.js +173 -125
- package/dist/android/JadxDoctor.js +11 -3
- package/dist/android/JadxFailure.js +154 -0
- package/dist/android/JadxInterruption.js +13 -0
- package/dist/android/JadxJavaProbe.js +246 -0
- package/dist/android/JadxMcpTransport.js +48 -15
- package/dist/android/JadxProtocol.js +29 -2
- package/dist/android/JadxProvider.js +171 -96
- package/dist/android/JadxRelease.js +5 -1
- package/dist/android/JadxSession.js +35 -14
- package/dist/apktool/ApktoolCommandCleanup.js +134 -0
- package/dist/apktool/ApktoolCommandOutput.js +22 -0
- package/dist/apktool/ApktoolConfiguration.js +162 -44
- package/dist/apktool/ApktoolDecodeOutput.js +29 -23
- package/dist/apktool/ApktoolDecodedInventory.js +52 -0
- package/dist/apktool/ApktoolProvider.js +254 -335
- package/dist/apktool/ApktoolStringTables.js +178 -0
- package/dist/apktool/ApktoolWorkspace.js +162 -0
- package/dist/application/AnalysisDocument.js +19 -4
- package/dist/application/AnalysisProvider.js +15 -1
- package/dist/application/AppBundleExecutable.js +11 -4
- package/dist/application/BinaryTargetResolver.js +9 -2
- package/dist/application/BrowserObservationService.js +54 -20
- package/dist/application/BrowserScenarioCaptureService.js +26 -6
- package/dist/application/CapabilityInventory.js +14 -8
- package/dist/application/ClaudeDesktopConfigLocation.js +5 -5
- package/dist/application/ClientConfigurationCleanup.js +73 -0
- package/dist/application/ClientConfigurationDocument.js +170 -128
- package/dist/application/ClientConfigurationPublication.js +167 -0
- package/dist/application/ClientRegistrationEnvironment.js +31 -1
- package/dist/application/ClientRegistrationIdentity.js +54 -39
- package/dist/application/ClientRegistrationStatus.js +123 -48
- package/dist/application/DirectAnalysis.js +15 -2
- package/dist/application/DirectAnalysisCleanup.js +5 -1
- package/dist/application/DirectAnalysisStatus.js +1 -1
- package/dist/application/Doctor.js +83 -9
- package/dist/application/DoctorDiagnostics.js +25 -4
- package/dist/application/DoctorProviderIds.js +7 -1
- package/dist/application/DshCordisPatch.js +1 -1
- package/dist/application/EnhancedTools.js +9 -21
- package/dist/application/HermesClientHome.js +20 -0
- package/dist/application/HermesConfigurationYaml.js +43 -3
- package/dist/application/HopperDownload.js +11 -3
- package/dist/application/HopperReleaseFeed.js +71 -0
- package/dist/application/InvestigationProviders.js +4 -3
- package/dist/application/JsonFiles.js +1 -1
- package/dist/application/LinuxHopper.js +96 -71
- package/dist/application/LinuxHopperPublisher.js +656 -0
- package/dist/application/MacHopper.js +182 -66
- package/dist/application/MipsElfMetadata.js +1 -1
- package/dist/application/MsixPackageStorage.js +13 -6
- package/dist/application/ProviderOperationExecution.js +13 -20
- package/dist/application/ReconstructionObligationCandidates.js +17 -2
- package/dist/application/ReconstructionObligationLedgerEvaluation.js +4 -0
- package/dist/application/ReconstructionObligationLedgerService.js +5 -3
- package/dist/application/ReconstructionObligationOriginalCases.js +8 -0
- package/dist/application/ReferenceSourceImportEntries.js +160 -18
- package/dist/application/ReferenceSourceImportPolicy.js +5 -3
- package/dist/application/ReferenceSourceVcsAdapter.js +3 -1
- package/dist/application/RegularFileRead.js +107 -88
- package/dist/application/Setup.js +23 -11
- package/dist/application/SetupClientConfiguration.js +155 -89
- package/dist/application/SetupClients.js +22 -13
- package/dist/application/SetupHost.js +90 -34
- package/dist/application/SetupInstallFailure.js +18 -3
- package/dist/application/SetupPlan.js +15 -5
- package/dist/application/SetupRecoveryBackup.js +40 -13
- package/dist/application/SetupRegistrationEnvironment.js +12 -0
- package/dist/application/SetupSkill.js +10 -30
- package/dist/application/SourceLimitations.js +35 -0
- package/dist/application/SupportedClients.js +4 -4
- package/dist/application/Uninstall.js +91 -36
- package/dist/application/UpdateCommandProgress.js +66 -0
- package/dist/application/UpdateMaintenance.js +7 -2
- package/dist/application/UpdateRuntime.js +60 -30
- package/dist/application/WebModuleTraceService.js +35 -22
- package/dist/application/WebNetworkCaptureService.js +8 -5
- package/dist/application/WebRuntimeService.js +41 -8
- package/dist/application/WebScriptExportService.js +6 -4
- package/dist/application/WebSourceLocationService.js +3 -4
- package/dist/application/WorkflowEvidence.js +11 -4
- package/dist/application/analysisView/AnalysisViewService.js +9 -52
- package/dist/application/android/AndroidAnalysisService.js +5 -4
- package/dist/application/android/AndroidSearchEvidenceSummary.js +6 -8
- package/dist/application/artifacts/ArtifactComparisonEvidence.js +32 -0
- package/dist/application/binary/AnalysisProviderEvaluation.js +14 -11
- package/dist/application/binary/AnalysisProviderRegistry.js +340 -50
- package/dist/application/binary/BinarySession.js +73 -34
- package/dist/application/binary/BinarySessionRecords.js +3 -0
- package/dist/application/binary/BinarySessionStatus.js +3 -4
- package/dist/application/binary/CompositeProvider.js +75 -30
- package/dist/application/binary/LazyAnalysisProvider.js +6 -68
- package/dist/application/binary/SessionProviderRouter.js +11 -2
- package/dist/application/binaryDiagnostics/BinaryLayoutService.js +3 -4
- package/dist/application/binaryDiagnostics/PeResourcesService.js +22 -5
- package/dist/application/binaryDiagnostics/RecordedCrashService.js +3 -4
- package/dist/application/captures/PacketCaptureService.js +3 -2
- package/dist/application/closeOwnedWebResources.js +32 -2
- package/dist/application/electron/ElectronFuseService.js +8 -43
- package/dist/application/evm/EvmInterfaceEvidence.js +11 -0
- package/dist/application/evm/EvmInterfaceService.js +4 -15
- package/dist/application/firmware/FirmwareAnalysisService.js +4 -3
- package/dist/application/go/GoBinaryService.js +4 -5
- package/dist/application/investigation/EvidenceLedger.js +3 -4
- package/dist/application/javascript/ElectronBoundaryGraphWindows.js +14 -2
- package/dist/application/javascript/ElectronEvidence.js +1 -2
- package/dist/application/javascript/ElectronObservationService.js +41 -7
- package/dist/application/javascript/JavaScriptApplicationEvidence.js +6 -0
- package/dist/application/javascript/JavaScriptArtifactAnalysis.js +35 -17
- package/dist/application/javascript/JavaScriptArtifactAnalysisTypes.js +30 -1
- package/dist/application/javascript/JavaScriptArtifactGraphContext.js +3 -2
- package/dist/application/javascript/JavaScriptArtifactGraphEvidence.js +3 -3
- package/dist/application/javascript/JavaScriptArtifactGraphFindings.js +41 -11
- package/dist/application/javascript/JavaScriptArtifactGraphStructure.js +18 -8
- package/dist/application/javascript/JavaScriptArtifactPathResolution.js +84 -24
- package/dist/application/javascript/JavaScriptArtifactReconstruction.js +15 -3
- package/dist/application/javascript/JavaScriptModuleRelationships.js +1 -1
- package/dist/application/javascript/JavaScriptRuntimeObservationEvidence.js +1 -2
- package/dist/application/javascript/JavaScriptRuntimeObservationService.js +33 -10
- package/dist/application/javascript/JavaScriptSemanticGraphAsyncProjection.js +4 -5
- package/dist/application/javascript/JavaScriptSemanticGraphBuilder.js +103 -24
- package/dist/application/javascript/JavaScriptSemanticGraphChildProcessProjection.js +13 -4
- package/dist/application/javascript/JavaScriptSemanticGraphConstruction.js +23 -3
- package/dist/application/javascript/JavaScriptSemanticGraphDataProjection.js +18 -5
- package/dist/application/javascript/JavaScriptSemanticGraphFlowProjection.js +4 -6
- package/dist/application/javascript/JavaScriptSemanticGraphObjectProjection.js +2 -3
- package/dist/application/javascript/JavaScriptSemanticGraphResourceProjection.js +2 -3
- package/dist/application/javascript/JavaScriptSemanticGraphValueProjection.js +5 -8
- package/dist/application/native/NativeCallRoutes.js +40 -23
- package/dist/application/native/NativeUiActionTrace.js +8 -0
- package/dist/application/native/NativeValueTrace.js +8 -0
- package/dist/application/reverse/ReverseEngineeringService.js +2 -2
- package/dist/application/rust/RustBinaryService.js +6 -4
- package/dist/application/signals/SignalRecordingService.js +3 -2
- package/dist/application/wasm/WasmArtifactService.js +4 -5
- package/dist/artifacts/AnalysisCleanupLease.js +119 -0
- package/dist/artifacts/ArtifactFileOperation.js +150 -0
- package/dist/artifacts/ArtifactHash.js +2 -1
- package/dist/artifacts/ArtifactProvider.js +16 -5
- package/dist/artifacts/ArtifactReader.js +50 -4
- package/dist/artifacts/ArtifactResourceScope.js +80 -6
- package/dist/artifacts/AsarArtifactReader.js +12 -11
- package/dist/artifacts/AsarEntryStream.js +49 -17
- package/dist/artifacts/DirectoryArtifactReader.js +28 -7
- package/dist/artifacts/MachOSliceArtifactReader.js +70 -13
- package/dist/artifacts/NativeDmgArtifactReader.js +112 -13
- package/dist/artifacts/SafeOutputTree.js +5 -3
- package/dist/artifacts/SafeOutputTreeCreationFailure.js +1 -0
- package/dist/artifacts/SafeOutputTreeReadback.js +10 -16
- package/dist/artifacts/ZipArtifactReader.js +34 -14
- package/dist/artifacts/apple/AppleAssetCatalogAnalysis.js +3 -1
- package/dist/artifacts/apple/DylibFileAccess.js +106 -0
- package/dist/artifacts/apple/DylibResolutionReader.js +64 -155
- package/dist/artifacts/apple/InterfaceBuilderAnalysis.js +52 -9
- package/dist/artifacts/apple/InterfaceBuilderDecodeBudget.js +25 -24
- package/dist/artifacts/apple/KeyedArchiveReader.js +20 -11
- package/dist/artifacts/apple/MachoLoadCommandReader.js +17 -2
- package/dist/artifacts/apple/PlistNumberLiterals.js +104 -116
- package/dist/artifacts/extraction/ArtifactExtraction.js +15 -12
- package/dist/artifacts/inventory/ArtifactGraphConstruction.js +9 -11
- package/dist/artifacts/inventory/ArtifactInventory.js +2 -2
- package/dist/artifacts/inventory/classify.js +4 -2
- package/dist/artifacts/inventory/hashStableRootArtifact.js +14 -7
- package/dist/artifacts/inventory/scanCanonical.js +3 -4
- package/dist/artifacts/javascript/JavaScriptArtifactFiles.js +3 -1
- package/dist/artifacts/readArtifactFileChunks.js +9 -0
- package/dist/artifacts/readStableArtifact.js +12 -34
- package/dist/browser/BrowserScenarioPartialObservation.js +14 -48
- package/dist/browser/CdpBrowserProvider.js +81 -30
- package/dist/browser/CdpCaptureDocuments.js +99 -131
- package/dist/browser/CdpCaptureDomSvg.js +31 -60
- package/dist/browser/CdpCaptureValues.js +12 -0
- package/dist/browser/CdpConnection.js +133 -27
- package/dist/browser/CdpElectronInspection.js +60 -60
- package/dist/browser/CdpElectronProvider.js +56 -4
- package/dist/browser/CdpElectronScriptEvents.js +4 -1
- package/dist/browser/CdpElectronScripts.js +2 -5
- package/dist/browser/CdpElectronWorkers.js +13 -2
- package/dist/browser/CdpPageCapture.js +2 -1
- package/dist/browser/CdpPageCaptureScripts.js +14 -10
- package/dist/browser/CdpPageCaptureWorkers.js +45 -14
- package/dist/browser/CdpSafeMetadata.js +23 -19
- package/dist/browser/CdpSnapshotNodes.js +103 -0
- package/dist/browser/CdpSnapshotStrings.js +0 -6
- package/dist/browser/CdpTargetSession.js +52 -10
- package/dist/browser/CdpTargetSessionOwner.js +198 -0
- package/dist/browser/ElectronCaptureCleanup.js +82 -0
- package/dist/browser/ElectronProcessCleanup.js +91 -0
- package/dist/browser/PlaywrightBrowserScenarioProvider.js +71 -16
- package/dist/browser/PlaywrightElectronActiveActions.js +53 -5
- package/dist/browser/PlaywrightElectronActiveFuses.js +86 -0
- package/dist/browser/PlaywrightElectronActiveProjection.js +5 -0
- package/dist/browser/PlaywrightElectronActiveProvider.js +140 -151
- package/dist/browser/PlaywrightExecutionBoundary.js +4 -2
- package/dist/browser/PlaywrightScenarioBrowser.js +236 -90
- package/dist/browser/PlaywrightScenarioEvents.js +135 -48
- package/dist/browser/PlaywrightScenarioServiceWorkers.js +121 -34
- package/dist/browser/PlaywrightScenarioSession.js +95 -22
- package/dist/browser/PlaywrightScenarioStorage.js +15 -7
- package/dist/browser/StructuredFieldToken.js +53 -0
- package/dist/browser/WebArtifactCleanup.js +53 -0
- package/dist/browser/WebSourceMapFetcher.js +19 -10
- package/dist/browser/assets/WebArtifactReads.js +6 -2
- package/dist/browser/assets/WebSourceLocationArtifacts.js +12 -3
- package/dist/browser/execution/CdpRuntimeSession.js +36 -7
- package/dist/browser/execution/CdpWebRuntimeProvider.js +22 -4
- package/dist/browser/history/CaptureFailures.js +7 -2
- package/dist/browser/history/HarCapture.js +42 -11
- package/dist/browser/history/SazMetadata.js +10 -47
- package/dist/browser/modules/NativeModuleResolver.js +108 -58
- package/dist/browser/modules/WebModuleArtifacts.js +12 -3
- package/dist/browser/network/PlaywrightNetworkContent.js +40 -17
- package/dist/browser/network/PlaywrightScenarioNetwork.js +182 -73
- package/dist/captures/TsharkCaptureProvider.js +13 -6
- package/dist/catalogIdentity.js +19 -14
- package/dist/cli/adbCommands.js +18 -19
- package/dist/cli/androidCommands.js +2 -14
- package/dist/cli/apktoolCommands.js +4 -14
- package/dist/cli/binaryDiagnosticsCommands.js +5 -5
- package/dist/cli/browserAdvancedCommands.js +11 -4
- package/dist/cli/browserCommands.js +21 -12
- package/dist/cli/captureCommands.js +4 -4
- package/dist/cli/cliResultOutput.js +175 -89
- package/dist/cli/coreBinaryCommands.js +4 -3
- package/dist/cli/cutterCommands.js +51 -13
- package/dist/cli/electronCommands.js +34 -13
- package/dist/cli/evmCommands.js +6 -15
- package/dist/cli/finishAnalysisCommand.js +10 -2
- package/dist/cli/firmwareCommands.js +6 -14
- package/dist/cli/flutterCommands.js +2 -18
- package/dist/cli/fridaCommands.js +8 -0
- package/dist/cli/goCommands.js +2 -2
- package/dist/cli/javascriptRecoveryCommands.js +14 -26
- package/dist/cli/jebCommands.js +2 -14
- package/dist/cli/options.js +6 -0
- package/dist/cli/pcapCommands.js +2 -20
- package/dist/cli/rustCommands.js +6 -7
- package/dist/cli/setupCommands.js +4 -3
- package/dist/cli/signalCommands.js +4 -4
- package/dist/cli/sqliteCommands.js +17 -44
- package/dist/cli/wasmCommands.js +7 -18
- package/dist/cli/webModuleCommands.js +19 -34
- package/dist/cli/webNetworkCaptureCommands.js +3 -2
- package/dist/cli/webRuntimeCommands.js +15 -6
- package/dist/cli/webSourceLocationCommands.js +14 -33
- package/dist/cli-runtime/AnalysisCleanupLease-CWfTGYKd.js +103 -0
- package/dist/cli-runtime/{AnalysisProvider-D0Us2OTk.js → AnalysisProvider-BGrYaMVo.js} +14 -3
- package/dist/cli-runtime/{AnalysisSnapshotCache-BXS0wRd2.js → AnalysisSnapshotCache-BjRlXeUS.js} +14 -13
- package/dist/cli-runtime/ArtifactFileOperation-Dg4BcoEM.js +122 -0
- package/dist/cli-runtime/{ArtifactReader-BXkffc1D.js → ArtifactReader-DMwm42bk.js} +29 -6
- package/dist/cli-runtime/ArtifactResourceScope-CokZGcII.js +175 -0
- package/dist/cli-runtime/{AsarHeader-CnzOzYEH.js → AsarHeader-BxwU17DJ.js} +1 -1
- package/dist/cli-runtime/{BinarySessionStatus-DnMxMk-r.js → BinarySessionStatus-DRhjr7Vb.js} +4 -3
- package/dist/cli-runtime/{BinaryTargetResolver-CVIJ_s1A.js → BinaryTargetResolver-tuCTjBlQ.js} +38 -108
- package/dist/cli-runtime/{BoundedFileBytes-BU30odTm.js → BoundedFileBytes-DRtiQNAQ.js} +7 -3
- package/dist/cli-runtime/{CdpTargetSession-DGX5pV9w.js → CdpTargetSession-CQ08KHbh.js} +318 -43
- package/dist/cli-runtime/ClientConfigPath-Dn-V_GUf.js +255 -0
- package/dist/cli-runtime/{ClientConfigurationDocument-ffQ9X0Se.js → ClientConfigurationDocument-C9T8MNGc.js} +206 -142
- package/dist/cli-runtime/{ClientRegistrationStatus-DszCyPEU.js → ClientRegistrationStatus-PnD29RTX.js} +112 -36
- package/dist/cli-runtime/{CurrentEntrypointPath-D5FRNdkq.js → CurrentEntrypointPath-m7QCIVN0.js} +1 -1
- package/dist/cli-runtime/{DirectAnalysis-BgvAtpN3.js → DirectAnalysis-C5NyUryV.js} +76 -23
- package/dist/cli-runtime/DirectoryArtifactReader-CokAJ8vo.js +448 -0
- package/dist/cli-runtime/{Doctor-DIpf_I7N.js → Doctor-DrkWsav4.js} +105 -25
- package/dist/cli-runtime/{ElectronFileScope-dpHm2nrS.js → ElectronFileScope-AP7VoVr7.js} +204 -149
- package/dist/cli-runtime/ElectronFuseFailures-DsjXR7Xp.js +609 -0
- package/dist/cli-runtime/{ExecFileOutput-BEQs-lDD.js → ExecFileOutput-D6KLYTve.js} +11 -9
- package/dist/cli-runtime/{InterfaceBuilderDecodeBudget-D4omRUe4.js → InterfaceBuilderDecodeBudget-CW1IO3dG.js} +40 -21
- package/dist/cli-runtime/{InventoryProjectionEvidence-DIsI4DJ6.js → InventoryProjectionEvidence-DTH5QAqL.js} +3 -3
- package/dist/cli-runtime/{InvestigationProviders-DoQRIHii.js → InvestigationProviders-CFh4a64d.js} +3 -2
- package/dist/cli-runtime/{JavaScriptApplicationEvidenceGraph-D5aI_FSJ.js → JavaScriptApplicationEvidenceGraph-gOmPB2L6.js} +6 -6
- package/dist/cli-runtime/{JavaScriptApplicationWorkflowEvidence-Bz4-V0Ct.js → JavaScriptApplicationWorkflowEvidence-WZgtK_Ok.js} +2 -2
- package/dist/cli-runtime/JebMcpEndpoint-BEalGZh9.js +710 -0
- package/dist/cli-runtime/{JsonFiles-DQa1PRKy.js → JsonFiles-uvd6ZyQi.js} +10 -118
- package/dist/cli-runtime/KunaInstallation-P0j3x851.js +1781 -0
- package/dist/cli-runtime/MacHopperPaths-bGzqjF1Z.js +34 -0
- package/dist/cli-runtime/{MachoLoadCommandReader-C7e074Ze.js → MachoLoadCommandReader-CZm6N5vF.js} +12 -192
- package/dist/cli-runtime/{ManagedSnapshot-rqyBHcdL.js → ManagedSnapshot-CPE9C3OD.js} +406 -110
- package/dist/cli-runtime/OwnedCommandCleanup-BN_V6Erc.js +187 -0
- package/dist/cli-runtime/OwnedRegularFile-D1f5nUCx.js +256 -0
- package/dist/cli-runtime/OwnedStagedOutput-D31dOozz.js +126 -0
- package/dist/cli-runtime/{PrivateRuntimeRoot-DAy0PiBM.js → PrivateRuntimeRoot-Cd23u6jd.js} +39 -6
- package/dist/cli-runtime/ProcessOwnership-CtrNr6ee.js +545 -0
- package/dist/cli-runtime/{ProcessOwnership-DXC5-UWt.js → ProcessOwnershipObservation-C006iCtZ.js} +149 -607
- package/dist/cli-runtime/{ProviderDeadline-8m2pFRDc.js → ProviderDeadline-rSuH4Pm8.js} +27 -1
- package/dist/cli-runtime/ProviderOperationExecution-CmU-XrQr.js +38 -0
- package/dist/cli-runtime/{snapshotEnvironment-D_tWyOub.js → ProviderProcess-D87A7ctp.js} +117 -160
- package/dist/cli-runtime/RegularFileRead-mbgGYtxe.js +125 -0
- package/dist/cli-runtime/{SafeOutputTree-D6U15GXd.js → SafeOutputTree-i904hd_2.js} +21 -20
- package/dist/cli-runtime/{SetupHost-FkYWswsq.js → SetupHost-CMPmPraB.js} +365 -195
- package/dist/cli-runtime/SharedStartupAttempt-BxKyf3Uv.js +1424 -0
- package/dist/cli-runtime/StableFileHash-Ame_h3lY.js +61 -0
- package/dist/cli-runtime/{SupportedClients-DaX6Lt2d.js → SupportedClients-DMafjitv.js} +89 -72
- package/dist/cli-runtime/{Update-CbTC_eg1.js → Update-DAsASWlE.js} +1 -1
- package/dist/cli-runtime/{AbortablePromise-BVBemxbD.js → WindowsBatchCommand-Cx9kaVNf.js} +2 -28
- package/dist/cli-runtime/WindowsNativeLoader-BqyZO0ZD.js +142 -0
- package/dist/cli-runtime/{ZipArtifactReader-B8ZgNe4D.js → ZipArtifactReader-Jed69LEL.js} +20 -16
- package/dist/cli-runtime/{analysisErrorCleanup-Do6YeeoD.js → analysisErrorCleanup-COdAmDsb.js} +4 -3
- package/dist/cli-runtime/{appleArchiveFormat-tVoI2ykA.js → appleArchiveFormat-Bb3G5CCI.js} +13 -7
- package/dist/cli-runtime/{application__DirectAnalysisStatus-DpOejOf0.js → application__DirectAnalysisStatus-F74bu9oy.js} +10 -10
- package/dist/cli-runtime/{application__EnhancedTools-oFE2bOjs.js → application__EnhancedTools-Bg51b0Yp.js} +84 -51
- package/dist/cli-runtime/{application__FunctionAnalysisEvidence-B6osuhvW.js → application__FunctionAnalysisEvidence-DBWIaYCh.js} +3 -3
- package/dist/cli-runtime/{application__ReconstructionCoverageService-DN3wTFQj.js → application__ReconstructionCoverageService-AEPNpZqJ.js} +3 -3
- package/dist/cli-runtime/{application__ReconstructionObligationLedgerService-CKcTppX9.js → application__ReconstructionObligationLedgerService-Cl9cPEZf.js} +22 -9
- package/dist/cli-runtime/{application__Setup-XpMaRNjy.js → application__Setup-DwQzEewK.js} +30 -18
- package/dist/cli-runtime/{application__Uninstall-_23pU2yB.js → application__Uninstall-BOf9oyvQ.js} +78 -37
- package/dist/cli-runtime/{application__UpdateRuntime-DPvY8ohd.js → application__UpdateRuntime-CzWkRJHa.js} +119 -29
- package/dist/cli-runtime/{application__android__AndroidApplicationService-CFgIFPM4.js → application__android__AndroidApplicationService-shW_aKlj.js} +3 -3
- package/dist/cli-runtime/{application__apple__AppleApplicationService-Db6QCsun.js → application__apple__AppleApplicationService-DIv6d3wB.js} +3 -3
- package/dist/cli-runtime/{application__harmony__HarmonyApplicationService-CFjocHoK.js → application__harmony__HarmonyApplicationService-OIUFVQFV.js} +3 -3
- package/dist/cli-runtime/{application__javascript__ElectronActiveObservationService-CmVDUI_Z.js → application__javascript__ElectronActiveObservationService-wvCh72hK.js} +3 -3
- package/dist/cli-runtime/application__javascript__ElectronObservationService-SydXPCwM.js +88 -0
- package/dist/cli-runtime/{application__javascript__JavaScriptApplicationService-CCkp8KBh.js → application__javascript__JavaScriptApplicationService-o0uEsjEc.js} +1120 -316
- package/dist/cli-runtime/{application__javascript__JavaScriptApplicationWorkflowService-lPy0tzr3.js → application__javascript__JavaScriptApplicationWorkflowService-BAheG_71.js} +51 -44
- package/dist/cli-runtime/{application__javascript__JavaScriptRuntimeReconciliationService-DWleA8K9.js → application__javascript__JavaScriptRuntimeReconciliationService-Cnn4GP8q.js} +5 -5
- package/dist/cli-runtime/{application__javascript__JavaScriptSemanticTraceService-DkALH4rL.js → application__javascript__JavaScriptSemanticTraceService-CmvLfV1A.js} +6 -6
- package/dist/cli-runtime/{artifacts__ArtifactProvider-zXI0QjSL.js → artifacts__ArtifactProvider-wx2K0F2I.js} +377 -359
- package/dist/cli-runtime/{binary-BVOr2mgE.js → binary-CWVNJhAC.js} +8561 -3159
- package/dist/cli-runtime/{catalogIdentity-DLoXgfIR.js → catalogIdentity-DAEEsOdX.js} +260 -81
- package/dist/cli-runtime/cli.js +6177 -3556
- package/dist/cli-runtime/{cliOutput-BC1BdAcB.js → cliOutput-CgSuw782.js} +47 -6
- package/dist/cli-runtime/cliOutput.js +2 -2
- package/dist/cli-runtime/cliResultOutput-10sd6xGx.js +1453 -0
- package/dist/cli-runtime/cliResultOutput.js +2 -1
- package/dist/cli-runtime/{composition__browserScenario-DHXC1a8n.js → composition__browserScenario-BtPb1c1y.js} +843 -356
- package/dist/cli-runtime/{composition__electronObservation-GecK2EID.js → composition__electronObservation-Bk8R6DJo.js} +128 -69
- package/dist/cli-runtime/{composition__electronScenario-CEZnVrAL.js → composition__electronScenario-BVF0qStH.js} +398 -135
- package/dist/cli-runtime/{cutterToolContracts-TZH9EHr5.js → cutterToolContracts-BQtG_Nzo.js} +195 -62
- package/dist/cli-runtime/{doctorRuntime-BE5ZX8it.js → doctorRuntime-B__SIpm-.js} +241 -21
- package/dist/cli-runtime/{dotnet__ManagedStaticProvider-C8_yZCDc.js → dotnet__ManagedStaticProvider-DO5Yzcp4.js} +1 -1
- package/dist/cli-runtime/{errorSchemas-CTRmvMl3.js → errorSchemas-Ixz_q7qt.js} +58 -4
- package/dist/cli-runtime/homeDirectory-DC_DeJIg.js +18 -0
- package/dist/cli-runtime/{javascriptApplicationAnalysis-HgMzVMQw.js → javascriptApplicationAnalysis-Dk6yBV8g.js} +688 -668
- package/dist/cli-runtime/{javascriptExportReturnShapeProjection-Dg00g35t.js → javascriptExportReturnShapeProjection-CObOIiQ6.js} +3 -3
- package/dist/cli-runtime/{javascriptExportShapeComparisonSchemas-BYnoIqIk.js → javascriptExportShapeComparisonSchemas-DpwuBenh.js} +5 -3
- package/dist/cli-runtime/{javascriptRuntimeReconciliation-DNjDoL3S.js → javascriptRuntimeReconciliation-C6ZgWMys.js} +61 -59
- package/dist/cli-runtime/{javascriptRuntimeReconciliationSchemas-BWpGWNcI.js → javascriptRuntimeReconciliationSchemas-D6tZKUQs.js} +2 -2
- package/dist/cli-runtime/{javascriptSemanticTraceSchemas-BTCNcvbc.js → javascriptSemanticTraceSchemas-C7m0b6_w.js} +3 -3
- package/dist/cli-runtime/{lipo-DSWP6fv-.js → lipo-DPQ6qurH.js} +9 -11
- package/dist/cli-runtime/{logger-CQQCI4a2.js → logger-BuDJ9xxO.js} +2 -2
- package/dist/cli-runtime/{machoContainer-C8BIkkq3.js → machoContainer-Cy98bkFm.js} +180 -0
- package/dist/cli-runtime/{managedApplicationGraph-B08jb3jq.js → managedApplicationGraph-BazVqpJv.js} +16 -10
- package/dist/cli-runtime/{managedToolContracts-D60QmIYj.js → managedToolContracts-BuFkMBH5.js} +2 -2
- package/dist/cli-runtime/mcpDoctor.js +8 -6
- package/dist/cli-runtime/mcpStartupPolicy-imCbM3qo.js +28 -0
- package/dist/cli-runtime/{native__NativeMacOSProvider-YBTvUeJO.js → native__NativeMacOSProvider-DTcRhuGA.js} +1384 -757
- package/dist/cli-runtime/{officialToolContracts-CCFF0an9.js → officialToolContracts-CzzVLx8I.js} +74 -53
- package/dist/cli-runtime/peMachine-B9ggfSJJ.js +95 -0
- package/dist/cli-runtime/propertyListKeys-D5dSASEy.js +355 -0
- package/dist/cli-runtime/{providerCleanupError-Ceq8f0wK.js → providerCleanupError-BhsJyAhk.js} +3 -5
- package/dist/cli-runtime/readArtifactFileChunks-BbTL_PtB.js +129 -0
- package/dist/cli-runtime/{reconstructionObligationLedgerSchemas-Bao0xMr-.js → reconstructionObligationLedgerSchemas-Bi6sect1.js} +6329 -3651
- package/dist/cli-runtime/{scanCanonical-KP4T9jSl.js → scanCanonical-CcDFUr-w.js} +233 -363
- package/dist/cli-runtime/snapshotEnvironment-Yvx5qwsl.js +196 -0
- package/dist/cli-runtime/{toolContracts-D2FOG_Nb.js → toolContracts-CJzEyZ38.js} +126 -52
- package/dist/cli-runtime/{toolOutputSchemaGroups-DRiYs1je.js → toolOutputSchemaGroups-BqdSzySu.js} +768 -589
- package/dist/cli-runtime/{workflowInputError-n8Oo-bLA.js → workflowInputError-BP8z9Wxl.js} +2 -2
- package/dist/cli.js +10 -0
- package/dist/cliBrowserScenarioCommands.js +2 -3
- package/dist/cliLogging.js +22 -7
- package/dist/cliObservationOptions.js +3 -0
- package/dist/cliOutput.js +68 -3
- package/dist/composition/binary.js +15 -2
- package/dist/composition/directAnalysis.js +8 -0
- package/dist/composition/javascriptAnalysisWorkerProcess.js +4 -5
- package/dist/composition/jeb.js +32 -21
- package/dist/config/environment.js +36 -2
- package/dist/config/mcpInputSchemaProfile.js +1 -1
- package/dist/config/parseConfig.js +7 -3
- package/dist/contracts/adb/adbToolContracts.js +2 -2
- package/dist/contracts/analysisViewApiSurfaceExample.js +4 -4
- package/dist/contracts/analysisViewToolContracts.js +42 -1
- package/dist/contracts/android/androidToolContracts.js +1 -1
- package/dist/contracts/apktool/apktoolToolContracts.js +5 -1
- package/dist/contracts/artifactComparisonExample.js +18 -14
- package/dist/contracts/artifactToolContracts.js +2 -1
- package/dist/contracts/browserScenarioToolContracts.js +1 -1
- package/dist/contracts/browserToolContracts.js +12 -1
- package/dist/contracts/compactInputSchema.js +13 -6
- package/dist/contracts/fridaToolContracts.js +5 -4
- package/dist/contracts/gdbToolContracts.js +2 -3
- package/dist/contracts/inputSchemaPresentation.js +173 -79
- package/dist/contracts/javascript/javascriptExportShapeComparisonExample.js +1 -0
- package/dist/contracts/javascript/javascriptRuntimeReconciliationExample.js +1 -0
- package/dist/contracts/jsonSchemaKeywords.js +29 -0
- package/dist/contracts/managed/managedWorkflowExamples.js +3 -0
- package/dist/contracts/managed/managedWorkflowToolContracts.js +1 -1
- package/dist/contracts/mobileApplicationGraphExamples.js +15 -12
- package/dist/contracts/officialToolContracts.js +2 -2
- package/dist/contracts/rizinDebugToolContracts.js +3 -2
- package/dist/contracts/sessionToolContracts.js +3 -3
- package/dist/contracts/toolEffects.js +6 -2
- package/dist/contracts/toolOutputSchemaGroups.js +7 -4
- package/dist/contracts/toolOutputSchemaPrimitives.js +7 -0
- package/dist/contracts/toolSchemaMetadata.js +99 -27
- package/dist/cutter/CutterBridgeClient.js +206 -67
- package/dist/cutter/CutterBridgeService.js +52 -4
- package/dist/doctorRuntime.js +25 -4
- package/dist/domain/adb/adbDeviceAnalysis.js +19 -1
- package/dist/domain/analysisErrorBase.js +59 -2
- package/dist/domain/analysisErrorCleanup.js +3 -1
- package/dist/domain/analysisErrorCore.js +13 -0
- package/dist/domain/analysisErrorPresentation.js +23 -4
- package/dist/domain/analysisErrorProjection.js +44 -28
- package/dist/domain/analysisSearch.js +26 -0
- package/dist/domain/analysisSnapshot.js +11 -11
- package/dist/domain/analysisView/WebNetworkApiSurfaceAccumulator.js +4 -65
- package/dist/domain/analysisView/analysisView.js +25 -0
- package/dist/domain/analysisView/analysisViewDataAdmission.js +86 -0
- package/dist/domain/analysisView/artifactInventoryView.js +4 -18
- package/dist/domain/analysisView/javascriptApplicationCoverage.js +27 -0
- package/dist/domain/analysisView/javascriptApplicationView.js +100 -27
- package/dist/domain/analysisView/javascriptFactsView.js +92 -0
- package/dist/domain/analysisView/javascriptModuleReferences.js +37 -0
- package/dist/domain/analysisView/managedMemberView.js +6 -0
- package/dist/domain/android/androidApplication.js +8 -7
- package/dist/domain/apktool/apktoolResourceAnalysis.js +52 -2
- package/dist/domain/apple/appleApplication.js +41 -60
- package/dist/domain/apple/appleBundleAnatomy.js +56 -68
- package/dist/domain/apple/dylibResolution.js +5 -1
- package/dist/domain/apple/interfaceBuilderGraph.js +29 -8
- package/dist/domain/apple/interfaceBuilderKeyedArchive.js +11 -4
- package/dist/domain/apple/jvmClassFile.js +226 -0
- package/dist/domain/apple/keyedArchive.js +39 -17
- package/dist/domain/apple/machoContainer.js +3 -0
- package/dist/domain/apple/plistNumbers.js +67 -5
- package/dist/domain/apple/plistValue.js +89 -18
- package/dist/domain/artifactComparison.js +7 -5
- package/dist/domain/artifactGraph.js +4 -12
- package/dist/domain/artifactInspection.js +6 -17
- package/dist/domain/artifactInventoryEvidence.js +68 -60
- package/dist/domain/binaryTarget.js +11 -26
- package/dist/domain/binaryTargetTypes.js +10 -0
- package/dist/domain/browserNetworkEvidence.js +20 -3
- package/dist/domain/browserObservation.js +5 -28
- package/dist/domain/browserObservationError.js +4 -4
- package/dist/domain/browserScenarioCapture.js +11 -2
- package/dist/domain/browserScenarioCaptureLimits.js +34 -0
- package/dist/domain/browserScenarioCaptureValues.js +50 -0
- package/dist/domain/browserScenarioDiffEvidence.js +1 -3
- package/dist/domain/browserScenarioValues.js +5 -1
- package/dist/domain/captures/packetCapture.js +2 -1
- package/dist/domain/dosMz.js +14 -5
- package/dist/domain/electron/electronFuseEvidence.js +42 -0
- package/dist/domain/elfFixedHeader.js +24 -0
- package/dist/domain/evidence.js +7 -6
- package/dist/domain/evidenceBundle.js +9 -2
- package/dist/domain/explicitSensitiveFailure.js +3 -0
- package/dist/domain/fileSnapshotObservation.js +25 -0
- package/dist/domain/fixedTupleSchema.js +9 -0
- package/dist/domain/functionCallCoverage.js +6 -6
- package/dist/domain/functionComparisonDimensions.js +38 -11
- package/dist/domain/functionComparisonNormalization.js +17 -9
- package/dist/domain/functionDossierEvidence.js +4 -3
- package/dist/domain/harmony/harmonyApplication.js +8 -8
- package/dist/domain/hopperErrors.js +4 -2
- package/dist/domain/hopperValues.js +27 -4
- package/dist/domain/javascript/electronActiveObservation.js +1 -0
- package/dist/domain/javascript/electronStaticAnalysisBrowser.js +80 -20
- package/dist/domain/javascript/electronStaticAnalysisValues.js +0 -20
- package/dist/domain/javascript/electronStaticOptionObjects.js +45 -0
- package/dist/domain/javascript/electronWrappedCallPaths.js +70 -17
- package/dist/domain/javascript/javascriptAnalysisResourceControls.js +20 -4
- package/dist/domain/javascript/javascriptApplicationAnalysis.js +4 -0
- package/dist/domain/javascript/javascriptApplicationChangeGraph.js +3 -0
- package/dist/domain/javascript/javascriptApplicationVersionComparisonSchemas.js +3 -1
- package/dist/domain/javascript/javascriptApplicationVersionItems.js +49 -21
- package/dist/domain/javascript/javascriptAstFingerprint.js +41 -10
- package/dist/domain/javascript/javascriptAstValues.js +83 -5
- package/dist/domain/javascript/javascriptBundledRequireOrigin.js +23 -36
- package/dist/domain/javascript/javascriptCommonJsExportReceivers.js +231 -0
- package/dist/domain/javascript/javascriptElectronMemberWrites.js +14 -4
- package/dist/domain/javascript/javascriptFeatureSeed.js +1 -1
- package/dist/domain/javascript/javascriptGraphqlOperations.js +382 -0
- package/dist/domain/javascript/javascriptModuleDeclaration.js +20 -0
- package/dist/domain/javascript/javascriptNativeHandoff.js +7 -11
- package/dist/domain/javascript/javascriptRpcEndpoints.js +7 -171
- package/dist/domain/javascript/javascriptRuntimeLoadState.js +9 -4
- package/dist/domain/javascript/javascriptRuntimeReconciliationCaptureParsing.js +35 -12
- package/dist/domain/javascript/javascriptRuntimeReconciliationMatching.js +50 -45
- package/dist/domain/javascript/javascriptSemanticAmbientWrites.js +284 -24
- package/dist/domain/javascript/javascriptSemanticAnalysis.js +452 -182
- package/dist/domain/javascript/javascriptSemanticAsyncEffects.js +37 -20
- package/dist/domain/javascript/javascriptSemanticCallResolution.js +55 -27
- package/dist/domain/javascript/javascriptSemanticCalls.js +4 -4
- package/dist/domain/javascript/javascriptSemanticChildProcesses.js +134 -50
- package/dist/domain/javascript/javascriptSemanticCoverage.js +5 -1
- package/dist/domain/javascript/javascriptSemanticDataEffectHelpers.js +7 -13
- package/dist/domain/javascript/javascriptSemanticDataEffects.js +33 -10
- package/dist/domain/javascript/javascriptSemanticDerivedAnalysis.js +1 -1
- package/dist/domain/javascript/javascriptSemanticEvaluationOrder.js +126 -0
- package/dist/domain/javascript/javascriptSemanticExpressionShapes.js +111 -0
- package/dist/domain/javascript/javascriptSemanticGetterQueries.js +147 -0
- package/dist/domain/javascript/javascriptSemanticGetterResults.js +264 -0
- package/dist/domain/javascript/javascriptSemanticGraph.js +18 -1
- package/dist/domain/javascript/javascriptSemanticGraphSchemas.js +13 -0
- package/dist/domain/javascript/javascriptSemanticIterationSources.js +3 -2
- package/dist/domain/javascript/javascriptSemanticMapOperations.js +51 -0
- package/dist/domain/javascript/javascriptSemanticMemberMutations.js +215 -81
- package/dist/domain/javascript/javascriptSemanticMutationInitializers.js +395 -118
- package/dist/domain/javascript/javascriptSemanticObjectReferences.js +241 -328
- package/dist/domain/javascript/javascriptSemanticObjects.js +33 -27
- package/dist/domain/javascript/javascriptSemanticOpaqueEffects.js +163 -0
- package/dist/domain/javascript/javascriptSemanticPrimitives.js +11 -1
- package/dist/domain/javascript/javascriptSemanticProjection.js +44 -67
- package/dist/domain/javascript/javascriptSemanticQueryIdentity.js +2 -1
- package/dist/domain/javascript/javascriptSemanticQuerySchemas.js +1 -1
- package/dist/domain/javascript/javascriptSemanticRequireOrigin.js +45 -7
- package/dist/domain/javascript/javascriptSemanticResourceLimits.js +3 -19
- package/dist/domain/javascript/javascriptSemanticResources.js +27 -4
- package/dist/domain/javascript/javascriptSemanticReturnedReferences.js +78 -37
- package/dist/domain/javascript/javascriptSemanticReturns.js +2 -2
- package/dist/domain/javascript/javascriptSemanticState.js +191 -42
- package/dist/domain/javascript/javascriptSemanticValues.js +167 -41
- package/dist/domain/javascript/javascriptSourceParser.js +54 -9
- package/dist/domain/javascript/javascriptStaticAnalysis.js +24 -13
- package/dist/domain/javascript/javascriptStaticAnalysisCalls.js +276 -16
- package/dist/domain/javascript/javascriptStaticAnalysisHelpers.js +33 -25
- package/dist/domain/javascript/javascriptStaticAnalysisState.js +3 -0
- package/dist/domain/javascript/javascriptStaticAnalysisTypes.js +1 -1
- package/dist/domain/javascript/javascriptSymbolicBindings.js +424 -142
- package/dist/domain/javascript/javascriptSymbolicControlFlow.js +4 -0
- package/dist/domain/javascript/javascriptSymbolicValues.js +12 -1
- package/dist/domain/javascript/sourceToBundleSignals.js +3 -0
- package/dist/domain/managed/managedApplicationGraphNodes.js +14 -9
- package/dist/domain/managed/managedArtifact.js +26 -0
- package/dist/domain/managed/managedMemberComparison.js +3 -0
- package/dist/domain/managed/managedMemberComparisonCoverage.js +14 -1
- package/dist/domain/managed/managedMemberComparisonItems.js +124 -52
- package/dist/domain/managed/managedMemberComparisonMatch.js +76 -72
- package/dist/domain/managed/managedMemberSignatureIdentity.js +40 -0
- package/dist/domain/managed/managedNativeVerificationMatch.js +5 -5
- package/dist/domain/managed/managedNativeVerificationSchemas.js +2 -2
- package/dist/domain/mobileApplicationGraphProjection.js +33 -18
- package/dist/domain/native/bytePattern.js +21 -0
- package/dist/domain/native/nativeAotPe.js +29 -2
- package/dist/domain/native/nativeAotSnapshotObservation.js +18 -0
- package/dist/domain/native/nativeCallPartialObservation.js +14 -12
- package/dist/domain/native/nativeLoadImage.js +13 -0
- package/dist/domain/native/objcSwiftMetadata.js +15 -8
- package/dist/domain/native/peResources.js +6 -2
- package/dist/domain/peMachine.js +2 -0
- package/dist/domain/process/processComparison.js +3 -3
- package/dist/domain/process/processTraceDimensionProjection.js +1 -1
- package/dist/domain/process/processTraceEvaluation.js +65 -24
- package/dist/domain/propertyListKeys.js +84 -69
- package/dist/domain/propertyListXml.js +149 -0
- package/dist/domain/providerAdapterError.js +2 -0
- package/dist/domain/providerCleanupError.js +2 -4
- package/dist/domain/rawBinary.js +11 -2
- package/dist/domain/reconstructionCoverage.js +35 -23
- package/dist/domain/reconstructionCoverageEvaluation.js +36 -36
- package/dist/domain/reconstructionCoverageEvidence.js +26 -0
- package/dist/domain/reconstructionVerification.js +40 -26
- package/dist/domain/referenceSourceImportParsing.js +4 -0
- package/dist/domain/referenceSourcePathIdentity.js +2 -0
- package/dist/domain/referenceSourceRequireBindings.js +40 -101
- package/dist/domain/relationshipCoverage.js +4 -5
- package/dist/domain/sqlite/sqliteDatabase.js +2 -1
- package/dist/domain/symbolAnalysis.js +9 -8
- package/dist/domain/webBundleAnalyzerInspection.js +65 -25
- package/dist/domain/webCaptureDiff.js +124 -41
- package/dist/domain/webInventory.js +28 -14
- package/dist/domain/webModuleTrace.js +22 -0
- package/dist/domain/webScriptExportError.js +2 -3
- package/dist/domain/xmlDocument.js +41 -0
- package/dist/domain/zipPackageFormat.js +0 -4
- package/dist/dotnet/ManagedArtifactInspector.js +2 -4
- package/dist/dotnet/ManagedDecodeBudget.js +21 -1
- package/dist/dotnet/ManagedMemberInspector.js +31 -6
- package/dist/dotnet/ManagedMemberInspectorCore.js +63 -12
- package/dist/dotnet/ManagedMemberRows.js +8 -8
- package/dist/dotnet/ManagedMetadataHeaps.js +0 -1
- package/dist/dotnet/ManagedMetadataLayout.js +17 -15
- package/dist/dotnet/ManagedNativeBoundaryHelpers.js +20 -19
- package/dist/dotnet/ManagedNativeBoundaryInspector.js +7 -8
- package/dist/dotnet/ManagedPeReader.js +5 -0
- package/dist/dotnet/ManagedSnapshot.js +25 -20
- package/dist/dotnet/ManagedTypeNameDigests.js +177 -0
- package/dist/dotnet/ManagedTypeNames.js +6 -46
- package/dist/dotnet/ManagedTypeNesting.js +25 -0
- package/dist/dotnet/ManagedTypeReferences.js +94 -0
- package/dist/electron/ElectronFuseFailures.js +105 -0
- package/dist/electron/ElectronFusePath.js +4 -3
- package/dist/electron/ElectronFuseProvider.js +67 -92
- package/dist/electron/ElectronFuseReader.js +46 -30
- package/dist/evm/EvmoleFailures.js +1 -0
- package/dist/evm/EvmoleInterfaceProvider.js +13 -16
- package/dist/filesystem/OwnedRegularFile.js +116 -0
- package/dist/filesystem/OwnedStagedOutput.js +28 -11
- package/dist/filesystem/RegularFile.js +20 -8
- package/dist/filesystem/StableFileHash.js +56 -38
- package/dist/filesystem/callerPath.js +26 -0
- package/dist/filesystem/readFileHandleChunks.js +55 -5
- package/dist/filesystem/readStableFileBytes.js +85 -0
- package/dist/firmware/FirmwareCommand.js +13 -7
- package/dist/firmware/FirmwareFailures.js +56 -0
- package/dist/firmware/FirmwareFiles.js +128 -98
- package/dist/firmware/FirmwareProvider.js +120 -65
- package/dist/firmware/FirmwarePublication.js +26 -11
- package/dist/flutter/DartElf.js +27 -0
- package/dist/flutter/FlutterBuildProvider.js +44 -4
- package/dist/gdb/GdbSessionManager.js +202 -14
- package/dist/generatedPackageMetadata.js +1 -1
- package/dist/ghidra/GhidraAnalysisProfile.js +24 -10
- package/dist/ghidra/GhidraAnalysisSeeds.js +39 -55
- package/dist/ghidra/GhidraBridgeSources.js +12 -0
- package/dist/ghidra/GhidraClient.js +362 -148
- package/dist/ghidra/GhidraClientStartup.js +5 -3
- package/dist/ghidra/GhidraClientWire.js +5 -2
- package/dist/ghidra/GhidraDiagnostics.js +16 -5
- package/dist/ghidra/GhidraDoctor.js +45 -14
- package/dist/ghidra/GhidraDosSnapshot.js +83 -0
- package/dist/ghidra/GhidraExecutableHeader.js +54 -0
- package/dist/ghidra/GhidraFileArtifacts.js +93 -0
- package/dist/ghidra/GhidraFunctionValues.js +1 -0
- package/dist/ghidra/GhidraInstallation.js +143 -142
- package/dist/ghidra/GhidraInstallationPolicy.js +20 -79
- package/dist/ghidra/GhidraInstallationProperties.js +57 -0
- package/dist/ghidra/GhidraInventoryValues.js +22 -6
- package/dist/ghidra/GhidraJavaLaunch.js +11 -4
- package/dist/ghidra/GhidraJavaProbe.js +267 -0
- package/dist/ghidra/GhidraJavaProperties.js +9 -7
- package/dist/ghidra/GhidraLanguageCatalog.js +12 -7
- package/dist/ghidra/GhidraLauncher.js +128 -65
- package/dist/ghidra/GhidraLoadImageAttest.js +75 -78
- package/dist/ghidra/GhidraLoadImageValues.js +39 -29
- package/dist/ghidra/GhidraMipsProfile.js +13 -5
- package/dist/ghidra/GhidraNativeAotSnapshotOwner.js +221 -0
- package/dist/ghidra/GhidraPeProfile.js +88 -18
- package/dist/ghidra/GhidraProvider.js +219 -32
- package/dist/ghidra/GhidraProviderCapabilities.js +17 -4
- package/dist/ghidra/GhidraProviderClient.js +199 -239
- package/dist/ghidra/GhidraPspExtension.js +104 -34
- package/dist/ghidra/GhidraPspProfile.js +4 -1
- package/dist/ghidra/GhidraRawBinaryLanguage.js +13 -4
- package/dist/ghidra/GhidraReleasePolicy.js +93 -0
- package/dist/ghidra/GhidraRequestQueue.js +64 -40
- package/dist/ghidra/GhidraSessionError.js +152 -19
- package/dist/ghidra/GhidraSessionValues.js +13 -3
- package/dist/ghidra/GhidraSocketConnection.js +25 -11
- package/dist/ghidra/GhidraTargetSnapshot.js +67 -50
- package/dist/ghidra/GhidraTransport.js +86 -63
- package/dist/ghidra/extensions/GhidraExtensions.js +30 -45
- package/dist/go/GoBinaryProvider.js +89 -60
- package/dist/go/GoElfImage.js +3 -3
- package/dist/hopper/BridgeLauncher.js +43 -4
- package/dist/hopper/HopperAnalysisProfile.js +4 -2
- package/dist/hopper/HopperCleanup.js +14 -1
- package/dist/hopper/HopperClient.js +135 -63
- package/dist/hopper/HopperProvider.js +4 -7
- package/dist/hopper/HopperProviderCapabilities.js +2 -1
- package/dist/hopper/HopperRegexSearch.js +21 -60
- package/dist/ida/IdaBusyHealth.js +36 -2
- package/dist/ida/IdaMcpConnection.js +17 -11
- package/dist/ida/IdaNativeProtocol.js +1 -9
- package/dist/ida/IdaOperationRunner.js +8 -26
- package/dist/ida/IdaProtocolValues.js +2 -1
- package/dist/ida/IdaProvider.js +18 -2
- package/dist/ida/IdaSessionClient.js +54 -12
- package/dist/inspector/V8InspectorCaptureProjection.js +7 -0
- package/dist/inspector/V8InspectorProvider.js +2 -0
- package/dist/javascript/analysis/JavaScriptAnalysisTransfer.js +25 -4
- package/dist/javascript/analysis/JavaScriptAnalysisWorker.js +4 -3
- package/dist/javascript/analysis/JavaScriptAnalysisWorkerProtocol.js +3 -2
- package/dist/javascript/analysis/JavaScriptAnalysisWorkerSchemas.js +7 -1
- package/dist/javascript/analysis/JavaScriptAnalysisWorkerServer.js +1 -1
- package/dist/javascript/recovery/RecoveryFiles.js +57 -8
- package/dist/jeb/JebMcpConnection.js +129 -70
- package/dist/jeb/JebMcpConnectionOwner.js +116 -0
- package/dist/jeb/JebMcpDeadline.js +46 -0
- package/dist/jeb/JebProvider.js +77 -51
- package/dist/kuna/KunaAddress.js +11 -0
- package/dist/kuna/KunaCommand.js +217 -0
- package/dist/kuna/KunaConfiguration.js +90 -0
- package/dist/kuna/KunaDoctor.js +198 -0
- package/dist/kuna/KunaInstallation.js +137 -0
- package/dist/kuna/KunaJson.js +23 -0
- package/dist/kuna/KunaJsonStream.js +433 -0
- package/dist/kuna/KunaLimits.js +5 -0
- package/dist/kuna/KunaProjectCache.js +804 -0
- package/dist/kuna/KunaProjectExport.js +202 -0
- package/dist/kuna/KunaProjectFiles.js +191 -0
- package/dist/kuna/KunaProjectReader.js +115 -0
- package/dist/kuna/KunaProvider.js +217 -0
- package/dist/kuna/KunaProviderCapabilities.js +102 -0
- package/dist/kuna/KunaQueryErrors.js +12 -0
- package/dist/kuna/KunaQueryWork.js +113 -0
- package/dist/kuna/KunaReferenceFiles.js +258 -0
- package/dist/kuna/KunaReferenceQueries.js +211 -0
- package/dist/kuna/KunaRelease.js +10 -0
- package/dist/kuna/KunaRunSlots.js +56 -0
- package/dist/kuna/KunaSessionClient.js +1162 -0
- package/dist/kuna/KunaStringInventory.js +145 -0
- package/dist/kuna/KunaStringQueries.js +133 -0
- package/dist/kuna/KunaTargetCommands.js +205 -0
- package/dist/kuna/KunaUnavailable.js +11 -0
- package/dist/main/processShutdown.js +17 -0
- package/dist/main/transport.js +21 -1
- package/dist/main.js +2 -12
- package/dist/mcp/AnalysisProvider-BABWbLoM.js +38 -0
- package/dist/mcp/{AnalysisSnapshotFiles-BAbiJQOc.js → AnalysisSnapshotFiles-BXz0c37-.js} +39 -28
- package/dist/mcp/{ProcessOwnership-Bl_3ejLe.js → ArtifactFileOperation-64cQKI7B.js} +274 -72
- package/dist/mcp/{ArtifactProvider-DViCU_rn.js → ArtifactProvider-Dx6pmil1.js} +371 -354
- package/dist/mcp/ArtifactProviderMetadata-UCJr2oZW.js +167 -0
- package/dist/mcp/{ArtifactReader-OyM03Gjn.js → ArtifactReader-BrnwNaKY.js} +29 -6
- package/dist/mcp/ArtifactResourceScope-zi3Dkqzy.js +175 -0
- package/dist/mcp/{AsarHeader-WsPgoooH.js → AsarHeader-B_IbppTz.js} +1 -1
- package/dist/mcp/{BinarySessionStatus-B4P9gf-S.js → BinarySessionStatus-CZ9nnXMt.js} +5 -4
- package/dist/mcp/{BinaryTargetResolver-BMaE_0H1.js → BinaryTargetResolver-BUncASDP.js} +146 -215
- package/dist/mcp/BoundedFileBytes-DYt5q9G2.js +43 -0
- package/dist/mcp/{CdpCaptureDocuments-HDiF2O7k.js → CdpCaptureDocuments-Y2uFcBpl.js} +194 -145
- package/dist/mcp/{CdpCaptureValues-M-j6CIh1.js → CdpCaptureValues-tNIg-gQK.js} +12 -5
- package/dist/mcp/{CdpConnection-BpDfz4MK.js → CdpEndpoint-BrhMhpSi.js} +352 -281
- package/dist/mcp/{CdpOptionalCommand-BPjRD9Kz.js → CdpOptionalCommand-PZZhlqxv.js} +2 -2
- package/dist/mcp/CdpTargetSession-BmmDC3XO.js +290 -0
- package/dist/mcp/{DirectAnalysis-DrafbXke.js → DirectAnalysis-B9KuCHTG.js} +29 -21
- package/dist/mcp/{DirectAnalysisStatus-CjjeDLzW.js → DirectAnalysisStatus-BgzopkIt.js} +7 -7
- package/dist/mcp/{ElectronFileScope-BPG_YoyU.js → ElectronFileScope-FXtK0d6I.js} +1 -1
- package/dist/mcp/ElectronFuseFailures-uZ_wOV6T.js +610 -0
- package/dist/mcp/MachoLoadCommandReader-C2VGgHA3.js +330 -0
- package/dist/mcp/{ManagedStaticProvider-BthZbKyZ.js → ManagedStaticProvider-CZuoPme2.js} +429 -131
- package/dist/mcp/{NativeMacOSProvider-Bh79k8dI.js → NativeMacOSProvider-CMguKrvN.js} +1376 -748
- package/dist/mcp/{NativeMacOSProviderMetadata-N1lPOaY_.js → NativeMacOSProviderMetadata-B_RH4KXF.js} +97 -7
- package/dist/mcp/{ProviderDeadline-DskQ94YD.js → OwnedCommand-BW1jBSt9.js} +436 -127
- package/dist/mcp/ProcedureAddressResolution-H6Qwpb_Y.js +59 -0
- package/dist/mcp/{WorkflowEvidence-umWrB_wm.js → WorkflowEvidence-CO4C7ALz.js} +16 -9
- package/dist/mcp/analysisErrorCleanup-Q344SnTO.js +34 -0
- package/dist/mcp/analysisErrorCore-BIEP7tvF.js +509 -0
- package/dist/mcp/{analysisErrorProjection-BN0EPM-3.js → analysisErrorProjection-B8teQwwD.js} +80 -30
- package/dist/mcp/{artifactToolContracts-Di4qZlEt.js → artifactToolContracts-C9dRDo-D.js} +6 -4
- package/dist/mcp/{browserObservation-C0s4i8UI.js → browserObservation-DUraZs62.js} +272 -107
- package/dist/mcp/{browserObservationError-CyLugqX4.js → browserObservationError-C5okJ5el.js} +27 -4
- package/dist/mcp/{browserObservationSchemas-tgqjH7aA.js → browserObservationSchemas-DwGGxBpu.js} +3 -3
- package/dist/mcp/{browserScenario-CAQ8Fns9.js → browserScenario-BRUz7yN0.js} +844 -358
- package/dist/mcp/{browserScenarioCapture-CTNFN-FI.js → browserScenarioCapture-CiMAsMx8.js} +127 -11
- package/dist/mcp/{InterfaceBuilderDecodeBudget-5F2AkxJT.js → callerPath-CpPnMZyN.js} +91 -65
- package/dist/mcp/{electronActiveObservation-lDvQTMR0.js → electronActiveObservation-DV0Ffy9X.js} +1 -0
- package/dist/mcp/electronFuses-D5SS7XXw.js +367 -0
- package/dist/mcp/{electronObservation-i7LcILQ-.js → electronObservation-DsN-NqY1.js} +134 -75
- package/dist/mcp/{electronObservation-DFOFEood.js → electronObservation-wOYWwqgF.js} +3 -3
- package/dist/mcp/{electronScenario-nCzE6IfJ.js → electronScenario-CYrt2zBK.js} +395 -135
- package/dist/mcp/{emptyArraySchema-tL6Qymyd.js → emptyArraySchema-C0o2Sxwp.js} +2 -2
- package/dist/mcp/{enhancedInputs-DgdEnzHy.js → enhancedInputs-6CCgB3VB.js} +1 -1
- package/dist/mcp/{javascriptRuntimeObservation-61NhCf7H.js → javascriptRuntimeObservation-BVbhkO2-.js} +12 -9
- package/dist/mcp/{javascriptRuntimeObservation-PIUoLfX6.js → javascriptRuntimeObservation-Cu0Yedqq.js} +2 -2
- package/dist/mcp/{lipo-Bnkoq_6W.js → lipo-DSTgUqL1.js} +11 -118
- package/dist/mcp/{logger-BQY5ulYv.js → logger-BGdGHadX.js} +2 -2
- package/dist/mcp/machoContainer-CMSxUBlK.js +605 -0
- package/dist/mcp/{main-kBXHZ8S5.js → main-Cx-Z7m_n.js} +16788 -5902
- package/dist/mcp/main.js +1 -1
- package/dist/mcp/{managedToolContracts-CK--I_s7.js → managedToolContracts-CSlbKJP-.js} +3 -3
- package/dist/mcp/{nativeValueTrace-DR9UE62L.js → nativeValueTrace-BEZbDieM.js} +2630 -2468
- package/dist/mcp/{officialToolContracts-B67NJ2tC.js → officialToolContracts-CauCcSsc.js} +74 -55
- package/dist/mcp/peMachine-aP1iYnHq.js +95 -0
- package/dist/mcp/propertyListKeys-BfCo0k4w.js +356 -0
- package/dist/mcp/providerCleanupError-DIRHxzWo.js +125 -0
- package/dist/mcp/{providerOperationHealth-CTYa3iLf.js → providerOperationHealth-9DRSGM8N.js} +24 -1
- package/dist/mcp/{scanCanonical-CRXSpule.js → scanCanonical-CF3ATd1V.js} +269 -463
- package/dist/mcp/{serverIdentity-Cio4iFV3.js → serverIdentity-BK0Ejd_Y.js} +262 -83
- package/dist/mcp/{sourceMapEnvelope-C0uJlrOh.js → sourceMapEnvelope-DAaRUIGj.js} +4 -4
- package/dist/mcp/{toolContracts-BW05wpcr.js → toolContracts-BPoHQdlC.js} +541 -327
- package/dist/mcp/{toolOutputSchemaGroups-ColvNZ1r.js → toolOutputSchemaGroups-MJ_f-PMK.js} +2551 -2354
- package/dist/mcp/{webContentArtifact-Dzjc1z-R.js → webContentArtifact-DfGkgDcI.js} +2 -17
- package/dist/mcp/{webRuntime-K__NYzXm.js → webRuntime-ccyhkRru.js} +2 -2
- package/dist/mcp/{webSourceLocation-DbMAT2J9.js → webSourceLocation-DKIum0vJ.js} +6451 -4414
- package/dist/mcpDoctor.js +4 -2
- package/dist/mcpStartupPolicy.js +18 -3
- package/dist/native/AppleDispatchMetadata.js +76 -27
- package/dist/native/AppleMachoFixups.js +20 -10
- package/dist/native/AppleObjcCategories.js +12 -1
- package/dist/native/AppleObjcDispatchFacets.js +21 -12
- package/dist/native/AppleObjcProperties.js +61 -17
- package/dist/native/AppleObjcProtocols.js +25 -7
- package/dist/native/AppleSwiftVtables.js +2 -0
- package/dist/native/CommandRunner.js +13 -9
- package/dist/native/LldbCallTracer.js +232 -178
- package/dist/native/LldbReadbackFiles.js +70 -0
- package/dist/native/LldbRetainedObservations.js +28 -56
- package/dist/native/NativeCallObservation.js +53 -52
- package/dist/native/NativeCallTarget.js +95 -0
- package/dist/native/NativeMacOSProvider.js +240 -171
- package/dist/native/NativeMachoInspection.js +21 -7
- package/dist/native/NativePlistSource.js +179 -0
- package/dist/native/NativeUiCleanupError.js +30 -0
- package/dist/native/NativeUiHelperRuntime.js +48 -35
- package/dist/native/NativeUiObservation.js +67 -45
- package/dist/native/SignatureTargetBinding.js +72 -53
- package/dist/native/parsers/demangle.js +16 -12
- package/dist/native/parsers/machoUuid.js +4 -4
- package/dist/native/parsers/otool.js +57 -17
- package/dist/native/parsers/plist.js +40 -25
- package/dist/native/pe/PeResourceLayout.js +22 -7
- package/dist/native/pe/PeResourceParser.js +10 -9
- package/dist/native/pe/PeResourcesProvider.js +63 -16
- package/dist/native/pwndbg/CoreFileMappingAuthority.js +51 -0
- package/dist/native/pwndbg/PwndbgCoreContext.js +26 -15
- package/dist/native/pwntools/PwntoolsDecoder.js +116 -53
- package/dist/native/pwntools/PwntoolsFailures.js +17 -3
- package/dist/native/pwntools/PwntoolsRecordedCrashProvider.js +11 -1
- package/dist/objdump/ObjdumpCommand.js +5 -2
- package/dist/pcap/PcapOutput.js +38 -2
- package/dist/pcap/PcapProvider.js +45 -15
- package/dist/pcap/PcapSnapshot.js +24 -4
- package/dist/process/ArtifactAnalysisResources.js +145 -52
- package/dist/process/BoundedFileBytes.js +8 -3
- package/dist/process/CurrentEntrypointPath.js +3 -1
- package/dist/process/DarwinProcessRunTokenReader.js +174 -63
- package/dist/process/DetachedPgpSignature.js +57 -0
- package/dist/process/ExecFileOutput.js +14 -11
- package/dist/{hopper/HopperTargetLease.js → process/HopperLease.js} +10 -0
- package/dist/process/LinuxResourceLimits.js +4 -24
- package/dist/process/OwnedCommand.js +109 -14
- package/dist/process/ProviderProcess.js +129 -10
- package/dist/process/RegexMatcher.js +96 -0
- package/dist/process/SharedStartupAttempt.js +59 -0
- package/dist/process/WindowsAuthority.js +1 -1
- package/dist/process/capture/FilesystemSnapshot.js +3 -2
- package/dist/process/capture/ProcessCaptureError.js +55 -17
- package/dist/process/capture/ProcessCaptureLifecycle.js +17 -20
- package/dist/process/capture/ProcessCaptureProgress.js +5 -3
- package/dist/process/capture/ProcessHarness.js +17 -3
- package/dist/process/snapshotEnvironment.js +8 -8
- package/dist/{application/binary → providers}/AnalysisClientCleanup.js +3 -3
- package/dist/providers/AnalysisClientCreation.js +193 -0
- package/dist/providers/AnalysisClientFailure.js +191 -0
- package/dist/providers/DeferredAnalysisClient.js +48 -0
- package/dist/providers/OwnedCommandCleanup.js +65 -0
- package/dist/providers/ProviderInspectionScope.js +10 -0
- package/dist/recordedCatalogDigests.js +2 -0
- package/dist/reference/ReferenceSourceReader.js +64 -0
- package/dist/reference/ReferenceSourceReaderEntries.js +12 -3
- package/dist/reference/ReferenceSourceReaderFile.js +2 -1
- package/dist/rizin/RizinCommand.js +2 -2
- package/dist/rizin/RizinDebugSessionManager.js +249 -210
- package/dist/rust/RustBinaryProvider.js +55 -23
- package/dist/server/EvidenceMcpServer.js +2 -2
- package/dist/server/contractToolHandler.js +17 -11
- package/dist/server/createServer.js +27 -8
- package/dist/server/promptCompletion.js +24 -22
- package/dist/server/registerArtifactComparisonTool.js +13 -2
- package/dist/server/registerBrowserScenarioTool.js +7 -5
- package/dist/server/registerBrowserTools.js +2 -4
- package/dist/server/registerCutterTools.js +2 -3
- package/dist/server/registerElectronTools.js +2 -13
- package/dist/server/registerFridaTools.js +8 -12
- package/dist/server/registerInvestigationTools.js +20 -20
- package/dist/server/registerJavaScriptRuntimeObservationTools.js +2 -4
- package/dist/server/registerManagedWorkflowTools/evidence.js +14 -7
- package/dist/server/registerProcessComparisonTool.js +3 -0
- package/dist/server/registerSessionStatusTool.js +13 -6
- package/dist/server/registerSessionTools.js +16 -29
- package/dist/server/runDerivedOperation.js +2 -0
- package/dist/signals/SigrokRecordingProvider.js +13 -6
- package/dist/sqlite/SqliteDatabaseFailures.js +25 -12
- package/dist/sqlite/SqliteDatabaseInspection.js +27 -12
- package/dist/sqlite/SqliteDatabaseSnapshot.js +58 -32
- package/dist/sqlite/SqliteDatabaseWorkerExecution.js +18 -3
- package/dist/wasm/WabtArtifactProvider.js +64 -42
- package/dist/wasm/WabtFailures.js +19 -1
- package/dist/wasm/WabtRuntime.js +58 -0
- package/dist/wasm/WasmGlueAdapter.js +20 -7
- package/dist/windows/WindowsNativeLoader.js +16 -2
- package/dist/windows/WindowsPrivateRuntime.js +44 -1
- package/licenses/npm-dependencies.txt +146 -1
- package/licenses/npm-runtime-notices.txt +175 -1
- package/native/windows/README.md +44 -7
- package/native/windows/build/manifest.json +2 -2
- package/native/windows/build/rea-windows-x64.node +0 -0
- package/package.json +11 -3
- package/scripts/electron-active-hook-boundaries.cjs +15 -2
- package/scripts/electron-active-hook.cjs +408 -46
- package/scripts/hopper-demo-x11.py +12 -10
- package/scripts/rea.mjs +62 -15
- package/skills/reverse-engineer-anything/SKILL.md +21 -7
- package/skills/reverse-engineer-anything/references/android-applications.md +3 -1
- package/skills/reverse-engineer-anything/references/javascript-applications.md +44 -1
- package/skills/reverse-engineer-anything/references/native-and-artifacts.md +30 -10
- package/dist/cli-runtime/ArtifactResourceScope-DQWTcUwE.js +0 -114
- package/dist/cli-runtime/ClientConfigPath-c6jr6INc.js +0 -36
- package/dist/cli-runtime/IdaConfiguration-CtGP7EKo.js +0 -1094
- package/dist/cli-runtime/JebMcpEndpoint-DUytrn5G.js +0 -428
- package/dist/cli-runtime/MacHopperPaths-CwL5lYPX.js +0 -434
- package/dist/cli-runtime/OwnedCommand-Cj9GhmPR.js +0 -112
- package/dist/cli-runtime/RegularFile-B_6KPCNQ.js +0 -139
- package/dist/cli-runtime/RegularFileRead-DVlC5faM.js +0 -125
- package/dist/cli-runtime/analysisErrorPresentation-DGt7TdsH.js +0 -497
- package/dist/cli-runtime/application__javascript__ElectronObservationService-DEsR8KDN.js +0 -63
- package/dist/cli-runtime/artifactOperationError-B7n03FbD.js +0 -27
- package/dist/cli-runtime/browserObservationError-Dx6xRTjb.js +0 -40
- package/dist/cli-runtime/cliResultOutput-DsRMI8CJ.js +0 -780
- package/dist/cli-runtime/mcpStartupPolicy-CVVSOmRc.js +0 -21
- package/dist/cli-runtime/propertyListKeys-G8e74YWb.js +0 -248
- package/dist/cli-runtime/providerAdapterError-DAjhICdr.js +0 -25
- package/dist/cli-runtime/readFileHandleChunks-dp60iZ6v.js +0 -38
- package/dist/hopper/HopperRegexWorker.js +0 -27
- package/dist/mcp/ArtifactProviderMetadata-b7pOK5_t.js +0 -76
- package/dist/mcp/ArtifactResourceScope-P3tq5z8Z.js +0 -162
- package/dist/mcp/BoundedFileBytes-DuczXiQZ.js +0 -68
- package/dist/mcp/CdpTargetSession-BsPoKhEU.js +0 -86
- package/dist/mcp/ProcedureAddressResolution-CQpuwm1h.js +0 -19
- package/dist/mcp/analysisErrorCore-DXRTvF_m.js +0 -235
- package/dist/mcp/artifactOperationError-CkHMMaf7.js +0 -27
- package/dist/mcp/digests-BFoWUT_-.js +0 -223
- package/dist/mcp/propertyListKeys-DD25WsjI.js +0 -553
- package/dist/mcp/providerAdapterError-sDxToNal.js +0 -25
- package/dist/mcp/unicodeCodePointOrder-BezCbTpg.js +0 -26
|
@@ -1,15 +1,16 @@
|
|
|
1
1
|
import { __esmMin } from "./rolldown-runtime-DXoylpqc.js";
|
|
2
|
-
import { AnalysisCancelledError, AnalysisError, AnalysisResourceConstraintError, init_analysisErrorBase, init_analysisErrorCore } from "./errorSchemas-
|
|
3
|
-
import {
|
|
4
|
-
import {
|
|
5
|
-
import { EvidenceIntegrityError, init_evidenceErrors } from "./
|
|
6
|
-
import { analysisErrorWithCleanupFailure, init_analysisErrorCleanup } from "./analysisErrorCleanup-
|
|
7
|
-
import { ProviderCleanupError, init_providerCleanupError } from "./providerCleanupError-
|
|
8
|
-
import { MANAGED_STATIC_PROVIDER, init_InvestigationProviders } from "./InvestigationProviders-
|
|
9
|
-
import { init_BoundedFileBytes, readBoundedFileBytes } from "./BoundedFileBytes-
|
|
10
|
-
import {
|
|
11
|
-
import { init_managedArtifact, managedMemberInspectionSchema } from "./managedApplicationGraph-
|
|
12
|
-
import {
|
|
2
|
+
import { AnalysisCancelledError, AnalysisError, AnalysisResourceConstraintError, init_analysisErrorBase, init_analysisErrorCore } from "./errorSchemas-Ixz_q7qt.js";
|
|
3
|
+
import { RegularFileChangedError, RegularFileCleanupFailure, init_OwnedRegularFile, init_RegularFile } from "./OwnedRegularFile-D1f5nUCx.js";
|
|
4
|
+
import { ArtifactReaderFailure, init_ArtifactReader } from "./ArtifactReader-DMwm42bk.js";
|
|
5
|
+
import { EvidenceIntegrityError, init_evidenceErrors } from "./cliResultOutput-10sd6xGx.js";
|
|
6
|
+
import { analysisErrorWithCleanupFailure, init_analysisErrorCleanup } from "./analysisErrorCleanup-COdAmDsb.js";
|
|
7
|
+
import { ProviderCleanupError, init_providerCleanupError } from "./providerCleanupError-BhsJyAhk.js";
|
|
8
|
+
import { MANAGED_STATIC_PROVIDER, init_InvestigationProviders } from "./InvestigationProviders-CFh4a64d.js";
|
|
9
|
+
import { init_BoundedFileBytes, readBoundedFileBytes } from "./BoundedFileBytes-DRtiQNAQ.js";
|
|
10
|
+
import { init_RegularFileRead, withRegularFile } from "./RegularFileRead-mbgGYtxe.js";
|
|
11
|
+
import { init_managedArtifact, managedMemberInspectionSchema } from "./managedApplicationGraph-BazVqpJv.js";
|
|
12
|
+
import { decodePeMachine, init_peMachine } from "./peMachine-B9ggfSJJ.js";
|
|
13
|
+
import { classifyBinaryTargetFilesystemFailure, init_BinaryTargetResolver } from "./BinaryTargetResolver-tuCTjBlQ.js";
|
|
13
14
|
import { createHash } from "node:crypto";
|
|
14
15
|
|
|
15
16
|
//#region dist/dotnet/ManagedReaderFailure.js
|
|
@@ -58,6 +59,7 @@ function init_ManagedDecodeBudget() {
|
|
|
58
59
|
#rows = new Map();
|
|
59
60
|
#strings = new Map();
|
|
60
61
|
#digests = new WeakMap();
|
|
62
|
+
#prepaid = new WeakSet();
|
|
61
63
|
reserve(bytes, offset) {
|
|
62
64
|
this.#admit(bytes, offset);
|
|
63
65
|
this.#remaining -= bytes;
|
|
@@ -104,6 +106,14 @@ function init_ManagedDecodeBudget() {
|
|
|
104
106
|
ranges.set(key, digest);
|
|
105
107
|
return digest;
|
|
106
108
|
}
|
|
109
|
+
/** Record an admitted projection; its next serialized occurrence is already charged. */
|
|
110
|
+
prepay(value) {
|
|
111
|
+
this.#prepaid.add(value);
|
|
112
|
+
}
|
|
113
|
+
/** Spend an admitted projection's charge once; repeated occurrences pay again. */
|
|
114
|
+
consumePrepaid(value) {
|
|
115
|
+
return this.#prepaid.delete(value);
|
|
116
|
+
}
|
|
107
117
|
cachedString(index) {
|
|
108
118
|
return this.#strings.get(index);
|
|
109
119
|
}
|
|
@@ -154,6 +164,7 @@ function init_ManagedDecodeBudget() {
|
|
|
154
164
|
jsonBytes = (item) => typeof item === "string" ? managedJsonStringBytes(item) : Buffer.byteLength(JSON.stringify(item) ?? "null");
|
|
155
165
|
admitManagedProjection = (value, budget = new ManagedDecodeBudget()) => {
|
|
156
166
|
const visit = (item) => {
|
|
167
|
+
if (item !== null && typeof item === "object" && budget.consumePrepaid(item)) return;
|
|
157
168
|
if (Array.isArray(item)) {
|
|
158
169
|
budget.reserve(item.length + 2, null);
|
|
159
170
|
for (const child of item) visit(child);
|
|
@@ -168,6 +179,7 @@ function init_ManagedDecodeBudget() {
|
|
|
168
179
|
}
|
|
169
180
|
};
|
|
170
181
|
visit(value);
|
|
182
|
+
if (value !== null && typeof value === "object") budget.prepay(value);
|
|
171
183
|
return value;
|
|
172
184
|
};
|
|
173
185
|
})))();
|
|
@@ -175,7 +187,7 @@ function init_ManagedDecodeBudget() {
|
|
|
175
187
|
|
|
176
188
|
//#endregion
|
|
177
189
|
//#region dist/dotnet/ManagedPeReader.js
|
|
178
|
-
var managedCli32BitRequirement, requireRange$1, add, architectureFor, resolveRva, mapRva, readDirectory, readCliHeader, readCoffHeader, readOptionalHeader, readSections, readCliDirectory, readManagedPeLayout;
|
|
190
|
+
var managedCli32BitRequirement, managedCliIsMixedClrNative, requireRange$1, add, architectureFor, resolveRva, mapRva, readDirectory, readCliHeader, readCoffHeader, readOptionalHeader, readSections, readCliDirectory, readManagedPeLayout;
|
|
179
191
|
function init_ManagedPeReader() {
|
|
180
192
|
return (init_ManagedPeReader = __esmMin((() => {
|
|
181
193
|
init_peMachine();
|
|
@@ -185,6 +197,7 @@ function init_ManagedPeReader() {
|
|
|
185
197
|
if (pair === 2) return "required";
|
|
186
198
|
return pair === 131074 ? "preferred" : "none";
|
|
187
199
|
};
|
|
200
|
+
managedCliIsMixedClrNative = (cli) => (cli.flags & 1) === 0 && !cli.readyToRunSignature;
|
|
188
201
|
requireRange$1 = (bytes, offset, length, scope) => {
|
|
189
202
|
if (!Number.isSafeInteger(offset) || !Number.isSafeInteger(length) || offset < 0 || length < 0 || offset > bytes.length - length) throw managedFailure("invalid-directory", scope, `${scope} leaves the artifact byte range`, Number.isSafeInteger(offset) && offset >= 0 ? offset : null);
|
|
190
203
|
};
|
|
@@ -617,17 +630,17 @@ function init_ManagedMetadataLayout() {
|
|
|
617
630
|
}
|
|
618
631
|
};
|
|
619
632
|
SUPPORTED_TABLE_MASK = (1n << BigInt(METADATA_TABLE_NAMES.length)) - 1n;
|
|
620
|
-
requireRange = (bytes, offset, length, scope) => {
|
|
621
|
-
if (!Number.isSafeInteger(offset) || !Number.isSafeInteger(length) || offset < 0 || length < 0 || offset > bytes.length - length) throw managedFailure("invalid-metadata-root", scope, `${scope} leaves the metadata byte range`, Number.isSafeInteger(offset) && offset >= 0 ? offset : null);
|
|
633
|
+
requireRange = (bytes, base, offset, length, scope) => {
|
|
634
|
+
if (!Number.isSafeInteger(offset) || !Number.isSafeInteger(length) || offset < 0 || length < 0 || offset > bytes.length - length) throw managedFailure("invalid-metadata-root", scope, `${scope} leaves the metadata byte range`, Number.isSafeInteger(base + offset) && offset >= 0 ? base + offset : null);
|
|
622
635
|
};
|
|
623
636
|
align4 = (value) => Math.ceil(value / 4) * 4;
|
|
624
|
-
readStreamName = (bytes, offset) => {
|
|
637
|
+
readStreamName = (bytes, rootOffset, offset) => {
|
|
625
638
|
const endLimit = Math.min(bytes.length, offset + 32);
|
|
626
639
|
let end = offset;
|
|
627
640
|
while (end < endLimit && bytes[end] !== 0) end += 1;
|
|
628
|
-
if (end === endLimit) throw managedFailure("invalid-stream", "metadata.stream-name", "Metadata stream name is missing a bounded terminator", offset);
|
|
641
|
+
if (end === endLimit) throw managedFailure("invalid-stream", "metadata.stream-name", "Metadata stream name is missing a bounded terminator", rootOffset + offset);
|
|
629
642
|
const nameBytes = bytes.subarray(offset, end);
|
|
630
|
-
if (nameBytes.some((byte) => byte < 32 || byte > 126)) throw managedFailure("invalid-stream", "metadata.stream-name", "Metadata stream name is not printable ASCII", offset);
|
|
643
|
+
if (nameBytes.some((byte) => byte < 32 || byte > 126)) throw managedFailure("invalid-stream", "metadata.stream-name", "Metadata stream name is not printable ASCII", rootOffset + offset);
|
|
631
644
|
return {
|
|
632
645
|
name: nameBytes.toString("ascii"),
|
|
633
646
|
next: align4(end + 1)
|
|
@@ -655,25 +668,25 @@ function init_ManagedMetadataLayout() {
|
|
|
655
668
|
readMetadataStreams = (bytes, rootOffset, budget) => {
|
|
656
669
|
if (bytes.readUInt32LE(0) !== 1112167234) throw managedFailure("invalid-metadata-root", "metadata.signature", "CLI metadata signature is not BSJB", rootOffset);
|
|
657
670
|
const versionLength = bytes.readUInt32LE(12);
|
|
658
|
-
requireRange(bytes, 16, versionLength, "metadata.version");
|
|
671
|
+
requireRange(bytes, rootOffset, 16, versionLength, "metadata.version");
|
|
659
672
|
const versionBytes = bytes.subarray(16, 16 + versionLength);
|
|
660
673
|
const zero = versionBytes.indexOf(0);
|
|
661
674
|
const decodedVersionLength = zero < 0 ? versionBytes.length : zero;
|
|
662
675
|
budget.reserveString(decodedVersionLength, rootOffset + 16);
|
|
663
676
|
const version = versionBytes.subarray(0, decodedVersionLength).toString("utf8");
|
|
664
677
|
let cursor = align4(16 + versionLength);
|
|
665
|
-
requireRange(bytes, cursor, 4, "metadata.stream-count");
|
|
678
|
+
requireRange(bytes, rootOffset, cursor, 4, "metadata.stream-count");
|
|
666
679
|
const streamCount = bytes.readUInt16LE(cursor + 2);
|
|
667
680
|
if (streamCount === 0 || streamCount > 64) throw managedFailure("invalid-stream", "metadata.stream-count", "Metadata stream count is outside the admitted range", rootOffset + cursor + 2);
|
|
668
681
|
cursor += 4;
|
|
669
682
|
const streams = new Map();
|
|
670
683
|
for (let index = 0; index < streamCount; index += 1) {
|
|
671
|
-
requireRange(bytes, cursor, 8, "metadata.stream-header");
|
|
684
|
+
requireRange(bytes, rootOffset, cursor, 8, "metadata.stream-header");
|
|
672
685
|
const relativeOffset = bytes.readUInt32LE(cursor);
|
|
673
686
|
const streamSize = bytes.readUInt32LE(cursor + 4);
|
|
674
|
-
const named = readStreamName(bytes, cursor + 8);
|
|
687
|
+
const named = readStreamName(bytes, rootOffset, cursor + 8);
|
|
675
688
|
if (streams.has(named.name)) throw managedFailure("invalid-stream", "metadata.stream-header", `Duplicate metadata stream ${named.name}`, rootOffset + cursor);
|
|
676
|
-
requireRange(bytes, relativeOffset, streamSize, `metadata.${named.name}`);
|
|
689
|
+
requireRange(bytes, rootOffset, relativeOffset, streamSize, `metadata.${named.name}`);
|
|
677
690
|
streams.set(named.name, {
|
|
678
691
|
name: named.name,
|
|
679
692
|
offset: rootOffset + relativeOffset,
|
|
@@ -690,7 +703,7 @@ function init_ManagedMetadataLayout() {
|
|
|
690
703
|
const tablesStream = streamByName(streams, ["#~", "#-"]);
|
|
691
704
|
if (tablesStream === undefined) throw managedFailure("missing-stream", "metadata.tables", "Required metadata table stream #~ or #- is absent");
|
|
692
705
|
const tableBytes = bytes.subarray(tablesStream.offset, tablesStream.offset + tablesStream.size);
|
|
693
|
-
requireRange(tableBytes, 0, 24, "metadata.tables-header");
|
|
706
|
+
requireRange(tableBytes, tablesStream.offset, 0, 24, "metadata.tables-header");
|
|
694
707
|
const heapSizes = tableBytes[6] ?? 0;
|
|
695
708
|
const heaps = {
|
|
696
709
|
string: (heapSizes & 1) === 0 ? 2 : 4,
|
|
@@ -706,12 +719,12 @@ function init_ManagedMetadataLayout() {
|
|
|
706
719
|
valid
|
|
707
720
|
};
|
|
708
721
|
};
|
|
709
|
-
readRowCounts = (tableBytes, valid) => {
|
|
722
|
+
readRowCounts = (tableBytes, tablesOffset, valid) => {
|
|
710
723
|
const rowCounts = Array(METADATA_TABLE_NAMES.length).fill(0);
|
|
711
724
|
let tableCursor = 24;
|
|
712
725
|
for (let index = 0; index < METADATA_TABLE_NAMES.length; index += 1) {
|
|
713
726
|
if ((valid & 1n << BigInt(index)) === 0n) continue;
|
|
714
|
-
requireRange(tableBytes, tableCursor, 4, "metadata.table-row-count");
|
|
727
|
+
requireRange(tableBytes, tablesOffset, tableCursor, 4, "metadata.table-row-count");
|
|
715
728
|
const count = tableBytes.readUInt32LE(tableCursor);
|
|
716
729
|
rowCounts[index] = count;
|
|
717
730
|
tableCursor += 4;
|
|
@@ -743,7 +756,7 @@ function init_ManagedMetadataLayout() {
|
|
|
743
756
|
const sizeOfRow = computeRowSize(index, context);
|
|
744
757
|
const byteLength = count * sizeOfRow;
|
|
745
758
|
if (!Number.isSafeInteger(byteLength)) throw managedFailure("invalid-tables", "metadata.tables", "Metadata table byte size overflowed", tablesOffset + tableCursor);
|
|
746
|
-
requireRange(tableBytes, tableCursor, byteLength, "metadata.table-data");
|
|
759
|
+
requireRange(tableBytes, tablesOffset, tableCursor, byteLength, "metadata.table-data");
|
|
747
760
|
tables.set(index, {
|
|
748
761
|
index,
|
|
749
762
|
name: METADATA_TABLE_NAMES[index] ?? `Table${String(index)}`,
|
|
@@ -761,7 +774,7 @@ function init_ManagedMetadataLayout() {
|
|
|
761
774
|
const budget = new ManagedDecodeBudget();
|
|
762
775
|
const { streams, version } = readMetadataStreams(bytes, rootOffset, budget);
|
|
763
776
|
const { tableBytes, tablesOffset, heaps, valid } = readTablesHeader(artifact, streams);
|
|
764
|
-
const rowCounts = readRowCounts(tableBytes, valid);
|
|
777
|
+
const rowCounts = readRowCounts(tableBytes, tablesOffset, valid);
|
|
765
778
|
const tables = buildMetadataTables({
|
|
766
779
|
tableBytes,
|
|
767
780
|
rowCounts,
|
|
@@ -1003,7 +1016,6 @@ function init_ManagedMetadataHeaps() {
|
|
|
1003
1016
|
const start = layout.strings.offset + index;
|
|
1004
1017
|
const cached = managedDecodeBudget(layout).cachedString(index);
|
|
1005
1018
|
if (cached !== undefined && cached.encodedBytes <= heapExtent) {
|
|
1006
|
-
managedDecodeBudget(layout).reserveString(cached.encodedBytes, start);
|
|
1007
1019
|
return cached.value;
|
|
1008
1020
|
}
|
|
1009
1021
|
const maximum = Math.min(layout.strings.offset + layout.strings.size, start + heapExtent + 1);
|
|
@@ -1526,13 +1538,44 @@ function init_ManagedMetadataInventory() {
|
|
|
1526
1538
|
})))();
|
|
1527
1539
|
}
|
|
1528
1540
|
|
|
1541
|
+
//#endregion
|
|
1542
|
+
//#region dist/dotnet/ManagedTypeNesting.js
|
|
1543
|
+
var readManagedTypeNesting;
|
|
1544
|
+
function init_ManagedTypeNesting() {
|
|
1545
|
+
return (init_ManagedTypeNesting = __esmMin((() => {
|
|
1546
|
+
init_ManagedDecodeBudget();
|
|
1547
|
+
init_ManagedMetadataHeaps();
|
|
1548
|
+
init_ManagedReaderFailure();
|
|
1549
|
+
readManagedTypeNesting = (bytes, layout, issues) => {
|
|
1550
|
+
const initialIssues = issues.length;
|
|
1551
|
+
const typeCount = layout.table(2)?.rowCount ?? 0;
|
|
1552
|
+
const enclosing = new Map();
|
|
1553
|
+
for (let row = 1; row <= (layout.table(41)?.rowCount ?? 0); row += 1) {
|
|
1554
|
+
readManagedValue(() => {
|
|
1555
|
+
const cursor = metadataRowCursor(bytes, layout, 41, row);
|
|
1556
|
+
const nested = cursor.readIndex(layout.tableIndexSize(2));
|
|
1557
|
+
const outer = cursor.readIndex(layout.tableIndexSize(2));
|
|
1558
|
+
if (nested < 1 || outer < 1 || nested > typeCount || outer > typeCount || nested === outer || enclosing.has(nested)) throw managedFailure("invalid-row", `metadata.NestedClass:${metadataToken(41, row)}`, `NestedClass requires a unique nested type and distinct existing enclosing type; observed ${nested} -> ${outer}`, cursor.start);
|
|
1559
|
+
managedDecodeBudget(layout).reserve(128, cursor.start);
|
|
1560
|
+
enclosing.set(nested, outer);
|
|
1561
|
+
}, issues);
|
|
1562
|
+
}
|
|
1563
|
+
return {
|
|
1564
|
+
enclosing,
|
|
1565
|
+
complete: issues.length === initialIssues
|
|
1566
|
+
};
|
|
1567
|
+
};
|
|
1568
|
+
})))();
|
|
1569
|
+
}
|
|
1570
|
+
|
|
1529
1571
|
//#endregion
|
|
1530
1572
|
//#region dist/dotnet/ManagedMemberInspectorCore.js
|
|
1531
|
-
var rowRange, fullName, readTypeRange, typeRanges, parseTypes, readCompressed, ELEMENT_TYPES, readSignedCompressed, malformedSignature, MEMBER_METHOD_HEADERS, FUNCTION_POINTER_CONVENTIONS, readMethodSignatureHeader, MAX_ARRAY_RANK, arrayShape, currentPosition, POSITION_ELEMENTS, readTypeOperand, readTypeSignature, CALLING_CONVENTION_NAMES, callingConvention, specSignature, decodeSignature, methodGenericArity, signatureGenericArity, signature;
|
|
1573
|
+
var rowRange, fullName, readTypeRange, typeRanges, parseTypes, readCompressed, ELEMENT_TYPES, readSignedCompressed, malformedSignature, MEMBER_METHOD_HEADERS, FUNCTION_POINTER_CONVENTIONS, readMethodSignatureHeader, MAX_ARRAY_RANK, arrayShape, currentPosition, POSITION_ELEMENTS, readTypeOperand, readTypeSignature, CALLING_CONVENTION_NAMES, callingConvention, specSignature, decodeSignature, methodGenericArity, signatureGenericArity, OPERAND_MARKER, resolvedSha256, signature;
|
|
1532
1574
|
function init_ManagedMemberInspectorCore() {
|
|
1533
1575
|
return (init_ManagedMemberInspectorCore = __esmMin((() => {
|
|
1534
1576
|
init_ManagedReaderFailure();
|
|
1535
1577
|
init_ManagedDecodeBudget();
|
|
1578
|
+
init_ManagedTypeNesting();
|
|
1536
1579
|
init_ManagedMetadataHeaps();
|
|
1537
1580
|
init_ManagedMemberPointers();
|
|
1538
1581
|
rowRange = (table, start, end) => {
|
|
@@ -1585,6 +1628,7 @@ function init_ManagedMemberInspectorCore() {
|
|
|
1585
1628
|
const methods = memberListTable(layout, 6);
|
|
1586
1629
|
const items = [];
|
|
1587
1630
|
const issues = [];
|
|
1631
|
+
const nesting = readManagedTypeNesting(bytes, layout, issues);
|
|
1588
1632
|
for (let row = 1; row <= (typeTable?.rowCount ?? 0); row += 1) {
|
|
1589
1633
|
readManagedValue(() => {
|
|
1590
1634
|
const cursor = metadataRowCursor(bytes, layout, 2, row);
|
|
@@ -1607,6 +1651,7 @@ function init_ManagedMemberInspectorCore() {
|
|
|
1607
1651
|
offset: extendsOffset,
|
|
1608
1652
|
detail: `TypeDef Extends coded index 0x${extendsRaw.toString(16)} is invalid: ${extendsReason}`
|
|
1609
1653
|
});
|
|
1654
|
+
const enclosingRow = nesting.enclosing.get(row);
|
|
1610
1655
|
items.push({
|
|
1611
1656
|
token: metadataToken(2, row),
|
|
1612
1657
|
row_offset: cursor.start,
|
|
@@ -1619,6 +1664,8 @@ function init_ManagedMemberInspectorCore() {
|
|
|
1619
1664
|
1,
|
|
1620
1665
|
27
|
|
1621
1666
|
], layout.rowCounts),
|
|
1667
|
+
enclosing_type_token: enclosingRow === undefined ? null : metadataToken(2, enclosingRow),
|
|
1668
|
+
name_sha256: null,
|
|
1622
1669
|
field_list: {
|
|
1623
1670
|
first_row: fieldRange.first,
|
|
1624
1671
|
last_row: fieldRange.last,
|
|
@@ -1634,7 +1681,8 @@ function init_ManagedMemberInspectorCore() {
|
|
|
1634
1681
|
}
|
|
1635
1682
|
return {
|
|
1636
1683
|
types: items,
|
|
1637
|
-
issues
|
|
1684
|
+
issues,
|
|
1685
|
+
nesting
|
|
1638
1686
|
};
|
|
1639
1687
|
};
|
|
1640
1688
|
readCompressed = (bytes, offset) => {
|
|
@@ -1786,7 +1834,7 @@ function init_ManagedMemberInspectorCore() {
|
|
|
1786
1834
|
}
|
|
1787
1835
|
return token;
|
|
1788
1836
|
};
|
|
1789
|
-
readTypeSignature = (blob, offset, base, layout) => {
|
|
1837
|
+
readTypeSignature = (blob, offset, base, { layout, operands } = {}) => {
|
|
1790
1838
|
const stack = [];
|
|
1791
1839
|
let cursor = offset;
|
|
1792
1840
|
for (;;) {
|
|
@@ -1808,6 +1856,10 @@ function init_ManagedMemberInspectorCore() {
|
|
|
1808
1856
|
cursor += 1;
|
|
1809
1857
|
} else if (kind === 31 || kind === 32) {
|
|
1810
1858
|
const token = readTypeOperand(blob, cursor + 1, layout);
|
|
1859
|
+
operands?.push({
|
|
1860
|
+
offset: cursor + 1,
|
|
1861
|
+
...token
|
|
1862
|
+
});
|
|
1811
1863
|
const modifier = `${kind === 31 ? "modreq" : "modopt"}:${String(token.value)}`;
|
|
1812
1864
|
const top = stack.at(-1);
|
|
1813
1865
|
if (top?.kind === "modifiers") top.modifiers.push(modifier);
|
|
@@ -1818,6 +1870,10 @@ function init_ManagedMemberInspectorCore() {
|
|
|
1818
1870
|
cursor = token.next;
|
|
1819
1871
|
} else if (kind === 17 || kind === 18) {
|
|
1820
1872
|
const token = readTypeOperand(blob, cursor + 1, layout);
|
|
1873
|
+
operands?.push({
|
|
1874
|
+
offset: cursor + 1,
|
|
1875
|
+
...token
|
|
1876
|
+
});
|
|
1821
1877
|
value = `${kind === 17 ? "valuetype" : "class"}:${String(token.value)}`;
|
|
1822
1878
|
cursor = token.next;
|
|
1823
1879
|
} else if (kind === 30 || kind === 19) {
|
|
@@ -1834,6 +1890,10 @@ function init_ManagedMemberInspectorCore() {
|
|
|
1834
1890
|
const generic = blob[cursor + 1];
|
|
1835
1891
|
if (generic !== 17 && generic !== 18) return malformedSignature("generic instantiation does not name a class or value type", cursor + 1);
|
|
1836
1892
|
const token = readTypeOperand(blob, cursor + 2, layout, [2, 1]);
|
|
1893
|
+
operands?.push({
|
|
1894
|
+
offset: cursor + 2,
|
|
1895
|
+
...token
|
|
1896
|
+
});
|
|
1837
1897
|
const argumentCount = readCompressed(blob, token.next);
|
|
1838
1898
|
if (argumentCount.value === 0) return malformedSignature("generic instantiation has no type arguments", token.next);
|
|
1839
1899
|
const head = `${generic === 17 ? "valuetype" : "class"}:${String(token.value)}`;
|
|
@@ -1919,7 +1979,7 @@ function init_ManagedMemberInspectorCore() {
|
|
|
1919
1979
|
}
|
|
1920
1980
|
const types = [];
|
|
1921
1981
|
for (let index = 0; index < count; index += 1) {
|
|
1922
|
-
const type = readTypeSignature(blob, cursor, "type", layout);
|
|
1982
|
+
const type = readTypeSignature(blob, cursor, "type", { layout });
|
|
1923
1983
|
types.push(type.value);
|
|
1924
1984
|
cursor = type.next;
|
|
1925
1985
|
}
|
|
@@ -1932,12 +1992,12 @@ function init_ManagedMemberInspectorCore() {
|
|
|
1932
1992
|
budget.releaseTransient();
|
|
1933
1993
|
}
|
|
1934
1994
|
};
|
|
1935
|
-
decodeSignature = (blob) => {
|
|
1995
|
+
decodeSignature = (blob, operands = []) => {
|
|
1936
1996
|
try {
|
|
1937
1997
|
if (blob.length === 0) throw managedFailure("invalid-blob", "signature", "empty signature", 0);
|
|
1938
1998
|
const first = blob[0] ?? 0;
|
|
1939
1999
|
if (first === 6) {
|
|
1940
|
-
const fieldType = readTypeSignature(blob, 1, "field");
|
|
2000
|
+
const fieldType = readTypeSignature(blob, 1, "field", { operands });
|
|
1941
2001
|
return {
|
|
1942
2002
|
kind: "field",
|
|
1943
2003
|
parse_status: fieldType.next === blob.length ? "decoded" : "partial",
|
|
@@ -1951,11 +2011,11 @@ function init_ManagedMemberInspectorCore() {
|
|
|
1951
2011
|
};
|
|
1952
2012
|
}
|
|
1953
2013
|
const header = readMethodSignatureHeader(blob, 0, "member");
|
|
1954
|
-
const returnType = readTypeSignature(blob, header.next, "return");
|
|
2014
|
+
const returnType = readTypeSignature(blob, header.next, "return", { operands });
|
|
1955
2015
|
let offset = returnType.next;
|
|
1956
2016
|
const parameters = [];
|
|
1957
2017
|
for (let index = 0; index < header.parameterCount; index += 1) {
|
|
1958
|
-
const parameter = readTypeSignature(blob, offset, "parameter");
|
|
2018
|
+
const parameter = readTypeSignature(blob, offset, "parameter", { operands });
|
|
1959
2019
|
parameters.push(parameter.value);
|
|
1960
2020
|
offset = parameter.next;
|
|
1961
2021
|
}
|
|
@@ -1996,11 +2056,31 @@ function init_ManagedMemberInspectorCore() {
|
|
|
1996
2056
|
}
|
|
1997
2057
|
};
|
|
1998
2058
|
signatureGenericArity = (decoded) => decoded.kind === "method" && decoded.parse_status === "decoded" ? decoded.generic_parameter_count ?? 0 : null;
|
|
1999
|
-
|
|
2000
|
-
|
|
2001
|
-
|
|
2002
|
-
|
|
2003
|
-
|
|
2059
|
+
OPERAND_MARKER = Buffer.from([255]);
|
|
2060
|
+
resolvedSha256 = (blob, operands, typeName) => {
|
|
2061
|
+
const hash = createHash("sha256");
|
|
2062
|
+
let copied = 0;
|
|
2063
|
+
for (const operand of operands) {
|
|
2064
|
+
const name = typeName(operand.value);
|
|
2065
|
+
if (name === null) return null;
|
|
2066
|
+
hash.update(blob.subarray(copied, operand.offset));
|
|
2067
|
+
hash.update(OPERAND_MARKER);
|
|
2068
|
+
hash.update(name);
|
|
2069
|
+
copied = operand.next;
|
|
2070
|
+
}
|
|
2071
|
+
hash.update(blob.subarray(copied));
|
|
2072
|
+
return hash.digest("hex");
|
|
2073
|
+
};
|
|
2074
|
+
signature = (blob, rawSha256, typeName = () => null) => {
|
|
2075
|
+
const operands = [];
|
|
2076
|
+
const decoded = decodeSignature(blob, operands);
|
|
2077
|
+
return {
|
|
2078
|
+
raw_length: blob.length,
|
|
2079
|
+
raw_sha256: rawSha256 ?? sha256Bytes(blob),
|
|
2080
|
+
resolved_sha256: decoded.kind === "unknown" ? null : resolvedSha256(blob, operands, typeName),
|
|
2081
|
+
...decoded
|
|
2082
|
+
};
|
|
2083
|
+
};
|
|
2004
2084
|
})))();
|
|
2005
2085
|
}
|
|
2006
2086
|
|
|
@@ -2075,67 +2155,160 @@ function init_ManagedMethodSpecs() {
|
|
|
2075
2155
|
})))();
|
|
2076
2156
|
}
|
|
2077
2157
|
|
|
2158
|
+
//#endregion
|
|
2159
|
+
//#region dist/dotnet/ManagedTypeNameDigests.js
|
|
2160
|
+
var TYPE_REF, TYPE_DEF, MAX_TYPE_NESTING_DEPTH, TOP_LEVEL, NESTED, NAME_SEPARATOR, nestedTypeDigests, managedTypeNameDigests;
|
|
2161
|
+
function init_ManagedTypeNameDigests() {
|
|
2162
|
+
return (init_ManagedTypeNameDigests = __esmMin((() => {
|
|
2163
|
+
init_ManagedDecodeBudget();
|
|
2164
|
+
init_ManagedMetadataHeaps();
|
|
2165
|
+
init_ManagedReaderFailure();
|
|
2166
|
+
TYPE_REF = 1;
|
|
2167
|
+
TYPE_DEF = 2;
|
|
2168
|
+
MAX_TYPE_NESTING_DEPTH = 64;
|
|
2169
|
+
TOP_LEVEL = Buffer.from([0]);
|
|
2170
|
+
NESTED = Buffer.from([1]);
|
|
2171
|
+
NAME_SEPARATOR = Buffer.from([0]);
|
|
2172
|
+
nestedTypeDigests = (link, retain) => {
|
|
2173
|
+
const named = new Map();
|
|
2174
|
+
const remember = (row, value) => {
|
|
2175
|
+
retain();
|
|
2176
|
+
named.set(row, value);
|
|
2177
|
+
};
|
|
2178
|
+
const links = new Map();
|
|
2179
|
+
const readLink = (row) => {
|
|
2180
|
+
const known = links.get(row);
|
|
2181
|
+
if (known !== undefined) return known;
|
|
2182
|
+
const read = link(row);
|
|
2183
|
+
retain();
|
|
2184
|
+
links.set(row, read);
|
|
2185
|
+
return read;
|
|
2186
|
+
};
|
|
2187
|
+
return (row) => {
|
|
2188
|
+
const path = [];
|
|
2189
|
+
const seen = new Set();
|
|
2190
|
+
let outer = null;
|
|
2191
|
+
for (let current = row; current !== null;) {
|
|
2192
|
+
const known = named.get(current);
|
|
2193
|
+
if (known !== undefined) {
|
|
2194
|
+
if (known === null) {
|
|
2195
|
+
for (const step of path) remember(step.row, null);
|
|
2196
|
+
return null;
|
|
2197
|
+
}
|
|
2198
|
+
outer = known;
|
|
2199
|
+
break;
|
|
2200
|
+
}
|
|
2201
|
+
if (seen.has(current)) {
|
|
2202
|
+
for (const step of path) remember(step.row, null);
|
|
2203
|
+
return null;
|
|
2204
|
+
}
|
|
2205
|
+
if (path.length === 64) {
|
|
2206
|
+
remember(row, null);
|
|
2207
|
+
return null;
|
|
2208
|
+
}
|
|
2209
|
+
const step = readLink(current);
|
|
2210
|
+
if (step === null) {
|
|
2211
|
+
remember(current, null);
|
|
2212
|
+
for (const visited of path) remember(visited.row, null);
|
|
2213
|
+
return null;
|
|
2214
|
+
}
|
|
2215
|
+
seen.add(current);
|
|
2216
|
+
path.push({
|
|
2217
|
+
row: current,
|
|
2218
|
+
link: step
|
|
2219
|
+
});
|
|
2220
|
+
current = step.enclosingRow;
|
|
2221
|
+
}
|
|
2222
|
+
let inner = outer;
|
|
2223
|
+
let exceeded = false;
|
|
2224
|
+
for (const step of path.reverse()) {
|
|
2225
|
+
const depth = (inner?.depth ?? 0) + 1;
|
|
2226
|
+
exceeded ||= depth > 64;
|
|
2227
|
+
if (exceeded) {
|
|
2228
|
+
remember(step.row, null);
|
|
2229
|
+
continue;
|
|
2230
|
+
}
|
|
2231
|
+
const hash = createHash("sha256");
|
|
2232
|
+
if (inner === null) hash.update(TOP_LEVEL);
|
|
2233
|
+
else hash.update(NESTED).update(inner.digest);
|
|
2234
|
+
hash.update(step.link.namespace).update(NAME_SEPARATOR).update(step.link.name);
|
|
2235
|
+
inner = {
|
|
2236
|
+
digest: hash.digest(),
|
|
2237
|
+
depth
|
|
2238
|
+
};
|
|
2239
|
+
remember(step.row, inner);
|
|
2240
|
+
}
|
|
2241
|
+
return exceeded ? null : inner?.digest ?? null;
|
|
2242
|
+
};
|
|
2243
|
+
};
|
|
2244
|
+
managedTypeNameDigests = (layout, issues, parsedTypes, reference) => {
|
|
2245
|
+
const retain = () => managedDecodeBudget(layout).reserve(128, null);
|
|
2246
|
+
managedDecodeBudget(layout).reserve(parsedTypes.types.length * 128, null);
|
|
2247
|
+
const types = new Map();
|
|
2248
|
+
for (const type of parsedTypes.types) types.set(type.token, type);
|
|
2249
|
+
const definitions = nestedTypeDigests((row) => {
|
|
2250
|
+
if (!parsedTypes.nesting.complete) return null;
|
|
2251
|
+
const type = types.get(metadataToken(TYPE_DEF, row));
|
|
2252
|
+
if (type === undefined && (row < 1 || row > (layout.table(TYPE_DEF)?.rowCount ?? 0))) {
|
|
2253
|
+
readManagedValue(() => {
|
|
2254
|
+
throw managedFailure("invalid-row", `metadata.signature.type:${TYPE_DEF}:${row}`, `Signature references an unavailable TypeDef row ${row}`);
|
|
2255
|
+
}, issues);
|
|
2256
|
+
return null;
|
|
2257
|
+
}
|
|
2258
|
+
if (type === undefined) return null;
|
|
2259
|
+
const enclosingRow = parsedTypes.nesting.enclosing.get(row) ?? null;
|
|
2260
|
+
const nested = (type.flags & 7) >= 2;
|
|
2261
|
+
if (nested !== (enclosingRow !== null)) {
|
|
2262
|
+
managedDecodeBudget(layout).reserve(512, type.row_offset);
|
|
2263
|
+
readManagedValue(() => {
|
|
2264
|
+
throw managedFailure("invalid-row", `metadata.TypeDef:${type.token}`, nested ? `Nested TypeDef ${type.token} has no NestedClass enclosing entry` : `Top-level TypeDef ${type.token} has a NestedClass enclosing entry`, type.row_offset);
|
|
2265
|
+
}, issues);
|
|
2266
|
+
return null;
|
|
2267
|
+
}
|
|
2268
|
+
return {
|
|
2269
|
+
namespace: type.namespace,
|
|
2270
|
+
name: type.name,
|
|
2271
|
+
enclosingRow
|
|
2272
|
+
};
|
|
2273
|
+
}, retain);
|
|
2274
|
+
const references = nestedTypeDigests((row) => {
|
|
2275
|
+
const value = reference(row);
|
|
2276
|
+
return value?.scopeValid === true ? value : null;
|
|
2277
|
+
}, retain);
|
|
2278
|
+
const digests = new Map();
|
|
2279
|
+
return (codedIndex) => {
|
|
2280
|
+
let digest = digests.get(codedIndex);
|
|
2281
|
+
if (digest === undefined) {
|
|
2282
|
+
managedDecodeBudget(layout).reserve(256, null);
|
|
2283
|
+
const row = codedIndex >>> 2;
|
|
2284
|
+
const table = codedIndex & 3;
|
|
2285
|
+
digest = table === 0 ? definitions(row) : table === 1 ? references(row) : null;
|
|
2286
|
+
digests.set(codedIndex, digest);
|
|
2287
|
+
}
|
|
2288
|
+
return digest;
|
|
2289
|
+
};
|
|
2290
|
+
};
|
|
2291
|
+
})))();
|
|
2292
|
+
}
|
|
2293
|
+
|
|
2078
2294
|
//#endregion
|
|
2079
2295
|
//#region dist/dotnet/ManagedTypeNames.js
|
|
2080
2296
|
var typeNameLookup;
|
|
2081
2297
|
function init_ManagedTypeNames() {
|
|
2082
2298
|
return (init_ManagedTypeNames = __esmMin((() => {
|
|
2083
|
-
init_ManagedDecodeBudget();
|
|
2084
2299
|
init_ManagedMemberInspectorCore();
|
|
2085
2300
|
init_ManagedMetadataLayout();
|
|
2086
2301
|
init_ManagedMetadataHeaps();
|
|
2087
2302
|
init_ManagedReaderFailure();
|
|
2088
|
-
typeNameLookup = (bytes, layout, ranges, issues) => {
|
|
2303
|
+
typeNameLookup = (bytes, layout, ranges, issues, references) => {
|
|
2089
2304
|
const names = new Map();
|
|
2090
|
-
const checkedScopes = new Set();
|
|
2091
|
-
const validateScopeChain = (row) => {
|
|
2092
|
-
const path = new Set();
|
|
2093
|
-
let current = row;
|
|
2094
|
-
while (!checkedScopes.has(current)) {
|
|
2095
|
-
const cursor = metadataRowCursor(bytes, layout, 1, current);
|
|
2096
|
-
if (path.has(current)) {
|
|
2097
|
-
issues.push({
|
|
2098
|
-
code: "invalid-row",
|
|
2099
|
-
scope: `metadata.TypeRef:${metadataToken(1, current)}`,
|
|
2100
|
-
offset: cursor.start,
|
|
2101
|
-
detail: "TypeRef ResolutionScope chain contains a cycle"
|
|
2102
|
-
});
|
|
2103
|
-
break;
|
|
2104
|
-
}
|
|
2105
|
-
managedDecodeBudget(layout).reserve(128, cursor.start);
|
|
2106
|
-
path.add(current);
|
|
2107
|
-
const raw = cursor.readIndex(layout.codedIndexSize("ResolutionScope"));
|
|
2108
|
-
const reason = metadataCodedTokenInvalidReason(raw, 2, [
|
|
2109
|
-
0,
|
|
2110
|
-
26,
|
|
2111
|
-
35,
|
|
2112
|
-
1
|
|
2113
|
-
], layout.rowCounts);
|
|
2114
|
-
if (reason !== null) {
|
|
2115
|
-
issues.push({
|
|
2116
|
-
code: "invalid-row",
|
|
2117
|
-
scope: `metadata.TypeRef:${metadataToken(1, current)}`,
|
|
2118
|
-
offset: cursor.start,
|
|
2119
|
-
detail: `TypeRef ResolutionScope coded index 0x${raw.toString(16)} is invalid: ${reason}`
|
|
2120
|
-
});
|
|
2121
|
-
break;
|
|
2122
|
-
}
|
|
2123
|
-
if (raw === 0 || (raw & 3) !== 3) break;
|
|
2124
|
-
current = Math.floor(raw / 4);
|
|
2125
|
-
}
|
|
2126
|
-
for (const visited of path) checkedScopes.add(visited);
|
|
2127
|
-
};
|
|
2128
2305
|
const definitionName = (table, row) => {
|
|
2129
2306
|
if (table === 2) {
|
|
2130
2307
|
metadataRowOffset(layout, 2, row);
|
|
2131
2308
|
return ranges[row - 1]?.fullName ?? null;
|
|
2132
2309
|
}
|
|
2133
|
-
const
|
|
2134
|
-
|
|
2135
|
-
readManagedValue(() => validateScopeChain(row), issues);
|
|
2136
|
-
const name = cursor.readIndex(layout.stringIndexSize);
|
|
2137
|
-
const namespace = cursor.readIndex(layout.stringIndexSize);
|
|
2138
|
-
return fullName(readMetadataString(bytes, layout, namespace, layout.strings.size), readMetadataString(bytes, layout, name, layout.strings.size));
|
|
2310
|
+
const reference = references(row);
|
|
2311
|
+
return reference === null ? null : fullName(reference.namespace, reference.name);
|
|
2139
2312
|
};
|
|
2140
2313
|
const specName = (row) => {
|
|
2141
2314
|
const cursor = metadataRowCursor(bytes, layout, 27, row);
|
|
@@ -2165,6 +2338,103 @@ function init_ManagedTypeNames() {
|
|
|
2165
2338
|
})))();
|
|
2166
2339
|
}
|
|
2167
2340
|
|
|
2341
|
+
//#endregion
|
|
2342
|
+
//#region dist/dotnet/ManagedTypeReferences.js
|
|
2343
|
+
var managedTypeReferences;
|
|
2344
|
+
function init_ManagedTypeReferences() {
|
|
2345
|
+
return (init_ManagedTypeReferences = __esmMin((() => {
|
|
2346
|
+
init_ManagedDecodeBudget();
|
|
2347
|
+
init_ManagedMetadataHeaps();
|
|
2348
|
+
init_ManagedReaderFailure();
|
|
2349
|
+
init_ManagedMetadataLayout();
|
|
2350
|
+
managedTypeReferences = (bytes, layout, issues) => {
|
|
2351
|
+
const rows = new Map();
|
|
2352
|
+
const names = new Map();
|
|
2353
|
+
const checked = new Map();
|
|
2354
|
+
const read = (row) => {
|
|
2355
|
+
const cached = rows.get(row);
|
|
2356
|
+
if (cached !== undefined) return cached;
|
|
2357
|
+
managedDecodeBudget(layout).reserve(384, null);
|
|
2358
|
+
const value = readManagedValue(() => {
|
|
2359
|
+
const cursor = metadataRowCursor(bytes, layout, 1, row);
|
|
2360
|
+
const raw = cursor.readIndex(layout.codedIndexSize("ResolutionScope"));
|
|
2361
|
+
const reason = metadataCodedTokenInvalidReason(raw, 2, [
|
|
2362
|
+
0,
|
|
2363
|
+
26,
|
|
2364
|
+
35,
|
|
2365
|
+
1
|
|
2366
|
+
], layout.rowCounts);
|
|
2367
|
+
if (reason !== null) issues.push({
|
|
2368
|
+
code: "invalid-row",
|
|
2369
|
+
scope: `metadata.TypeRef:${metadataToken(1, row)}`,
|
|
2370
|
+
offset: cursor.start,
|
|
2371
|
+
detail: `TypeRef ResolutionScope coded index 0x${raw.toString(16)} is invalid: ${reason}`
|
|
2372
|
+
});
|
|
2373
|
+
return {
|
|
2374
|
+
nameIndex: cursor.readIndex(layout.stringIndexSize),
|
|
2375
|
+
namespaceIndex: cursor.readIndex(layout.stringIndexSize),
|
|
2376
|
+
enclosingRow: raw !== 0 && (raw & 3) === 3 ? Math.floor(raw / 4) : null,
|
|
2377
|
+
scopeValid: reason === null
|
|
2378
|
+
};
|
|
2379
|
+
}, issues) ?? null;
|
|
2380
|
+
rows.set(row, value);
|
|
2381
|
+
return value;
|
|
2382
|
+
};
|
|
2383
|
+
const validate = (row) => {
|
|
2384
|
+
const prior = checked.get(row);
|
|
2385
|
+
if (prior !== undefined) return prior;
|
|
2386
|
+
const path = [];
|
|
2387
|
+
const seen = new Set();
|
|
2388
|
+
let current = row;
|
|
2389
|
+
let valid = true;
|
|
2390
|
+
while (current !== null) {
|
|
2391
|
+
const known = checked.get(current);
|
|
2392
|
+
if (known !== undefined) {
|
|
2393
|
+
valid = known;
|
|
2394
|
+
break;
|
|
2395
|
+
}
|
|
2396
|
+
if (seen.has(current)) {
|
|
2397
|
+
issues.push({
|
|
2398
|
+
code: "invalid-row",
|
|
2399
|
+
scope: `metadata.TypeRef:${metadataToken(1, current)}`,
|
|
2400
|
+
offset: metadataRowOffset(layout, 1, current),
|
|
2401
|
+
detail: "TypeRef ResolutionScope chain contains a cycle"
|
|
2402
|
+
});
|
|
2403
|
+
valid = false;
|
|
2404
|
+
break;
|
|
2405
|
+
}
|
|
2406
|
+
seen.add(current);
|
|
2407
|
+
path.push(current);
|
|
2408
|
+
const value = read(current);
|
|
2409
|
+
if (value === null || !value.scopeValid) {
|
|
2410
|
+
valid = false;
|
|
2411
|
+
break;
|
|
2412
|
+
}
|
|
2413
|
+
current = value.enclosingRow;
|
|
2414
|
+
}
|
|
2415
|
+
for (const visited of path) checked.set(visited, valid);
|
|
2416
|
+
return valid;
|
|
2417
|
+
};
|
|
2418
|
+
return (row) => {
|
|
2419
|
+
const cached = names.get(row);
|
|
2420
|
+
if (cached !== undefined) return cached;
|
|
2421
|
+
const value = read(row);
|
|
2422
|
+
if (value === null) return null;
|
|
2423
|
+
const scopeValid = validate(row);
|
|
2424
|
+
managedDecodeBudget(layout).reserve(128, null);
|
|
2425
|
+
const named = readManagedValue(() => ({
|
|
2426
|
+
namespace: readMetadataString(bytes, layout, value.namespaceIndex, layout.strings.size),
|
|
2427
|
+
name: readMetadataString(bytes, layout, value.nameIndex, layout.strings.size),
|
|
2428
|
+
enclosingRow: value.enclosingRow,
|
|
2429
|
+
scopeValid
|
|
2430
|
+
}), issues) ?? null;
|
|
2431
|
+
names.set(row, named);
|
|
2432
|
+
return named;
|
|
2433
|
+
};
|
|
2434
|
+
};
|
|
2435
|
+
})))();
|
|
2436
|
+
}
|
|
2437
|
+
|
|
2168
2438
|
//#endregion
|
|
2169
2439
|
//#region dist/dotnet/ManagedUserStrings.js
|
|
2170
2440
|
var inventory, USER_STRING_TOKEN_BYTES, parseUserStrings;
|
|
@@ -3651,7 +3921,7 @@ function init_ManagedMemberRows() {
|
|
|
3651
3921
|
init_ManagedMethodBodyReader();
|
|
3652
3922
|
init_ManagedMemberOwnership();
|
|
3653
3923
|
isSelected = (selected, declared) => selected === null || declared !== undefined && selected.has(declared.token);
|
|
3654
|
-
parseFields = (bytes, layout, ranges, memberLists, selected = null) => {
|
|
3924
|
+
parseFields = (bytes, layout, ranges, memberLists, { signatureTypeName, selected = null }) => {
|
|
3655
3925
|
const fields = [];
|
|
3656
3926
|
const core = new Map();
|
|
3657
3927
|
const issues = [];
|
|
@@ -3680,7 +3950,7 @@ function init_ManagedMemberRows() {
|
|
|
3680
3950
|
declaring_type: declared?.fullName ?? null,
|
|
3681
3951
|
name,
|
|
3682
3952
|
flags,
|
|
3683
|
-
signature: budgetedSignature(sig, layout)
|
|
3953
|
+
signature: budgetedSignature(sig, layout, signatureTypeName)
|
|
3684
3954
|
});
|
|
3685
3955
|
}, issues);
|
|
3686
3956
|
}
|
|
@@ -3737,7 +4007,7 @@ function init_ManagedMemberRows() {
|
|
|
3737
4007
|
issues
|
|
3738
4008
|
};
|
|
3739
4009
|
};
|
|
3740
|
-
parseMemberRefs = (bytes, layout, typeName) => {
|
|
4010
|
+
parseMemberRefs = (bytes, layout, typeName, signatureTypeName) => {
|
|
3741
4011
|
const refs = [];
|
|
3742
4012
|
const core = new Map();
|
|
3743
4013
|
const issues = [];
|
|
@@ -3770,7 +4040,7 @@ function init_ManagedMemberRows() {
|
|
|
3770
4040
|
27
|
|
3771
4041
|
], layout.rowCounts);
|
|
3772
4042
|
const parentName = typeName(parentToken);
|
|
3773
|
-
const decoded = budgetedSignature(sig, layout);
|
|
4043
|
+
const decoded = budgetedSignature(sig, layout, signatureTypeName);
|
|
3774
4044
|
refs.push({
|
|
3775
4045
|
token,
|
|
3776
4046
|
row_offset: cursor.start,
|
|
@@ -3794,7 +4064,7 @@ function init_ManagedMemberRows() {
|
|
|
3794
4064
|
issues
|
|
3795
4065
|
};
|
|
3796
4066
|
};
|
|
3797
|
-
parseMethods = ({ bytes, layout, pe, ranges, memberLists, selected = null, methodOffset = 0, methodLimit = Number.MAX_SAFE_INTEGER }) => {
|
|
4067
|
+
parseMethods = ({ bytes, layout, pe, ranges, signatureTypeName, memberLists, selected = null, methodOffset = 0, methodLimit = Number.MAX_SAFE_INTEGER }) => {
|
|
3798
4068
|
const methods = [];
|
|
3799
4069
|
const core = new Map();
|
|
3800
4070
|
const issues = [];
|
|
@@ -3825,7 +4095,7 @@ function init_ManagedMemberRows() {
|
|
|
3825
4095
|
if (!isSelected(selected, declared)) return;
|
|
3826
4096
|
const sig = readMetadataBlob(bytes, layout, cursor.readIndex(layout.blobIndexSize), layout.blob.size);
|
|
3827
4097
|
cursor.readIndex(layout.tableIndexSize(8));
|
|
3828
|
-
const decoded = budgetedSignature(sig, layout);
|
|
4098
|
+
const decoded = budgetedSignature(sig, layout, signatureTypeName);
|
|
3829
4099
|
core.set(token, {
|
|
3830
4100
|
...member,
|
|
3831
4101
|
genericArity: signatureGenericArity(decoded)
|
|
@@ -3906,11 +4176,11 @@ function init_ManagedMemberRows() {
|
|
|
3906
4176
|
};
|
|
3907
4177
|
callerName = (method) => method.declaring_type === null ? method.name : `${method.declaring_type}.${method.name}`;
|
|
3908
4178
|
callerNameBytes = (method) => method.declaring_type === null ? managedJsonStringBytes(method.name) : managedJsonStringBytes(method.declaring_type) + managedJsonStringBytes(method.name) - 1;
|
|
3909
|
-
budgetedSignature = (bytes, layout) => {
|
|
4179
|
+
budgetedSignature = (bytes, layout, signatureTypeName) => {
|
|
3910
4180
|
const budget = managedDecodeBudget(layout);
|
|
3911
4181
|
budget.admitTransient(bytes.length * 256, layout.blob.offset);
|
|
3912
4182
|
try {
|
|
3913
|
-
return admitManagedProjection(signature(bytes, budget.digest(bytes, "sha256")), budget);
|
|
4183
|
+
return admitManagedProjection(signature(bytes, budget.digest(bytes, "sha256"), signatureTypeName), budget);
|
|
3914
4184
|
} finally {
|
|
3915
4185
|
budget.releaseTransient();
|
|
3916
4186
|
}
|
|
@@ -3931,7 +4201,9 @@ function init_ManagedMemberInspector() {
|
|
|
3931
4201
|
init_ManagedReaderFailure();
|
|
3932
4202
|
init_ManagedMemberInspectorCore();
|
|
3933
4203
|
init_ManagedMethodSpecs();
|
|
4204
|
+
init_ManagedTypeNameDigests();
|
|
3934
4205
|
init_ManagedTypeNames();
|
|
4206
|
+
init_ManagedTypeReferences();
|
|
3935
4207
|
init_ManagedUserStrings();
|
|
3936
4208
|
init_ManagedTypeMemberLists();
|
|
3937
4209
|
init_ManagedMemberRows();
|
|
@@ -3954,6 +4226,8 @@ function init_ManagedMemberInspector() {
|
|
|
3954
4226
|
requires_mvid: null
|
|
3955
4227
|
},
|
|
3956
4228
|
types: [],
|
|
4229
|
+
signature_resolution: "type-names-v1",
|
|
4230
|
+
nesting_read: false,
|
|
3957
4231
|
exported_types: null,
|
|
3958
4232
|
user_strings: null,
|
|
3959
4233
|
fields: [],
|
|
@@ -4021,14 +4295,20 @@ function init_ManagedMemberInspector() {
|
|
|
4021
4295
|
appendManagedParseIssues(issues, parsedTypes.issues);
|
|
4022
4296
|
const exportedTypes = parseExportedTypes(bytes, layout);
|
|
4023
4297
|
appendManagedParseIssues(issues, exportedTypes.issues);
|
|
4024
|
-
const
|
|
4025
|
-
const
|
|
4298
|
+
const typeReferences = managedTypeReferences(bytes, layout, issues);
|
|
4299
|
+
const signatureTypeName = managedTypeNameDigests(layout, issues, parsedTypes, typeReferences);
|
|
4300
|
+
const fields = parseFields(bytes, layout, ranges, memberLists, {
|
|
4301
|
+
signatureTypeName,
|
|
4302
|
+
selected
|
|
4303
|
+
});
|
|
4304
|
+
const memberRefs = parseMemberRefs(bytes, layout, typeNameLookup(bytes, layout, ranges, issues, typeReferences), signatureTypeName);
|
|
4026
4305
|
appendManagedParseIssues(issues, memberRefs.issues);
|
|
4027
4306
|
const methods = parseMethods({
|
|
4028
4307
|
bytes,
|
|
4029
4308
|
layout,
|
|
4030
4309
|
pe,
|
|
4031
4310
|
ranges,
|
|
4311
|
+
signatureTypeName,
|
|
4032
4312
|
memberLists,
|
|
4033
4313
|
selected,
|
|
4034
4314
|
methodOffset,
|
|
@@ -4045,13 +4325,21 @@ function init_ManagedMemberInspector() {
|
|
|
4045
4325
|
methods.core
|
|
4046
4326
|
]);
|
|
4047
4327
|
appendManagedParseIssues(issues, targets.issues);
|
|
4048
|
-
const coverageIssues = uniqueManagedParseIssues(issues);
|
|
4049
4328
|
const incompleteMembers = [
|
|
4050
4329
|
...fields.fields,
|
|
4051
4330
|
...memberRefs.refs,
|
|
4052
4331
|
...methods.methods
|
|
4053
4332
|
].some((member) => member.signature.parse_status !== "decoded") || methods.methods.some((method) => method.body.status === "partial" || method.body.status === "malformed");
|
|
4054
4333
|
const related = edges(methods.methods, targets.members, managedDecodeBudget(layout));
|
|
4334
|
+
const types = parsedTypes.types.filter((type) => selected === null || selected.has(type.token)).map((type) => {
|
|
4335
|
+
managedDecodeBudget(layout).reserve(512, type.row_offset);
|
|
4336
|
+
return {
|
|
4337
|
+
...type,
|
|
4338
|
+
name_sha256: signatureTypeName(Number.parseInt(type.token.slice(4), 16) * 4)?.toString("hex") ?? null
|
|
4339
|
+
};
|
|
4340
|
+
});
|
|
4341
|
+
const unnamedTypes = types.reduce((count, type) => count + Number(type.name_sha256 === null), 0);
|
|
4342
|
+
const coverageIssues = uniqueManagedParseIssues(issues);
|
|
4055
4343
|
return managedMemberInspectionSchema.parse(admitManagedProjection({
|
|
4056
4344
|
artifact: {
|
|
4057
4345
|
path: target.path,
|
|
@@ -4070,7 +4358,9 @@ function init_ManagedMemberInspector() {
|
|
|
4070
4358
|
requires_artifact_sha256: target.sha256,
|
|
4071
4359
|
requires_mvid: inventory.module?.mvid ?? null
|
|
4072
4360
|
},
|
|
4073
|
-
types
|
|
4361
|
+
types,
|
|
4362
|
+
signature_resolution: "type-names-v1",
|
|
4363
|
+
nesting_read: parsedTypes.nesting.complete,
|
|
4074
4364
|
exported_types: exportedTypes.exportedTypes,
|
|
4075
4365
|
fields: fields.fields,
|
|
4076
4366
|
methods: methods.methods,
|
|
@@ -4084,6 +4374,7 @@ function init_ManagedMemberInspector() {
|
|
|
4084
4374
|
issues: coverageIssues
|
|
4085
4375
|
},
|
|
4086
4376
|
limitations: [
|
|
4377
|
+
...unnamedTypes === 0 ? [] : [`${String(unnamedTypes)} returned TypeDef name identity(s) remain unresolved; incomplete, missing, contradictory, cyclic or over-deep enclosing facts cannot be repaired by bare display names.`],
|
|
4087
4378
|
"Metadata tokens are build-local coordinates and are only meaningful with the reported artifact SHA-256 and MVID.",
|
|
4088
4379
|
"CIL instruction anchors are decoded from file-backed method bodies only; no target assembly is loaded or executed.",
|
|
4089
4380
|
"Exported types are reported from ExportedType rows as declared; forwarded types are not resolved in their implementing assemblies.",
|
|
@@ -4138,16 +4429,15 @@ function init_ManagedSnapshot() {
|
|
|
4138
4429
|
if (metadata.size > 134217728) throw managedSnapshotCapacityError(operation);
|
|
4139
4430
|
const digest = createHash("sha256");
|
|
4140
4431
|
let byteLength = 0;
|
|
4141
|
-
const
|
|
4142
|
-
|
|
4143
|
-
...signal === undefined ? {} : { signal }
|
|
4144
|
-
});
|
|
4145
|
-
for await (const chunk of stream) {
|
|
4432
|
+
const chunk = Buffer.allocUnsafe(64 * 1024);
|
|
4433
|
+
for (;;) {
|
|
4146
4434
|
signal?.throwIfAborted();
|
|
4147
|
-
|
|
4148
|
-
|
|
4149
|
-
|
|
4150
|
-
|
|
4435
|
+
const { bytesRead } = await handle.read(chunk, 0, Math.min(chunk.length, MAX_MANAGED_SNAPSHOT_BYTES - byteLength + 1), null);
|
|
4436
|
+
signal?.throwIfAborted();
|
|
4437
|
+
if (bytesRead === 0) break;
|
|
4438
|
+
if (bytesRead > 134217728 - byteLength) throw managedSnapshotCapacityError(operation);
|
|
4439
|
+
byteLength += bytesRead;
|
|
4440
|
+
digest.update(chunk.subarray(0, bytesRead));
|
|
4151
4441
|
}
|
|
4152
4442
|
return {
|
|
4153
4443
|
byteLength,
|
|
@@ -4158,6 +4448,7 @@ function init_ManagedSnapshot() {
|
|
|
4158
4448
|
throw normalizeManagedReadFailure(cause, path, operation, options.signal);
|
|
4159
4449
|
});
|
|
4160
4450
|
normalizeManagedReadFailure = (cause, fallbackPath, operation, signal) => {
|
|
4451
|
+
if (signal?.aborted === true && cause === signal.reason) return normalizeReadFailure(cause, fallbackPath, operation, signal);
|
|
4161
4452
|
const cleanupError = managedCleanupError(cause, fallbackPath, operation, signal);
|
|
4162
4453
|
if (cleanupError !== undefined) return cleanupError;
|
|
4163
4454
|
return normalizeReadFailure(cause, fallbackPath, operation, signal);
|
|
@@ -4177,9 +4468,14 @@ function init_ManagedSnapshot() {
|
|
|
4177
4468
|
});
|
|
4178
4469
|
return undefined;
|
|
4179
4470
|
};
|
|
4180
|
-
normalizeReadFailure = (cause, path, operation, signal) =>
|
|
4471
|
+
normalizeReadFailure = (cause, path, operation, signal) => {
|
|
4472
|
+
if (signal?.aborted === true && cause === signal.reason) return new AnalysisCancelledError(operation, { cause });
|
|
4473
|
+
if (cause instanceof RegularFileChangedError) return new EvidenceIntegrityError(`Managed source changed while ${operation} was reading ${path}.`, { cause });
|
|
4474
|
+
if (cause instanceof AnalysisError) return cause;
|
|
4475
|
+
return classifyBinaryTargetFilesystemFailure(path, cause) ?? (signal?.aborted === true ? new AnalysisCancelledError(operation, { cause }) : cause);
|
|
4476
|
+
};
|
|
4181
4477
|
})))();
|
|
4182
4478
|
}
|
|
4183
4479
|
|
|
4184
4480
|
//#endregion
|
|
4185
|
-
export { ManagedReaderFailure, admitManagedProjection, hashManagedSource, init_ManagedDecodeBudget, init_ManagedMemberInspector, init_ManagedMetadataHeaps, init_ManagedMetadataInventory, init_ManagedMetadataLayout, init_ManagedPeReader, init_ManagedReaderFailure, init_ManagedSnapshot, init_ManagedTypeMemberLists, inspectManagedMembersBytes, managedCleanupError, managedCli32BitRequirement, managedDecodeBudget, managedTableRowCounts, metadataCodedToken, metadataCodedTokenInvalidReason, metadataRowCursor, metadataToken, readManagedMetadataInventory, readManagedMetadataLayout, readManagedPeLayout, readManagedResourceDirectory, readManagedSnapshot, readManagedValue, readMetadataString, readTypeMemberListFacts };
|
|
4481
|
+
export { ManagedReaderFailure, admitManagedProjection, hashManagedSource, init_ManagedDecodeBudget, init_ManagedMemberInspector, init_ManagedMetadataHeaps, init_ManagedMetadataInventory, init_ManagedMetadataLayout, init_ManagedPeReader, init_ManagedReaderFailure, init_ManagedSnapshot, init_ManagedTypeMemberLists, inspectManagedMembersBytes, managedCleanupError, managedCli32BitRequirement, managedCliIsMixedClrNative, managedDecodeBudget, managedTableRowCounts, metadataCodedToken, metadataCodedTokenInvalidReason, metadataRowCursor, metadataToken, readManagedMetadataInventory, readManagedMetadataLayout, readManagedPeLayout, readManagedResourceDirectory, readManagedSnapshot, readManagedValue, readMetadataString, readTypeMemberListFacts };
|