homegraph 1.4.1 → 1.5.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 +48 -11
- package/dist/bin/homegraph.js +295 -72
- package/dist/bin/homegraph.js.map +1 -1
- package/dist/context/index.d.ts.map +1 -1
- package/dist/context/index.js +32 -11
- package/dist/context/index.js.map +1 -1
- package/dist/db/index.d.ts +143 -1
- package/dist/db/index.d.ts.map +1 -1
- package/dist/db/index.js +293 -16
- package/dist/db/index.js.map +1 -1
- package/dist/db/queries.d.ts +43 -4
- package/dist/db/queries.d.ts.map +1 -1
- package/dist/db/queries.js +138 -14
- package/dist/db/queries.js.map +1 -1
- package/dist/db/sqlite-adapter.d.ts +24 -17
- package/dist/db/sqlite-adapter.d.ts.map +1 -1
- package/dist/db/sqlite-adapter.js +292 -36
- package/dist/db/sqlite-adapter.js.map +1 -1
- package/dist/db/wal-valve.d.ts +15 -2
- package/dist/db/wal-valve.d.ts.map +1 -1
- package/dist/db/wal-valve.js +88 -6
- package/dist/db/wal-valve.js.map +1 -1
- package/dist/extraction/arkts-batch-worker.js +3 -2
- package/dist/extraction/arkts-batch-worker.js.map +1 -1
- package/dist/extraction/default-ignore.d.ts +39 -0
- package/dist/extraction/default-ignore.d.ts.map +1 -0
- package/dist/extraction/default-ignore.js +221 -0
- package/dist/extraction/default-ignore.js.map +1 -0
- package/dist/extraction/index.d.ts +9 -10
- package/dist/extraction/index.d.ts.map +1 -1
- package/dist/extraction/index.js +227 -323
- package/dist/extraction/index.js.map +1 -1
- package/dist/extraction/languages/arkts.d.ts +90 -6
- package/dist/extraction/languages/arkts.d.ts.map +1 -1
- package/dist/extraction/languages/arkts.js +1579 -128
- package/dist/extraction/languages/arkts.js.map +1 -1
- package/dist/extraction/store-worker.d.ts +20 -0
- package/dist/extraction/store-worker.d.ts.map +1 -0
- package/dist/extraction/store-worker.js +102 -0
- package/dist/extraction/store-worker.js.map +1 -0
- package/dist/extraction/store-writer.d.ts +48 -0
- package/dist/extraction/store-writer.d.ts.map +1 -0
- package/dist/extraction/store-writer.js +167 -0
- package/dist/extraction/store-writer.js.map +1 -0
- package/dist/extraction/tree-sitter.d.ts.map +1 -1
- package/dist/extraction/tree-sitter.js +47 -0
- package/dist/extraction/tree-sitter.js.map +1 -1
- package/dist/extraction/wasm-runtime-flags.d.ts +14 -4
- package/dist/extraction/wasm-runtime-flags.d.ts.map +1 -1
- package/dist/extraction/wasm-runtime-flags.js +55 -7
- package/dist/extraction/wasm-runtime-flags.js.map +1 -1
- package/dist/index.d.ts +16 -5
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +135 -97
- package/dist/index.js.map +1 -1
- package/dist/mcp/query-worker.d.ts +2 -2
- package/dist/mcp/query-worker.js +2 -2
- package/dist/mcp/tools.d.ts.map +1 -1
- package/dist/mcp/tools.js +42 -26
- package/dist/mcp/tools.js.map +1 -1
- package/dist/resolution/callback-synthesizer.d.ts +52 -16
- package/dist/resolution/callback-synthesizer.d.ts.map +1 -1
- package/dist/resolution/callback-synthesizer.js +234 -180
- package/dist/resolution/callback-synthesizer.js.map +1 -1
- package/dist/resolution/cooperative-yield.d.ts +10 -2
- package/dist/resolution/cooperative-yield.d.ts.map +1 -1
- package/dist/resolution/cooperative-yield.js +6 -4
- package/dist/resolution/cooperative-yield.js.map +1 -1
- package/dist/resolution/frameworks/go.d.ts.map +1 -1
- package/dist/resolution/frameworks/go.js +29 -6
- package/dist/resolution/frameworks/go.js.map +1 -1
- package/dist/resolution/import-resolver.d.ts +2 -3
- package/dist/resolution/import-resolver.d.ts.map +1 -1
- package/dist/resolution/import-resolver.js +166 -7
- package/dist/resolution/import-resolver.js.map +1 -1
- package/dist/resolution/index.d.ts +87 -2
- package/dist/resolution/index.d.ts.map +1 -1
- package/dist/resolution/index.js +739 -131
- package/dist/resolution/index.js.map +1 -1
- package/dist/resolution/memory-budget.d.ts +48 -0
- package/dist/resolution/memory-budget.d.ts.map +1 -0
- package/dist/resolution/memory-budget.js +162 -0
- package/dist/resolution/memory-budget.js.map +1 -0
- package/dist/resolution/name-matcher.d.ts +12 -1
- package/dist/resolution/name-matcher.d.ts.map +1 -1
- package/dist/resolution/name-matcher.js +439 -97
- package/dist/resolution/name-matcher.js.map +1 -1
- package/dist/resolution/resolver-pool.d.ts +106 -0
- package/dist/resolution/resolver-pool.d.ts.map +1 -0
- package/dist/resolution/resolver-pool.js +344 -0
- package/dist/resolution/resolver-pool.js.map +1 -0
- package/dist/resolution/resolver-worker.d.ts +17 -0
- package/dist/resolution/resolver-worker.d.ts.map +1 -0
- package/dist/resolution/resolver-worker.js +141 -0
- package/dist/resolution/resolver-worker.js.map +1 -0
- package/dist/resolution/types.d.ts +3 -0
- package/dist/resolution/types.d.ts.map +1 -1
- package/dist/spec/build/diff-parser.d.ts +55 -0
- package/dist/spec/build/diff-parser.d.ts.map +1 -0
- package/dist/spec/build/diff-parser.js +205 -0
- package/dist/spec/build/diff-parser.js.map +1 -0
- package/dist/spec/build/git-scanner.d.ts +93 -0
- package/dist/spec/build/git-scanner.d.ts.map +1 -0
- package/dist/spec/build/git-scanner.js +254 -0
- package/dist/spec/build/git-scanner.js.map +1 -0
- package/dist/spec/build/pipeline.d.ts +54 -0
- package/dist/spec/build/pipeline.d.ts.map +1 -0
- package/dist/spec/build/pipeline.js +170 -0
- package/dist/spec/build/pipeline.js.map +1 -0
- package/dist/spec/build/scan.d.ts +48 -0
- package/dist/spec/build/scan.d.ts.map +1 -0
- package/dist/spec/build/scan.js +89 -0
- package/dist/spec/build/scan.js.map +1 -0
- package/dist/spec/build/scope-resolver.d.ts +50 -0
- package/dist/spec/build/scope-resolver.d.ts.map +1 -0
- package/dist/spec/build/scope-resolver.js +105 -0
- package/dist/spec/build/scope-resolver.js.map +1 -0
- package/dist/spec/build/spec-extractor.d.ts +74 -0
- package/dist/spec/build/spec-extractor.d.ts.map +1 -0
- package/dist/spec/build/spec-extractor.js +344 -0
- package/dist/spec/build/spec-extractor.js.map +1 -0
- package/dist/spec/config.d.ts +35 -1
- package/dist/spec/config.d.ts.map +1 -1
- package/dist/spec/config.js +30 -5
- package/dist/spec/config.js.map +1 -1
- package/dist/spec/db/fts.d.ts.map +1 -1
- package/dist/spec/db/fts.js +19 -50
- package/dist/spec/db/fts.js.map +1 -1
- package/dist/spec/db/index.d.ts +5 -3
- package/dist/spec/db/index.d.ts.map +1 -1
- package/dist/spec/db/index.js +16 -1
- package/dist/spec/db/index.js.map +1 -1
- package/dist/spec/db/persist.d.ts +45 -0
- package/dist/spec/db/persist.d.ts.map +1 -0
- package/dist/spec/db/persist.js +66 -0
- package/dist/spec/db/persist.js.map +1 -0
- package/dist/spec/db/relations.d.ts +80 -1
- package/dist/spec/db/relations.d.ts.map +1 -1
- package/dist/spec/db/relations.js +175 -4
- package/dist/spec/db/relations.js.map +1 -1
- package/dist/spec/db/schema.d.ts +4 -0
- package/dist/spec/db/schema.d.ts.map +1 -1
- package/dist/spec/db/schema.js +4 -0
- package/dist/spec/db/schema.js.map +1 -1
- package/dist/spec/db/schema.sql +5 -1
- package/dist/spec/db/spec-node.d.ts +5 -0
- package/dist/spec/db/spec-node.d.ts.map +1 -1
- package/dist/spec/db/spec-node.js +11 -5
- package/dist/spec/db/spec-node.js.map +1 -1
- package/dist/spec/db/sql-utils.d.ts +11 -0
- package/dist/spec/db/sql-utils.d.ts.map +1 -0
- package/dist/spec/db/sql-utils.js +19 -0
- package/dist/spec/db/sql-utils.js.map +1 -0
- package/dist/spec/evolve/cluster-context.d.ts +30 -0
- package/dist/spec/evolve/cluster-context.d.ts.map +1 -0
- package/dist/spec/evolve/cluster-context.js +78 -0
- package/dist/spec/evolve/cluster-context.js.map +1 -0
- package/dist/spec/evolve/commit-spec-analyzer.d.ts +51 -0
- package/dist/spec/evolve/commit-spec-analyzer.d.ts.map +1 -0
- package/dist/spec/evolve/commit-spec-analyzer.js +88 -0
- package/dist/spec/evolve/commit-spec-analyzer.js.map +1 -0
- package/dist/spec/evolve/commit-spec-persister.d.ts +53 -0
- package/dist/spec/evolve/commit-spec-persister.d.ts.map +1 -0
- package/dist/spec/evolve/commit-spec-persister.js +93 -0
- package/dist/spec/evolve/commit-spec-persister.js.map +1 -0
- package/dist/spec/evolve/impact-locator.d.ts +23 -7
- package/dist/spec/evolve/impact-locator.d.ts.map +1 -1
- package/dist/spec/evolve/impact-locator.js +58 -14
- package/dist/spec/evolve/impact-locator.js.map +1 -1
- package/dist/spec/evolve/pipeline.d.ts +62 -25
- package/dist/spec/evolve/pipeline.d.ts.map +1 -1
- package/dist/spec/evolve/pipeline.js +436 -457
- package/dist/spec/evolve/pipeline.js.map +1 -1
- package/dist/spec/evolve/spec-rewriter.d.ts +13 -13
- package/dist/spec/evolve/spec-rewriter.d.ts.map +1 -1
- package/dist/spec/evolve/spec-rewriter.js +45 -45
- package/dist/spec/evolve/spec-rewriter.js.map +1 -1
- package/dist/spec/git/commits.d.ts +85 -0
- package/dist/spec/git/commits.d.ts.map +1 -0
- package/dist/spec/git/commits.js +218 -0
- package/dist/spec/git/commits.js.map +1 -0
- package/dist/spec/git/exec.d.ts +13 -0
- package/dist/spec/git/exec.d.ts.map +1 -0
- package/dist/spec/git/exec.js +19 -0
- package/dist/spec/git/exec.js.map +1 -0
- package/dist/spec/git/index.d.ts +9 -0
- package/dist/spec/git/index.d.ts.map +1 -0
- package/dist/spec/git/index.js +22 -0
- package/dist/spec/git/index.js.map +1 -0
- package/dist/spec/git-utils.d.ts +8 -0
- package/dist/spec/git-utils.d.ts.map +1 -0
- package/dist/spec/git-utils.js +14 -0
- package/dist/spec/git-utils.js.map +1 -0
- package/dist/spec/graph/index.d.ts +8 -0
- package/dist/spec/graph/index.d.ts.map +1 -0
- package/dist/spec/graph/index.js +17 -0
- package/dist/spec/graph/index.js.map +1 -0
- package/dist/spec/graph/queries.d.ts +6 -35
- package/dist/spec/graph/queries.d.ts.map +1 -1
- package/dist/spec/graph/queries.js +71 -248
- package/dist/spec/graph/queries.js.map +1 -1
- package/dist/spec/llm/agent-client.d.ts +59 -0
- package/dist/spec/llm/agent-client.d.ts.map +1 -0
- package/dist/spec/llm/agent-client.js +213 -0
- package/dist/spec/llm/agent-client.js.map +1 -0
- package/dist/spec/llm/agents/claude-code.d.ts +32 -0
- package/dist/spec/llm/agents/claude-code.d.ts.map +1 -0
- package/dist/spec/llm/agents/claude-code.js +125 -0
- package/dist/spec/llm/agents/claude-code.js.map +1 -0
- package/dist/spec/llm/agents/codex.d.ts +32 -0
- package/dist/spec/llm/agents/codex.d.ts.map +1 -0
- package/dist/spec/llm/agents/codex.js +145 -0
- package/dist/spec/llm/agents/codex.js.map +1 -0
- package/dist/spec/llm/agents/detect-utils.d.ts +28 -0
- package/dist/spec/llm/agents/detect-utils.d.ts.map +1 -0
- package/dist/spec/llm/agents/detect-utils.js +91 -0
- package/dist/spec/llm/agents/detect-utils.js.map +1 -0
- package/dist/spec/llm/agents/deveco-code.d.ts +33 -0
- package/dist/spec/llm/agents/deveco-code.d.ts.map +1 -0
- package/dist/spec/llm/agents/deveco-code.js +165 -0
- package/dist/spec/llm/agents/deveco-code.js.map +1 -0
- package/dist/spec/llm/agents/index.d.ts +31 -0
- package/dist/spec/llm/agents/index.d.ts.map +1 -0
- package/dist/spec/llm/agents/index.js +65 -0
- package/dist/spec/llm/agents/index.js.map +1 -0
- package/dist/spec/llm/agents/types.d.ts +76 -0
- package/dist/spec/llm/agents/types.d.ts.map +1 -0
- package/dist/spec/llm/agents/types.js +15 -0
- package/dist/spec/llm/agents/types.js.map +1 -0
- package/dist/spec/llm/client.d.ts +31 -11
- package/dist/spec/llm/client.d.ts.map +1 -1
- package/dist/spec/llm/client.js +143 -81
- package/dist/spec/llm/client.js.map +1 -1
- package/dist/spec/llm/factory.d.ts +41 -0
- package/dist/spec/llm/factory.d.ts.map +1 -0
- package/dist/spec/llm/factory.js +80 -0
- package/dist/spec/llm/factory.js.map +1 -0
- package/dist/spec/llm/prompts.d.ts +24 -8
- package/dist/spec/llm/prompts.d.ts.map +1 -1
- package/dist/spec/llm/prompts.js +100 -50
- package/dist/spec/llm/prompts.js.map +1 -1
- package/dist/spec/llm/retry.d.ts +53 -0
- package/dist/spec/llm/retry.d.ts.map +1 -0
- package/dist/spec/llm/retry.js +153 -0
- package/dist/spec/llm/retry.js.map +1 -0
- package/dist/spec/mine/clusterer.d.ts +63 -0
- package/dist/spec/mine/clusterer.d.ts.map +1 -0
- package/dist/spec/mine/clusterer.js +904 -0
- package/dist/spec/mine/clusterer.js.map +1 -0
- package/dist/spec/mine/clustering/features.d.ts +38 -0
- package/dist/spec/mine/clustering/features.d.ts.map +1 -0
- package/dist/spec/mine/clustering/features.js +108 -0
- package/dist/spec/mine/clustering/features.js.map +1 -0
- package/dist/spec/mine/clustering/index.d.ts +62 -0
- package/dist/spec/mine/clustering/index.d.ts.map +1 -0
- package/dist/spec/mine/clustering/index.js +259 -0
- package/dist/spec/mine/clustering/index.js.map +1 -0
- package/dist/spec/mine/clustering/leiden.d.ts +61 -0
- package/dist/spec/mine/clustering/leiden.d.ts.map +1 -0
- package/dist/spec/mine/clustering/leiden.js +489 -0
- package/dist/spec/mine/clustering/leiden.js.map +1 -0
- package/dist/spec/mine/clustering/text-similarity.d.ts +22 -0
- package/dist/spec/mine/clustering/text-similarity.d.ts.map +1 -0
- package/dist/spec/mine/clustering/text-similarity.js +98 -0
- package/dist/spec/mine/clustering/text-similarity.js.map +1 -0
- package/dist/spec/mine/generator.d.ts +54 -0
- package/dist/spec/mine/generator.d.ts.map +1 -0
- package/dist/spec/mine/generator.js +267 -0
- package/dist/spec/mine/generator.js.map +1 -0
- package/dist/spec/mine/persist.d.ts +37 -0
- package/dist/spec/mine/persist.d.ts.map +1 -0
- package/dist/spec/mine/persist.js +170 -0
- package/dist/spec/mine/persist.js.map +1 -0
- package/dist/spec/mine/pipeline.d.ts +41 -0
- package/dist/spec/mine/pipeline.d.ts.map +1 -0
- package/dist/spec/mine/pipeline.js +236 -0
- package/dist/spec/mine/pipeline.js.map +1 -0
- package/dist/spec/mine/progress-handler.d.ts +22 -0
- package/dist/spec/mine/progress-handler.d.ts.map +1 -0
- package/dist/spec/mine/progress-handler.js +108 -0
- package/dist/spec/mine/progress-handler.js.map +1 -0
- package/dist/spec/mine/progress.d.ts +23 -0
- package/dist/spec/mine/progress.d.ts.map +1 -0
- package/dist/spec/mine/progress.js +12 -0
- package/dist/spec/mine/progress.js.map +1 -0
- package/dist/spec/mine/scanner.d.ts +59 -0
- package/dist/spec/mine/scanner.d.ts.map +1 -0
- package/dist/spec/mine/scanner.js +383 -0
- package/dist/spec/mine/scanner.js.map +1 -0
- package/dist/spec/types.d.ts +32 -0
- package/dist/spec/types.d.ts.map +1 -1
- package/dist/spec/ui/index.d.ts +9 -0
- package/dist/spec/ui/index.d.ts.map +1 -0
- package/dist/spec/ui/index.js +16 -0
- package/dist/spec/ui/index.js.map +1 -0
- package/dist/spec/ui/progress-handler.d.ts +33 -0
- package/dist/spec/ui/progress-handler.d.ts.map +1 -0
- package/dist/spec/ui/progress-handler.js +132 -0
- package/dist/spec/ui/progress-handler.js.map +1 -0
- package/dist/spec/ui/progress.d.ts +24 -0
- package/dist/spec/ui/progress.d.ts.map +1 -0
- package/dist/spec/ui/progress.js +13 -0
- package/dist/spec/ui/progress.js.map +1 -0
- package/dist/spec/utils/fs.d.ts +45 -0
- package/dist/spec/utils/fs.d.ts.map +1 -0
- package/dist/spec/utils/fs.js +163 -0
- package/dist/spec/utils/fs.js.map +1 -0
- package/dist/spec/utils/index.d.ts +12 -0
- package/dist/spec/utils/index.d.ts.map +1 -0
- package/dist/spec/utils/index.js +26 -0
- package/dist/spec/utils/index.js.map +1 -0
- package/dist/spec/utils/meta.d.ts +32 -0
- package/dist/spec/utils/meta.d.ts.map +1 -0
- package/dist/spec/utils/meta.js +122 -0
- package/dist/spec/utils/meta.js.map +1 -0
- package/dist/spec/utils/truncate.d.ts +86 -0
- package/dist/spec/utils/truncate.d.ts.map +1 -0
- package/dist/spec/utils/truncate.js +172 -0
- package/dist/spec/utils/truncate.js.map +1 -0
- package/dist/spec/utils.d.ts +4 -16
- package/dist/spec/utils.d.ts.map +1 -1
- package/dist/spec/utils.js +6 -58
- package/dist/spec/utils.js.map +1 -1
- package/dist/sync/watcher.d.ts +25 -1
- package/dist/sync/watcher.d.ts.map +1 -1
- package/dist/sync/watcher.js +76 -3
- package/dist/sync/watcher.js.map +1 -1
- package/dist/telemetry/index.js +3 -3
- package/dist/telemetry/index.js.map +1 -1
- package/dist/types.d.ts +3 -0
- package/dist/types.d.ts.map +1 -1
- package/package.json +7 -3
package/dist/index.js
CHANGED
|
@@ -45,6 +45,7 @@ Object.defineProperty(exports, "__esModule", { value: true });
|
|
|
45
45
|
exports.HomeGraph = exports.MCPServer = exports.LockUnavailableError = exports.FileWatcher = exports.MemoryMonitor = exports.throttle = exports.debounce = exports.processInBatches = exports.FileLock = exports.Mutex = exports.defaultLogger = exports.silentLogger = exports.getLogger = exports.setLogger = exports.ConfigError = exports.VectorError = exports.SearchError = exports.DatabaseError = exports.ParseError = exports.FileError = exports.HomeGraphError = exports.loadAllGrammars = exports.loadGrammarsForLanguages = exports.initGrammars = exports.getSupportedLanguages = exports.isGrammarLoaded = exports.isLanguageSupported = exports.detectLanguage = exports.HOMEGRAPH_DIR = exports.findNearestHomeGraphRoot = exports.isInitialized = exports.getHomeGraphDir = exports.QueryBuilder = exports.DatabaseConnection = exports.getDatabasePath = void 0;
|
|
46
46
|
const path = __importStar(require("path"));
|
|
47
47
|
const db_1 = require("./db");
|
|
48
|
+
const wal_valve_1 = require("./db/wal-valve");
|
|
48
49
|
const queries_1 = require("./db/queries");
|
|
49
50
|
const directory_1 = require("./directory");
|
|
50
51
|
const extraction_1 = require("./extraction");
|
|
@@ -60,6 +61,7 @@ const directory_2 = require("./directory");
|
|
|
60
61
|
const query_utils_1 = require("./search/query-utils");
|
|
61
62
|
const identifier_segments_1 = require("./search/identifier-segments");
|
|
62
63
|
const cooperative_yield_1 = require("./resolution/cooperative-yield");
|
|
64
|
+
const resolver_pool_1 = require("./resolution/resolver-pool");
|
|
63
65
|
const version_1 = require("./mcp/version");
|
|
64
66
|
// Re-export types for consumers
|
|
65
67
|
__exportStar(require("./types"), exports);
|
|
@@ -377,11 +379,27 @@ class HomeGraph {
|
|
|
377
379
|
catch {
|
|
378
380
|
return { success: false, filesIndexed: 0, filesSkipped: 0, filesErrored: 0, nodesCreated: 0, edgesCreated: 0, errors: [{ message: 'Could not acquire file lock - another process may be indexing', severity: 'error' }], durationMs: 0 };
|
|
379
381
|
}
|
|
382
|
+
const freshDb = this.queries.getNodeAndEdgeCount().nodes === 0;
|
|
383
|
+
const fastInit = process.env.HOMEGRAPH_NO_FAST_INIT !== '1' && freshDb;
|
|
384
|
+
if (fastInit) {
|
|
385
|
+
try {
|
|
386
|
+
this.db.getDb().pragma('journal_mode = MEMORY');
|
|
387
|
+
this.db.getDb().pragma('synchronous = OFF');
|
|
388
|
+
}
|
|
389
|
+
catch { /* keep WAL */ }
|
|
390
|
+
}
|
|
391
|
+
const deferWal = !fastInit && process.env.HOMEGRAPH_NO_WAL_DEFER !== '1' && this.db.getJournalMode() === 'wal';
|
|
392
|
+
let walValve = null;
|
|
393
|
+
let priorAutocheckpoint = 1000;
|
|
394
|
+
let restoreAutocheckpoint = false;
|
|
395
|
+
if (deferWal) {
|
|
396
|
+
priorAutocheckpoint = this.db.getWalAutocheckpoint();
|
|
397
|
+
this.db.setWalAutocheckpoint(0);
|
|
398
|
+
walValve = new wal_valve_1.WalCheckpointValve(this.db, (0, wal_valve_1.resolveWalValveMb)(process.env.HOMEGRAPH_WAL_VALVE_MB, this.db.getDbFileSizeBytes()), undefined, options.verbose ? (m) => console.log(`[wal-valve] ${m}`) : undefined);
|
|
399
|
+
walValve.start();
|
|
400
|
+
}
|
|
380
401
|
try {
|
|
381
402
|
const before = this.queries.getNodeAndEdgeCount();
|
|
382
|
-
// Mark the index as in-flight BEFORE any writes: a run killed mid-index
|
|
383
|
-
// leaves this marker behind so `homegraph status` can tell a truncated
|
|
384
|
-
// index from a completed one.
|
|
385
403
|
try {
|
|
386
404
|
this.queries.setMetadata('index_state', 'indexing');
|
|
387
405
|
}
|
|
@@ -390,24 +408,45 @@ class HomeGraph {
|
|
|
390
408
|
this.queries.clearNameSegmentVocab();
|
|
391
409
|
}
|
|
392
410
|
catch { /* vocab is advisory — never fail an index over it */ }
|
|
393
|
-
|
|
394
|
-
|
|
395
|
-
|
|
396
|
-
|
|
397
|
-
|
|
398
|
-
|
|
399
|
-
|
|
400
|
-
|
|
411
|
+
this.db.beginBulkNodeLoad();
|
|
412
|
+
if (freshDb)
|
|
413
|
+
this.db.beginBulkParseLoad();
|
|
414
|
+
let result;
|
|
415
|
+
try {
|
|
416
|
+
result = await this.orchestrator.indexAll(options.onProgress, options.signal, options.verbose, walValve ? () => walValve.backpressure() : undefined, freshDb ? { dbPath: this.db.getPath(), fastInit } : null);
|
|
417
|
+
}
|
|
418
|
+
finally {
|
|
419
|
+
if (freshDb) {
|
|
420
|
+
const tIdx = Date.now();
|
|
421
|
+
await this.db.endBulkParseLoad();
|
|
422
|
+
if (process.env.HOMEGRAPH_SYNTH_TIMINGS)
|
|
423
|
+
console.error(`[phase-timing] parse-index-rebuild: ${Date.now() - tIdx}ms`);
|
|
424
|
+
}
|
|
425
|
+
const tFts = Date.now();
|
|
426
|
+
this.db.endBulkNodeLoad();
|
|
427
|
+
if (process.env.HOMEGRAPH_SYNTH_TIMINGS)
|
|
428
|
+
console.error(`[phase-timing] fts-rebuild: ${Date.now() - tFts}ms`);
|
|
429
|
+
}
|
|
430
|
+
if (walValve)
|
|
431
|
+
await walValve.foldNow();
|
|
401
432
|
if (result.success && result.filesIndexed > 0) {
|
|
402
433
|
this.resolver.initialize();
|
|
403
|
-
// Cross-file finalization (e.g. NestJS RouterModule prefixes). Runs
|
|
404
|
-
// before resolution so updated names show up in subsequent reads.
|
|
405
434
|
this.resolver.runPostExtract();
|
|
406
435
|
}
|
|
407
|
-
// Resolve references to create call/import/extends edges
|
|
408
436
|
if (result.success && result.filesIndexed > 0) {
|
|
409
|
-
// Get count without loading all refs into memory
|
|
410
437
|
const unresolvedCount = this.queries.getUnresolvedReferencesCount();
|
|
438
|
+
if (fastInit && unresolvedCount >= (0, resolver_pool_1.minRefsForPool)()) {
|
|
439
|
+
try {
|
|
440
|
+
this.db.getDb().pragma('synchronous = NORMAL');
|
|
441
|
+
this.db.getDb().pragma('journal_mode = WAL');
|
|
442
|
+
priorAutocheckpoint = this.db.getWalAutocheckpoint();
|
|
443
|
+
this.db.setWalAutocheckpoint(0);
|
|
444
|
+
restoreAutocheckpoint = true;
|
|
445
|
+
walValve = new wal_valve_1.WalCheckpointValve(this.db, undefined, undefined, options.verbose ? (m) => console.log(`[wal-valve] ${m}`) : undefined);
|
|
446
|
+
walValve.start();
|
|
447
|
+
}
|
|
448
|
+
catch { /* keep current mode; resolution still works sequentially */ }
|
|
449
|
+
}
|
|
411
450
|
options.onProgress?.({
|
|
412
451
|
phase: 'resolving',
|
|
413
452
|
current: 0,
|
|
@@ -419,34 +458,28 @@ class HomeGraph {
|
|
|
419
458
|
current,
|
|
420
459
|
total,
|
|
421
460
|
});
|
|
422
|
-
})
|
|
423
|
-
|
|
424
|
-
|
|
425
|
-
|
|
426
|
-
|
|
461
|
+
}, (done, totalPasses) => {
|
|
462
|
+
options.onProgress?.({
|
|
463
|
+
phase: 'linking',
|
|
464
|
+
current: done,
|
|
465
|
+
total: totalPasses,
|
|
466
|
+
});
|
|
467
|
+
}, walValve ? () => walValve.backpressure() : undefined);
|
|
427
468
|
await this.resolver.resolveChainedCallsViaConformance();
|
|
428
|
-
// Same lifecycle for `this.<member>` callback registrations whose
|
|
429
|
-
// member is inherited from a supertype (#808).
|
|
430
469
|
await this.resolver.resolveDeferredThisMemberRefs();
|
|
431
470
|
}
|
|
432
|
-
// Refresh planner stats + checkpoint the WAL after bulk writes.
|
|
433
|
-
// Cheap and non-blocking; never load-bearing for correctness.
|
|
434
471
|
if (result.success && result.filesIndexed > 0) {
|
|
435
|
-
|
|
472
|
+
if (walValve) {
|
|
473
|
+
walValve.stop();
|
|
474
|
+
await walValve.drain();
|
|
475
|
+
}
|
|
476
|
+
await this.db.runMaintenance();
|
|
436
477
|
}
|
|
437
|
-
// The orchestrator only sees extraction-phase counts; resolution and
|
|
438
|
-
// synthesizer edges (often >50% of the graph on JVM repos) come later.
|
|
439
|
-
// Recompute against the DB so the CLI summary reports the true totals.
|
|
440
478
|
if (result.success && result.filesIndexed > 0) {
|
|
441
479
|
const after = this.queries.getNodeAndEdgeCount();
|
|
442
480
|
result.nodesCreated = after.nodes - before.nodes;
|
|
443
481
|
result.edgesCreated = after.edges - before.edges;
|
|
444
482
|
}
|
|
445
|
-
// Stamp the index with the engine that built it, so `homegraph status`
|
|
446
|
-
// and `homegraph upgrade` can recommend a re-index when the running
|
|
447
|
-
// engine produces richer extraction than the one on disk. Only on a
|
|
448
|
-
// real full index — a sync touches a subset, so it must NOT advance the
|
|
449
|
-
// extraction stamp (the bulk would still be stale). See extraction-version.ts.
|
|
450
483
|
if (result.success && result.filesIndexed > 0) {
|
|
451
484
|
try {
|
|
452
485
|
this.queries.setMetadata('indexed_with_version', version_1.HomeGraphPackageVersion);
|
|
@@ -461,7 +494,6 @@ class HomeGraph {
|
|
|
461
494
|
result.errors.push({ message: ohosBinding.message, severity: 'warning', code: ohosBinding.code });
|
|
462
495
|
}
|
|
463
496
|
}
|
|
464
|
-
// Reconcile the scan's ground truth against what the pipeline accounted for.
|
|
465
497
|
try {
|
|
466
498
|
if (!result.success) {
|
|
467
499
|
this.queries.setMetadata('index_state', 'failed');
|
|
@@ -493,6 +525,23 @@ class HomeGraph {
|
|
|
493
525
|
return result;
|
|
494
526
|
}
|
|
495
527
|
finally {
|
|
528
|
+
if (walValve) {
|
|
529
|
+
walValve.stop();
|
|
530
|
+
await walValve.drain();
|
|
531
|
+
}
|
|
532
|
+
if (deferWal || restoreAutocheckpoint) {
|
|
533
|
+
try {
|
|
534
|
+
this.db.setWalAutocheckpoint(priorAutocheckpoint);
|
|
535
|
+
}
|
|
536
|
+
catch { /* connection may be closing */ }
|
|
537
|
+
}
|
|
538
|
+
if (fastInit) {
|
|
539
|
+
try {
|
|
540
|
+
this.db.getDb().pragma('synchronous = NORMAL');
|
|
541
|
+
this.db.getDb().pragma('journal_mode = WAL');
|
|
542
|
+
}
|
|
543
|
+
catch { /* connection may be closing */ }
|
|
544
|
+
}
|
|
496
545
|
this.fileLock.release();
|
|
497
546
|
}
|
|
498
547
|
});
|
|
@@ -531,11 +580,16 @@ class HomeGraph {
|
|
|
531
580
|
catch {
|
|
532
581
|
return { filesChecked: 0, filesAdded: 0, filesModified: 0, filesRemoved: 0, nodesUpdated: 0, durationMs: 0 };
|
|
533
582
|
}
|
|
583
|
+
const deferWal = process.env.HOMEGRAPH_NO_WAL_DEFER !== '1' && this.db.getJournalMode() === 'wal';
|
|
584
|
+
let walValve = null;
|
|
585
|
+
let priorAutocheckpoint = 1000;
|
|
586
|
+
if (deferWal) {
|
|
587
|
+
priorAutocheckpoint = this.db.getWalAutocheckpoint();
|
|
588
|
+
this.db.setWalAutocheckpoint(0);
|
|
589
|
+
walValve = new wal_valve_1.WalCheckpointValve(this.db, (0, wal_valve_1.resolveWalValveMb)(process.env.HOMEGRAPH_WAL_VALVE_MB, this.db.getDbFileSizeBytes()), undefined, options.verbose ? (m) => console.log(`[wal-valve] ${m}`) : undefined);
|
|
590
|
+
walValve.start();
|
|
591
|
+
}
|
|
534
592
|
try {
|
|
535
|
-
// Captured BEFORE the sync runs: the sync's own incremental writes
|
|
536
|
-
// populate vocab rows for the files it touches, so an end-of-sync
|
|
537
|
-
// emptiness check would see "non-empty" and skip the backfill forever,
|
|
538
|
-
// leaving every unchanged file's names unsegmented.
|
|
539
593
|
const vocabWasEmpty = (() => {
|
|
540
594
|
try {
|
|
541
595
|
return this.queries.isNameSegmentVocabEmpty();
|
|
@@ -544,29 +598,19 @@ class HomeGraph {
|
|
|
544
598
|
return false;
|
|
545
599
|
}
|
|
546
600
|
})();
|
|
547
|
-
const result = await this.orchestrator.sync(options.onProgress);
|
|
548
|
-
|
|
549
|
-
|
|
550
|
-
// to controllers in unchanged files. The pass is idempotent and cheap
|
|
551
|
-
// (regex over *.module.ts only).
|
|
601
|
+
const result = await this.orchestrator.sync(options.onProgress, options.paths);
|
|
602
|
+
if (walValve)
|
|
603
|
+
await walValve.foldNow();
|
|
552
604
|
if (result.filesAdded > 0 || result.filesModified > 0) {
|
|
553
605
|
this.resolver.runPostExtract();
|
|
554
606
|
}
|
|
555
607
|
else if (result.filesRemoved > 0) {
|
|
556
|
-
// A pure-removal sync still resolves refs below — the deletion path
|
|
557
|
-
// resurrects the removed file's incoming edges as pending refs
|
|
558
|
-
// (#1240 removal case) and the orphan sweep consumes them. In a
|
|
559
|
-
// long-lived process (daemon) the resolver's name caches were
|
|
560
|
-
// warmed against the pre-removal graph; drop them so resolution
|
|
561
|
-
// sees the post-removal state. (runPostExtract above clears caches
|
|
562
|
-
// itself, so the changed-files branch is already covered.)
|
|
563
608
|
this.resolver.clearCaches();
|
|
564
609
|
}
|
|
565
|
-
// Resolve references if files were updated
|
|
566
610
|
const filesChanged = result.filesAdded > 0 || result.filesModified > 0;
|
|
611
|
+
const backpressure = walValve ? () => walValve.backpressure() : undefined;
|
|
567
612
|
if (filesChanged) {
|
|
568
613
|
if (result.changedFilePaths) {
|
|
569
|
-
// Scope resolution to changed files (git fast path — bounded set)
|
|
570
614
|
const tRefLoad = Date.now();
|
|
571
615
|
const unresolvedRefs = this.queries.getUnresolvedReferencesByFiles(result.changedFilePaths);
|
|
572
616
|
if (process.env.HOMEGRAPH_SYNTH_TIMINGS)
|
|
@@ -583,15 +627,6 @@ class HomeGraph {
|
|
|
583
627
|
total,
|
|
584
628
|
});
|
|
585
629
|
});
|
|
586
|
-
// Retry previously-failed refs the changed files may now satisfy
|
|
587
|
-
// (#1240). Scoped resolution above only re-resolves refs FROM the
|
|
588
|
-
// changed files — but when a changed file gains an export/symbol,
|
|
589
|
-
// refs in UNCHANGED files that failed against the old graph can
|
|
590
|
-
// now resolve, and nothing else ever revisits them (their rows
|
|
591
|
-
// were parked as status='failed' by an earlier completed pass).
|
|
592
|
-
// Look them up by the symbol names the changed files now carry
|
|
593
|
-
// and re-resolve just that set. On a sync where no failed ref
|
|
594
|
-
// matches, this is one indexed lookup.
|
|
595
630
|
const tRetry = Date.now();
|
|
596
631
|
const retryable = this.queries.getRetryableFailedReferences(this.queries.getNodeNamesByFiles(result.changedFilePaths));
|
|
597
632
|
if (retryable.length > 0) {
|
|
@@ -611,7 +646,6 @@ class HomeGraph {
|
|
|
611
646
|
console.error(`[phase-timing] sync-failed-ref-retry: ${Date.now() - tRetry}ms (${retryable.length} refs)`);
|
|
612
647
|
}
|
|
613
648
|
else {
|
|
614
|
-
// No git info — use batched resolution to avoid OOM
|
|
615
649
|
const unresolvedCount = this.queries.getUnresolvedReferencesCount();
|
|
616
650
|
options.onProgress?.({
|
|
617
651
|
phase: 'resolving',
|
|
@@ -630,22 +664,9 @@ class HomeGraph {
|
|
|
630
664
|
current: done,
|
|
631
665
|
total: totalPasses,
|
|
632
666
|
});
|
|
633
|
-
});
|
|
667
|
+
}, backpressure);
|
|
634
668
|
}
|
|
635
669
|
}
|
|
636
|
-
// Orphan sweep (#1187). A resolution pass that dies mid-run — the #850
|
|
637
|
-
// daemon liveness watchdog's SIGKILL (#1122), Ctrl-C, a crash — leaves
|
|
638
|
-
// the refs it never reached in unresolved_refs, and the git-scoped fast
|
|
639
|
-
// path above never revisits them (it reads only the changed files'
|
|
640
|
-
// rows). Those files' call edges were then missing PERMANENTLY, with
|
|
641
|
-
// nothing to see except a too-small blast radius, until a full
|
|
642
|
-
// re-index. A completed pass takes every row it processed out of the
|
|
643
|
-
// PENDING set (resolved rows are deleted, unresolvable ones parked as
|
|
644
|
-
// status='failed' for the #1240 retry above), so any pending row now
|
|
645
|
-
// is such an orphan — or a row from an older engine's scoped pass.
|
|
646
|
-
// Grind them down with the batched resolver; this also makes a bare
|
|
647
|
-
// `homegraph sync` the recovery command for a wedged index. On a
|
|
648
|
-
// healthy index this is one COUNT query.
|
|
649
670
|
const orphanCount = this.queries.getUnresolvedReferencesCount();
|
|
650
671
|
if (orphanCount > 0) {
|
|
651
672
|
options.onProgress?.({
|
|
@@ -665,28 +686,15 @@ class HomeGraph {
|
|
|
665
686
|
current: done,
|
|
666
687
|
total: totalPasses,
|
|
667
688
|
});
|
|
668
|
-
});
|
|
689
|
+
}, backpressure);
|
|
669
690
|
}
|
|
670
691
|
if (filesChanged || orphanCount > 0) {
|
|
671
|
-
// Second pass: chained calls whose method lives on a supertype the
|
|
672
|
-
// receiver conforms to (protocol-extension / inherited). Needs the
|
|
673
|
-
// implements/extends edges built above (#750).
|
|
674
692
|
await this.resolver.resolveChainedCallsViaConformance();
|
|
675
|
-
// Same lifecycle for `this.<member>` callback registrations whose
|
|
676
|
-
// member is inherited from a supertype (#808).
|
|
677
693
|
await this.resolver.resolveDeferredThisMemberRefs();
|
|
678
694
|
}
|
|
679
|
-
// Refresh planner stats + checkpoint the WAL after bulk writes.
|
|
680
|
-
// Off-thread — see indexAll's call site.
|
|
681
695
|
if (filesChanged || result.filesRemoved > 0 || orphanCount > 0) {
|
|
682
696
|
await this.db.runMaintenance();
|
|
683
697
|
}
|
|
684
|
-
// Heal the segment vocabulary on indexes built before the table
|
|
685
|
-
// existed (upgrade path): incremental writes above only cover changed
|
|
686
|
-
// files, so a vocab that was empty when this sync STARTED means the
|
|
687
|
-
// bulk was never segmented — backfill it (INSERT OR IGNORE, so the
|
|
688
|
-
// rows the sync just wrote are fine). Batched + yielding — sync can
|
|
689
|
-
// run on the daemon's liveness-watchdog thread (#850/#1091).
|
|
690
698
|
try {
|
|
691
699
|
if (vocabWasEmpty && this.queries.getNodeAndEdgeCount().nodes > 0) {
|
|
692
700
|
await this.rebuildNameSegmentVocab();
|
|
@@ -696,6 +704,16 @@ class HomeGraph {
|
|
|
696
704
|
return result;
|
|
697
705
|
}
|
|
698
706
|
finally {
|
|
707
|
+
if (walValve) {
|
|
708
|
+
walValve.stop();
|
|
709
|
+
await walValve.drain();
|
|
710
|
+
}
|
|
711
|
+
if (deferWal) {
|
|
712
|
+
try {
|
|
713
|
+
this.db.setWalAutocheckpoint(priorAutocheckpoint);
|
|
714
|
+
}
|
|
715
|
+
catch { /* connection may be closing */ }
|
|
716
|
+
}
|
|
699
717
|
this.fileLock.release();
|
|
700
718
|
}
|
|
701
719
|
});
|
|
@@ -721,8 +739,8 @@ class HomeGraph {
|
|
|
721
739
|
watch(options = {}) {
|
|
722
740
|
if (this.watcher?.isActive())
|
|
723
741
|
return true;
|
|
724
|
-
this.watcher = new sync_1.FileWatcher(this.projectRoot, async () => {
|
|
725
|
-
const result = await this.sync();
|
|
742
|
+
this.watcher = new sync_1.FileWatcher(this.projectRoot, async (paths) => {
|
|
743
|
+
const result = await this.sync({ paths });
|
|
726
744
|
// sync() returns this exact zero-shape iff it failed to acquire the
|
|
727
745
|
// file lock (a real empty sync always has filesChecked > 0 because
|
|
728
746
|
// scanDirectory ran). Surface that to the watcher as a typed error
|
|
@@ -886,8 +904,19 @@ class HomeGraph {
|
|
|
886
904
|
* Resolve references in batches to keep memory bounded on large codebases.
|
|
887
905
|
* Processes chunks of unresolved refs, persisting results after each batch.
|
|
888
906
|
*/
|
|
889
|
-
async resolveReferencesBatched(onProgress, onSynthesisProgress) {
|
|
890
|
-
return this.resolver.resolveAndPersistBatched(onProgress, undefined, onSynthesisProgress
|
|
907
|
+
async resolveReferencesBatched(onProgress, onSynthesisProgress, backpressure) {
|
|
908
|
+
return this.resolver.resolveAndPersistBatched(onProgress, undefined, onSynthesisProgress, {
|
|
909
|
+
dbPath: this.db.getPath(),
|
|
910
|
+
bulkEdgeLoad: {
|
|
911
|
+
begin: () => this.db.beginBulkEdgeLoad(),
|
|
912
|
+
end: () => this.db.endBulkEdgeLoad(),
|
|
913
|
+
},
|
|
914
|
+
refIndexLoad: {
|
|
915
|
+
begin: () => this.db.beginBulkRefLoad(),
|
|
916
|
+
end: () => this.db.endBulkRefLoad(),
|
|
917
|
+
},
|
|
918
|
+
backpressure,
|
|
919
|
+
});
|
|
891
920
|
}
|
|
892
921
|
/**
|
|
893
922
|
* Get detected frameworks in the project
|
|
@@ -923,9 +952,8 @@ class HomeGraph {
|
|
|
923
952
|
return stats;
|
|
924
953
|
}
|
|
925
954
|
/**
|
|
926
|
-
* Active SQLite backend
|
|
927
|
-
*
|
|
928
|
-
* `homegraph_status` MCP tool alongside the effective journal mode.
|
|
955
|
+
* Active SQLite backend (`native` = better-sqlite3, or `wasm` fallback).
|
|
956
|
+
* Surfaced via `homegraph status` / `homegraph_status` with journal mode.
|
|
929
957
|
*/
|
|
930
958
|
getBackend() {
|
|
931
959
|
return this.db.getBackend();
|
|
@@ -968,6 +996,16 @@ class HomeGraph {
|
|
|
968
996
|
getNodesByName(name) {
|
|
969
997
|
return this.queries.getNodesByName(name);
|
|
970
998
|
}
|
|
999
|
+
/**
|
|
1000
|
+
* Nodes whose name CONTAINS `substring` (LIKE scan, ASCII-case-insensitive,
|
|
1001
|
+
* shortest-first). The camel-infix lookup FTS can't do — `profileInfo`
|
|
1002
|
+
* inside `getProfileInfoV2` is one FTS token (#1196).
|
|
1003
|
+
*/
|
|
1004
|
+
getNodesByNameSubstring(substring, options = {}) {
|
|
1005
|
+
return this.queries
|
|
1006
|
+
.findNodesByNameSubstring(substring, options)
|
|
1007
|
+
.map((r) => r.node);
|
|
1008
|
+
}
|
|
971
1009
|
/**
|
|
972
1010
|
* Search nodes by text
|
|
973
1011
|
*/
|
package/dist/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
|
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
* Query worker thread — issue: concurrent MCP tool calls starve the daemon.
|
|
3
3
|
*
|
|
4
4
|
* The shared daemon serves every session on ONE event loop with synchronous
|
|
5
|
-
*
|
|
5
|
+
* SQLite (better-sqlite3 / wasm). `codegraph_explore` is CPU-heavy (FTS + RWR/personalized-
|
|
6
6
|
* PageRank + impact + output building) stitched together by microtask `await`s,
|
|
7
7
|
* so N concurrent explores keep the microtask queue continuously full and
|
|
8
8
|
* starve the macrotask phases — timers AND socket I/O. The transport freezes:
|
|
@@ -10,7 +10,7 @@
|
|
|
10
10
|
* ~10 subagents that routinely exceeds the MCP client's request timeout.
|
|
11
11
|
*
|
|
12
12
|
* This worker moves the heavy read-tool dispatch OFF the daemon's main loop.
|
|
13
|
-
* Each worker owns its OWN read connection (
|
|
13
|
+
* Each worker owns its OWN read connection (native WAL allows N concurrent
|
|
14
14
|
* readers across connections — verified: a worker reader sees the main writer's
|
|
15
15
|
* committed catch-up/watcher writes), so {@link QueryPool} runs N tool calls in
|
|
16
16
|
* true parallel up to core count while the main loop stays free for the MCP
|
package/dist/mcp/query-worker.js
CHANGED
|
@@ -3,7 +3,7 @@
|
|
|
3
3
|
* Query worker thread — issue: concurrent MCP tool calls starve the daemon.
|
|
4
4
|
*
|
|
5
5
|
* The shared daemon serves every session on ONE event loop with synchronous
|
|
6
|
-
*
|
|
6
|
+
* SQLite (better-sqlite3 / wasm). `codegraph_explore` is CPU-heavy (FTS + RWR/personalized-
|
|
7
7
|
* PageRank + impact + output building) stitched together by microtask `await`s,
|
|
8
8
|
* so N concurrent explores keep the microtask queue continuously full and
|
|
9
9
|
* starve the macrotask phases — timers AND socket I/O. The transport freezes:
|
|
@@ -11,7 +11,7 @@
|
|
|
11
11
|
* ~10 subagents that routinely exceeds the MCP client's request timeout.
|
|
12
12
|
*
|
|
13
13
|
* This worker moves the heavy read-tool dispatch OFF the daemon's main loop.
|
|
14
|
-
* Each worker owns its OWN read connection (
|
|
14
|
+
* Each worker owns its OWN read connection (native WAL allows N concurrent
|
|
15
15
|
* readers across connections — verified: a worker reader sees the main writer's
|
|
16
16
|
* committed catch-up/watcher writes), so {@link QueryPool} runs N tool calls in
|
|
17
17
|
* true parallel up to core count while the main loop stays free for the MCP
|
package/dist/mcp/tools.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"tools.d.ts","sourceRoot":"","sources":["../../src/mcp/tools.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,KAAK,SAAS,MAAM,UAAU,CAAC;AACtC,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,cAAc,CAAC;AAiB9C,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,SAAS,CAAC;
|
|
1
|
+
{"version":3,"file":"tools.d.ts","sourceRoot":"","sources":["../../src/mcp/tools.ts"],"names":[],"mappings":"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"}
|