@jafreck/lore 0.2.0 → 0.2.2
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 +399 -199
- package/dist/cli.js +139 -18
- package/dist/cli.js.map +1 -1
- package/dist/index.d.ts +7 -6
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +3 -3
- package/dist/index.js.map +1 -1
- package/dist/indexer/db.d.ts +12 -11
- package/dist/indexer/db.d.ts.map +1 -1
- package/dist/indexer/db.js +118 -18
- package/dist/indexer/db.js.map +1 -1
- package/dist/indexer/docs.d.ts +42 -0
- package/dist/indexer/docs.d.ts.map +1 -0
- package/dist/indexer/docs.js +214 -0
- package/dist/indexer/docs.js.map +1 -0
- package/dist/indexer/embedder.d.ts +7 -0
- package/dist/indexer/embedder.d.ts.map +1 -1
- package/dist/indexer/embedder.js +10 -0
- package/dist/indexer/embedder.js.map +1 -1
- package/dist/indexer/ensure-python-deps.d.ts +1 -1
- package/dist/indexer/ensure-python-deps.js +1 -1
- package/dist/indexer/extractors/types.d.ts +22 -0
- package/dist/indexer/extractors/types.d.ts.map +1 -1
- package/dist/indexer/extractors/types.js +12 -0
- package/dist/indexer/extractors/types.js.map +1 -1
- package/dist/indexer/extractors/typescript.d.ts +1 -1
- package/dist/indexer/extractors/typescript.d.ts.map +1 -1
- package/dist/indexer/extractors/typescript.js +38 -8
- package/dist/indexer/extractors/typescript.js.map +1 -1
- package/dist/indexer/git-history.d.ts.map +1 -1
- package/dist/indexer/git-history.js +4 -4
- package/dist/indexer/git-history.js.map +1 -1
- package/dist/indexer/git-hooks.d.ts +1 -0
- package/dist/indexer/git-hooks.d.ts.map +1 -1
- package/dist/indexer/git-hooks.js +3 -2
- package/dist/indexer/git-hooks.js.map +1 -1
- package/dist/indexer/index.d.ts +35 -9
- package/dist/indexer/index.d.ts.map +1 -1
- package/dist/indexer/index.js +470 -30
- package/dist/indexer/index.js.map +1 -1
- package/dist/indexer/lsp/client.d.ts +61 -0
- package/dist/indexer/lsp/client.d.ts.map +1 -0
- package/dist/indexer/lsp/client.js +217 -0
- package/dist/indexer/lsp/client.js.map +1 -0
- package/dist/indexer/lsp/config.d.ts +16 -0
- package/dist/indexer/lsp/config.d.ts.map +1 -0
- package/dist/indexer/lsp/config.js +78 -0
- package/dist/indexer/lsp/config.js.map +1 -0
- package/dist/indexer/lsp/enrichment.d.ts +55 -0
- package/dist/indexer/lsp/enrichment.d.ts.map +1 -0
- package/dist/indexer/lsp/enrichment.js +211 -0
- package/dist/indexer/lsp/enrichment.js.map +1 -0
- package/dist/indexer/lsp/registry.d.ts +19 -0
- package/dist/indexer/lsp/registry.d.ts.map +1 -0
- package/dist/indexer/lsp/registry.js +118 -0
- package/dist/indexer/lsp/registry.js.map +1 -0
- package/dist/indexer/parser.d.ts +7 -0
- package/dist/indexer/parser.d.ts.map +1 -1
- package/dist/indexer/parser.js +3 -1
- package/dist/indexer/parser.js.map +1 -1
- package/dist/indexer/poller.d.ts +8 -1
- package/dist/indexer/poller.d.ts.map +1 -1
- package/dist/indexer/poller.js +7 -1
- package/dist/indexer/poller.js.map +1 -1
- package/dist/indexer/walker.d.ts +22 -0
- package/dist/indexer/walker.d.ts.map +1 -1
- package/dist/indexer/walker.js +15 -0
- package/dist/indexer/walker.js.map +1 -1
- package/dist/indexer/watcher.d.ts +8 -1
- package/dist/indexer/watcher.d.ts.map +1 -1
- package/dist/indexer/watcher.js +7 -1
- package/dist/indexer/watcher.js.map +1 -1
- package/dist/{kb-server → lore-server}/db.d.ts +158 -4
- package/dist/lore-server/db.d.ts.map +1 -0
- package/dist/{kb-server → lore-server}/db.js +457 -26
- package/dist/lore-server/db.js.map +1 -0
- package/dist/lore-server/server.d.ts +43 -0
- package/dist/lore-server/server.d.ts.map +1 -0
- package/dist/lore-server/server.js +385 -0
- package/dist/lore-server/server.js.map +1 -0
- package/dist/{kb-server → lore-server}/tools/annotations.d.ts +2 -2
- package/dist/lore-server/tools/annotations.d.ts.map +1 -0
- package/dist/{kb-server → lore-server}/tools/annotations.js +2 -2
- package/dist/lore-server/tools/annotations.js.map +1 -0
- package/dist/{kb-server → lore-server}/tools/architecture.d.ts +9 -2
- package/dist/lore-server/tools/architecture.d.ts.map +1 -0
- package/dist/{kb-server → lore-server}/tools/architecture.js +37 -2
- package/dist/lore-server/tools/architecture.js.map +1 -0
- package/dist/lore-server/tools/blame.d.ts +159 -0
- package/dist/lore-server/tools/blame.d.ts.map +1 -0
- package/dist/lore-server/tools/blame.js +595 -0
- package/dist/lore-server/tools/blame.js.map +1 -0
- package/dist/{kb-server → lore-server}/tools/coverage.d.ts +2 -2
- package/dist/lore-server/tools/coverage.d.ts.map +1 -0
- package/dist/{kb-server → lore-server}/tools/coverage.js +2 -2
- package/dist/lore-server/tools/coverage.js.map +1 -0
- package/dist/lore-server/tools/docs.d.ts +86 -0
- package/dist/lore-server/tools/docs.d.ts.map +1 -0
- package/dist/lore-server/tools/docs.js +243 -0
- package/dist/lore-server/tools/docs.js.map +1 -0
- package/dist/{kb-server → lore-server}/tools/graph.d.ts +40 -3
- package/dist/lore-server/tools/graph.d.ts.map +1 -0
- package/dist/{kb-server → lore-server}/tools/graph.js +122 -11
- package/dist/lore-server/tools/graph.js.map +1 -0
- package/dist/{kb-server → lore-server}/tools/history.d.ts +13 -6
- package/dist/lore-server/tools/history.d.ts.map +1 -0
- package/dist/{kb-server → lore-server}/tools/history.js +43 -10
- package/dist/lore-server/tools/history.js.map +1 -0
- package/dist/lore-server/tools/lookup.d.ts +75 -0
- package/dist/lore-server/tools/lookup.d.ts.map +1 -0
- package/dist/lore-server/tools/lookup.js +148 -0
- package/dist/lore-server/tools/lookup.js.map +1 -0
- package/dist/{kb-server → lore-server}/tools/metrics.d.ts +3 -3
- package/dist/lore-server/tools/metrics.d.ts.map +1 -0
- package/dist/{kb-server → lore-server}/tools/metrics.js +3 -3
- package/dist/lore-server/tools/metrics.js.map +1 -0
- package/dist/{kb-server → lore-server}/tools/notes.d.ts +16 -16
- package/dist/lore-server/tools/notes.d.ts.map +1 -0
- package/dist/{kb-server → lore-server}/tools/notes.js +55 -20
- package/dist/lore-server/tools/notes.js.map +1 -0
- package/dist/{kb-server → lore-server}/tools/routes.d.ts +2 -2
- package/dist/lore-server/tools/routes.d.ts.map +1 -0
- package/dist/{kb-server → lore-server}/tools/routes.js +2 -2
- package/dist/lore-server/tools/routes.js.map +1 -0
- package/dist/{kb-server → lore-server}/tools/search.d.ts +57 -13
- package/dist/lore-server/tools/search.d.ts.map +1 -0
- package/dist/{kb-server → lore-server}/tools/search.js +123 -23
- package/dist/lore-server/tools/search.js.map +1 -0
- package/dist/{kb-server → lore-server}/tools/snippet.d.ts +20 -4
- package/dist/lore-server/tools/snippet.d.ts.map +1 -0
- package/dist/lore-server/tools/snippet.js +116 -0
- package/dist/lore-server/tools/snippet.js.map +1 -0
- package/dist/{kb-server → lore-server}/tools/test-map.d.ts +2 -2
- package/dist/lore-server/tools/test-map.d.ts.map +1 -0
- package/dist/{kb-server → lore-server}/tools/test-map.js +2 -2
- package/dist/lore-server/tools/test-map.js.map +1 -0
- package/dist/{kb-server → lore-server}/tools/writeback.d.ts +2 -2
- package/dist/lore-server/tools/writeback.d.ts.map +1 -0
- package/dist/{kb-server → lore-server}/tools/writeback.js +3 -3
- package/dist/lore-server/tools/writeback.js.map +1 -0
- package/package.json +14 -14
- package/dist/kb-server/db.d.ts.map +0 -1
- package/dist/kb-server/db.js.map +0 -1
- package/dist/kb-server/server.d.ts +0 -42
- package/dist/kb-server/server.d.ts.map +0 -1
- package/dist/kb-server/server.js +0 -241
- package/dist/kb-server/server.js.map +0 -1
- package/dist/kb-server/tools/annotations.d.ts.map +0 -1
- package/dist/kb-server/tools/annotations.js.map +0 -1
- package/dist/kb-server/tools/architecture.d.ts.map +0 -1
- package/dist/kb-server/tools/architecture.js.map +0 -1
- package/dist/kb-server/tools/blame.d.ts +0 -67
- package/dist/kb-server/tools/blame.d.ts.map +0 -1
- package/dist/kb-server/tools/blame.js +0 -162
- package/dist/kb-server/tools/blame.js.map +0 -1
- package/dist/kb-server/tools/coverage.d.ts.map +0 -1
- package/dist/kb-server/tools/coverage.js.map +0 -1
- package/dist/kb-server/tools/graph.d.ts.map +0 -1
- package/dist/kb-server/tools/graph.js.map +0 -1
- package/dist/kb-server/tools/history.d.ts.map +0 -1
- package/dist/kb-server/tools/history.js.map +0 -1
- package/dist/kb-server/tools/lookup.d.ts +0 -36
- package/dist/kb-server/tools/lookup.d.ts.map +0 -1
- package/dist/kb-server/tools/lookup.js +0 -45
- package/dist/kb-server/tools/lookup.js.map +0 -1
- package/dist/kb-server/tools/metrics.d.ts.map +0 -1
- package/dist/kb-server/tools/metrics.js.map +0 -1
- package/dist/kb-server/tools/notes.d.ts.map +0 -1
- package/dist/kb-server/tools/notes.js.map +0 -1
- package/dist/kb-server/tools/routes.d.ts.map +0 -1
- package/dist/kb-server/tools/routes.js.map +0 -1
- package/dist/kb-server/tools/search.d.ts.map +0 -1
- package/dist/kb-server/tools/search.js.map +0 -1
- package/dist/kb-server/tools/snippet.d.ts.map +0 -1
- package/dist/kb-server/tools/snippet.js +0 -49
- package/dist/kb-server/tools/snippet.js.map +0 -1
- package/dist/kb-server/tools/test-map.d.ts.map +0 -1
- package/dist/kb-server/tools/test-map.js.map +0 -1
- package/dist/kb-server/tools/writeback.d.ts.map +0 -1
- package/dist/kb-server/tools/writeback.js.map +0 -1
|
@@ -5,6 +5,7 @@
|
|
|
5
5
|
* events in a directory tree, debounces/batches them, and calls
|
|
6
6
|
* `IndexBuilder.update()` with the affected paths.
|
|
7
7
|
*/
|
|
8
|
+
import type { EffectiveLspSettings } from './lsp/config.js';
|
|
8
9
|
import type { WalkerConfig } from './walker.js';
|
|
9
10
|
/** Configuration options for FileWatcher. */
|
|
10
11
|
export interface WatcherOptions {
|
|
@@ -17,6 +18,10 @@ export interface WatcherOptions {
|
|
|
17
18
|
depth?: number;
|
|
18
19
|
all?: boolean;
|
|
19
20
|
};
|
|
21
|
+
/** Whether to include dependency indexing during update cycles. */
|
|
22
|
+
indexDependencies?: boolean;
|
|
23
|
+
/** Effective LSP settings forwarded to update cycles. */
|
|
24
|
+
lsp?: EffectiveLspSettings;
|
|
20
25
|
}
|
|
21
26
|
/**
|
|
22
27
|
* Watches a directory tree for file changes and triggers incremental index
|
|
@@ -24,7 +29,7 @@ export interface WatcherOptions {
|
|
|
24
29
|
*
|
|
25
30
|
* @example
|
|
26
31
|
* ```ts
|
|
27
|
-
* const watcher = new FileWatcher('/path/to/
|
|
32
|
+
* const watcher = new FileWatcher('/path/to/lore.db', { rootDir: '/path/to/src' });
|
|
28
33
|
* watcher.start();
|
|
29
34
|
* // ...later...
|
|
30
35
|
* watcher.stop();
|
|
@@ -36,6 +41,8 @@ export declare class FileWatcher {
|
|
|
36
41
|
private readonly debounceMs;
|
|
37
42
|
private readonly enabled;
|
|
38
43
|
private readonly history;
|
|
44
|
+
private readonly indexDependencies;
|
|
45
|
+
private readonly lsp;
|
|
39
46
|
private watcher;
|
|
40
47
|
private pendingPaths;
|
|
41
48
|
private debounceTimer;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"watcher.d.ts","sourceRoot":"","sources":["../../src/indexer/watcher.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAIH,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC;AAIhD,6CAA6C;AAC7C,MAAM,WAAW,cAAc;IAC7B,yDAAyD;IACzD,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,wFAAwF;IACxF,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,2DAA2D;IAC3D,OAAO,CAAC,EAAE,OAAO,GAAG;QAAE,KAAK,CAAC,EAAE,MAAM,CAAC;QAAC,GAAG,CAAC,EAAE,OAAO,CAAA;KAAE,CAAC;
|
|
1
|
+
{"version":3,"file":"watcher.d.ts","sourceRoot":"","sources":["../../src/indexer/watcher.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAIH,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,iBAAiB,CAAC;AAC5D,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC;AAIhD,6CAA6C;AAC7C,MAAM,WAAW,cAAc;IAC7B,yDAAyD;IACzD,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,wFAAwF;IACxF,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,2DAA2D;IAC3D,OAAO,CAAC,EAAE,OAAO,GAAG;QAAE,KAAK,CAAC,EAAE,MAAM,CAAC;QAAC,GAAG,CAAC,EAAE,OAAO,CAAA;KAAE,CAAC;IACtD,mEAAmE;IACnE,iBAAiB,CAAC,EAAE,OAAO,CAAC;IAC5B,yDAAyD;IACzD,GAAG,CAAC,EAAE,oBAAoB,CAAC;CAC5B;AAID;;;;;;;;;;;GAWG;AACH,qBAAa,WAAW;IACtB,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAS;IAChC,OAAO,CAAC,QAAQ,CAAC,YAAY,CAAe;IAC5C,OAAO,CAAC,QAAQ,CAAC,UAAU,CAAS;IACpC,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAU;IAClC,OAAO,CAAC,QAAQ,CAAC,OAAO,CAA8C;IACtE,OAAO,CAAC,QAAQ,CAAC,iBAAiB,CAAU;IAC5C,OAAO,CAAC,QAAQ,CAAC,GAAG,CAAmC;IAEvD,OAAO,CAAC,OAAO,CAA6B;IAC5C,OAAO,CAAC,YAAY,CAA0B;IAC9C,OAAO,CAAC,aAAa,CAA8C;IACnE,OAAO,CAAC,YAAY,CAAS;gBAEjB,MAAM,EAAE,MAAM,EAAE,YAAY,EAAE,YAAY,EAAE,OAAO,GAAE,cAAmB;IAUpF,0EAA0E;IAC1E,KAAK,IAAI,IAAI;IAqBb,2DAA2D;IAC3D,IAAI,IAAI,IAAI;IAaZ,OAAO,CAAC,aAAa;YAOP,KAAK;CAuCpB"}
|
package/dist/indexer/watcher.js
CHANGED
|
@@ -14,7 +14,7 @@ import { IndexBuilder } from './index.js';
|
|
|
14
14
|
*
|
|
15
15
|
* @example
|
|
16
16
|
* ```ts
|
|
17
|
-
* const watcher = new FileWatcher('/path/to/
|
|
17
|
+
* const watcher = new FileWatcher('/path/to/lore.db', { rootDir: '/path/to/src' });
|
|
18
18
|
* watcher.start();
|
|
19
19
|
* // ...later...
|
|
20
20
|
* watcher.stop();
|
|
@@ -26,6 +26,8 @@ export class FileWatcher {
|
|
|
26
26
|
debounceMs;
|
|
27
27
|
enabled;
|
|
28
28
|
history;
|
|
29
|
+
indexDependencies;
|
|
30
|
+
lsp;
|
|
29
31
|
watcher = null;
|
|
30
32
|
pendingPaths = new Set();
|
|
31
33
|
debounceTimer = null;
|
|
@@ -36,6 +38,8 @@ export class FileWatcher {
|
|
|
36
38
|
this.debounceMs = options.debounceMs ?? 300;
|
|
37
39
|
this.enabled = options.enabled ?? true;
|
|
38
40
|
this.history = options.history ?? false;
|
|
41
|
+
this.indexDependencies = options.indexDependencies ?? false;
|
|
42
|
+
this.lsp = options.lsp;
|
|
39
43
|
}
|
|
40
44
|
/** Begin watching `walkerConfig.rootDir` recursively for file changes. */
|
|
41
45
|
start() {
|
|
@@ -82,6 +86,8 @@ export class FileWatcher {
|
|
|
82
86
|
return;
|
|
83
87
|
const builder = new IndexBuilder(this.dbPath, this.walkerConfig, undefined, {
|
|
84
88
|
history: this.history,
|
|
89
|
+
...(this.indexDependencies && { indexDependencies: true }),
|
|
90
|
+
...(this.lsp && { lsp: this.lsp }),
|
|
85
91
|
});
|
|
86
92
|
let errorCount = 0;
|
|
87
93
|
try {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"watcher.js","sourceRoot":"","sources":["../../src/indexer/watcher.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH,OAAO,KAAK,EAAE,MAAM,SAAS,CAAC;AAC9B,OAAO,EAAE,YAAY,EAAE,MAAM,YAAY,CAAC;
|
|
1
|
+
{"version":3,"file":"watcher.js","sourceRoot":"","sources":["../../src/indexer/watcher.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
/**
|
|
2
|
-
* @module
|
|
2
|
+
* @module lore-server/db
|
|
3
3
|
*
|
|
4
|
-
* Read-only SQLite connection wrapper for the
|
|
4
|
+
* Read-only SQLite connection wrapper for the Lore MCP server.
|
|
5
5
|
* All MCP tool files use `openReadOnly()` to open the knowledge-base database.
|
|
6
6
|
*/
|
|
7
7
|
import Database from 'better-sqlite3';
|
|
@@ -24,13 +24,103 @@ export interface SymbolRow {
|
|
|
24
24
|
param_count: number | null;
|
|
25
25
|
cyclomatic: number | null;
|
|
26
26
|
max_nesting: number | null;
|
|
27
|
+
resolved_type_signature?: string | null;
|
|
28
|
+
resolved_return_type?: string | null;
|
|
29
|
+
definition_uri?: string | null;
|
|
30
|
+
definition_path?: string | null;
|
|
31
|
+
}
|
|
32
|
+
export interface SymbolRangeLookupOptions {
|
|
33
|
+
path?: string;
|
|
34
|
+
branch?: string;
|
|
35
|
+
}
|
|
36
|
+
export interface SymbolRangeMatch {
|
|
37
|
+
symbol_id: number;
|
|
38
|
+
symbol_name: string;
|
|
39
|
+
symbol_kind: string;
|
|
40
|
+
file_id: number;
|
|
41
|
+
file_path: string;
|
|
42
|
+
branch: string;
|
|
43
|
+
start_line: number;
|
|
44
|
+
end_line: number;
|
|
45
|
+
}
|
|
46
|
+
export type SymbolRangeResolution = {
|
|
47
|
+
outcome: 'resolved';
|
|
48
|
+
match: SymbolRangeMatch;
|
|
49
|
+
} | {
|
|
50
|
+
outcome: 'missing';
|
|
51
|
+
symbol: string;
|
|
52
|
+
path?: string;
|
|
53
|
+
branch?: string;
|
|
54
|
+
} | {
|
|
55
|
+
outcome: 'ambiguous';
|
|
56
|
+
symbol: string;
|
|
57
|
+
path?: string;
|
|
58
|
+
branch?: string;
|
|
59
|
+
candidates: SymbolRangeMatch[];
|
|
60
|
+
};
|
|
61
|
+
export type SymbolMatchMode = 'exact' | 'prefix' | 'contains';
|
|
62
|
+
export interface SymbolLookupOptions {
|
|
63
|
+
branch?: string;
|
|
64
|
+
matchMode?: SymbolMatchMode;
|
|
65
|
+
kind?: string;
|
|
66
|
+
pathPrefix?: string;
|
|
67
|
+
language?: string;
|
|
68
|
+
}
|
|
69
|
+
export interface ListSymbolsOptions {
|
|
70
|
+
branch?: string;
|
|
71
|
+
kind?: string;
|
|
72
|
+
pathPrefix?: string;
|
|
73
|
+
language?: string;
|
|
74
|
+
limit?: number;
|
|
75
|
+
offset?: number;
|
|
27
76
|
}
|
|
28
77
|
/** Fetch a single symbol by primary key. Returns `undefined` if not found. */
|
|
29
78
|
export declare function getSymbolById(db: Database.Database, id: number): SymbolRow | undefined;
|
|
30
|
-
/**
|
|
79
|
+
/** List symbol range candidates with optional path/branch filters for disambiguation. */
|
|
80
|
+
export declare function listSymbolRangesByName(db: Database.Database, name: string, options?: SymbolRangeLookupOptions): SymbolRangeMatch[];
|
|
81
|
+
/**
|
|
82
|
+
* Resolve a symbol name to a concrete file and line range.
|
|
83
|
+
* Returns deterministic ambiguity details instead of selecting an arbitrary match.
|
|
84
|
+
*/
|
|
85
|
+
export declare function resolveSymbolRangeByName(db: Database.Database, name: string, options?: SymbolRangeLookupOptions): SymbolRangeResolution;
|
|
86
|
+
/** Fetch all symbols whose name matches the given string using the requested match mode. */
|
|
31
87
|
export declare function getSymbolsByName(db: Database.Database, name: string, branch?: string): SymbolRow[];
|
|
32
|
-
|
|
88
|
+
export declare function getSymbolsByName(db: Database.Database, name: string, options?: SymbolLookupOptions): SymbolRow[];
|
|
89
|
+
/** Return symbols with optional filters and pagination controls. */
|
|
33
90
|
export declare function listSymbols(db: Database.Database, limit?: number, branch?: string): SymbolRow[];
|
|
91
|
+
export declare function listSymbols(db: Database.Database, options?: ListSymbolsOptions): SymbolRow[];
|
|
92
|
+
export interface SemanticSearchSymbolsArgs {
|
|
93
|
+
queryVector: number[];
|
|
94
|
+
branch?: string;
|
|
95
|
+
limit?: number;
|
|
96
|
+
}
|
|
97
|
+
export interface SemanticSymbolRow extends SymbolRow {
|
|
98
|
+
file_path: string;
|
|
99
|
+
file_branch: string;
|
|
100
|
+
score: number;
|
|
101
|
+
}
|
|
102
|
+
/** Search symbols by embedding distance with optional branch filtering. */
|
|
103
|
+
export declare function semanticSearchSymbols(db: Database.Database, args: SemanticSearchSymbolsArgs): SemanticSymbolRow[];
|
|
104
|
+
export interface ExternalSymbolRow {
|
|
105
|
+
id: number;
|
|
106
|
+
dependency_ecosystem: string;
|
|
107
|
+
source_type: string;
|
|
108
|
+
source_ref: string;
|
|
109
|
+
package_name: string;
|
|
110
|
+
package_version: string | null;
|
|
111
|
+
symbol_name: string;
|
|
112
|
+
symbol_kind: string;
|
|
113
|
+
signature: string;
|
|
114
|
+
doc_comment: string | null;
|
|
115
|
+
resolved_type_signature: string | null;
|
|
116
|
+
resolved_return_type: string | null;
|
|
117
|
+
definition_uri: string | null;
|
|
118
|
+
definition_path: string | null;
|
|
119
|
+
}
|
|
120
|
+
/** Fetch external symbols whose exported name exactly matches (case-insensitive). */
|
|
121
|
+
export declare function getExternalSymbolsByName(db: Database.Database, name: string): ExternalSymbolRow[];
|
|
122
|
+
/** Fetch external symbols whose exported name contains the query fragment. */
|
|
123
|
+
export declare function searchExternalSymbolsByName(db: Database.Database, nameQuery: string, limit?: number): ExternalSymbolRow[];
|
|
34
124
|
export interface FileRow {
|
|
35
125
|
id: number;
|
|
36
126
|
path: string;
|
|
@@ -46,6 +136,66 @@ export declare function getFileById(db: Database.Database, id: number, branch?:
|
|
|
46
136
|
export declare function getFileByPath(db: Database.Database, path: string, branch?: string): FileRow | undefined;
|
|
47
137
|
/** Return all indexed files, optionally limited to `limit` rows. */
|
|
48
138
|
export declare function listFiles(db: Database.Database, limit?: number, branch?: string): FileRow[];
|
|
139
|
+
/** Return indexed files matching an exact path or directory prefix. */
|
|
140
|
+
export declare function listFilesByPathPrefix(db: Database.Database, pathPrefix: string, branch?: string, limit?: number): FileRow[];
|
|
141
|
+
export interface DocRow {
|
|
142
|
+
id: number;
|
|
143
|
+
path: string;
|
|
144
|
+
branch: string;
|
|
145
|
+
kind: string;
|
|
146
|
+
title: string;
|
|
147
|
+
content: string;
|
|
148
|
+
content_hash: string;
|
|
149
|
+
indexed_at: number;
|
|
150
|
+
}
|
|
151
|
+
export interface ListDocsArgs {
|
|
152
|
+
branch?: string;
|
|
153
|
+
kind?: string;
|
|
154
|
+
kinds?: string[];
|
|
155
|
+
limit?: number;
|
|
156
|
+
}
|
|
157
|
+
export interface DocSectionRow {
|
|
158
|
+
id: number;
|
|
159
|
+
doc_id: number;
|
|
160
|
+
doc_path: string;
|
|
161
|
+
doc_branch: string;
|
|
162
|
+
doc_kind: string;
|
|
163
|
+
doc_title: string;
|
|
164
|
+
section_index: number;
|
|
165
|
+
title: string;
|
|
166
|
+
depth: number;
|
|
167
|
+
heading_path: string;
|
|
168
|
+
line_start: number;
|
|
169
|
+
line_end: number;
|
|
170
|
+
content: string;
|
|
171
|
+
content_hash: string;
|
|
172
|
+
}
|
|
173
|
+
export interface ListDocSectionsArgs {
|
|
174
|
+
path?: string;
|
|
175
|
+
branch?: string;
|
|
176
|
+
kind?: string;
|
|
177
|
+
kinds?: string[];
|
|
178
|
+
limit?: number;
|
|
179
|
+
}
|
|
180
|
+
export interface SearchDocSectionsArgs extends ListDocSectionsArgs {
|
|
181
|
+
query: string;
|
|
182
|
+
}
|
|
183
|
+
export interface SemanticSearchDocSectionsArgs extends ListDocSectionsArgs {
|
|
184
|
+
queryVector: number[];
|
|
185
|
+
}
|
|
186
|
+
export interface SemanticDocSectionRow extends DocSectionRow {
|
|
187
|
+
score: number;
|
|
188
|
+
}
|
|
189
|
+
/** List indexed docs with optional branch/kind filtering. */
|
|
190
|
+
export declare function listDocs(db: Database.Database, args?: ListDocsArgs): DocRow[];
|
|
191
|
+
/** Fetch one indexed doc by path, optionally narrowed to a branch. */
|
|
192
|
+
export declare function getDocByPath(db: Database.Database, path: string, branch?: string): DocRow | undefined;
|
|
193
|
+
/** List stored document sections/chunks with heading-path metadata and optional filters. */
|
|
194
|
+
export declare function listDocSections(db: Database.Database, args?: ListDocSectionsArgs): DocSectionRow[];
|
|
195
|
+
/** Search document sections/chunks by text with optional path/branch/kind filtering. */
|
|
196
|
+
export declare function searchDocSections(db: Database.Database, args: SearchDocSectionsArgs): DocSectionRow[];
|
|
197
|
+
/** Search document sections/chunks by embedding distance with optional path/branch/kind filtering. */
|
|
198
|
+
export declare function semanticSearchDocSections(db: Database.Database, args: SemanticSearchDocSectionsArgs): SemanticDocSectionRow[];
|
|
49
199
|
export interface TestMappingRow {
|
|
50
200
|
test_path: string;
|
|
51
201
|
confidence: string;
|
|
@@ -186,6 +336,10 @@ export declare function listCommitFiles(db: Database.Database, commitSha: string
|
|
|
186
336
|
export declare function listCommitRefs(db: Database.Database, commitSha: string): CommitRefRow[];
|
|
187
337
|
/** Return commits associated with a branch/tag ref name or prefix. */
|
|
188
338
|
export declare function listCommitsByRef(db: Database.Database, refQuery: string, limit?: number): CommitRow[];
|
|
339
|
+
/** Whether commit semantic vectors are queryable and contain at least one row. */
|
|
340
|
+
export declare function hasCommitEmbeddings(db: Database.Database): boolean;
|
|
341
|
+
/** Return commits ranked by commit-message vector distance (ascending). */
|
|
342
|
+
export declare function listCommitsBySemanticQuery(db: Database.Database, queryVector: number[], limit?: number): CommitRow[];
|
|
189
343
|
export declare function listCommitCadence(db: Database.Database, granularity: 'day' | 'week' | 'month', filters?: CommitStatsFilters): CommitCadenceRow[];
|
|
190
344
|
export declare function listCommitSizes(db: Database.Database, filters?: CommitStatsFilters): CommitSizeRow[];
|
|
191
345
|
export declare function listCommitChurnByFile(db: Database.Database, filters?: CommitStatsFilters): CommitChurnFileRow[];
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"db.d.ts","sourceRoot":"","sources":["../../src/lore-server/db.ts"],"names":[],"mappings":"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"}
|