@mcp-graph-workflow/mcp-graph 5.19.3 → 5.20.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/core/context/compact-context.d.ts +2 -1
- package/dist/core/context/compact-context.d.ts.map +1 -1
- package/dist/core/context/compact-context.js +29 -16
- package/dist/core/context/compact-context.js.map +1 -1
- package/dist/core/context/context-assembler.d.ts +9 -0
- package/dist/core/context/context-assembler.d.ts.map +1 -1
- package/dist/core/context/context-assembler.js +25 -2
- package/dist/core/context/context-assembler.js.map +1 -1
- package/dist/core/context/rag-context.d.ts +9 -0
- package/dist/core/context/rag-context.d.ts.map +1 -1
- package/dist/core/context/rag-context.js +29 -3
- package/dist/core/context/rag-context.js.map +1 -1
- package/dist/core/context/task-context-cache.d.ts +33 -0
- package/dist/core/context/task-context-cache.d.ts.map +1 -0
- package/dist/core/context/task-context-cache.js +61 -0
- package/dist/core/context/task-context-cache.js.map +1 -0
- package/dist/core/rag/multi-strategy-retrieval.d.ts.map +1 -1
- package/dist/core/rag/multi-strategy-retrieval.js +3 -6
- package/dist/core/rag/multi-strategy-retrieval.js.map +1 -1
- package/dist/core/rag/phase-boost-cache.d.ts +20 -0
- package/dist/core/rag/phase-boost-cache.d.ts.map +1 -0
- package/dist/core/rag/phase-boost-cache.js +50 -0
- package/dist/core/rag/phase-boost-cache.js.map +1 -0
- package/dist/core/rag/query-cache.d.ts +6 -8
- package/dist/core/rag/query-cache.d.ts.map +1 -1
- package/dist/core/rag/query-cache.js +21 -38
- package/dist/core/rag/query-cache.js.map +1 -1
- package/dist/core/rag/rag-pipeline.d.ts.map +1 -1
- package/dist/core/rag/rag-pipeline.js +14 -3
- package/dist/core/rag/rag-pipeline.js.map +1 -1
- package/dist/core/rag/tfidf-embedding-cache.d.ts +20 -0
- package/dist/core/rag/tfidf-embedding-cache.d.ts.map +1 -0
- package/dist/core/rag/tfidf-embedding-cache.js +46 -0
- package/dist/core/rag/tfidf-embedding-cache.js.map +1 -0
- package/dist/core/store/graph-snapshot-cache.d.ts +40 -0
- package/dist/core/store/graph-snapshot-cache.d.ts.map +1 -0
- package/dist/core/store/graph-snapshot-cache.js +39 -0
- package/dist/core/store/graph-snapshot-cache.js.map +1 -0
- package/dist/core/store/knowledge-store.d.ts +11 -0
- package/dist/core/store/knowledge-store.d.ts.map +1 -1
- package/dist/core/store/knowledge-store.js +48 -1
- package/dist/core/store/knowledge-store.js.map +1 -1
- package/dist/core/store/migrations.d.ts.map +1 -1
- package/dist/core/store/migrations.js +9 -0
- package/dist/core/store/migrations.js.map +1 -1
- package/dist/core/translation/ir/ir-converter.d.ts +17 -0
- package/dist/core/translation/ir/ir-converter.d.ts.map +1 -0
- package/dist/core/translation/ir/ir-converter.js +103 -0
- package/dist/core/translation/ir/ir-converter.js.map +1 -0
- package/dist/core/translation/ir/ir-types.d.ts +50 -0
- package/dist/core/translation/ir/ir-types.d.ts.map +1 -0
- package/dist/core/translation/ir/ir-types.js +42 -0
- package/dist/core/translation/ir/ir-types.js.map +1 -0
- package/dist/core/translation/memory/translation-memory.d.ts +66 -0
- package/dist/core/translation/memory/translation-memory.d.ts.map +1 -0
- package/dist/core/translation/memory/translation-memory.js +85 -0
- package/dist/core/translation/memory/translation-memory.js.map +1 -0
- package/dist/core/translation/parsers/csharp-parser-adapter.d.ts +9 -0
- package/dist/core/translation/parsers/csharp-parser-adapter.d.ts.map +1 -0
- package/dist/core/translation/parsers/csharp-parser-adapter.js +61 -0
- package/dist/core/translation/parsers/csharp-parser-adapter.js.map +1 -0
- package/dist/core/translation/parsers/go-parser-adapter.d.ts +9 -0
- package/dist/core/translation/parsers/go-parser-adapter.d.ts.map +1 -0
- package/dist/core/translation/parsers/go-parser-adapter.js +40 -0
- package/dist/core/translation/parsers/go-parser-adapter.js.map +1 -0
- package/dist/core/translation/parsers/java-parser-adapter.d.ts +9 -0
- package/dist/core/translation/parsers/java-parser-adapter.d.ts.map +1 -0
- package/dist/core/translation/parsers/java-parser-adapter.js +48 -0
- package/dist/core/translation/parsers/java-parser-adapter.js.map +1 -0
- package/dist/core/translation/parsers/ruby-parser-adapter.d.ts +9 -0
- package/dist/core/translation/parsers/ruby-parser-adapter.d.ts.map +1 -0
- package/dist/core/translation/parsers/ruby-parser-adapter.js +45 -0
- package/dist/core/translation/parsers/ruby-parser-adapter.js.map +1 -0
- package/dist/core/translation/parsers/rust-parser-adapter.d.ts +9 -0
- package/dist/core/translation/parsers/rust-parser-adapter.d.ts.map +1 -0
- package/dist/core/translation/parsers/rust-parser-adapter.js +47 -0
- package/dist/core/translation/parsers/rust-parser-adapter.js.map +1 -0
- package/dist/core/translation/pipeline/translation-pipeline.d.ts +42 -0
- package/dist/core/translation/pipeline/translation-pipeline.d.ts.map +1 -0
- package/dist/core/translation/pipeline/translation-pipeline.js +127 -0
- package/dist/core/translation/pipeline/translation-pipeline.js.map +1 -0
- package/dist/core/translation/repair/repair-loop.d.ts +40 -0
- package/dist/core/translation/repair/repair-loop.d.ts.map +1 -0
- package/dist/core/translation/repair/repair-loop.js +68 -0
- package/dist/core/translation/repair/repair-loop.js.map +1 -0
- package/dist/core/translation/rules/python-to-ts-rules.d.ts +7 -0
- package/dist/core/translation/rules/python-to-ts-rules.d.ts.map +1 -0
- package/dist/core/translation/rules/python-to-ts-rules.js +160 -0
- package/dist/core/translation/rules/python-to-ts-rules.js.map +1 -0
- package/dist/core/translation/rules/rule-engine.d.ts +38 -0
- package/dist/core/translation/rules/rule-engine.d.ts.map +1 -0
- package/dist/core/translation/rules/rule-engine.js +95 -0
- package/dist/core/translation/rules/rule-engine.js.map +1 -0
- package/dist/core/translation/rules/rule-schema.d.ts +53 -0
- package/dist/core/translation/rules/rule-schema.d.ts.map +1 -0
- package/dist/core/translation/rules/rule-schema.js +62 -0
- package/dist/core/translation/rules/rule-schema.js.map +1 -0
- package/dist/core/translation/rules/ts-to-python-rules.d.ts +7 -0
- package/dist/core/translation/rules/ts-to-python-rules.d.ts.map +1 -0
- package/dist/core/translation/rules/ts-to-python-rules.js +188 -0
- package/dist/core/translation/rules/ts-to-python-rules.js.map +1 -0
- package/dist/core/translation/ucr/construct-seed-data.json +7132 -0
- package/dist/core/translation/validators/code-validator.d.ts +30 -0
- package/dist/core/translation/validators/code-validator.d.ts.map +1 -0
- package/dist/core/translation/validators/code-validator.js +159 -0
- package/dist/core/translation/validators/code-validator.js.map +1 -0
- package/dist/web/dashboard/dist/assets/{benchmark-tab-BWbrm3fF.js → benchmark-tab-BxKC16Rh.js} +1 -1
- package/dist/web/dashboard/dist/assets/{context-tab-CD1pqDb2.js → context-tab-CyTA0xHn.js} +1 -1
- package/dist/web/dashboard/dist/assets/{gitnexus-tab-DWfMYYIO.js → gitnexus-tab-Caz7v7Mn.js} +1 -1
- package/dist/web/dashboard/dist/assets/{graph-section-ByabPxrl.js → graph-section-B2T_NMja.js} +1 -1
- package/dist/web/dashboard/dist/assets/{graph-tab-Bd2SQl25.js → graph-tab-H8UjUBJg.js} +1 -1
- package/dist/web/dashboard/dist/assets/{graph-utils-C3ZvD-eu.js → graph-utils-CpifDP5W.js} +1 -1
- package/dist/web/dashboard/dist/assets/{index-LPQ6gwAy.js → index-BPPSD6wP.js} +1 -1
- package/dist/web/dashboard/dist/assets/{index-CLbo-4nU.js → index-C9AGF8Ai.js} +1 -1
- package/dist/web/dashboard/dist/assets/{index-DknXi6Cq.js → index-CW7bjrwy.js} +2 -2
- package/dist/web/dashboard/dist/assets/{index-jxbHgBUe.css → index-DDQD2WTj.css} +1 -1
- package/dist/web/dashboard/dist/assets/{insights-tab-Kqy1BThw.js → insights-tab-8XuKAe-4.js} +1 -1
- package/dist/web/dashboard/dist/assets/{journey-tab-CjfOzBFl.js → journey-tab-L-g_jwf1.js} +1 -1
- package/dist/web/dashboard/dist/assets/{languages-tab-BsE3pPKO.js → languages-tab-171i5Bxw.js} +14 -14
- package/dist/web/dashboard/dist/assets/{logs-tab-D9XtpaKf.js → logs-tab-Y5DvtoGU.js} +1 -1
- package/dist/web/dashboard/dist/assets/{lsp-tab-DN-wImxK.js → lsp-tab-Dprc5zKc.js} +1 -1
- package/dist/web/dashboard/dist/assets/{memories-tab-C9CgvCRH.js → memories-tab-DvgKhmWu.js} +1 -1
- package/dist/web/dashboard/dist/assets/{prd-backlog-tab-BOFkQdFu.js → prd-backlog-tab-OHV_0-dF.js} +1 -1
- package/dist/web/dashboard/dist/assets/{siebel-tab-BVSi4Va2.js → siebel-tab-Bkeox_-_.js} +3 -3
- package/dist/web/dashboard/dist/assets/{skills-tab-DJpG9cOQ.js → skills-tab-DCHjQiA2.js} +1 -1
- package/dist/web/dashboard/dist/assets/{style-FoeO1y9E.js → style-Cca8j3c-.js} +1 -1
- package/dist/web/dashboard/dist/assets/{triangle-alert-B0LFw3Ht.js → triangle-alert-uww45pBS.js} +1 -1
- package/dist/web/dashboard/dist/index.html +2 -2
- package/package.json +7 -5
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"multi-strategy-retrieval.js","sourceRoot":"","sources":["../../../src/core/rag/multi-strategy-retrieval.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"multi-strategy-retrieval.js","sourceRoot":"","sources":["../../../src/core/rag/multi-strategy-retrieval.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
export interface PhaseBoostCacheOptions {
|
|
2
|
+
maxSize: number;
|
|
3
|
+
ttlMs: number;
|
|
4
|
+
}
|
|
5
|
+
export interface PhaseBoostCacheStats {
|
|
6
|
+
size: number;
|
|
7
|
+
hits: number;
|
|
8
|
+
misses: number;
|
|
9
|
+
}
|
|
10
|
+
export declare class PhaseBoostCache {
|
|
11
|
+
private cache;
|
|
12
|
+
private hits;
|
|
13
|
+
private misses;
|
|
14
|
+
constructor(options: PhaseBoostCacheOptions);
|
|
15
|
+
get(query: string, phase: string): unknown[] | undefined;
|
|
16
|
+
set(query: string, phase: string, results: unknown[]): void;
|
|
17
|
+
invalidateAll(): void;
|
|
18
|
+
getStats(): PhaseBoostCacheStats;
|
|
19
|
+
}
|
|
20
|
+
//# sourceMappingURL=phase-boost-cache.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"phase-boost-cache.d.ts","sourceRoot":"","sources":["../../../src/core/rag/phase-boost-cache.ts"],"names":[],"mappings":"AASA,MAAM,WAAW,sBAAsB;IACrC,OAAO,EAAE,MAAM,CAAC;IAChB,KAAK,EAAE,MAAM,CAAC;CACf;AAED,MAAM,WAAW,oBAAoB;IACnC,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,MAAM,CAAC;IACb,MAAM,EAAE,MAAM,CAAC;CAChB;AAUD,qBAAa,eAAe;IAC1B,OAAO,CAAC,KAAK,CAA8B;IAC3C,OAAO,CAAC,IAAI,CAAa;IACzB,OAAO,CAAC,MAAM,CAAa;gBAEf,OAAO,EAAE,sBAAsB;IAO3C,GAAG,CAAC,KAAK,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,GAAG,OAAO,EAAE,GAAG,SAAS;IAaxD,GAAG,CAAC,KAAK,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,OAAO,EAAE,OAAO,EAAE,GAAG,IAAI;IAK3D,aAAa,IAAI,IAAI;IAIrB,QAAQ,IAAI,oBAAoB;CAOjC"}
|
|
@@ -0,0 +1,50 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Phase-Boosted Search Cache — caches searchWithPhaseBoost results by (query, phase).
|
|
3
|
+
*
|
|
4
|
+
* TTL: 2 minutes (phase changes less frequently than queries).
|
|
5
|
+
* Invalidation: knowledge:indexed event + phase change.
|
|
6
|
+
* Uses lru-cache for O(1) LRU eviction.
|
|
7
|
+
*/
|
|
8
|
+
import { LRUCache } from "lru-cache";
|
|
9
|
+
function normalizeKey(query) {
|
|
10
|
+
return query.trim().toLowerCase();
|
|
11
|
+
}
|
|
12
|
+
function buildKey(query, phase) {
|
|
13
|
+
return `${normalizeKey(query)}::${phase}`;
|
|
14
|
+
}
|
|
15
|
+
export class PhaseBoostCache {
|
|
16
|
+
cache;
|
|
17
|
+
hits = 0;
|
|
18
|
+
misses = 0;
|
|
19
|
+
constructor(options) {
|
|
20
|
+
this.cache = new LRUCache({
|
|
21
|
+
max: options.maxSize,
|
|
22
|
+
ttl: options.ttlMs,
|
|
23
|
+
});
|
|
24
|
+
}
|
|
25
|
+
get(query, phase) {
|
|
26
|
+
const key = buildKey(query, phase);
|
|
27
|
+
const result = this.cache.get(key);
|
|
28
|
+
if (result === undefined) {
|
|
29
|
+
this.misses++;
|
|
30
|
+
return undefined;
|
|
31
|
+
}
|
|
32
|
+
this.hits++;
|
|
33
|
+
return result;
|
|
34
|
+
}
|
|
35
|
+
set(query, phase, results) {
|
|
36
|
+
const key = buildKey(query, phase);
|
|
37
|
+
this.cache.set(key, results);
|
|
38
|
+
}
|
|
39
|
+
invalidateAll() {
|
|
40
|
+
this.cache.clear();
|
|
41
|
+
}
|
|
42
|
+
getStats() {
|
|
43
|
+
return {
|
|
44
|
+
size: this.cache.size,
|
|
45
|
+
hits: this.hits,
|
|
46
|
+
misses: this.misses,
|
|
47
|
+
};
|
|
48
|
+
}
|
|
49
|
+
}
|
|
50
|
+
//# sourceMappingURL=phase-boost-cache.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"phase-boost-cache.js","sourceRoot":"","sources":["../../../src/core/rag/phase-boost-cache.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AACH,OAAO,EAAE,QAAQ,EAAE,MAAM,WAAW,CAAC;AAarC,SAAS,YAAY,CAAC,KAAa;IACjC,OAAO,KAAK,CAAC,IAAI,EAAE,CAAC,WAAW,EAAE,CAAC;AACpC,CAAC;AAED,SAAS,QAAQ,CAAC,KAAa,EAAE,KAAa;IAC5C,OAAO,GAAG,YAAY,CAAC,KAAK,CAAC,KAAK,KAAK,EAAE,CAAC;AAC5C,CAAC;AAED,MAAM,OAAO,eAAe;IAClB,KAAK,CAA8B;IACnC,IAAI,GAAW,CAAC,CAAC;IACjB,MAAM,GAAW,CAAC,CAAC;IAE3B,YAAY,OAA+B;QACzC,IAAI,CAAC,KAAK,GAAG,IAAI,QAAQ,CAAoB;YAC3C,GAAG,EAAE,OAAO,CAAC,OAAO;YACpB,GAAG,EAAE,OAAO,CAAC,KAAK;SACnB,CAAC,CAAC;IACL,CAAC;IAED,GAAG,CAAC,KAAa,EAAE,KAAa;QAC9B,MAAM,GAAG,GAAG,QAAQ,CAAC,KAAK,EAAE,KAAK,CAAC,CAAC;QACnC,MAAM,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;QAEnC,IAAI,MAAM,KAAK,SAAS,EAAE,CAAC;YACzB,IAAI,CAAC,MAAM,EAAE,CAAC;YACd,OAAO,SAAS,CAAC;QACnB,CAAC;QAED,IAAI,CAAC,IAAI,EAAE,CAAC;QACZ,OAAO,MAAM,CAAC;IAChB,CAAC;IAED,GAAG,CAAC,KAAa,EAAE,KAAa,EAAE,OAAkB;QAClD,MAAM,GAAG,GAAG,QAAQ,CAAC,KAAK,EAAE,KAAK,CAAC,CAAC;QACnC,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,GAAG,EAAE,OAAO,CAAC,CAAC;IAC/B,CAAC;IAED,aAAa;QACX,IAAI,CAAC,KAAK,CAAC,KAAK,EAAE,CAAC;IACrB,CAAC;IAED,QAAQ;QACN,OAAO;YACL,IAAI,EAAE,IAAI,CAAC,KAAK,CAAC,IAAI;YACrB,IAAI,EAAE,IAAI,CAAC,IAAI;YACf,MAAM,EAAE,IAAI,CAAC,MAAM;SACpB,CAAC;IACJ,CAAC;CACF"}
|
|
@@ -3,7 +3,7 @@
|
|
|
3
3
|
*
|
|
4
4
|
* Features:
|
|
5
5
|
* - TTL-based expiration
|
|
6
|
-
* - LRU eviction
|
|
6
|
+
* - True LRU eviction via lru-cache (O(1) eviction by last access)
|
|
7
7
|
* - Query normalization (case-insensitive, trimmed)
|
|
8
8
|
* - Hit/miss statistics
|
|
9
9
|
* - Bulk invalidation (e.g., when knowledge store changes)
|
|
@@ -20,12 +20,14 @@ export interface CacheStats {
|
|
|
20
20
|
evictions: number;
|
|
21
21
|
}
|
|
22
22
|
/**
|
|
23
|
-
* In-memory query cache with TTL and LRU eviction.
|
|
23
|
+
* In-memory query cache with TTL and true LRU eviction via lru-cache.
|
|
24
|
+
*
|
|
25
|
+
* TTL is checked via Date.now() at access time (compatible with fake timers
|
|
26
|
+
* in tests). LRU eviction is handled by lru-cache (O(1) by last access).
|
|
24
27
|
*/
|
|
25
28
|
export declare class QueryCache {
|
|
26
|
-
private
|
|
29
|
+
private cache;
|
|
27
30
|
private ttlMs;
|
|
28
|
-
private maxSize;
|
|
29
31
|
private hits;
|
|
30
32
|
private misses;
|
|
31
33
|
private evictions;
|
|
@@ -46,9 +48,5 @@ export declare class QueryCache {
|
|
|
46
48
|
* Get cache statistics.
|
|
47
49
|
*/
|
|
48
50
|
getStats(): CacheStats;
|
|
49
|
-
/**
|
|
50
|
-
* Evict the oldest (by creation time) entry.
|
|
51
|
-
*/
|
|
52
|
-
private evictOldest;
|
|
53
51
|
}
|
|
54
52
|
//# sourceMappingURL=query-cache.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"query-cache.d.ts","sourceRoot":"","sources":["../../../src/core/rag/query-cache.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;
|
|
1
|
+
{"version":3,"file":"query-cache.d.ts","sourceRoot":"","sources":["../../../src/core/rag/query-cache.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AAGH,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,+BAA+B,CAAC;AAGlE,MAAM,WAAW,YAAY;IAC3B,KAAK,EAAE,MAAM,CAAC;IACd,OAAO,EAAE,MAAM,CAAC;CACjB;AAED,MAAM,WAAW,UAAU;IACzB,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,MAAM,CAAC;IACb,MAAM,EAAE,MAAM,CAAC;IACf,SAAS,EAAE,MAAM,CAAC;CACnB;AAcD;;;;;GAKG;AACH,qBAAa,UAAU;IACrB,OAAO,CAAC,KAAK,CAAuC;IACpD,OAAO,CAAC,KAAK,CAAS;IACtB,OAAO,CAAC,IAAI,CAAa;IACzB,OAAO,CAAC,MAAM,CAAa;IAC3B,OAAO,CAAC,SAAS,CAAa;gBAElB,OAAO,EAAE,YAAY;IAWjC;;OAEG;IACH,GAAG,CAAC,KAAK,EAAE,MAAM,GAAG,YAAY,EAAE,GAAG,SAAS;IAoB9C;;OAEG;IACH,GAAG,CAAC,KAAK,EAAE,MAAM,EAAE,OAAO,EAAE,YAAY,EAAE,GAAG,IAAI;IAKjD;;OAEG;IACH,aAAa,IAAI,IAAI;IAMrB;;OAEG;IACH,QAAQ,IAAI,UAAU;CAQvB"}
|
|
@@ -3,11 +3,12 @@
|
|
|
3
3
|
*
|
|
4
4
|
* Features:
|
|
5
5
|
* - TTL-based expiration
|
|
6
|
-
* - LRU eviction
|
|
6
|
+
* - True LRU eviction via lru-cache (O(1) eviction by last access)
|
|
7
7
|
* - Query normalization (case-insensitive, trimmed)
|
|
8
8
|
* - Hit/miss statistics
|
|
9
9
|
* - Bulk invalidation (e.g., when knowledge store changes)
|
|
10
10
|
*/
|
|
11
|
+
import { LRUCache } from "lru-cache";
|
|
11
12
|
import { logger } from "../utils/logger.js";
|
|
12
13
|
/**
|
|
13
14
|
* Normalize query for consistent cache keys.
|
|
@@ -16,36 +17,43 @@ function normalizeKey(query) {
|
|
|
16
17
|
return query.trim().toLowerCase();
|
|
17
18
|
}
|
|
18
19
|
/**
|
|
19
|
-
* In-memory query cache with TTL and LRU eviction.
|
|
20
|
+
* In-memory query cache with TTL and true LRU eviction via lru-cache.
|
|
21
|
+
*
|
|
22
|
+
* TTL is checked via Date.now() at access time (compatible with fake timers
|
|
23
|
+
* in tests). LRU eviction is handled by lru-cache (O(1) by last access).
|
|
20
24
|
*/
|
|
21
25
|
export class QueryCache {
|
|
22
|
-
|
|
26
|
+
cache;
|
|
23
27
|
ttlMs;
|
|
24
|
-
maxSize;
|
|
25
28
|
hits = 0;
|
|
26
29
|
misses = 0;
|
|
27
30
|
evictions = 0;
|
|
28
31
|
constructor(options) {
|
|
29
32
|
this.ttlMs = options.ttlMs;
|
|
30
|
-
this.
|
|
33
|
+
this.cache = new LRUCache({
|
|
34
|
+
max: options.maxSize,
|
|
35
|
+
dispose: () => {
|
|
36
|
+
this.evictions++;
|
|
37
|
+
},
|
|
38
|
+
noDisposeOnSet: true,
|
|
39
|
+
});
|
|
31
40
|
}
|
|
32
41
|
/**
|
|
33
42
|
* Retrieve cached results for a query, or undefined if miss/expired.
|
|
34
43
|
*/
|
|
35
44
|
get(query) {
|
|
36
45
|
const key = normalizeKey(query);
|
|
37
|
-
const entry = this.
|
|
46
|
+
const entry = this.cache.get(key);
|
|
38
47
|
if (!entry) {
|
|
39
48
|
this.misses++;
|
|
40
49
|
return undefined;
|
|
41
50
|
}
|
|
42
|
-
// Check TTL
|
|
51
|
+
// Check TTL via Date.now() for fake-timer compatibility
|
|
43
52
|
if (Date.now() - entry.createdAt > this.ttlMs) {
|
|
44
|
-
this.
|
|
53
|
+
this.cache.delete(key);
|
|
45
54
|
this.misses++;
|
|
46
55
|
return undefined;
|
|
47
56
|
}
|
|
48
|
-
entry.lastAccessedAt = Date.now();
|
|
49
57
|
this.hits++;
|
|
50
58
|
return entry.results;
|
|
51
59
|
}
|
|
@@ -54,22 +62,14 @@ export class QueryCache {
|
|
|
54
62
|
*/
|
|
55
63
|
set(query, results) {
|
|
56
64
|
const key = normalizeKey(query);
|
|
57
|
-
|
|
58
|
-
if (this.entries.size >= this.maxSize && !this.entries.has(key)) {
|
|
59
|
-
this.evictOldest();
|
|
60
|
-
}
|
|
61
|
-
this.entries.set(key, {
|
|
62
|
-
results,
|
|
63
|
-
createdAt: Date.now(),
|
|
64
|
-
lastAccessedAt: Date.now(),
|
|
65
|
-
});
|
|
65
|
+
this.cache.set(key, { results, createdAt: Date.now() });
|
|
66
66
|
}
|
|
67
67
|
/**
|
|
68
68
|
* Invalidate all cached entries.
|
|
69
69
|
*/
|
|
70
70
|
invalidateAll() {
|
|
71
|
-
const count = this.
|
|
72
|
-
this.
|
|
71
|
+
const count = this.cache.size;
|
|
72
|
+
this.cache.clear();
|
|
73
73
|
logger.debug("Query cache invalidated", { entriesCleared: count });
|
|
74
74
|
}
|
|
75
75
|
/**
|
|
@@ -77,28 +77,11 @@ export class QueryCache {
|
|
|
77
77
|
*/
|
|
78
78
|
getStats() {
|
|
79
79
|
return {
|
|
80
|
-
size: this.
|
|
80
|
+
size: this.cache.size,
|
|
81
81
|
hits: this.hits,
|
|
82
82
|
misses: this.misses,
|
|
83
83
|
evictions: this.evictions,
|
|
84
84
|
};
|
|
85
85
|
}
|
|
86
|
-
/**
|
|
87
|
-
* Evict the oldest (by creation time) entry.
|
|
88
|
-
*/
|
|
89
|
-
evictOldest() {
|
|
90
|
-
let oldestKey;
|
|
91
|
-
let oldestTime = Infinity;
|
|
92
|
-
for (const [key, entry] of this.entries) {
|
|
93
|
-
if (entry.lastAccessedAt < oldestTime) {
|
|
94
|
-
oldestTime = entry.lastAccessedAt;
|
|
95
|
-
oldestKey = key;
|
|
96
|
-
}
|
|
97
|
-
}
|
|
98
|
-
if (oldestKey) {
|
|
99
|
-
this.entries.delete(oldestKey);
|
|
100
|
-
this.evictions++;
|
|
101
|
-
}
|
|
102
|
-
}
|
|
103
86
|
}
|
|
104
87
|
//# sourceMappingURL=query-cache.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"query-cache.js","sourceRoot":"","sources":["../../../src/core/rag/query-cache.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;
|
|
1
|
+
{"version":3,"file":"query-cache.js","sourceRoot":"","sources":["../../../src/core/rag/query-cache.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AAEH,OAAO,EAAE,QAAQ,EAAE,MAAM,WAAW,CAAC;AAErC,OAAO,EAAE,MAAM,EAAE,MAAM,oBAAoB,CAAC;AAc5C;;GAEG;AACH,SAAS,YAAY,CAAC,KAAa;IACjC,OAAO,KAAK,CAAC,IAAI,EAAE,CAAC,WAAW,EAAE,CAAC;AACpC,CAAC;AAOD;;;;;GAKG;AACH,MAAM,OAAO,UAAU;IACb,KAAK,CAAuC;IAC5C,KAAK,CAAS;IACd,IAAI,GAAW,CAAC,CAAC;IACjB,MAAM,GAAW,CAAC,CAAC;IACnB,SAAS,GAAW,CAAC,CAAC;IAE9B,YAAY,OAAqB;QAC/B,IAAI,CAAC,KAAK,GAAG,OAAO,CAAC,KAAK,CAAC;QAC3B,IAAI,CAAC,KAAK,GAAG,IAAI,QAAQ,CAA6B;YACpD,GAAG,EAAE,OAAO,CAAC,OAAO;YACpB,OAAO,EAAE,GAAG,EAAE;gBACZ,IAAI,CAAC,SAAS,EAAE,CAAC;YACnB,CAAC;YACD,cAAc,EAAE,IAAI;SACrB,CAAC,CAAC;IACL,CAAC;IAED;;OAEG;IACH,GAAG,CAAC,KAAa;QACf,MAAM,GAAG,GAAG,YAAY,CAAC,KAAK,CAAC,CAAC;QAChC,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;QAElC,IAAI,CAAC,KAAK,EAAE,CAAC;YACX,IAAI,CAAC,MAAM,EAAE,CAAC;YACd,OAAO,SAAS,CAAC;QACnB,CAAC;QAED,wDAAwD;QACxD,IAAI,IAAI,CAAC,GAAG,EAAE,GAAG,KAAK,CAAC,SAAS,GAAG,IAAI,CAAC,KAAK,EAAE,CAAC;YAC9C,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;YACvB,IAAI,CAAC,MAAM,EAAE,CAAC;YACd,OAAO,SAAS,CAAC;QACnB,CAAC;QAED,IAAI,CAAC,IAAI,EAAE,CAAC;QACZ,OAAO,KAAK,CAAC,OAAO,CAAC;IACvB,CAAC;IAED;;OAEG;IACH,GAAG,CAAC,KAAa,EAAE,OAAuB;QACxC,MAAM,GAAG,GAAG,YAAY,CAAC,KAAK,CAAC,CAAC;QAChC,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,GAAG,EAAE,EAAE,OAAO,EAAE,SAAS,EAAE,IAAI,CAAC,GAAG,EAAE,EAAE,CAAC,CAAC;IAC1D,CAAC;IAED;;OAEG;IACH,aAAa;QACX,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC;QAC9B,IAAI,CAAC,KAAK,CAAC,KAAK,EAAE,CAAC;QACnB,MAAM,CAAC,KAAK,CAAC,yBAAyB,EAAE,EAAE,cAAc,EAAE,KAAK,EAAE,CAAC,CAAC;IACrE,CAAC;IAED;;OAEG;IACH,QAAQ;QACN,OAAO;YACL,IAAI,EAAE,IAAI,CAAC,KAAK,CAAC,IAAI;YACrB,IAAI,EAAE,IAAI,CAAC,IAAI;YACf,MAAM,EAAE,IAAI,CAAC,MAAM;YACnB,SAAS,EAAE,IAAI,CAAC,SAAS;SAC1B,CAAC;IACJ,CAAC;CACF"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"rag-pipeline.d.ts","sourceRoot":"","sources":["../../../src/core/rag/rag-pipeline.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAEH,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,0BAA0B,CAAC;AAE5D,OAAO,EAAE,cAAc,EAAE,KAAK,gBAAgB,EAAE,MAAM,sBAAsB,CAAC;
|
|
1
|
+
{"version":3,"file":"rag-pipeline.d.ts","sourceRoot":"","sources":["../../../src/core/rag/rag-pipeline.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAEH,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,0BAA0B,CAAC;AAE5D,OAAO,EAAE,cAAc,EAAE,KAAK,gBAAgB,EAAE,MAAM,sBAAsB,CAAC;AAiG7E;;;GAGG;AACH,qBAAa,eAAe;IAC1B,OAAO,CAAC,KAAK,CAAoC;IACjD,OAAO,CAAC,GAAG,CAAoC;IAE/C,IAAI,SAAS,IAAI,MAAM,CAEtB;IAED;;OAEG;IACH,GAAG,CAAC,SAAS,EAAE,MAAM,EAAE,EAAE,GAAG,IAAI;IAMhC;;;OAGG;IACH,KAAK,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,EAAE;CAM9B;AAyCD;;;GAGG;AACH,wBAAsB,mBAAmB,CACvC,KAAK,EAAE,WAAW,EAClB,cAAc,EAAE,cAAc,GAC7B,OAAO,CAAC,MAAM,CAAC,CAiDjB;AAED;;;GAGG;AACH,wBAAsB,kBAAkB,CACtC,KAAK,EAAE,WAAW,EAClB,cAAc,EAAE,cAAc,GAC7B,OAAO,CAAC;IAAE,KAAK,EAAE,MAAM,CAAC;IAAC,SAAS,EAAE,MAAM,CAAA;CAAE,CAAC,CAyE/C;AAED;;;;;;GAMG;AACH,wBAAsB,gBAAgB,CACpC,KAAK,EAAE,WAAW,EAClB,cAAc,EAAE,cAAc,EAC9B,MAAM,EAAE,MAAM,EAAE,GACf,OAAO,CAAC;IAAE,OAAO,EAAE,MAAM,CAAC;IAAC,WAAW,EAAE,OAAO,CAAA;CAAE,CAAC,CAqCpD;AAED;;;GAGG;AACH,wBAAsB,cAAc,CAClC,cAAc,EAAE,cAAc,EAC9B,KAAK,EAAE,MAAM,EACb,KAAK,GAAE,MAAW,GACjB,OAAO,CAAC,gBAAgB,EAAE,CAAC,CAkB7B"}
|
|
@@ -8,6 +8,7 @@
|
|
|
8
8
|
* All processing is local — no external API calls.
|
|
9
9
|
*/
|
|
10
10
|
import { KnowledgeStore } from "../store/knowledge-store.js";
|
|
11
|
+
import { TfIdfEmbeddingCache } from "./tfidf-embedding-cache.js";
|
|
11
12
|
import { logger } from "../utils/logger.js";
|
|
12
13
|
// ── TF-IDF Vectorizer ───────────────────────────
|
|
13
14
|
/**
|
|
@@ -150,6 +151,8 @@ function hashEmbed(text, dim) {
|
|
|
150
151
|
// Module-level vectorizer shared between index and search.
|
|
151
152
|
// Encapsulated in class — no raw mutable `let` variables.
|
|
152
153
|
let activeVectorizer = null;
|
|
154
|
+
// Module-level embedding cache — invalidated when activeVectorizer changes.
|
|
155
|
+
const embeddingCache = new TfIdfEmbeddingCache({ maxSize: 200, ttlMs: 10 * 60 * 1000 });
|
|
153
156
|
/**
|
|
154
157
|
* Index all nodes from the store as embeddings.
|
|
155
158
|
* Builds a TF-IDF vocabulary from all node texts, then stores vectors.
|
|
@@ -179,6 +182,7 @@ export async function indexNodeEmbeddings(store, embeddingStore) {
|
|
|
179
182
|
const vectorizer = new TfIdfVectorizer();
|
|
180
183
|
vectorizer.fit(documents.map((d) => d.tokens));
|
|
181
184
|
activeVectorizer = vectorizer;
|
|
185
|
+
embeddingCache.invalidateAll();
|
|
182
186
|
// Generate and store embeddings
|
|
183
187
|
let indexed = 0;
|
|
184
188
|
for (const doc of documents) {
|
|
@@ -237,6 +241,7 @@ export async function indexAllEmbeddings(store, embeddingStore) {
|
|
|
237
241
|
const vectorizer = new TfIdfVectorizer();
|
|
238
242
|
vectorizer.fit(allDocuments.map((d) => d.tokens));
|
|
239
243
|
activeVectorizer = vectorizer;
|
|
244
|
+
embeddingCache.invalidateAll();
|
|
240
245
|
// Generate and store embeddings
|
|
241
246
|
let indexedNodes = 0;
|
|
242
247
|
let indexedKnowledge = 0;
|
|
@@ -305,11 +310,17 @@ export async function incrementalIndex(store, embeddingStore, docIds) {
|
|
|
305
310
|
*/
|
|
306
311
|
export async function semanticSearch(embeddingStore, query, limit = 10) {
|
|
307
312
|
const t0 = performance.now();
|
|
308
|
-
|
|
309
|
-
|
|
313
|
+
// Check embedding cache first
|
|
314
|
+
let queryVector = embeddingCache.get(query);
|
|
315
|
+
const cacheHit = queryVector !== undefined;
|
|
316
|
+
if (!queryVector) {
|
|
317
|
+
const vectorizer = activeVectorizer ?? new TfIdfVectorizer();
|
|
318
|
+
queryVector = vectorizer.embed(query);
|
|
319
|
+
embeddingCache.set(query, queryVector);
|
|
320
|
+
}
|
|
310
321
|
const results = embeddingStore.findSimilar(queryVector, limit);
|
|
311
322
|
const durationMs = Math.round(performance.now() - t0);
|
|
312
|
-
logger.debug("rag:search", { query: query.slice(0, 80), resultCount: results.length, durationMs });
|
|
323
|
+
logger.debug("rag:search", { query: query.slice(0, 80), resultCount: results.length, cacheHit, durationMs });
|
|
313
324
|
return results;
|
|
314
325
|
}
|
|
315
326
|
//# sourceMappingURL=rag-pipeline.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"rag-pipeline.js","sourceRoot":"","sources":["../../../src/core/rag/rag-pipeline.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"rag-pipeline.js","sourceRoot":"","sources":["../../../src/core/rag/rag-pipeline.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
export interface EmbeddingCacheOptions {
|
|
2
|
+
maxSize: number;
|
|
3
|
+
ttlMs: number;
|
|
4
|
+
}
|
|
5
|
+
export interface EmbeddingCacheStats {
|
|
6
|
+
size: number;
|
|
7
|
+
hits: number;
|
|
8
|
+
misses: number;
|
|
9
|
+
}
|
|
10
|
+
export declare class TfIdfEmbeddingCache {
|
|
11
|
+
private cache;
|
|
12
|
+
private hits;
|
|
13
|
+
private misses;
|
|
14
|
+
constructor(options: EmbeddingCacheOptions);
|
|
15
|
+
get(query: string): number[] | undefined;
|
|
16
|
+
set(query: string, vector: number[]): void;
|
|
17
|
+
invalidateAll(): void;
|
|
18
|
+
getStats(): EmbeddingCacheStats;
|
|
19
|
+
}
|
|
20
|
+
//# sourceMappingURL=tfidf-embedding-cache.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"tfidf-embedding-cache.d.ts","sourceRoot":"","sources":["../../../src/core/rag/tfidf-embedding-cache.ts"],"names":[],"mappings":"AAQA,MAAM,WAAW,qBAAqB;IACpC,OAAO,EAAE,MAAM,CAAC;IAChB,KAAK,EAAE,MAAM,CAAC;CACf;AAED,MAAM,WAAW,mBAAmB;IAClC,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,MAAM,CAAC;IACb,MAAM,EAAE,MAAM,CAAC;CAChB;AAMD,qBAAa,mBAAmB;IAC9B,OAAO,CAAC,KAAK,CAA6B;IAC1C,OAAO,CAAC,IAAI,CAAa;IACzB,OAAO,CAAC,MAAM,CAAa;gBAEf,OAAO,EAAE,qBAAqB;IAO1C,GAAG,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,EAAE,GAAG,SAAS;IAaxC,GAAG,CAAC,KAAK,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,GAAG,IAAI;IAK1C,aAAa,IAAI,IAAI;IAIrB,QAAQ,IAAI,mBAAmB;CAOhC"}
|
|
@@ -0,0 +1,46 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* TF-IDF Embedding Cache — caches computed embedding vectors per query.
|
|
3
|
+
*
|
|
4
|
+
* Avoids recalculating TF-IDF vectors for identical queries.
|
|
5
|
+
* Uses lru-cache for O(1) LRU eviction.
|
|
6
|
+
*/
|
|
7
|
+
import { LRUCache } from "lru-cache";
|
|
8
|
+
function normalizeKey(query) {
|
|
9
|
+
return query.trim().toLowerCase();
|
|
10
|
+
}
|
|
11
|
+
export class TfIdfEmbeddingCache {
|
|
12
|
+
cache;
|
|
13
|
+
hits = 0;
|
|
14
|
+
misses = 0;
|
|
15
|
+
constructor(options) {
|
|
16
|
+
this.cache = new LRUCache({
|
|
17
|
+
max: options.maxSize,
|
|
18
|
+
ttl: options.ttlMs,
|
|
19
|
+
});
|
|
20
|
+
}
|
|
21
|
+
get(query) {
|
|
22
|
+
const key = normalizeKey(query);
|
|
23
|
+
const result = this.cache.get(key);
|
|
24
|
+
if (result === undefined) {
|
|
25
|
+
this.misses++;
|
|
26
|
+
return undefined;
|
|
27
|
+
}
|
|
28
|
+
this.hits++;
|
|
29
|
+
return result;
|
|
30
|
+
}
|
|
31
|
+
set(query, vector) {
|
|
32
|
+
const key = normalizeKey(query);
|
|
33
|
+
this.cache.set(key, vector);
|
|
34
|
+
}
|
|
35
|
+
invalidateAll() {
|
|
36
|
+
this.cache.clear();
|
|
37
|
+
}
|
|
38
|
+
getStats() {
|
|
39
|
+
return {
|
|
40
|
+
size: this.cache.size,
|
|
41
|
+
hits: this.hits,
|
|
42
|
+
misses: this.misses,
|
|
43
|
+
};
|
|
44
|
+
}
|
|
45
|
+
}
|
|
46
|
+
//# sourceMappingURL=tfidf-embedding-cache.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"tfidf-embedding-cache.js","sourceRoot":"","sources":["../../../src/core/rag/tfidf-embedding-cache.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AACH,OAAO,EAAE,QAAQ,EAAE,MAAM,WAAW,CAAC;AAarC,SAAS,YAAY,CAAC,KAAa;IACjC,OAAO,KAAK,CAAC,IAAI,EAAE,CAAC,WAAW,EAAE,CAAC;AACpC,CAAC;AAED,MAAM,OAAO,mBAAmB;IACtB,KAAK,CAA6B;IAClC,IAAI,GAAW,CAAC,CAAC;IACjB,MAAM,GAAW,CAAC,CAAC;IAE3B,YAAY,OAA8B;QACxC,IAAI,CAAC,KAAK,GAAG,IAAI,QAAQ,CAAmB;YAC1C,GAAG,EAAE,OAAO,CAAC,OAAO;YACpB,GAAG,EAAE,OAAO,CAAC,KAAK;SACnB,CAAC,CAAC;IACL,CAAC;IAED,GAAG,CAAC,KAAa;QACf,MAAM,GAAG,GAAG,YAAY,CAAC,KAAK,CAAC,CAAC;QAChC,MAAM,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;QAEnC,IAAI,MAAM,KAAK,SAAS,EAAE,CAAC;YACzB,IAAI,CAAC,MAAM,EAAE,CAAC;YACd,OAAO,SAAS,CAAC;QACnB,CAAC;QAED,IAAI,CAAC,IAAI,EAAE,CAAC;QACZ,OAAO,MAAM,CAAC;IAChB,CAAC;IAED,GAAG,CAAC,KAAa,EAAE,MAAgB;QACjC,MAAM,GAAG,GAAG,YAAY,CAAC,KAAK,CAAC,CAAC;QAChC,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,GAAG,EAAE,MAAM,CAAC,CAAC;IAC9B,CAAC;IAED,aAAa;QACX,IAAI,CAAC,KAAK,CAAC,KAAK,EAAE,CAAC;IACrB,CAAC;IAED,QAAQ;QACN,OAAO;YACL,IAAI,EAAE,IAAI,CAAC,KAAK,CAAC,IAAI;YACrB,IAAI,EAAE,IAAI,CAAC,IAAI;YACf,MAAM,EAAE,IAAI,CAAC,MAAM;SACpB,CAAC;IACJ,CAAC;CACF"}
|
|
@@ -0,0 +1,40 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* GraphSnapshotCache — In-memory cache for getAllNodes()+getAllEdges().
|
|
3
|
+
*
|
|
4
|
+
* Provides a cached snapshot of the full graph state to avoid redundant
|
|
5
|
+
* SQLite queries in loops (e.g., buildTaskContext, ragBuildContext).
|
|
6
|
+
*
|
|
7
|
+
* Auto-invalidated on any write operation via invalidate().
|
|
8
|
+
*/
|
|
9
|
+
import type { GraphNode, GraphEdge } from "../graph/graph-types.js";
|
|
10
|
+
import type { SqliteStore } from "./sqlite-store.js";
|
|
11
|
+
export interface GraphSnapshot {
|
|
12
|
+
nodes: GraphNode[];
|
|
13
|
+
edges: GraphEdge[];
|
|
14
|
+
}
|
|
15
|
+
export interface SnapshotCacheStats {
|
|
16
|
+
hits: number;
|
|
17
|
+
misses: number;
|
|
18
|
+
}
|
|
19
|
+
export declare class GraphSnapshotCache {
|
|
20
|
+
private store;
|
|
21
|
+
private cached;
|
|
22
|
+
private stats;
|
|
23
|
+
constructor(store: SqliteStore);
|
|
24
|
+
/**
|
|
25
|
+
* Get cached graph snapshot. On first call (or after invalidation),
|
|
26
|
+
* queries the database and caches the result. Subsequent calls
|
|
27
|
+
* return the same reference without hitting SQLite.
|
|
28
|
+
*/
|
|
29
|
+
getCachedSnapshot(): GraphSnapshot;
|
|
30
|
+
/**
|
|
31
|
+
* Invalidate the cached snapshot. Must be called after any write
|
|
32
|
+
* operation (insertNode, updateNode, deleteNode, insertEdge, deleteEdge).
|
|
33
|
+
*/
|
|
34
|
+
invalidate(): void;
|
|
35
|
+
/**
|
|
36
|
+
* Get cache hit/miss statistics.
|
|
37
|
+
*/
|
|
38
|
+
getStats(): SnapshotCacheStats;
|
|
39
|
+
}
|
|
40
|
+
//# sourceMappingURL=graph-snapshot-cache.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"graph-snapshot-cache.d.ts","sourceRoot":"","sources":["../../../src/core/store/graph-snapshot-cache.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AACH,OAAO,KAAK,EAAE,SAAS,EAAE,SAAS,EAAE,MAAM,yBAAyB,CAAC;AACpE,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAC;AAErD,MAAM,WAAW,aAAa;IAC5B,KAAK,EAAE,SAAS,EAAE,CAAC;IACnB,KAAK,EAAE,SAAS,EAAE,CAAC;CACpB;AAED,MAAM,WAAW,kBAAkB;IACjC,IAAI,EAAE,MAAM,CAAC;IACb,MAAM,EAAE,MAAM,CAAC;CAChB;AAED,qBAAa,kBAAkB;IAC7B,OAAO,CAAC,KAAK,CAAc;IAC3B,OAAO,CAAC,MAAM,CAA8B;IAC5C,OAAO,CAAC,KAAK,CAA8C;gBAE/C,KAAK,EAAE,WAAW;IAI9B;;;;OAIG;IACH,iBAAiB,IAAI,aAAa;IAclC;;;OAGG;IACH,UAAU,IAAI,IAAI;IAIlB;;OAEG;IACH,QAAQ,IAAI,kBAAkB;CAG/B"}
|
|
@@ -0,0 +1,39 @@
|
|
|
1
|
+
export class GraphSnapshotCache {
|
|
2
|
+
store;
|
|
3
|
+
cached = null;
|
|
4
|
+
stats = { hits: 0, misses: 0 };
|
|
5
|
+
constructor(store) {
|
|
6
|
+
this.store = store;
|
|
7
|
+
}
|
|
8
|
+
/**
|
|
9
|
+
* Get cached graph snapshot. On first call (or after invalidation),
|
|
10
|
+
* queries the database and caches the result. Subsequent calls
|
|
11
|
+
* return the same reference without hitting SQLite.
|
|
12
|
+
*/
|
|
13
|
+
getCachedSnapshot() {
|
|
14
|
+
if (this.cached) {
|
|
15
|
+
this.stats.hits++;
|
|
16
|
+
return this.cached;
|
|
17
|
+
}
|
|
18
|
+
this.stats.misses++;
|
|
19
|
+
this.cached = {
|
|
20
|
+
nodes: this.store.getAllNodes(),
|
|
21
|
+
edges: this.store.getAllEdges(),
|
|
22
|
+
};
|
|
23
|
+
return this.cached;
|
|
24
|
+
}
|
|
25
|
+
/**
|
|
26
|
+
* Invalidate the cached snapshot. Must be called after any write
|
|
27
|
+
* operation (insertNode, updateNode, deleteNode, insertEdge, deleteEdge).
|
|
28
|
+
*/
|
|
29
|
+
invalidate() {
|
|
30
|
+
this.cached = null;
|
|
31
|
+
}
|
|
32
|
+
/**
|
|
33
|
+
* Get cache hit/miss statistics.
|
|
34
|
+
*/
|
|
35
|
+
getStats() {
|
|
36
|
+
return { ...this.stats };
|
|
37
|
+
}
|
|
38
|
+
}
|
|
39
|
+
//# sourceMappingURL=graph-snapshot-cache.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"graph-snapshot-cache.js","sourceRoot":"","sources":["../../../src/core/store/graph-snapshot-cache.ts"],"names":[],"mappings":"AAqBA,MAAM,OAAO,kBAAkB;IACrB,KAAK,CAAc;IACnB,MAAM,GAAyB,IAAI,CAAC;IACpC,KAAK,GAAuB,EAAE,IAAI,EAAE,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,CAAC;IAE3D,YAAY,KAAkB;QAC5B,IAAI,CAAC,KAAK,GAAG,KAAK,CAAC;IACrB,CAAC;IAED;;;;OAIG;IACH,iBAAiB;QACf,IAAI,IAAI,CAAC,MAAM,EAAE,CAAC;YAChB,IAAI,CAAC,KAAK,CAAC,IAAI,EAAE,CAAC;YAClB,OAAO,IAAI,CAAC,MAAM,CAAC;QACrB,CAAC;QAED,IAAI,CAAC,KAAK,CAAC,MAAM,EAAE,CAAC;QACpB,IAAI,CAAC,MAAM,GAAG;YACZ,KAAK,EAAE,IAAI,CAAC,KAAK,CAAC,WAAW,EAAE;YAC/B,KAAK,EAAE,IAAI,CAAC,KAAK,CAAC,WAAW,EAAE;SAChC,CAAC;QACF,OAAO,IAAI,CAAC,MAAM,CAAC;IACrB,CAAC;IAED;;;OAGG;IACH,UAAU;QACR,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC;IACrB,CAAC;IAED;;OAEG;IACH,QAAQ;QACN,OAAO,EAAE,GAAG,IAAI,CAAC,KAAK,EAAE,CAAC;IAC3B,CAAC;CACF"}
|
|
@@ -20,6 +20,7 @@ export interface InsertKnowledgeDoc {
|
|
|
20
20
|
export declare function contentHash(content: string): string;
|
|
21
21
|
export declare class KnowledgeStore {
|
|
22
22
|
private db;
|
|
23
|
+
private phaseBoostCache;
|
|
23
24
|
constructor(db: Database.Database);
|
|
24
25
|
/**
|
|
25
26
|
* Insert a knowledge document. Deduplicates by content_hash.
|
|
@@ -58,6 +59,11 @@ export declare class KnowledgeStore {
|
|
|
58
59
|
score: number;
|
|
59
60
|
phaseBoost: number;
|
|
60
61
|
}>;
|
|
62
|
+
/**
|
|
63
|
+
* Invalidate the phase-boosted search cache.
|
|
64
|
+
* Call on knowledge:indexed events or phase changes.
|
|
65
|
+
*/
|
|
66
|
+
invalidatePhaseBoostCache(): void;
|
|
61
67
|
/**
|
|
62
68
|
* Delete a knowledge document by ID.
|
|
63
69
|
*/
|
|
@@ -90,6 +96,11 @@ export declare class KnowledgeStore {
|
|
|
90
96
|
* Batch update staleness_days for all documents.
|
|
91
97
|
*/
|
|
92
98
|
batchUpdateStaleness(): number;
|
|
99
|
+
/**
|
|
100
|
+
* Batch update pre-computed recency_score for all documents.
|
|
101
|
+
* Formula: pow(0.5, ageDays / 30) — 30-day half-life exponential decay.
|
|
102
|
+
*/
|
|
103
|
+
batchUpdateRecencyScores(): number;
|
|
93
104
|
/**
|
|
94
105
|
* Search with quality score weighting applied to BM25 results.
|
|
95
106
|
*/
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"knowledge-store.d.ts","sourceRoot":"","sources":["../../../src/core/store/knowledge-store.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,KAAK,QAAQ,MAAM,gBAAgB,CAAC;AAE3C,OAAO,KAAK,EAAE,iBAAiB,EAAE,mBAAmB,EAAE,MAAM,mCAAmC,CAAC;
|
|
1
|
+
{"version":3,"file":"knowledge-store.d.ts","sourceRoot":"","sources":["../../../src/core/store/knowledge-store.ts"],"names":[],"mappings":"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"}
|