@swarmvaultai/engine 3.7.3 → 3.9.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/dist/chunk-2PN46RDI.js +26846 -0
- package/dist/chunk-563TZ4TZ.js +26573 -0
- package/dist/chunk-WOA5LSNB.js +26559 -0
- package/dist/index.d.ts +45 -1
- package/dist/index.js +207 -16
- package/dist/memory-HEA7XNKB.js +32 -0
- package/dist/memory-PK5JJNAG.js +32 -0
- package/dist/memory-YKQWWIVY.js +32 -0
- package/dist/vendor/tree-sitter-julia.wasm +0 -0
- package/dist/vendor/tree-sitter-systemverilog.wasm +0 -0
- package/package.json +4 -2
package/dist/index.d.ts
CHANGED
|
@@ -905,6 +905,25 @@ interface GraphStatsResult {
|
|
|
905
905
|
edgeRelations: Record<string, number>;
|
|
906
906
|
hyperedgeRelations: Record<string, number>;
|
|
907
907
|
}
|
|
908
|
+
type GraphValidationSeverity = "error" | "warning";
|
|
909
|
+
interface GraphValidationIssue {
|
|
910
|
+
severity: GraphValidationSeverity;
|
|
911
|
+
code: string;
|
|
912
|
+
message: string;
|
|
913
|
+
path?: string;
|
|
914
|
+
id?: string;
|
|
915
|
+
refs?: string[];
|
|
916
|
+
}
|
|
917
|
+
interface GraphValidationResult {
|
|
918
|
+
ok: boolean;
|
|
919
|
+
strict: boolean;
|
|
920
|
+
generatedAt: string;
|
|
921
|
+
counts: GraphStatsResult["counts"];
|
|
922
|
+
errorCount: number;
|
|
923
|
+
warningCount: number;
|
|
924
|
+
issues: GraphValidationIssue[];
|
|
925
|
+
summary: string;
|
|
926
|
+
}
|
|
908
927
|
interface GraphClusterRefreshResult {
|
|
909
928
|
graphPath: string;
|
|
910
929
|
nodeCount: number;
|
|
@@ -955,6 +974,20 @@ interface GraphQueryMatch {
|
|
|
955
974
|
label: string;
|
|
956
975
|
score: number;
|
|
957
976
|
}
|
|
977
|
+
type GraphQueryRelationGroup = "calls" | "imports" | "types" | "data" | "rationale" | "evidence";
|
|
978
|
+
interface GraphQueryFilters {
|
|
979
|
+
relations?: string[];
|
|
980
|
+
relationGroups?: GraphQueryRelationGroup[];
|
|
981
|
+
evidenceClasses?: EvidenceClass[];
|
|
982
|
+
nodeTypes?: GraphNode["type"][];
|
|
983
|
+
languages?: CodeLanguage[];
|
|
984
|
+
}
|
|
985
|
+
interface GraphQueryFilterStats {
|
|
986
|
+
active: boolean;
|
|
987
|
+
droppedEdges: number;
|
|
988
|
+
droppedNodes: number;
|
|
989
|
+
expandedRelations: string[];
|
|
990
|
+
}
|
|
958
991
|
interface GraphQueryResult {
|
|
959
992
|
question: string;
|
|
960
993
|
traversal: "bfs" | "dfs";
|
|
@@ -967,6 +1000,8 @@ interface GraphQueryResult {
|
|
|
967
1000
|
communities: string[];
|
|
968
1001
|
summary: string;
|
|
969
1002
|
matches: GraphQueryMatch[];
|
|
1003
|
+
filters?: GraphQueryFilters;
|
|
1004
|
+
filterStats?: GraphQueryFilterStats;
|
|
970
1005
|
}
|
|
971
1006
|
interface GraphPathResult {
|
|
972
1007
|
from: string;
|
|
@@ -2466,6 +2501,10 @@ declare function getGraphStatus(rootDir: string, options?: {
|
|
|
2466
2501
|
repoRoots?: string[];
|
|
2467
2502
|
}): Promise<GraphStatusResult>;
|
|
2468
2503
|
|
|
2504
|
+
declare function graphStats(graph: GraphArtifact): GraphStatsResult;
|
|
2505
|
+
declare function validateGraphArtifact(graph: GraphArtifact, options?: {
|
|
2506
|
+
strict?: boolean;
|
|
2507
|
+
}): GraphValidationResult;
|
|
2469
2508
|
declare function graphDiff(oldGraph: GraphArtifact, newGraph: GraphArtifact): GraphDiffResult;
|
|
2470
2509
|
/**
|
|
2471
2510
|
* Compute the blast radius of changing a file/module by tracing reverse import
|
|
@@ -3027,12 +3066,17 @@ declare function searchVault(rootDir: string, query: string, limit?: number): Pr
|
|
|
3027
3066
|
declare function queryGraphVault(rootDir: string, rawQuestion: string, options?: {
|
|
3028
3067
|
traversal?: "bfs" | "dfs";
|
|
3029
3068
|
budget?: number;
|
|
3069
|
+
filters?: GraphQueryFilters;
|
|
3030
3070
|
}): Promise<GraphQueryResult>;
|
|
3031
3071
|
declare function benchmarkVault(rootDir: string, options?: BenchmarkOptions): Promise<BenchmarkArtifact>;
|
|
3032
3072
|
declare function pathGraphVault(rootDir: string, from: string, to: string): Promise<GraphPathResult>;
|
|
3033
3073
|
declare function explainGraphVault(rootDir: string, target: string): Promise<GraphExplainResult>;
|
|
3034
3074
|
declare function listGraphHyperedges(rootDir: string, target?: string, limit?: number): Promise<GraphHyperedge[]>;
|
|
3035
3075
|
declare function graphStatsVault(rootDir: string): Promise<GraphStatsResult>;
|
|
3076
|
+
declare function validateGraphVault(rootDir: string, options?: {
|
|
3077
|
+
graphPath?: string;
|
|
3078
|
+
strict?: boolean;
|
|
3079
|
+
}): Promise<ReturnType<typeof validateGraphArtifact>>;
|
|
3036
3080
|
declare function refreshGraphClusters(rootDir: string, options?: {
|
|
3037
3081
|
resolution?: number;
|
|
3038
3082
|
}): Promise<GraphClusterRefreshResult>;
|
|
@@ -3140,4 +3184,4 @@ declare function createWebSearchAdapter(id: string, config: WebSearchProviderCon
|
|
|
3140
3184
|
type WebSearchTaskId = "deepLintProvider" | "queryProvider" | "exploreProvider";
|
|
3141
3185
|
declare function getWebSearchAdapterForTask(rootDir: string, task: WebSearchTaskId): Promise<WebSearchAdapter>;
|
|
3142
3186
|
|
|
3143
|
-
export { ALL_MIGRATIONS, type AddOptions, type AddResult, type AgentMemoryDecision, type AgentMemoryNote, type AgentMemoryResumeFormat, type AgentMemoryTask, type AgentMemoryTaskResult, type AgentMemoryTaskStatus, type AgentMemoryTaskSummary, type AgentType, type AnalyzedTerm, type ApprovalBundleType, type ApprovalChangeType, type ApprovalDetail, type ApprovalDiffHunk, type ApprovalDiffLine, type ApprovalEntry, type ApprovalEntryDetail, type ApprovalEntryLabel, type ApprovalEntryStatus, type ApprovalFrontmatterChange, type ApprovalManifest, type ApprovalStructuredDiff, type ApprovalSummary, type AudioTranscriptionRequest, type AudioTranscriptionResponse, type BenchmarkArtifact, type BenchmarkByClassEntry, type BenchmarkOptions, type BenchmarkQuestionResult, type BenchmarkSummary, type BlastRadiusResult, type BuildContextPackOptions, type BuildContextPackResult, type CandidatePromotionConfig, type CandidateRecord, type ChartDatum, type ChartSpec, type ClaimStatus, type CodeAnalysis, type CodeDiagnostic, type CodeImport, type CodeIndexArtifact, type CodeIndexEntry, type CodeLanguage, type CodeRelation, type CodeSymbol, type CodeSymbolKind, type CommandRoleExecutorConfig, type CompileOptions, type CompileResult, type CompileState, type ConsolidationConfig, type ConsolidationPromotion, type ConsolidationResult, type ContextPack, type ContextPackFormat, type ContextPackItem, type ContextPackItemKind, type ContextPackOmittedItem, type ContextPackSummary, DEFAULT_CONSOLIDATION_CONFIG, DEFAULT_HALF_LIFE_DAYS, DEFAULT_HALF_LIFE_DAYS_BY_SOURCE_CLASS, DEFAULT_PROMOTION_CONFIG, DEFAULT_REDACTION_PATTERNS, DEFAULT_STALE_THRESHOLD, type DegradationOutcome, type DirectoryIngestFailure, type DirectoryIngestResult, type DirectoryIngestSkip, type EmbeddingCacheArtifact, type EmbeddingCacheEntry, type EvidenceClass, type ExploreOptions, type ExploreResult, type ExploreStepResult, type ExtractionClaim, type ExtractionKind, type ExtractionTerm, type FinishMemoryTaskOptions, type Freshness, type FreshnessConfig, type GenerationAttachment, type GenerationRequest, type GenerationResponse, type GitHookStatus, type GraphArtifact, type GraphClusterRefreshResult, type GraphCommunityResult, type GraphDiffResult, type GraphEdge, type GraphExplainNeighbor, type GraphExplainResult, type GraphExportFormat, type GraphExportResult, type GraphHyperedge, type GraphNode, type GraphPage, type GraphPathResult, type GraphPushCounts, type GraphPushNeo4jOptions, type GraphPushResult, type GraphQueryMatch, type GraphQueryResult, type GraphReportArtifact, type GraphShareArtifact, type GraphShareBundleFile, type GraphShrinkDimension, type GraphShrinkGuardResult, type GraphStatsResult, type GraphStatusChange, type GraphStatusResult, type GuidedSessionMode, type GuidedSourceSessionAnswers, type GuidedSourceSessionQuestion, type GuidedSourceSessionRecord, type GuidedSourceSessionStatus, type ImageGenerationRequest, type ImageGenerationResponse, type ImageVisionExtraction, type InboxImportResult, type InboxImportSkip, type IngestOptions, type InitOptions, type InputIngestResult, type InstallAgentOptions, type InstallAgentResult, LARGE_REPO_NODE_THRESHOLD, LOCAL_WHISPER_MODEL_SIZES, type LintFinding, type LintOptions, type LocalWhisperAdapterOptions, type LocalWhisperBinaryDiscovery, LocalWhisperProviderAdapter, type LocalWhisperSetupStatus, type ManagedSourceAddOptions, type ManagedSourceAddResult, type ManagedSourceDeleteResult, type ManagedSourceKind, type ManagedSourceRecord, type ManagedSourceReloadOptions, type ManagedSourceReloadResult, type ManagedSourceStatus, type ManagedSourceSyncCounts, type ManagedSourcesArtifact, type MemoryTier, type MigrationPlan, type MigrationResult, type MigrationStep, type Neo4jGraphSinkConfig, OPENAI_COMPATIBLE_CAPABILITY_MATRIX, type OpenAiCompatiblePresetId, type OrchestrationConfig, type OrchestrationFinding, type OrchestrationProposal, type OrchestrationRole, type OrchestrationRoleConfig, type OrchestrationRoleResult, type OutputAsset, type OutputAssetRole, type OutputFormat, type OutputOrigin, type PageKind, type PageManager, type PageStatus, type PendingSemanticRefreshEntry, type Polarity, type PromotionDecision, type PromotionGateKind, type PromotionGateResult, type PromotionSession, type ProviderAdapter, type ProviderCapability, type ProviderConfig, type ProviderPresetCapability, type ProviderRegistrationOptions, type ProviderRegistrationResult, type ProviderRoleExecutorConfig, type ProviderType, type QueryOptions, type QueryResult, type RedactionMatchSummary, type RedactionPatternConfig, type RedactionSettings, type RedactionSummary, type RepoSyncResult, type ResolvedLargeRepoDefaults, type ResolvedPaths, type ResumeMemoryTaskOptions, type ResumeMemoryTaskResult, type RetrievalConfig, type RetrievalDoctorResult, type RetrievalManifest, type RetrievalStatus, type ReviewActionResult, type RoleExecutorConfig, SWARMVAULT_OUT_ENV, type SceneElement, type SceneSpec, type ScheduleController, type ScheduleJobConfig, type ScheduleStateRecord, type ScheduleTriggerConfig, type ScheduledCompileTask, type ScheduledConsolidateTask, type ScheduledExploreTask, type ScheduledLintTask, type ScheduledQueryTask, type ScheduledRunResult, type ScheduledTaskConfig, type SearchResult, type SourceAnalysis, type SourceAttachment, type SourceCaptureType, type SourceClaim, type SourceClass, type SourceExtractionArtifact, type SourceGuideResult, type SourceKind, type SourceManifest, type SourceRationale, type SourceReviewResult, type StartMemoryTaskOptions, type SynthesizedHubEdge, type SynthesizedHubNode, type SynthesizedHyperedgeHubs, type UpdateMemoryTaskOptions, type VaultConfig, type VaultDashboardPack, type VaultDoctorAction, type VaultDoctorCheck, type VaultDoctorCounts, type VaultDoctorRecommendation, type VaultDoctorRecommendationPriority, type VaultDoctorReport, type VaultDoctorSafeAction, type VaultDoctorStatus, type VaultProfileConfig, type VaultProfilePreset, type VaultVersionRecord, type WatchConfig, type WatchController, type WatchOptions, type WatchRepoSyncResult, type WatchRunRecord, type WatchStatusResult, type WebSearchAdapter, type WebSearchProviderConfig, type WebSearchProviderType, type WebSearchResult, type WhisperRunResult, type WhisperRunner, acceptApproval, addInput, addManagedSource, addWatchedRoot, agentTypeSchema, applyDecayToPages, archiveCandidate, assertProviderCapability, autoCommitWikiChanges, benchmarkVault, blastRadius, blastRadiusVault, bootstrapDemo, buildConfiguredRedactor, buildContextPack, buildGraphShareArtifact, buildGraphTree, buildMemoryGraphElements, buildRedactor, checkTrackedRepoChanges, compileVault, computeDecayScore, consolidateVault, createMcpServer, createProvider, createSupersessionEdge, createWebSearchAdapter, defaultVaultConfig, defaultVaultSchema, deleteContextPack, deleteManagedSource, detectVaultVersion, discoverLocalWhisperBinary, doctorRetrieval, doctorVault, downloadWhisperModel, ensureMemoryLedger, estimatePageTokens, estimateTokens, evaluateCandidateForPromotion, evaluateGraphShrinkGuard, expectedModelPath, explainGraphVault, exploreVault, exportGraphFormat, exportGraphHtml, exportGraphReportHtml, exportGraphTree, exportObsidianCanvas, exportObsidianVault, finishMemoryTask, getGitHookStatus, getGraphCommunityVault, getGraphStatus, getProviderForTask, getRetrievalStatus, getWatchStatus, getWebSearchAdapterForTask, getWorkspaceInfo, graphDiff, graphStatsVault, guideManagedSource, guideSourceScope, importInbox, ingestDirectory, ingestInput, ingestInputDetailed, initVault, initWorkspace, installAgent, installConfiguredAgents, installGitHooks, lintVault, listApprovals, listCandidates, listContextPacks, listGodNodes, listGraphHyperedges, listManagedSourceRecords, listManifests, listMemoryTasks, listPages, listSchedules, listTrackedRepoRoots, listWatchedRoots, loadMemoryTaskPages, loadVaultConfig, loadVaultSchema, loadVaultSchemas, lookupPresetCapabilities, markSuperseded, memoryTaskHashes, mergeGraphFiles, modelDownloadUrl, pathGraphVault, persistDecayFrontmatter, planMigration, previewCandidatePromotions, projectGraphAfterRemovals, promoteCandidate, providerCapabilitySchema, providerTypeSchema, pushGraphNeo4j, queryGraphVault, queryVault, readApproval, readContextPack, readExtractedText, readGraphReport, readMemoryTask, readPage, rebuildRetrievalIndex, refreshGraphClusters, registerLocalWhisperProvider, rejectApproval, reloadManagedSources, removeWatchedRoot, renderContextPackLlms, renderContextPackMarkdown, renderGraphShareBundleFiles, renderGraphShareMarkdown, renderGraphSharePreviewHtml, renderGraphShareSvg, renderGraphTreeHtml, renderMemoryTaskMarkdown, resetDecay, resolveArtifactRootDir, resolveConsolidationConfig, resolveDecayConfig, resolveLargeRepoDefaults, resolvePaths, resolveRedactionPatterns, resolveRetrievalConfig, resolveWatchedRepoRoots, resumeMemoryTask, resumeSourceSession, reviewManagedSource, reviewSourceScope, runAutoPromotion, runConsolidation, runDecayPass, runMigration, runSchedule, runWatchCycle, searchVault, serveSchedules, stageGeneratedOutputPages, startGraphServer, startMcpServer, startMemoryTask, summarizeLocalWhisperSetup, syncTrackedRepos, syncTrackedReposForWatch, synthesizeHyperedgeHubs, trimToTokenBudget, uninstallGitHooks, updateMemoryTask, watchVault, webSearchProviderTypeSchema, withCapabilityFallback, writeRetrievalManifest };
|
|
3187
|
+
export { ALL_MIGRATIONS, type AddOptions, type AddResult, type AgentMemoryDecision, type AgentMemoryNote, type AgentMemoryResumeFormat, type AgentMemoryTask, type AgentMemoryTaskResult, type AgentMemoryTaskStatus, type AgentMemoryTaskSummary, type AgentType, type AnalyzedTerm, type ApprovalBundleType, type ApprovalChangeType, type ApprovalDetail, type ApprovalDiffHunk, type ApprovalDiffLine, type ApprovalEntry, type ApprovalEntryDetail, type ApprovalEntryLabel, type ApprovalEntryStatus, type ApprovalFrontmatterChange, type ApprovalManifest, type ApprovalStructuredDiff, type ApprovalSummary, type AudioTranscriptionRequest, type AudioTranscriptionResponse, type BenchmarkArtifact, type BenchmarkByClassEntry, type BenchmarkOptions, type BenchmarkQuestionResult, type BenchmarkSummary, type BlastRadiusResult, type BuildContextPackOptions, type BuildContextPackResult, type CandidatePromotionConfig, type CandidateRecord, type ChartDatum, type ChartSpec, type ClaimStatus, type CodeAnalysis, type CodeDiagnostic, type CodeImport, type CodeIndexArtifact, type CodeIndexEntry, type CodeLanguage, type CodeRelation, type CodeSymbol, type CodeSymbolKind, type CommandRoleExecutorConfig, type CompileOptions, type CompileResult, type CompileState, type ConsolidationConfig, type ConsolidationPromotion, type ConsolidationResult, type ContextPack, type ContextPackFormat, type ContextPackItem, type ContextPackItemKind, type ContextPackOmittedItem, type ContextPackSummary, DEFAULT_CONSOLIDATION_CONFIG, DEFAULT_HALF_LIFE_DAYS, DEFAULT_HALF_LIFE_DAYS_BY_SOURCE_CLASS, DEFAULT_PROMOTION_CONFIG, DEFAULT_REDACTION_PATTERNS, DEFAULT_STALE_THRESHOLD, type DegradationOutcome, type DirectoryIngestFailure, type DirectoryIngestResult, type DirectoryIngestSkip, type EmbeddingCacheArtifact, type EmbeddingCacheEntry, type EvidenceClass, type ExploreOptions, type ExploreResult, type ExploreStepResult, type ExtractionClaim, type ExtractionKind, type ExtractionTerm, type FinishMemoryTaskOptions, type Freshness, type FreshnessConfig, type GenerationAttachment, type GenerationRequest, type GenerationResponse, type GitHookStatus, type GraphArtifact, type GraphClusterRefreshResult, type GraphCommunityResult, type GraphDiffResult, type GraphEdge, type GraphExplainNeighbor, type GraphExplainResult, type GraphExportFormat, type GraphExportResult, type GraphHyperedge, type GraphNode, type GraphPage, type GraphPathResult, type GraphPushCounts, type GraphPushNeo4jOptions, type GraphPushResult, type GraphQueryFilterStats, type GraphQueryFilters, type GraphQueryMatch, type GraphQueryRelationGroup, type GraphQueryResult, type GraphReportArtifact, type GraphShareArtifact, type GraphShareBundleFile, type GraphShrinkDimension, type GraphShrinkGuardResult, type GraphStatsResult, type GraphStatusChange, type GraphStatusResult, type GraphValidationIssue, type GraphValidationResult, type GraphValidationSeverity, type GuidedSessionMode, type GuidedSourceSessionAnswers, type GuidedSourceSessionQuestion, type GuidedSourceSessionRecord, type GuidedSourceSessionStatus, type ImageGenerationRequest, type ImageGenerationResponse, type ImageVisionExtraction, type InboxImportResult, type InboxImportSkip, type IngestOptions, type InitOptions, type InputIngestResult, type InstallAgentOptions, type InstallAgentResult, LARGE_REPO_NODE_THRESHOLD, LOCAL_WHISPER_MODEL_SIZES, type LintFinding, type LintOptions, type LocalWhisperAdapterOptions, type LocalWhisperBinaryDiscovery, LocalWhisperProviderAdapter, type LocalWhisperSetupStatus, type ManagedSourceAddOptions, type ManagedSourceAddResult, type ManagedSourceDeleteResult, type ManagedSourceKind, type ManagedSourceRecord, type ManagedSourceReloadOptions, type ManagedSourceReloadResult, type ManagedSourceStatus, type ManagedSourceSyncCounts, type ManagedSourcesArtifact, type MemoryTier, type MigrationPlan, type MigrationResult, type MigrationStep, type Neo4jGraphSinkConfig, OPENAI_COMPATIBLE_CAPABILITY_MATRIX, type OpenAiCompatiblePresetId, type OrchestrationConfig, type OrchestrationFinding, type OrchestrationProposal, type OrchestrationRole, type OrchestrationRoleConfig, type OrchestrationRoleResult, type OutputAsset, type OutputAssetRole, type OutputFormat, type OutputOrigin, type PageKind, type PageManager, type PageStatus, type PendingSemanticRefreshEntry, type Polarity, type PromotionDecision, type PromotionGateKind, type PromotionGateResult, type PromotionSession, type ProviderAdapter, type ProviderCapability, type ProviderConfig, type ProviderPresetCapability, type ProviderRegistrationOptions, type ProviderRegistrationResult, type ProviderRoleExecutorConfig, type ProviderType, type QueryOptions, type QueryResult, type RedactionMatchSummary, type RedactionPatternConfig, type RedactionSettings, type RedactionSummary, type RepoSyncResult, type ResolvedLargeRepoDefaults, type ResolvedPaths, type ResumeMemoryTaskOptions, type ResumeMemoryTaskResult, type RetrievalConfig, type RetrievalDoctorResult, type RetrievalManifest, type RetrievalStatus, type ReviewActionResult, type RoleExecutorConfig, SWARMVAULT_OUT_ENV, type SceneElement, type SceneSpec, type ScheduleController, type ScheduleJobConfig, type ScheduleStateRecord, type ScheduleTriggerConfig, type ScheduledCompileTask, type ScheduledConsolidateTask, type ScheduledExploreTask, type ScheduledLintTask, type ScheduledQueryTask, type ScheduledRunResult, type ScheduledTaskConfig, type SearchResult, type SourceAnalysis, type SourceAttachment, type SourceCaptureType, type SourceClaim, type SourceClass, type SourceExtractionArtifact, type SourceGuideResult, type SourceKind, type SourceManifest, type SourceRationale, type SourceReviewResult, type StartMemoryTaskOptions, type SynthesizedHubEdge, type SynthesizedHubNode, type SynthesizedHyperedgeHubs, type UpdateMemoryTaskOptions, type VaultConfig, type VaultDashboardPack, type VaultDoctorAction, type VaultDoctorCheck, type VaultDoctorCounts, type VaultDoctorRecommendation, type VaultDoctorRecommendationPriority, type VaultDoctorReport, type VaultDoctorSafeAction, type VaultDoctorStatus, type VaultProfileConfig, type VaultProfilePreset, type VaultVersionRecord, type WatchConfig, type WatchController, type WatchOptions, type WatchRepoSyncResult, type WatchRunRecord, type WatchStatusResult, type WebSearchAdapter, type WebSearchProviderConfig, type WebSearchProviderType, type WebSearchResult, type WhisperRunResult, type WhisperRunner, acceptApproval, addInput, addManagedSource, addWatchedRoot, agentTypeSchema, applyDecayToPages, archiveCandidate, assertProviderCapability, autoCommitWikiChanges, benchmarkVault, blastRadius, blastRadiusVault, bootstrapDemo, buildConfiguredRedactor, buildContextPack, buildGraphShareArtifact, buildGraphTree, buildMemoryGraphElements, buildRedactor, checkTrackedRepoChanges, compileVault, computeDecayScore, consolidateVault, createMcpServer, createProvider, createSupersessionEdge, createWebSearchAdapter, defaultVaultConfig, defaultVaultSchema, deleteContextPack, deleteManagedSource, detectVaultVersion, discoverLocalWhisperBinary, doctorRetrieval, doctorVault, downloadWhisperModel, ensureMemoryLedger, estimatePageTokens, estimateTokens, evaluateCandidateForPromotion, evaluateGraphShrinkGuard, expectedModelPath, explainGraphVault, exploreVault, exportGraphFormat, exportGraphHtml, exportGraphReportHtml, exportGraphTree, exportObsidianCanvas, exportObsidianVault, finishMemoryTask, getGitHookStatus, getGraphCommunityVault, getGraphStatus, getProviderForTask, getRetrievalStatus, getWatchStatus, getWebSearchAdapterForTask, getWorkspaceInfo, graphDiff, graphStats, graphStatsVault, guideManagedSource, guideSourceScope, importInbox, ingestDirectory, ingestInput, ingestInputDetailed, initVault, initWorkspace, installAgent, installConfiguredAgents, installGitHooks, lintVault, listApprovals, listCandidates, listContextPacks, listGodNodes, listGraphHyperedges, listManagedSourceRecords, listManifests, listMemoryTasks, listPages, listSchedules, listTrackedRepoRoots, listWatchedRoots, loadMemoryTaskPages, loadVaultConfig, loadVaultSchema, loadVaultSchemas, lookupPresetCapabilities, markSuperseded, memoryTaskHashes, mergeGraphFiles, modelDownloadUrl, pathGraphVault, persistDecayFrontmatter, planMigration, previewCandidatePromotions, projectGraphAfterRemovals, promoteCandidate, providerCapabilitySchema, providerTypeSchema, pushGraphNeo4j, queryGraphVault, queryVault, readApproval, readContextPack, readExtractedText, readGraphReport, readMemoryTask, readPage, rebuildRetrievalIndex, refreshGraphClusters, registerLocalWhisperProvider, rejectApproval, reloadManagedSources, removeWatchedRoot, renderContextPackLlms, renderContextPackMarkdown, renderGraphShareBundleFiles, renderGraphShareMarkdown, renderGraphSharePreviewHtml, renderGraphShareSvg, renderGraphTreeHtml, renderMemoryTaskMarkdown, resetDecay, resolveArtifactRootDir, resolveConsolidationConfig, resolveDecayConfig, resolveLargeRepoDefaults, resolvePaths, resolveRedactionPatterns, resolveRetrievalConfig, resolveWatchedRepoRoots, resumeMemoryTask, resumeSourceSession, reviewManagedSource, reviewSourceScope, runAutoPromotion, runConsolidation, runDecayPass, runMigration, runSchedule, runWatchCycle, searchVault, serveSchedules, stageGeneratedOutputPages, startGraphServer, startMcpServer, startMemoryTask, summarizeLocalWhisperSetup, syncTrackedRepos, syncTrackedReposForWatch, synthesizeHyperedgeHubs, trimToTokenBudget, uninstallGitHooks, updateMemoryTask, validateGraphArtifact, validateGraphVault, watchVault, webSearchProviderTypeSchema, withCapabilityFallback, writeRetrievalManifest };
|
package/dist/index.js
CHANGED
|
@@ -45,6 +45,7 @@ import {
|
|
|
45
45
|
getWorkspaceInfo,
|
|
46
46
|
graphDiff,
|
|
47
47
|
graphHash,
|
|
48
|
+
graphStats,
|
|
48
49
|
graphStatsVault,
|
|
49
50
|
guidedSourceSessionStatePath,
|
|
50
51
|
importInbox,
|
|
@@ -121,11 +122,13 @@ import {
|
|
|
121
122
|
syncTrackedRepos,
|
|
122
123
|
syncTrackedReposForWatch,
|
|
123
124
|
updateMemoryTask,
|
|
125
|
+
validateGraphArtifact,
|
|
126
|
+
validateGraphVault,
|
|
124
127
|
validateUrlSafety,
|
|
125
128
|
writeGuidedSourceSession,
|
|
126
129
|
writeRetrievalManifest,
|
|
127
130
|
writeWatchStatusArtifact
|
|
128
|
-
} from "./chunk-
|
|
131
|
+
} from "./chunk-2PN46RDI.js";
|
|
129
132
|
import {
|
|
130
133
|
LocalWhisperProviderAdapter,
|
|
131
134
|
SWARMVAULT_OUT_ENV,
|
|
@@ -4410,6 +4413,23 @@ function compareTreeNodes(left, right) {
|
|
|
4410
4413
|
function escapeHtml(value) {
|
|
4411
4414
|
return value.replaceAll("&", "&").replaceAll("<", "<").replaceAll(">", ">").replaceAll('"', """);
|
|
4412
4415
|
}
|
|
4416
|
+
function escapeAttribute(value) {
|
|
4417
|
+
return escapeHtml(value).replaceAll("'", "'");
|
|
4418
|
+
}
|
|
4419
|
+
function escapeScriptJson(value) {
|
|
4420
|
+
return JSON.stringify(value).replace(/[<>&]/g, (character) => {
|
|
4421
|
+
switch (character) {
|
|
4422
|
+
case "<":
|
|
4423
|
+
return "\\u003c";
|
|
4424
|
+
case ">":
|
|
4425
|
+
return "\\u003e";
|
|
4426
|
+
case "&":
|
|
4427
|
+
return "\\u0026";
|
|
4428
|
+
default:
|
|
4429
|
+
return character;
|
|
4430
|
+
}
|
|
4431
|
+
});
|
|
4432
|
+
}
|
|
4413
4433
|
function normalizeSourcePath(rootDir, source) {
|
|
4414
4434
|
const candidate = source.repoRelativePath ?? source.originalPath ?? source.storedPath ?? source.title;
|
|
4415
4435
|
if (source.repoRelativePath) {
|
|
@@ -4538,6 +4558,43 @@ function buildGraphTree(graph, options = {}) {
|
|
|
4538
4558
|
}
|
|
4539
4559
|
return sortAndCapTree(root, Math.max(1, options.maxChildren ?? DEFAULT_MAX_CHILDREN));
|
|
4540
4560
|
}
|
|
4561
|
+
function collectTreeInspectorEntries(tree, graph) {
|
|
4562
|
+
const graphNodes = new Map(graph.nodes.map((node) => [node.id, node]));
|
|
4563
|
+
const entries = {};
|
|
4564
|
+
const visit = (node) => {
|
|
4565
|
+
const edges = node.nodeId ? graph.edges.filter((edge) => edge.source === node.nodeId || edge.target === node.nodeId).slice().sort((left, right) => right.confidence - left.confidence || left.relation.localeCompare(right.relation)).slice(0, 8).map((edge) => {
|
|
4566
|
+
const outgoing = edge.source === node.nodeId;
|
|
4567
|
+
const otherId = outgoing ? edge.target : edge.source;
|
|
4568
|
+
return {
|
|
4569
|
+
id: edge.id,
|
|
4570
|
+
relation: edge.relation,
|
|
4571
|
+
direction: outgoing ? "outgoing" : "incoming",
|
|
4572
|
+
otherId,
|
|
4573
|
+
otherLabel: graphNodes.get(otherId)?.label ?? otherId,
|
|
4574
|
+
evidenceClass: edge.evidenceClass,
|
|
4575
|
+
confidence: edge.confidence
|
|
4576
|
+
};
|
|
4577
|
+
}) : [];
|
|
4578
|
+
entries[node.id] = {
|
|
4579
|
+
id: node.id,
|
|
4580
|
+
label: node.label,
|
|
4581
|
+
kind: node.kind,
|
|
4582
|
+
count: node.count,
|
|
4583
|
+
path: node.path,
|
|
4584
|
+
sourceId: node.sourceId,
|
|
4585
|
+
nodeId: node.nodeId,
|
|
4586
|
+
language: node.language,
|
|
4587
|
+
symbolKind: node.symbolKind,
|
|
4588
|
+
hiddenChildren: node.hiddenChildren,
|
|
4589
|
+
edges
|
|
4590
|
+
};
|
|
4591
|
+
for (const child of node.children) {
|
|
4592
|
+
visit(child);
|
|
4593
|
+
}
|
|
4594
|
+
};
|
|
4595
|
+
visit(tree);
|
|
4596
|
+
return entries;
|
|
4597
|
+
}
|
|
4541
4598
|
function renderNode(node) {
|
|
4542
4599
|
const meta = [
|
|
4543
4600
|
node.kind,
|
|
@@ -4549,15 +4606,17 @@ function renderNode(node) {
|
|
|
4549
4606
|
node.count ? `${node.count} item${node.count === 1 ? "" : "s"}` : void 0
|
|
4550
4607
|
].filter(Boolean);
|
|
4551
4608
|
const content = [
|
|
4552
|
-
`<span class="label">${escapeHtml(node.label)}</span>`,
|
|
4609
|
+
`<button class="node-button" type="button" data-tree-id="${escapeAttribute(node.id)}"><span class="label">${escapeHtml(node.label)}</span></button>`,
|
|
4610
|
+
node.count ? `<span class="count">${node.count}</span>` : "",
|
|
4553
4611
|
meta.length ? `<span class="meta">${escapeHtml(meta.join(" \xB7 "))}</span>` : ""
|
|
4554
4612
|
].join("");
|
|
4555
4613
|
if (node.children.length === 0) {
|
|
4556
|
-
return `<li class="tree-node kind-${
|
|
4614
|
+
return `<li class="tree-node kind-${escapeAttribute(node.kind)}" data-tree-id="${escapeAttribute(node.id)}">${content}</li>`;
|
|
4557
4615
|
}
|
|
4558
|
-
return `<li class="tree-node kind-${
|
|
4616
|
+
return `<li class="tree-node kind-${escapeAttribute(node.kind)}" data-tree-id="${escapeAttribute(node.id)}"><details open><summary>${content}</summary><ul>${node.children.map(renderNode).join("")}</ul></details></li>`;
|
|
4559
4617
|
}
|
|
4560
4618
|
function renderGraphTreeHtml(tree, graph) {
|
|
4619
|
+
const inspectorEntries = collectTreeInspectorEntries(tree, graph);
|
|
4561
4620
|
return `<!doctype html>
|
|
4562
4621
|
<html lang="en">
|
|
4563
4622
|
<head>
|
|
@@ -4567,27 +4626,44 @@ function renderGraphTreeHtml(tree, graph) {
|
|
|
4567
4626
|
<style>
|
|
4568
4627
|
:root { color-scheme: light dark; font-family: Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif; }
|
|
4569
4628
|
body { margin: 0; background: #f7f7f5; color: #171717; }
|
|
4570
|
-
main { max-width:
|
|
4629
|
+
main { max-width: 1280px; margin: 0 auto; padding: 32px 20px 56px; }
|
|
4571
4630
|
h1 { font-size: 28px; line-height: 1.2; margin: 0 0 8px; }
|
|
4572
4631
|
.subtitle { color: #5d5d5d; margin: 0 0 20px; }
|
|
4573
|
-
.toolbar { display: flex; gap:
|
|
4574
|
-
input { flex: 1; min-width: 0; border: 1px solid #c9c9c9; border-radius: 6px; padding: 10px 12px; font: inherit; background: #fff; color: inherit; }
|
|
4575
|
-
.
|
|
4632
|
+
.toolbar { display: flex; flex-wrap: wrap; gap: 10px; align-items: center; margin: 0 0 18px; }
|
|
4633
|
+
input { flex: 1 1 320px; min-width: 0; border: 1px solid #c9c9c9; border-radius: 6px; padding: 10px 12px; font: inherit; background: #fff; color: inherit; }
|
|
4634
|
+
.toolbar button { border: 1px solid #c9c9c9; border-radius: 6px; background: #fff; color: inherit; font: inherit; padding: 10px 12px; cursor: pointer; }
|
|
4635
|
+
.layout { display: grid; grid-template-columns: minmax(0, 1fr) 340px; gap: 18px; align-items: start; }
|
|
4636
|
+
.tree, .inspector { background: #fff; border: 1px solid #deded9; border-radius: 8px; padding: 16px 18px; }
|
|
4637
|
+
.inspector { position: sticky; top: 16px; }
|
|
4638
|
+
.inspector h2 { font-size: 17px; margin: 0 0 10px; }
|
|
4639
|
+
.inspector dl { display: grid; grid-template-columns: 96px minmax(0, 1fr); gap: 6px 10px; margin: 0 0 16px; font-size: 13px; }
|
|
4640
|
+
.inspector dt { color: #666; }
|
|
4641
|
+
.inspector dd { margin: 0; overflow-wrap: anywhere; }
|
|
4642
|
+
.edge-list { display: grid; gap: 8px; margin: 0; padding: 0; list-style: none; }
|
|
4643
|
+
.edge-list li { border-top: 1px solid #ecece8; padding-top: 8px; }
|
|
4576
4644
|
ul { list-style: none; margin: 0; padding-left: 20px; }
|
|
4577
4645
|
.tree > ul { padding-left: 0; }
|
|
4578
4646
|
li { margin: 4px 0; }
|
|
4579
4647
|
summary { cursor: pointer; }
|
|
4648
|
+
.node-button { border: 0; background: transparent; color: inherit; font: inherit; padding: 2px 0; cursor: pointer; text-align: left; }
|
|
4649
|
+
.node-button:focus-visible, .toolbar button:focus-visible, input:focus-visible { outline: 2px solid #1f6feb; outline-offset: 2px; }
|
|
4580
4650
|
.label { font-weight: 600; }
|
|
4651
|
+
.count { display: inline-flex; min-width: 18px; justify-content: center; margin-left: 8px; padding: 1px 6px; border-radius: 999px; background: #ededdf; color: #444; font-size: 12px; }
|
|
4581
4652
|
.meta { color: #666; font-size: 12px; margin-left: 8px; }
|
|
4582
4653
|
.kind-directory > details > summary .label { color: #245b78; }
|
|
4583
4654
|
.kind-source > details > summary .label, .kind-source > .label { color: #22543d; }
|
|
4584
4655
|
.kind-module > details > summary .label { color: #6b3f12; }
|
|
4585
4656
|
.kind-rationale > .label { color: #6d2f46; }
|
|
4657
|
+
.selected > details > summary, .selected > .node-button { background: #eef6f1; border-radius: 4px; }
|
|
4586
4658
|
.hidden { display: none !important; }
|
|
4659
|
+
@media (max-width: 900px) { .layout { grid-template-columns: 1fr; } .inspector { position: static; } }
|
|
4587
4660
|
@media (prefers-color-scheme: dark) {
|
|
4588
4661
|
body { background: #161616; color: #efefef; }
|
|
4589
|
-
.subtitle, .meta { color: #ababab; }
|
|
4590
|
-
input, .tree { background: #202020; border-color: #3a3a3a; }
|
|
4662
|
+
.subtitle, .meta, .inspector dt { color: #ababab; }
|
|
4663
|
+
input, .tree, .inspector, .toolbar button { background: #202020; border-color: #3a3a3a; }
|
|
4664
|
+
.count { background: #333329; color: #deded8; }
|
|
4665
|
+
.edge-list li { border-color: #333; }
|
|
4666
|
+
.selected > details > summary, .selected > .node-button { background: #24362d; }
|
|
4591
4667
|
}
|
|
4592
4668
|
</style>
|
|
4593
4669
|
</head>
|
|
@@ -4595,11 +4671,61 @@ summary { cursor: pointer; }
|
|
|
4595
4671
|
<main>
|
|
4596
4672
|
<h1>${escapeHtml(tree.label)}</h1>
|
|
4597
4673
|
<p class="subtitle">${graph.sources.length} sources \xB7 ${graph.nodes.length} nodes \xB7 ${graph.edges.length} edges \xB7 generated ${escapeHtml(graph.generatedAt)}</p>
|
|
4598
|
-
<div class="toolbar"
|
|
4599
|
-
<
|
|
4674
|
+
<div class="toolbar">
|
|
4675
|
+
<input id="filter" type="search" placeholder="Filter files, modules, symbols, or ids" aria-label="Filter graph tree">
|
|
4676
|
+
<button type="button" id="expandAll">Expand all</button>
|
|
4677
|
+
<button type="button" id="collapseAll">Collapse all</button>
|
|
4678
|
+
<button type="button" id="resetTree">Reset</button>
|
|
4679
|
+
</div>
|
|
4680
|
+
<div class="layout">
|
|
4681
|
+
<section class="tree" aria-label="Graph tree"><ul>${renderNode(tree)}</ul></section>
|
|
4682
|
+
<aside class="inspector" aria-live="polite">
|
|
4683
|
+
<h2 id="inspectorTitle">Select a node</h2>
|
|
4684
|
+
<dl id="inspectorMeta"></dl>
|
|
4685
|
+
<ul class="edge-list" id="inspectorEdges"></ul>
|
|
4686
|
+
</aside>
|
|
4687
|
+
</div>
|
|
4600
4688
|
</main>
|
|
4601
4689
|
<script>
|
|
4690
|
+
const treeData = ${escapeScriptJson(inspectorEntries)};
|
|
4602
4691
|
const input = document.getElementById('filter');
|
|
4692
|
+
const inspectorTitle = document.getElementById('inspectorTitle');
|
|
4693
|
+
const inspectorMeta = document.getElementById('inspectorMeta');
|
|
4694
|
+
const inspectorEdges = document.getElementById('inspectorEdges');
|
|
4695
|
+
const renderText = (value) => String(value ?? '').replace(/[&<>"']/g, (character) => ({
|
|
4696
|
+
'&': '&',
|
|
4697
|
+
'<': '<',
|
|
4698
|
+
'>': '>',
|
|
4699
|
+
'"': '"',
|
|
4700
|
+
"'": '''
|
|
4701
|
+
})[character]);
|
|
4702
|
+
function selectNode(id) {
|
|
4703
|
+
const entry = treeData[id];
|
|
4704
|
+
if (!entry) return;
|
|
4705
|
+
for (const selected of document.querySelectorAll('.selected')) selected.classList.remove('selected');
|
|
4706
|
+
const selectedNode = Array.from(document.querySelectorAll('[data-tree-id]')).find((node) => node.dataset.treeId === id);
|
|
4707
|
+
selectedNode?.classList.add('selected');
|
|
4708
|
+
inspectorTitle.textContent = entry.label;
|
|
4709
|
+
const rows = [
|
|
4710
|
+
['Kind', entry.kind],
|
|
4711
|
+
['Count', entry.count],
|
|
4712
|
+
['Path', entry.path],
|
|
4713
|
+
['Source', entry.sourceId],
|
|
4714
|
+
['Node', entry.nodeId],
|
|
4715
|
+
['Language', entry.language],
|
|
4716
|
+
['Symbol', entry.symbolKind],
|
|
4717
|
+
['Hidden', entry.hiddenChildren]
|
|
4718
|
+
].filter(([, value]) => value !== undefined && value !== null && value !== '');
|
|
4719
|
+
inspectorMeta.innerHTML = rows.map(([label, value]) => '<dt>' + renderText(label) + '</dt><dd>' + renderText(value) + '</dd>').join('');
|
|
4720
|
+
inspectorEdges.innerHTML = entry.edges.length
|
|
4721
|
+
? entry.edges.map((edge) => '<li><strong>' + renderText(edge.relation) + '</strong> ' + renderText(edge.direction) + ' ' + renderText(edge.otherLabel) + '<br><span class="meta">' + renderText(edge.evidenceClass) + ' \xB7 ' + renderText(edge.confidence) + '</span></li>').join('')
|
|
4722
|
+
: '<li>No connected edges in the top slice.</li>';
|
|
4723
|
+
}
|
|
4724
|
+
document.querySelector('.tree')?.addEventListener('click', (event) => {
|
|
4725
|
+
const button = event.target.closest('.node-button');
|
|
4726
|
+
if (!button) return;
|
|
4727
|
+
selectNode(button.dataset.treeId);
|
|
4728
|
+
});
|
|
4603
4729
|
input.addEventListener('input', () => {
|
|
4604
4730
|
const query = input.value.trim().toLowerCase();
|
|
4605
4731
|
for (const node of document.querySelectorAll('.tree-node')) {
|
|
@@ -4607,6 +4733,19 @@ input.addEventListener('input', () => {
|
|
|
4607
4733
|
node.classList.toggle('hidden', query.length > 0 && !text.includes(query));
|
|
4608
4734
|
}
|
|
4609
4735
|
});
|
|
4736
|
+
document.getElementById('expandAll').addEventListener('click', () => {
|
|
4737
|
+
for (const details of document.querySelectorAll('details')) details.open = true;
|
|
4738
|
+
});
|
|
4739
|
+
document.getElementById('collapseAll').addEventListener('click', () => {
|
|
4740
|
+
for (const details of document.querySelectorAll('details')) details.open = false;
|
|
4741
|
+
});
|
|
4742
|
+
document.getElementById('resetTree').addEventListener('click', () => {
|
|
4743
|
+
input.value = '';
|
|
4744
|
+
input.dispatchEvent(new Event('input'));
|
|
4745
|
+
for (const details of document.querySelectorAll('details')) details.open = true;
|
|
4746
|
+
selectNode('${escapeAttribute(tree.id)}');
|
|
4747
|
+
});
|
|
4748
|
+
selectNode('${escapeAttribute(tree.id)}');
|
|
4610
4749
|
</script>
|
|
4611
4750
|
</body>
|
|
4612
4751
|
</html>
|
|
@@ -4774,7 +4913,44 @@ import path10 from "path";
|
|
|
4774
4913
|
import { McpServer, ResourceTemplate } from "@modelcontextprotocol/sdk/server/mcp.js";
|
|
4775
4914
|
import { StdioServerTransport } from "@modelcontextprotocol/sdk/server/stdio.js";
|
|
4776
4915
|
import { z } from "zod";
|
|
4777
|
-
var SERVER_VERSION = "3.
|
|
4916
|
+
var SERVER_VERSION = "3.9.0";
|
|
4917
|
+
var codeLanguageSchema = z.enum([
|
|
4918
|
+
"javascript",
|
|
4919
|
+
"jsx",
|
|
4920
|
+
"typescript",
|
|
4921
|
+
"tsx",
|
|
4922
|
+
"bash",
|
|
4923
|
+
"python",
|
|
4924
|
+
"go",
|
|
4925
|
+
"rust",
|
|
4926
|
+
"java",
|
|
4927
|
+
"kotlin",
|
|
4928
|
+
"scala",
|
|
4929
|
+
"dart",
|
|
4930
|
+
"lua",
|
|
4931
|
+
"zig",
|
|
4932
|
+
"csharp",
|
|
4933
|
+
"c",
|
|
4934
|
+
"cpp",
|
|
4935
|
+
"php",
|
|
4936
|
+
"ruby",
|
|
4937
|
+
"powershell",
|
|
4938
|
+
"swift",
|
|
4939
|
+
"elixir",
|
|
4940
|
+
"ocaml",
|
|
4941
|
+
"objc",
|
|
4942
|
+
"rescript",
|
|
4943
|
+
"solidity",
|
|
4944
|
+
"html",
|
|
4945
|
+
"css",
|
|
4946
|
+
"vue",
|
|
4947
|
+
"svelte",
|
|
4948
|
+
"julia",
|
|
4949
|
+
"verilog",
|
|
4950
|
+
"systemverilog",
|
|
4951
|
+
"r",
|
|
4952
|
+
"sql"
|
|
4953
|
+
]);
|
|
4778
4954
|
async function createMcpServer(rootDir) {
|
|
4779
4955
|
const server = new McpServer({
|
|
4780
4956
|
name: "swarmvault",
|
|
@@ -4883,13 +5059,25 @@ async function createMcpServer(rootDir) {
|
|
|
4883
5059
|
inputSchema: {
|
|
4884
5060
|
question: z.string().min(1).describe("Question or graph search seed"),
|
|
4885
5061
|
traversal: z.enum(["bfs", "dfs"]).optional().describe("Traversal strategy"),
|
|
4886
|
-
budget: z.number().int().min(3).max(50).optional().describe("Maximum nodes to summarize")
|
|
5062
|
+
budget: z.number().int().min(3).max(50).optional().describe("Maximum nodes to summarize"),
|
|
5063
|
+
relations: z.array(z.string().min(1)).optional().describe("Only traverse edges with these relation names"),
|
|
5064
|
+
context: z.array(z.enum(["calls", "imports", "types", "data", "rationale", "evidence"])).optional().describe("Relation group filters for common code/evidence contexts"),
|
|
5065
|
+
evidenceClasses: z.array(z.enum(["extracted", "inferred", "ambiguous"])).optional().describe("Only traverse these evidence classes"),
|
|
5066
|
+
nodeTypes: z.array(z.enum(["source", "concept", "entity", "module", "symbol", "rationale", "memory_task", "decision"])).optional().describe("Prefer traversal around these graph node types"),
|
|
5067
|
+
languages: z.array(codeLanguageSchema).optional().describe("Prefer traversal around nodes with these code languages")
|
|
4887
5068
|
}
|
|
4888
5069
|
},
|
|
4889
|
-
safeHandler(async ({ question, traversal, budget }) => {
|
|
5070
|
+
safeHandler(async ({ question, traversal, budget, relations, context, evidenceClasses, nodeTypes, languages }) => {
|
|
4890
5071
|
const result = await queryGraphVault(rootDir, question, {
|
|
4891
5072
|
traversal,
|
|
4892
|
-
budget
|
|
5073
|
+
budget,
|
|
5074
|
+
filters: {
|
|
5075
|
+
relations,
|
|
5076
|
+
relationGroups: context,
|
|
5077
|
+
evidenceClasses,
|
|
5078
|
+
nodeTypes,
|
|
5079
|
+
languages
|
|
5080
|
+
}
|
|
4893
5081
|
});
|
|
4894
5082
|
return asToolText(result);
|
|
4895
5083
|
})
|
|
@@ -8888,6 +9076,7 @@ export {
|
|
|
8888
9076
|
getWebSearchAdapterForTask,
|
|
8889
9077
|
getWorkspaceInfo,
|
|
8890
9078
|
graphDiff,
|
|
9079
|
+
graphStats,
|
|
8891
9080
|
graphStatsVault,
|
|
8892
9081
|
guideManagedSource,
|
|
8893
9082
|
guideSourceScope,
|
|
@@ -8983,6 +9172,8 @@ export {
|
|
|
8983
9172
|
trimToTokenBudget,
|
|
8984
9173
|
uninstallGitHooks,
|
|
8985
9174
|
updateMemoryTask,
|
|
9175
|
+
validateGraphArtifact,
|
|
9176
|
+
validateGraphVault,
|
|
8986
9177
|
watchVault,
|
|
8987
9178
|
withCapabilityFallback,
|
|
8988
9179
|
writeRetrievalManifest
|
|
@@ -0,0 +1,32 @@
|
|
|
1
|
+
import {
|
|
2
|
+
buildMemoryGraphElements,
|
|
3
|
+
ensureMemoryLedger,
|
|
4
|
+
estimateMemoryTaskTokens,
|
|
5
|
+
finishMemoryTask,
|
|
6
|
+
listMemoryTasks,
|
|
7
|
+
loadMemoryTaskPages,
|
|
8
|
+
memoryTaskHashes,
|
|
9
|
+
memoryTaskPageRecord,
|
|
10
|
+
readMemoryTask,
|
|
11
|
+
renderMemoryTaskMarkdown,
|
|
12
|
+
resumeMemoryTask,
|
|
13
|
+
startMemoryTask,
|
|
14
|
+
updateMemoryTask
|
|
15
|
+
} from "./chunk-2PN46RDI.js";
|
|
16
|
+
import "./chunk-75BU5TQ6.js";
|
|
17
|
+
import "./chunk-NAIERP4C.js";
|
|
18
|
+
export {
|
|
19
|
+
buildMemoryGraphElements,
|
|
20
|
+
ensureMemoryLedger,
|
|
21
|
+
estimateMemoryTaskTokens,
|
|
22
|
+
finishMemoryTask,
|
|
23
|
+
listMemoryTasks,
|
|
24
|
+
loadMemoryTaskPages,
|
|
25
|
+
memoryTaskHashes,
|
|
26
|
+
memoryTaskPageRecord,
|
|
27
|
+
readMemoryTask,
|
|
28
|
+
renderMemoryTaskMarkdown,
|
|
29
|
+
resumeMemoryTask,
|
|
30
|
+
startMemoryTask,
|
|
31
|
+
updateMemoryTask
|
|
32
|
+
};
|
|
@@ -0,0 +1,32 @@
|
|
|
1
|
+
import {
|
|
2
|
+
buildMemoryGraphElements,
|
|
3
|
+
ensureMemoryLedger,
|
|
4
|
+
estimateMemoryTaskTokens,
|
|
5
|
+
finishMemoryTask,
|
|
6
|
+
listMemoryTasks,
|
|
7
|
+
loadMemoryTaskPages,
|
|
8
|
+
memoryTaskHashes,
|
|
9
|
+
memoryTaskPageRecord,
|
|
10
|
+
readMemoryTask,
|
|
11
|
+
renderMemoryTaskMarkdown,
|
|
12
|
+
resumeMemoryTask,
|
|
13
|
+
startMemoryTask,
|
|
14
|
+
updateMemoryTask
|
|
15
|
+
} from "./chunk-WOA5LSNB.js";
|
|
16
|
+
import "./chunk-75BU5TQ6.js";
|
|
17
|
+
import "./chunk-NAIERP4C.js";
|
|
18
|
+
export {
|
|
19
|
+
buildMemoryGraphElements,
|
|
20
|
+
ensureMemoryLedger,
|
|
21
|
+
estimateMemoryTaskTokens,
|
|
22
|
+
finishMemoryTask,
|
|
23
|
+
listMemoryTasks,
|
|
24
|
+
loadMemoryTaskPages,
|
|
25
|
+
memoryTaskHashes,
|
|
26
|
+
memoryTaskPageRecord,
|
|
27
|
+
readMemoryTask,
|
|
28
|
+
renderMemoryTaskMarkdown,
|
|
29
|
+
resumeMemoryTask,
|
|
30
|
+
startMemoryTask,
|
|
31
|
+
updateMemoryTask
|
|
32
|
+
};
|
|
@@ -0,0 +1,32 @@
|
|
|
1
|
+
import {
|
|
2
|
+
buildMemoryGraphElements,
|
|
3
|
+
ensureMemoryLedger,
|
|
4
|
+
estimateMemoryTaskTokens,
|
|
5
|
+
finishMemoryTask,
|
|
6
|
+
listMemoryTasks,
|
|
7
|
+
loadMemoryTaskPages,
|
|
8
|
+
memoryTaskHashes,
|
|
9
|
+
memoryTaskPageRecord,
|
|
10
|
+
readMemoryTask,
|
|
11
|
+
renderMemoryTaskMarkdown,
|
|
12
|
+
resumeMemoryTask,
|
|
13
|
+
startMemoryTask,
|
|
14
|
+
updateMemoryTask
|
|
15
|
+
} from "./chunk-563TZ4TZ.js";
|
|
16
|
+
import "./chunk-75BU5TQ6.js";
|
|
17
|
+
import "./chunk-NAIERP4C.js";
|
|
18
|
+
export {
|
|
19
|
+
buildMemoryGraphElements,
|
|
20
|
+
ensureMemoryLedger,
|
|
21
|
+
estimateMemoryTaskTokens,
|
|
22
|
+
finishMemoryTask,
|
|
23
|
+
listMemoryTasks,
|
|
24
|
+
loadMemoryTaskPages,
|
|
25
|
+
memoryTaskHashes,
|
|
26
|
+
memoryTaskPageRecord,
|
|
27
|
+
readMemoryTask,
|
|
28
|
+
renderMemoryTaskMarkdown,
|
|
29
|
+
resumeMemoryTask,
|
|
30
|
+
startMemoryTask,
|
|
31
|
+
updateMemoryTask
|
|
32
|
+
};
|
|
Binary file
|
|
Binary file
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@swarmvaultai/engine",
|
|
3
|
-
"version": "3.
|
|
3
|
+
"version": "3.9.0",
|
|
4
4
|
"description": "Core engine for SwarmVault: ingest, compile, query, lint, and provider abstractions.",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"main": "dist/index.js",
|
|
@@ -40,7 +40,7 @@
|
|
|
40
40
|
"node": ">=24.0.0"
|
|
41
41
|
},
|
|
42
42
|
"scripts": {
|
|
43
|
-
"build": "test -f ../viewer/dist/index.html || pnpm --dir ../viewer build; tsup src/index.ts --format esm --dts && tsup --config tsup.hooks.config.ts && rm -rf dist/viewer && mkdir -p dist/viewer && cp -R ../viewer/dist/. dist/viewer/",
|
|
43
|
+
"build": "test -f ../viewer/dist/index.html || pnpm --dir ../viewer build; tsup src/index.ts --format esm --dts && tsup --config tsup.hooks.config.ts && node ../../scripts/copy-engine-grammar-assets.mjs && rm -rf dist/viewer && mkdir -p dist/viewer && cp -R ../viewer/dist/. dist/viewer/",
|
|
44
44
|
"pretest": "tsup --config tsup.hooks.config.ts",
|
|
45
45
|
"test": "SWARMVAULT_ALLOW_PRIVATE_URLS=1 vitest run --testTimeout=10000",
|
|
46
46
|
"typecheck": "tsc --noEmit",
|
|
@@ -95,6 +95,8 @@
|
|
|
95
95
|
"@types/turndown": "^5.0.5",
|
|
96
96
|
"graphology-types": "^0.24.8",
|
|
97
97
|
"tsup": "^8.5.0",
|
|
98
|
+
"tree-sitter-julia": "0.23.1",
|
|
99
|
+
"tree-sitter-systemverilog": "0.3.1",
|
|
98
100
|
"vitest": "^3.2.4"
|
|
99
101
|
}
|
|
100
102
|
}
|