centient 2.21.0 → 2.25.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/CHANGELOG.md +106 -0
- package/README.md +134 -21
- package/dist/cli.d.ts +38 -0
- package/dist/cli.d.ts.map +1 -0
- package/dist/cli.js +816 -0
- package/dist/cli.js.map +1 -0
- package/dist/commands.d.ts +18 -0
- package/dist/commands.d.ts.map +1 -0
- package/dist/commands.js +341 -0
- package/dist/commands.js.map +1 -0
- package/dist/index.d.ts +1 -1
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +86 -18
- package/dist/index.js.map +1 -1
- package/dist/server.d.ts +4 -0
- package/dist/server.d.ts.map +1 -1
- package/dist/server.js +167 -96
- package/dist/server.js.map +1 -1
- package/dist/telemetry/tracer.d.ts.map +1 -1
- package/dist/telemetry/tracer.js +15 -1
- package/dist/telemetry/tracer.js.map +1 -1
- package/dist/tools/knowledge/promoteDecision.d.ts.map +1 -1
- package/dist/tools/knowledge/promoteDecision.js +7 -1
- package/dist/tools/knowledge/promoteDecision.js.map +1 -1
- package/dist/tools/knowledge/promoteLearning.d.ts.map +1 -1
- package/dist/tools/knowledge/promoteLearning.js +7 -1
- package/dist/tools/knowledge/promoteLearning.js.map +1 -1
- package/dist/tools/memory-bank/pushToMemoryBank.d.ts +9 -0
- package/dist/tools/memory-bank/pushToMemoryBank.d.ts.map +1 -0
- package/dist/tools/memory-bank/pushToMemoryBank.js +195 -0
- package/dist/tools/memory-bank/pushToMemoryBank.js.map +1 -0
- package/dist/tools/patterns/executeSkill.js +0 -41
- package/dist/tools/patterns/executeSkill.js.map +1 -1
- package/dist/tools/patterns/loadSkill.js +0 -17
- package/dist/tools/patterns/loadSkill.js.map +1 -1
- package/dist/tools/patterns/searchPatterns.js +0 -15
- package/dist/tools/patterns/searchPatterns.js.map +1 -1
- package/dist/tools/patterns/signPattern.js +0 -20
- package/dist/tools/patterns/signPattern.js.map +1 -1
- package/dist/utils/AuditLogger.d.ts +25 -18
- package/dist/utils/AuditLogger.d.ts.map +1 -1
- package/dist/utils/AuditLogger.js +261 -150
- package/dist/utils/AuditLogger.js.map +1 -1
- package/dist/utils/GeminiEmbeddingService.d.ts +25 -0
- package/dist/utils/GeminiEmbeddingService.d.ts.map +1 -0
- package/dist/utils/GeminiEmbeddingService.js +115 -0
- package/dist/utils/GeminiEmbeddingService.js.map +1 -0
- package/dist/utils/InstanceRegistry.d.ts +47 -0
- package/dist/utils/InstanceRegistry.d.ts.map +1 -0
- package/dist/utils/InstanceRegistry.js +195 -0
- package/dist/utils/InstanceRegistry.js.map +1 -0
- package/dist/utils/MetaKnowledgeEncryption.d.ts +21 -0
- package/dist/utils/MetaKnowledgeEncryption.d.ts.map +1 -0
- package/dist/utils/MetaKnowledgeEncryption.js +125 -0
- package/dist/utils/MetaKnowledgeEncryption.js.map +1 -0
- package/dist/utils/MetaKnowledgeManager.d.ts +18 -0
- package/dist/utils/MetaKnowledgeManager.d.ts.map +1 -1
- package/dist/utils/MetaKnowledgeManager.js +110 -6
- package/dist/utils/MetaKnowledgeManager.js.map +1 -1
- package/dist/utils/PatternIndexer.d.ts +1 -2
- package/dist/utils/PatternIndexer.d.ts.map +1 -1
- package/dist/utils/PatternIndexer.js +40 -72
- package/dist/utils/PatternIndexer.js.map +1 -1
- package/dist/utils/SessionCoordinator.d.ts +0 -1
- package/dist/utils/SessionCoordinator.d.ts.map +1 -1
- package/dist/utils/SessionCoordinator.js +3 -61
- package/dist/utils/SessionCoordinator.js.map +1 -1
- package/dist/utils/VertexSync.d.ts +12 -0
- package/dist/utils/VertexSync.d.ts.map +1 -0
- package/dist/utils/VertexSync.js +173 -0
- package/dist/utils/VertexSync.js.map +1 -0
- package/dist/utils/config.d.ts +60 -0
- package/dist/utils/config.d.ts.map +1 -0
- package/dist/utils/config.js +246 -0
- package/dist/utils/config.js.map +1 -0
- package/dist/utils/rlvr/RewardHistoryStore.d.ts +0 -2
- package/dist/utils/rlvr/RewardHistoryStore.d.ts.map +1 -1
- package/dist/utils/rlvr/RewardHistoryStore.js +5 -18
- package/dist/utils/rlvr/RewardHistoryStore.js.map +1 -1
- package/package.json +2 -1
- package/templates/claude/commands/check-duplicate.md +57 -0
- package/templates/claude/commands/checkpoint.md +47 -0
- package/templates/claude/commands/constraint.md +60 -0
- package/templates/claude/commands/finalize.md +56 -0
- package/templates/claude/commands/history.md +60 -0
- package/templates/claude/commands/note.md +50 -0
- package/templates/claude/commands/patterns.md +51 -0
- package/templates/claude/commands/promote.md +62 -0
- package/templates/claude/commands/recall.md +55 -0
- package/templates/claude/commands/session-start.md +52 -0
- package/templates/claude/commands/session-status.md +62 -0
|
@@ -1,13 +1,42 @@
|
|
|
1
1
|
import * as fs from "fs/promises";
|
|
2
2
|
import * as path from "path";
|
|
3
|
-
import {
|
|
3
|
+
import { getMetaKnowledgeConfig } from "./config.js";
|
|
4
|
+
import { getEncryptionKey, encryptToString, decryptFromString, isEncrypted, } from "./MetaKnowledgeEncryption.js";
|
|
4
5
|
export class MetaKnowledgeManager {
|
|
5
6
|
basePath;
|
|
6
7
|
indexPath;
|
|
8
|
+
config;
|
|
9
|
+
encryptionKey = null;
|
|
7
10
|
constructor() {
|
|
8
|
-
this.
|
|
11
|
+
this.config = getMetaKnowledgeConfig();
|
|
12
|
+
this.basePath = this.config.path;
|
|
9
13
|
this.indexPath = path.join(this.basePath, "index.json");
|
|
10
14
|
}
|
|
15
|
+
async getKey() {
|
|
16
|
+
if (!this.encryptionKey) {
|
|
17
|
+
this.encryptionKey = await getEncryptionKey(this.config.encryption);
|
|
18
|
+
}
|
|
19
|
+
return this.encryptionKey;
|
|
20
|
+
}
|
|
21
|
+
async writeFile(filePath, content) {
|
|
22
|
+
if (this.config.encryption.enabled) {
|
|
23
|
+
const key = await this.getKey();
|
|
24
|
+
const encrypted = encryptToString(content, key);
|
|
25
|
+
await fs.writeFile(filePath, encrypted, "utf-8");
|
|
26
|
+
}
|
|
27
|
+
else {
|
|
28
|
+
await fs.writeFile(filePath, content, "utf-8");
|
|
29
|
+
}
|
|
30
|
+
}
|
|
31
|
+
async readFile(filePath) {
|
|
32
|
+
const content = await fs.readFile(filePath, "utf-8");
|
|
33
|
+
if (isEncrypted(content)) {
|
|
34
|
+
const key = await this.getKey();
|
|
35
|
+
const result = decryptFromString(content, key);
|
|
36
|
+
return result.decrypted;
|
|
37
|
+
}
|
|
38
|
+
return content;
|
|
39
|
+
}
|
|
11
40
|
async ensureDirectories() {
|
|
12
41
|
const dirs = ["learnings", "decisions", "patterns"];
|
|
13
42
|
for (const dir of dirs) {
|
|
@@ -16,7 +45,7 @@ export class MetaKnowledgeManager {
|
|
|
16
45
|
}
|
|
17
46
|
async loadIndex() {
|
|
18
47
|
try {
|
|
19
|
-
const content = await
|
|
48
|
+
const content = await this.readFile(this.indexPath);
|
|
20
49
|
return JSON.parse(content);
|
|
21
50
|
}
|
|
22
51
|
catch {
|
|
@@ -32,7 +61,7 @@ export class MetaKnowledgeManager {
|
|
|
32
61
|
}
|
|
33
62
|
async saveIndex(index) {
|
|
34
63
|
index.lastUpdated = new Date().toISOString();
|
|
35
|
-
await
|
|
64
|
+
await this.writeFile(this.indexPath, JSON.stringify(index, null, 2));
|
|
36
65
|
}
|
|
37
66
|
generateId(prefix) {
|
|
38
67
|
const date = new Date().toISOString().slice(0, 10);
|
|
@@ -54,7 +83,7 @@ export class MetaKnowledgeManager {
|
|
|
54
83
|
};
|
|
55
84
|
const filePath = path.join(this.basePath, "learnings", `${learning.id}.md`);
|
|
56
85
|
const markdown = this.formatLearningMarkdown(learning);
|
|
57
|
-
await
|
|
86
|
+
await this.writeFile(filePath, markdown);
|
|
58
87
|
index.learnings.push(learning);
|
|
59
88
|
await this.saveIndex(index);
|
|
60
89
|
return learning;
|
|
@@ -75,7 +104,7 @@ export class MetaKnowledgeManager {
|
|
|
75
104
|
};
|
|
76
105
|
const filePath = path.join(this.basePath, "decisions", `${decision.id}.md`);
|
|
77
106
|
const markdown = this.formatDecisionMarkdown(decision);
|
|
78
|
-
await
|
|
107
|
+
await this.writeFile(filePath, markdown);
|
|
79
108
|
index.decisions.push(decision);
|
|
80
109
|
await this.saveIndex(index);
|
|
81
110
|
return decision;
|
|
@@ -103,6 +132,78 @@ export class MetaKnowledgeManager {
|
|
|
103
132
|
const index = await this.loadIndex();
|
|
104
133
|
return index.decisions;
|
|
105
134
|
}
|
|
135
|
+
async purgeOldItems() {
|
|
136
|
+
const retentionDays = this.config.retention.days;
|
|
137
|
+
if (retentionDays <= 0) {
|
|
138
|
+
return { learningsPurged: 0, decisionsPurged: 0, archivedTo: null };
|
|
139
|
+
}
|
|
140
|
+
const cutoffDate = new Date();
|
|
141
|
+
cutoffDate.setDate(cutoffDate.getDate() - retentionDays);
|
|
142
|
+
const cutoffISO = cutoffDate.toISOString();
|
|
143
|
+
const index = await this.loadIndex();
|
|
144
|
+
const learningsToPurge = index.learnings.filter((l) => l.promotedAt < cutoffISO);
|
|
145
|
+
const decisionsToPurge = index.decisions.filter((d) => d.promotedAt < cutoffISO);
|
|
146
|
+
if (learningsToPurge.length === 0 && decisionsToPurge.length === 0) {
|
|
147
|
+
return { learningsPurged: 0, decisionsPurged: 0, archivedTo: null };
|
|
148
|
+
}
|
|
149
|
+
let archivePath = null;
|
|
150
|
+
if (this.config.retention.archiveBeforePurge) {
|
|
151
|
+
archivePath = await this.archiveItems(learningsToPurge, decisionsToPurge);
|
|
152
|
+
}
|
|
153
|
+
index.learnings = index.learnings.filter((l) => l.promotedAt >= cutoffISO);
|
|
154
|
+
index.decisions = index.decisions.filter((d) => d.promotedAt >= cutoffISO);
|
|
155
|
+
await this.saveIndex(index);
|
|
156
|
+
for (const learning of learningsToPurge) {
|
|
157
|
+
const filePath = path.join(this.basePath, "learnings", `${learning.id}.md`);
|
|
158
|
+
try {
|
|
159
|
+
await fs.unlink(filePath);
|
|
160
|
+
}
|
|
161
|
+
catch {
|
|
162
|
+
}
|
|
163
|
+
}
|
|
164
|
+
for (const decision of decisionsToPurge) {
|
|
165
|
+
const filePath = path.join(this.basePath, "decisions", `${decision.id}.md`);
|
|
166
|
+
try {
|
|
167
|
+
await fs.unlink(filePath);
|
|
168
|
+
}
|
|
169
|
+
catch {
|
|
170
|
+
}
|
|
171
|
+
}
|
|
172
|
+
return {
|
|
173
|
+
learningsPurged: learningsToPurge.length,
|
|
174
|
+
decisionsPurged: decisionsToPurge.length,
|
|
175
|
+
archivedTo: archivePath,
|
|
176
|
+
};
|
|
177
|
+
}
|
|
178
|
+
async archiveItems(learnings, decisions) {
|
|
179
|
+
const archiveDir = this.config.retention.archivePath;
|
|
180
|
+
await fs.mkdir(archiveDir, { recursive: true });
|
|
181
|
+
const timestamp = new Date().toISOString().replace(/[:.]/g, "-");
|
|
182
|
+
const archivePath = path.join(archiveDir, `meta-knowledge-archive-${timestamp}.json`);
|
|
183
|
+
const archive = {
|
|
184
|
+
archivedAt: new Date().toISOString(),
|
|
185
|
+
reason: `Retention policy: ${this.config.retention.days} days`,
|
|
186
|
+
learnings,
|
|
187
|
+
decisions,
|
|
188
|
+
};
|
|
189
|
+
await fs.writeFile(archivePath, JSON.stringify(archive, null, 2), "utf-8");
|
|
190
|
+
return archivePath;
|
|
191
|
+
}
|
|
192
|
+
async getPurgePreview() {
|
|
193
|
+
const retentionDays = this.config.retention.days;
|
|
194
|
+
if (retentionDays <= 0) {
|
|
195
|
+
return { learnings: [], decisions: [], cutoffDate: "N/A (retention disabled)" };
|
|
196
|
+
}
|
|
197
|
+
const cutoffDate = new Date();
|
|
198
|
+
cutoffDate.setDate(cutoffDate.getDate() - retentionDays);
|
|
199
|
+
const cutoffISO = cutoffDate.toISOString();
|
|
200
|
+
const index = await this.loadIndex();
|
|
201
|
+
return {
|
|
202
|
+
learnings: index.learnings.filter((l) => l.promotedAt < cutoffISO),
|
|
203
|
+
decisions: index.decisions.filter((d) => d.promotedAt < cutoffISO),
|
|
204
|
+
cutoffDate: cutoffISO,
|
|
205
|
+
};
|
|
206
|
+
}
|
|
106
207
|
formatLearningMarkdown(learning) {
|
|
107
208
|
return `# ${learning.title}
|
|
108
209
|
|
|
@@ -149,4 +250,7 @@ export function getMetaKnowledgeManager() {
|
|
|
149
250
|
}
|
|
150
251
|
return managerInstance;
|
|
151
252
|
}
|
|
253
|
+
export function resetMetaKnowledgeManager() {
|
|
254
|
+
managerInstance = null;
|
|
255
|
+
}
|
|
152
256
|
//# sourceMappingURL=MetaKnowledgeManager.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"MetaKnowledgeManager.js","sourceRoot":"","sources":["../../src/utils/MetaKnowledgeManager.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"MetaKnowledgeManager.js","sourceRoot":"","sources":["../../src/utils/MetaKnowledgeManager.ts"],"names":[],"mappings":"AAmBA,OAAO,KAAK,EAAE,MAAM,aAAa,CAAC;AAClC,OAAO,KAAK,IAAI,MAAM,MAAM,CAAC;AAC7B,OAAO,EAAE,sBAAsB,EAA4B,MAAM,aAAa,CAAC;AAC/E,OAAO,EACL,gBAAgB,EAChB,eAAe,EACf,iBAAiB,EACjB,WAAW,GACZ,MAAM,8BAA8B,CAAC;AAiEtC,MAAM,OAAO,oBAAoB;IACvB,QAAQ,CAAS;IACjB,SAAS,CAAS;IAClB,MAAM,CAAsB;IAC5B,aAAa,GAAkB,IAAI,CAAC;IAE5C;QACE,IAAI,CAAC,MAAM,GAAG,sBAAsB,EAAE,CAAC;QACvC,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC;QACjC,IAAI,CAAC,SAAS,GAAG,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,QAAQ,EAAE,YAAY,CAAC,CAAC;IAC1D,CAAC;IAKO,KAAK,CAAC,MAAM;QAClB,IAAI,CAAC,IAAI,CAAC,aAAa,EAAE,CAAC;YACxB,IAAI,CAAC,aAAa,GAAG,MAAM,gBAAgB,CAAC,IAAI,CAAC,MAAM,CAAC,UAAU,CAAC,CAAC;QACtE,CAAC;QACD,OAAO,IAAI,CAAC,aAAa,CAAC;IAC5B,CAAC;IAKO,KAAK,CAAC,SAAS,CAAC,QAAgB,EAAE,OAAe;QACvD,IAAI,IAAI,CAAC,MAAM,CAAC,UAAU,CAAC,OAAO,EAAE,CAAC;YACnC,MAAM,GAAG,GAAG,MAAM,IAAI,CAAC,MAAM,EAAE,CAAC;YAChC,MAAM,SAAS,GAAG,eAAe,CAAC,OAAO,EAAE,GAAG,CAAC,CAAC;YAChD,MAAM,EAAE,CAAC,SAAS,CAAC,QAAQ,EAAE,SAAS,EAAE,OAAO,CAAC,CAAC;QACnD,CAAC;aAAM,CAAC;YACN,MAAM,EAAE,CAAC,SAAS,CAAC,QAAQ,EAAE,OAAO,EAAE,OAAO,CAAC,CAAC;QACjD,CAAC;IACH,CAAC;IAKO,KAAK,CAAC,QAAQ,CAAC,QAAgB;QACrC,MAAM,OAAO,GAAG,MAAM,EAAE,CAAC,QAAQ,CAAC,QAAQ,EAAE,OAAO,CAAC,CAAC;QAGrD,IAAI,WAAW,CAAC,OAAO,CAAC,EAAE,CAAC;YACzB,MAAM,GAAG,GAAG,MAAM,IAAI,CAAC,MAAM,EAAE,CAAC;YAChC,MAAM,MAAM,GAAG,iBAAiB,CAAC,OAAO,EAAE,GAAG,CAAC,CAAC;YAC/C,OAAO,MAAM,CAAC,SAAS,CAAC;QAC1B,CAAC;QAED,OAAO,OAAO,CAAC;IACjB,CAAC;IAKD,KAAK,CAAC,iBAAiB;QACrB,MAAM,IAAI,GAAG,CAAC,WAAW,EAAE,WAAW,EAAE,UAAU,CAAC,CAAC;QACpD,KAAK,MAAM,GAAG,IAAI,IAAI,EAAE,CAAC;YACvB,MAAM,EAAE,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,QAAQ,EAAE,GAAG,CAAC,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;QACrE,CAAC;IACH,CAAC;IAKD,KAAK,CAAC,SAAS;QACb,IAAI,CAAC;YACH,MAAM,OAAO,GAAG,MAAM,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;YACpD,OAAO,IAAI,CAAC,KAAK,CAAC,OAAO,CAAuB,CAAC;QACnD,CAAC;QAAC,MAAM,CAAC;YAEP,MAAM,KAAK,GAAuB;gBAChC,OAAO,EAAE,OAAO;gBAChB,WAAW,EAAE,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE;gBACrC,SAAS,EAAE,EAAE;gBACb,SAAS,EAAE,EAAE;aACd,CAAC;YACF,MAAM,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC;YAC5B,OAAO,KAAK,CAAC;QACf,CAAC;IACH,CAAC;IAKD,KAAK,CAAC,SAAS,CAAC,KAAyB;QACvC,KAAK,CAAC,WAAW,GAAG,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE,CAAC;QAC7C,MAAM,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,SAAS,EAAE,IAAI,CAAC,SAAS,CAAC,KAAK,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC;IACvE,CAAC;IAKO,UAAU,CAAC,MAAc;QAC/B,MAAM,IAAI,GAAG,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE,CAAC,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;QACnD,MAAM,MAAM,GAAG,IAAI,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC,SAAS,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;QAC1D,OAAO,GAAG,MAAM,IAAI,IAAI,IAAI,MAAM,EAAE,CAAC;IACvC,CAAC;IAKD,KAAK,CAAC,eAAe,CAAC,KAA2B;QAC/C,MAAM,IAAI,CAAC,iBAAiB,EAAE,CAAC;QAC/B,MAAM,KAAK,GAAG,MAAM,IAAI,CAAC,SAAS,EAAE,CAAC;QAErC,MAAM,QAAQ,GAAiB;YAC7B,EAAE,EAAE,IAAI,CAAC,UAAU,CAAC,UAAU,CAAC;YAC/B,KAAK,EAAE,KAAK,CAAC,KAAK;YAClB,OAAO,EAAE,KAAK,CAAC,OAAO;YACtB,aAAa,EAAE,KAAK,CAAC,aAAa;YAClC,aAAa,EAAE,KAAK,CAAC,aAAa;YAClC,UAAU,EAAE,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE;YACpC,IAAI,EAAE,KAAK,CAAC,IAAI,IAAI,EAAE;YACtB,QAAQ,EAAE,KAAK,CAAC,QAAQ,IAAI,KAAK;SAClC,CAAC;QAGF,MAAM,QAAQ,GAAG,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,QAAQ,EAAE,WAAW,EAAE,GAAG,QAAQ,CAAC,EAAE,KAAK,CAAC,CAAC;QAC5E,MAAM,QAAQ,GAAG,IAAI,CAAC,sBAAsB,CAAC,QAAQ,CAAC,CAAC;QACvD,MAAM,IAAI,CAAC,SAAS,CAAC,QAAQ,EAAE,QAAQ,CAAC,CAAC;QAGzC,KAAK,CAAC,SAAS,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;QAC/B,MAAM,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC;QAE5B,OAAO,QAAQ,CAAC;IAClB,CAAC;IAKD,KAAK,CAAC,eAAe,CAAC,KAA2B;QAC/C,MAAM,IAAI,CAAC,iBAAiB,EAAE,CAAC;QAC/B,MAAM,KAAK,GAAG,MAAM,IAAI,CAAC,SAAS,EAAE,CAAC;QAErC,MAAM,QAAQ,GAAiB;YAC7B,EAAE,EAAE,IAAI,CAAC,UAAU,CAAC,UAAU,CAAC;YAC/B,KAAK,EAAE,KAAK,CAAC,KAAK;YAClB,QAAQ,EAAE,KAAK,CAAC,QAAQ;YACxB,SAAS,EAAE,KAAK,CAAC,SAAS;YAC1B,aAAa,EAAE,KAAK,CAAC,aAAa;YAClC,aAAa,EAAE,KAAK,CAAC,aAAa;YAClC,UAAU,EAAE,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE;YACpC,IAAI,EAAE,KAAK,CAAC,IAAI,IAAI,EAAE;YACtB,UAAU,EAAE,KAAK,CAAC,UAAU;SAC7B,CAAC;QAGF,MAAM,QAAQ,GAAG,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,QAAQ,EAAE,WAAW,EAAE,GAAG,QAAQ,CAAC,EAAE,KAAK,CAAC,CAAC;QAC5E,MAAM,QAAQ,GAAG,IAAI,CAAC,sBAAsB,CAAC,QAAQ,CAAC,CAAC;QACvD,MAAM,IAAI,CAAC,SAAS,CAAC,QAAQ,EAAE,QAAQ,CAAC,CAAC;QAGzC,KAAK,CAAC,SAAS,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;QAC/B,MAAM,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC;QAE5B,OAAO,QAAQ,CAAC;IAClB,CAAC;IAKD,KAAK,CAAC,eAAe,CAAC,KAAa;QACjC,MAAM,KAAK,GAAG,MAAM,IAAI,CAAC,SAAS,EAAE,CAAC;QACrC,MAAM,UAAU,GAAG,KAAK,CAAC,WAAW,EAAE,CAAC;QAEvC,OAAO,KAAK,CAAC,SAAS,CAAC,MAAM,CAC3B,CAAC,CAAC,EAAE,EAAE,CACJ,CAAC,CAAC,KAAK,CAAC,WAAW,EAAE,CAAC,QAAQ,CAAC,UAAU,CAAC;YAC1C,CAAC,CAAC,OAAO,CAAC,WAAW,EAAE,CAAC,QAAQ,CAAC,UAAU,CAAC;YAC5C,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,WAAW,EAAE,CAAC,QAAQ,CAAC,UAAU,CAAC,CAAC,CAC3D,CAAC;IACJ,CAAC;IAKD,KAAK,CAAC,eAAe,CAAC,KAAa;QACjC,MAAM,KAAK,GAAG,MAAM,IAAI,CAAC,SAAS,EAAE,CAAC;QACrC,MAAM,UAAU,GAAG,KAAK,CAAC,WAAW,EAAE,CAAC;QAEvC,OAAO,KAAK,CAAC,SAAS,CAAC,MAAM,CAC3B,CAAC,CAAC,EAAE,EAAE,CACJ,CAAC,CAAC,KAAK,CAAC,WAAW,EAAE,CAAC,QAAQ,CAAC,UAAU,CAAC;YAC1C,CAAC,CAAC,QAAQ,CAAC,WAAW,EAAE,CAAC,QAAQ,CAAC,UAAU,CAAC;YAC7C,CAAC,CAAC,SAAS,CAAC,WAAW,EAAE,CAAC,QAAQ,CAAC,UAAU,CAAC;YAC9C,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,WAAW,EAAE,CAAC,QAAQ,CAAC,UAAU,CAAC,CAAC,CAC3D,CAAC;IACJ,CAAC;IAKD,KAAK,CAAC,eAAe;QACnB,MAAM,KAAK,GAAG,MAAM,IAAI,CAAC,SAAS,EAAE,CAAC;QACrC,OAAO,KAAK,CAAC,SAAS,CAAC;IACzB,CAAC;IAKD,KAAK,CAAC,eAAe;QACnB,MAAM,KAAK,GAAG,MAAM,IAAI,CAAC,SAAS,EAAE,CAAC;QACrC,OAAO,KAAK,CAAC,SAAS,CAAC;IACzB,CAAC;IAUD,KAAK,CAAC,aAAa;QACjB,MAAM,aAAa,GAAG,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC,IAAI,CAAC;QACjD,IAAI,aAAa,IAAI,CAAC,EAAE,CAAC;YACvB,OAAO,EAAE,eAAe,EAAE,CAAC,EAAE,eAAe,EAAE,CAAC,EAAE,UAAU,EAAE,IAAI,EAAE,CAAC;QACtE,CAAC;QAED,MAAM,UAAU,GAAG,IAAI,IAAI,EAAE,CAAC;QAC9B,UAAU,CAAC,OAAO,CAAC,UAAU,CAAC,OAAO,EAAE,GAAG,aAAa,CAAC,CAAC;QACzD,MAAM,SAAS,GAAG,UAAU,CAAC,WAAW,EAAE,CAAC;QAE3C,MAAM,KAAK,GAAG,MAAM,IAAI,CAAC,SAAS,EAAE,CAAC;QAGrC,MAAM,gBAAgB,GAAG,KAAK,CAAC,SAAS,CAAC,MAAM,CAC7C,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,UAAU,GAAG,SAAS,CAChC,CAAC;QACF,MAAM,gBAAgB,GAAG,KAAK,CAAC,SAAS,CAAC,MAAM,CAC7C,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,UAAU,GAAG,SAAS,CAChC,CAAC;QAEF,IAAI,gBAAgB,CAAC,MAAM,KAAK,CAAC,IAAI,gBAAgB,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YACnE,OAAO,EAAE,eAAe,EAAE,CAAC,EAAE,eAAe,EAAE,CAAC,EAAE,UAAU,EAAE,IAAI,EAAE,CAAC;QACtE,CAAC;QAGD,IAAI,WAAW,GAAkB,IAAI,CAAC;QACtC,IAAI,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC,kBAAkB,EAAE,CAAC;YAC7C,WAAW,GAAG,MAAM,IAAI,CAAC,YAAY,CAAC,gBAAgB,EAAE,gBAAgB,CAAC,CAAC;QAC5E,CAAC;QAGD,KAAK,CAAC,SAAS,GAAG,KAAK,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,UAAU,IAAI,SAAS,CAAC,CAAC;QAC3E,KAAK,CAAC,SAAS,GAAG,KAAK,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,UAAU,IAAI,SAAS,CAAC,CAAC;QAC3E,MAAM,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC;QAG5B,KAAK,MAAM,QAAQ,IAAI,gBAAgB,EAAE,CAAC;YACxC,MAAM,QAAQ,GAAG,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,QAAQ,EAAE,WAAW,EAAE,GAAG,QAAQ,CAAC,EAAE,KAAK,CAAC,CAAC;YAC5E,IAAI,CAAC;gBACH,MAAM,EAAE,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC;YAC5B,CAAC;YAAC,MAAM,CAAC;YAET,CAAC;QACH,CAAC;QAED,KAAK,MAAM,QAAQ,IAAI,gBAAgB,EAAE,CAAC;YACxC,MAAM,QAAQ,GAAG,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,QAAQ,EAAE,WAAW,EAAE,GAAG,QAAQ,CAAC,EAAE,KAAK,CAAC,CAAC;YAC5E,IAAI,CAAC;gBACH,MAAM,EAAE,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC;YAC5B,CAAC;YAAC,MAAM,CAAC;YAET,CAAC;QACH,CAAC;QAED,OAAO;YACL,eAAe,EAAE,gBAAgB,CAAC,MAAM;YACxC,eAAe,EAAE,gBAAgB,CAAC,MAAM;YACxC,UAAU,EAAE,WAAW;SACxB,CAAC;IACJ,CAAC;IAKO,KAAK,CAAC,YAAY,CACxB,SAAyB,EACzB,SAAyB;QAEzB,MAAM,UAAU,GAAG,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC,WAAW,CAAC;QACrD,MAAM,EAAE,CAAC,KAAK,CAAC,UAAU,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;QAEhD,MAAM,SAAS,GAAG,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE,CAAC,OAAO,CAAC,OAAO,EAAE,GAAG,CAAC,CAAC;QACjE,MAAM,WAAW,GAAG,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE,0BAA0B,SAAS,OAAO,CAAC,CAAC;QAEtF,MAAM,OAAO,GAAG;YACd,UAAU,EAAE,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE;YACpC,MAAM,EAAE,qBAAqB,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC,IAAI,OAAO;YAC9D,SAAS;YACT,SAAS;SACV,CAAC;QAGF,MAAM,EAAE,CAAC,SAAS,CAAC,WAAW,EAAE,IAAI,CAAC,SAAS,CAAC,OAAO,EAAE,IAAI,EAAE,CAAC,CAAC,EAAE,OAAO,CAAC,CAAC;QAE3E,OAAO,WAAW,CAAC;IACrB,CAAC;IAKD,KAAK,CAAC,eAAe;QAKnB,MAAM,aAAa,GAAG,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC,IAAI,CAAC;QACjD,IAAI,aAAa,IAAI,CAAC,EAAE,CAAC;YACvB,OAAO,EAAE,SAAS,EAAE,EAAE,EAAE,SAAS,EAAE,EAAE,EAAE,UAAU,EAAE,0BAA0B,EAAE,CAAC;QAClF,CAAC;QAED,MAAM,UAAU,GAAG,IAAI,IAAI,EAAE,CAAC;QAC9B,UAAU,CAAC,OAAO,CAAC,UAAU,CAAC,OAAO,EAAE,GAAG,aAAa,CAAC,CAAC;QACzD,MAAM,SAAS,GAAG,UAAU,CAAC,WAAW,EAAE,CAAC;QAE3C,MAAM,KAAK,GAAG,MAAM,IAAI,CAAC,SAAS,EAAE,CAAC;QAErC,OAAO;YACL,SAAS,EAAE,KAAK,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,UAAU,GAAG,SAAS,CAAC;YAClE,SAAS,EAAE,KAAK,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,UAAU,GAAG,SAAS,CAAC;YAClE,UAAU,EAAE,SAAS;SACtB,CAAC;IACJ,CAAC;IAKO,sBAAsB,CAAC,QAAsB;QACnD,OAAO,KAAK,QAAQ,CAAC,KAAK;;UAEpB,QAAQ,CAAC,EAAE;gBACL,QAAQ,CAAC,UAAU;cACrB,QAAQ,CAAC,aAAa,MAAM,QAAQ,CAAC,aAAa;YACpD,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,MAAM;gBAC9B,QAAQ,CAAC,QAAQ,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI;;;;EAI9C,QAAQ,CAAC,OAAO;CACjB,CAAC;IACA,CAAC;IAKO,sBAAsB,CAAC,QAAsB;QACnD,IAAI,QAAQ,GAAG,KAAK,QAAQ,CAAC,KAAK;;UAE5B,QAAQ,CAAC,EAAE;gBACL,QAAQ,CAAC,UAAU;cACrB,QAAQ,CAAC,aAAa,MAAM,QAAQ,CAAC,aAAa;YACpD,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,MAAM;CAC7C,CAAC;QAEE,IAAI,QAAQ,CAAC,UAAU,EAAE,CAAC;YACxB,QAAQ,IAAI,mBAAmB,QAAQ,CAAC,UAAU,IAAI,CAAC;QACzD,CAAC;QAED,QAAQ,IAAI;;;;;EAKd,QAAQ,CAAC,QAAQ;;;;EAIjB,QAAQ,CAAC,SAAS;CACnB,CAAC;QAEE,OAAO,QAAQ,CAAC;IAClB,CAAC;CACF;AAMD,IAAI,eAAe,GAAgC,IAAI,CAAC;AAExD,MAAM,UAAU,uBAAuB;IACrC,IAAI,CAAC,eAAe,EAAE,CAAC;QACrB,eAAe,GAAG,IAAI,oBAAoB,EAAE,CAAC;IAC/C,CAAC;IACD,OAAO,eAAe,CAAC;AACzB,CAAC;AAKD,MAAM,UAAU,yBAAyB;IACvC,eAAe,GAAG,IAAI,CAAC;AACzB,CAAC"}
|
|
@@ -32,16 +32,15 @@ export interface IndexingResult {
|
|
|
32
32
|
}
|
|
33
33
|
export declare class PatternIndexer {
|
|
34
34
|
private qdrant;
|
|
35
|
-
private openai;
|
|
36
35
|
private googleAI;
|
|
37
36
|
private collectionName;
|
|
38
37
|
private googleFSConfigPath;
|
|
39
38
|
private googleFSConfig;
|
|
40
39
|
private qdrantAvailable;
|
|
41
40
|
private static QDRANT_TIMEOUT_MS;
|
|
41
|
+
private static EMBEDDING_DIMENSIONS;
|
|
42
42
|
constructor();
|
|
43
43
|
private withQdrantCircuitBreaker;
|
|
44
|
-
private withOpenAICircuitBreaker;
|
|
45
44
|
isQdrantAvailable(): Promise<boolean>;
|
|
46
45
|
private loadGoogleFSConfig;
|
|
47
46
|
private saveGoogleFSConfig;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"PatternIndexer.d.ts","sourceRoot":"","sources":["../../src/utils/PatternIndexer.ts"],"names":[],"mappings":"AAmDA,MAAM,WAAW,eAAe;IAC9B,EAAE,EAAE,MAAM,CAAC;IACX,IAAI,EAAE,MAAM,CAAC;IACb,QAAQ,EAAE,MAAM,CAAC;IACjB,OAAO,EAAE,MAAM,CAAC;IAChB,UAAU,EAAE,MAAM,CAAC;IACnB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,OAAO,EAAE,MAAM,CAAC;IAChB,IAAI,EAAE,MAAM,EAAE,CAAC;IACf,WAAW,EAAE,MAAM,CAAC;IACpB,QAAQ,EAAE,MAAM,CAAC;IACjB,QAAQ,CAAC,EAAE,OAAO,CAAC;IAEnB,QAAQ,CAAC,EAAE,OAAO,CAAC;IAEnB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,QAAQ,CAAC,EAAE,KAAK,CAAC;QACf,SAAS,EAAE,MAAM,CAAC;QAClB,MAAM,EAAE,SAAS,GAAG,SAAS,GAAG,SAAS,CAAC;QAC1C,KAAK,CAAC,EAAE,MAAM,CAAC;KAChB,CAAC,CAAC;IAEH,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,iBAAiB,CAAC,EAAE,OAAO,CAAC;IAC5B,kBAAkB,CAAC,EAAE,MAAM,EAAE,CAAC;CAC/B;AAED,MAAM,WAAW,cAAc;IAC7B,OAAO,EAAE,OAAO,CAAC;IACjB,aAAa,EAAE,OAAO,CAAC;IACvB,eAAe,EAAE,OAAO,CAAC;IACzB,QAAQ,EAAE,MAAM,CAAC;IACjB,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB;AAoBD,qBAAa,cAAc;IACzB,OAAO,CAAC,MAAM,CAA6B;IAC3C,OAAO,CAAC,
|
|
1
|
+
{"version":3,"file":"PatternIndexer.d.ts","sourceRoot":"","sources":["../../src/utils/PatternIndexer.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,6 +1,5 @@
|
|
|
1
1
|
import { QdrantClient } from "@qdrant/js-client-rest";
|
|
2
2
|
import * as fs from "fs/promises";
|
|
3
|
-
import OpenAI from "openai";
|
|
4
3
|
import * as crypto from "crypto";
|
|
5
4
|
import { GoogleGenAI } from "@google/genai";
|
|
6
5
|
import { homedir } from "os";
|
|
@@ -9,6 +8,7 @@ import { withExternalSpan } from "../telemetry/index.js";
|
|
|
9
8
|
import { getCostTracker } from "./CostTracker.js";
|
|
10
9
|
import { ServiceCircuitBreakers } from "./CircuitBreaker.js";
|
|
11
10
|
import { ServiceRateLimiters } from "./RateLimiter.js";
|
|
11
|
+
import { getEmbeddingService } from "./GeminiEmbeddingService.js";
|
|
12
12
|
function patternIdToUuid(patternId) {
|
|
13
13
|
const NAMESPACE = "6ba7b810-9dad-11d1-80b4-00c04fd430c8";
|
|
14
14
|
const hash = crypto.createHash("sha1");
|
|
@@ -26,13 +26,13 @@ function patternIdToUuid(patternId) {
|
|
|
26
26
|
}
|
|
27
27
|
export class PatternIndexer {
|
|
28
28
|
qdrant = null;
|
|
29
|
-
openai = null;
|
|
30
29
|
googleAI = null;
|
|
31
30
|
collectionName = "shared_patterns";
|
|
32
31
|
googleFSConfigPath;
|
|
33
32
|
googleFSConfig = null;
|
|
34
33
|
qdrantAvailable = null;
|
|
35
34
|
static QDRANT_TIMEOUT_MS = 5000;
|
|
35
|
+
static EMBEDDING_DIMENSIONS = 3072;
|
|
36
36
|
constructor() {
|
|
37
37
|
const qdrantUrl = process.env.QDRANT_URL || "http://localhost:6333";
|
|
38
38
|
try {
|
|
@@ -46,17 +46,13 @@ export class PatternIndexer {
|
|
|
46
46
|
console.error(`[PatternIndexer] Failed to create Qdrant client: ${error}`);
|
|
47
47
|
this.qdrant = null;
|
|
48
48
|
}
|
|
49
|
-
const openaiApiKey = process.env.OPENAI_API_KEY;
|
|
50
|
-
if (openaiApiKey) {
|
|
51
|
-
this.openai = new OpenAI({ apiKey: openaiApiKey });
|
|
52
|
-
}
|
|
53
|
-
else {
|
|
54
|
-
console.error("[PatternIndexer] OPENAI_API_KEY not set - vector search disabled, using filesystem fallback");
|
|
55
|
-
}
|
|
56
49
|
const geminiApiKey = process.env.GEMINI_API_KEY;
|
|
57
50
|
if (geminiApiKey) {
|
|
58
51
|
this.googleAI = new GoogleGenAI({ apiKey: geminiApiKey });
|
|
59
52
|
}
|
|
53
|
+
else {
|
|
54
|
+
console.error("[PatternIndexer] GEMINI_API_KEY not set - vector search disabled, using filesystem fallback");
|
|
55
|
+
}
|
|
60
56
|
this.googleFSConfigPath = join(homedir(), "Dev", ".shared-patterns", ".gemini-config.json");
|
|
61
57
|
}
|
|
62
58
|
async withQdrantCircuitBreaker(operation) {
|
|
@@ -65,12 +61,6 @@ export class PatternIndexer {
|
|
|
65
61
|
const qdrantBreaker = ServiceCircuitBreakers.qdrant();
|
|
66
62
|
return qdrantBreaker.execute(operation);
|
|
67
63
|
}
|
|
68
|
-
async withOpenAICircuitBreaker(operation) {
|
|
69
|
-
const rateLimiter = ServiceRateLimiters.openaiEmbeddings();
|
|
70
|
-
await rateLimiter.acquire(1);
|
|
71
|
-
const openaiBreaker = ServiceCircuitBreakers.openai();
|
|
72
|
-
return openaiBreaker.execute(operation);
|
|
73
|
-
}
|
|
74
64
|
async isQdrantAvailable() {
|
|
75
65
|
if (this.qdrantAvailable !== null) {
|
|
76
66
|
return this.qdrantAvailable;
|
|
@@ -128,28 +118,38 @@ export class PatternIndexer {
|
|
|
128
118
|
}
|
|
129
119
|
try {
|
|
130
120
|
const collections = await this.qdrant.getCollections();
|
|
131
|
-
const
|
|
132
|
-
if (
|
|
133
|
-
await this.qdrant.
|
|
134
|
-
|
|
135
|
-
|
|
136
|
-
|
|
137
|
-
|
|
138
|
-
|
|
139
|
-
|
|
140
|
-
|
|
141
|
-
|
|
142
|
-
}
|
|
143
|
-
await this.qdrant.createPayloadIndex(this.collectionName, {
|
|
144
|
-
field_name: "verified",
|
|
145
|
-
field_schema: "bool",
|
|
146
|
-
});
|
|
147
|
-
await this.qdrant.createPayloadIndex(this.collectionName, {
|
|
148
|
-
field_name: "usage_count",
|
|
149
|
-
field_schema: "integer",
|
|
150
|
-
});
|
|
151
|
-
console.error("[PatternIndexer] Created Qdrant collection: shared_patterns");
|
|
121
|
+
const existingCollection = collections.collections.find((c) => c.name === this.collectionName);
|
|
122
|
+
if (existingCollection) {
|
|
123
|
+
const collectionInfo = await this.qdrant.getCollection(this.collectionName);
|
|
124
|
+
const currentSize = collectionInfo.config?.params?.vectors?.size;
|
|
125
|
+
if (currentSize && currentSize !== PatternIndexer.EMBEDDING_DIMENSIONS) {
|
|
126
|
+
console.error(`[PatternIndexer] Collection has ${currentSize} dimensions, need ${PatternIndexer.EMBEDDING_DIMENSIONS}. Recreating...`);
|
|
127
|
+
await this.qdrant.deleteCollection(this.collectionName);
|
|
128
|
+
console.error("[PatternIndexer] Deleted old collection. Re-indexing will be required.");
|
|
129
|
+
}
|
|
130
|
+
else {
|
|
131
|
+
return true;
|
|
132
|
+
}
|
|
152
133
|
}
|
|
134
|
+
await this.qdrant.createCollection(this.collectionName, {
|
|
135
|
+
vectors: {
|
|
136
|
+
size: PatternIndexer.EMBEDDING_DIMENSIONS,
|
|
137
|
+
distance: "Cosine",
|
|
138
|
+
},
|
|
139
|
+
});
|
|
140
|
+
await this.qdrant.createPayloadIndex(this.collectionName, {
|
|
141
|
+
field_name: "category",
|
|
142
|
+
field_schema: "keyword",
|
|
143
|
+
});
|
|
144
|
+
await this.qdrant.createPayloadIndex(this.collectionName, {
|
|
145
|
+
field_name: "verified",
|
|
146
|
+
field_schema: "bool",
|
|
147
|
+
});
|
|
148
|
+
await this.qdrant.createPayloadIndex(this.collectionName, {
|
|
149
|
+
field_name: "usage_count",
|
|
150
|
+
field_schema: "integer",
|
|
151
|
+
});
|
|
152
|
+
console.error(`[PatternIndexer] Created Qdrant collection: ${this.collectionName} (${PatternIndexer.EMBEDDING_DIMENSIONS} dimensions)`);
|
|
153
153
|
return true;
|
|
154
154
|
}
|
|
155
155
|
catch (error) {
|
|
@@ -158,43 +158,11 @@ export class PatternIndexer {
|
|
|
158
158
|
}
|
|
159
159
|
}
|
|
160
160
|
async generateEmbedding(text) {
|
|
161
|
-
|
|
162
|
-
return null;
|
|
163
|
-
}
|
|
164
|
-
const MODEL = "text-embedding-3-small";
|
|
165
|
-
return this.withOpenAICircuitBreaker(async () => {
|
|
166
|
-
return withExternalSpan("openai", {
|
|
167
|
-
operation: "embedding",
|
|
168
|
-
model: MODEL,
|
|
169
|
-
}, async (span) => {
|
|
170
|
-
const response = await this.openai.embeddings.create({
|
|
171
|
-
model: MODEL,
|
|
172
|
-
input: text,
|
|
173
|
-
});
|
|
174
|
-
const embedding = response.data[0]?.embedding;
|
|
175
|
-
if (!embedding) {
|
|
176
|
-
throw new Error("Failed to generate embedding");
|
|
177
|
-
}
|
|
178
|
-
span.setAttribute("service.input_chars", text.length);
|
|
179
|
-
span.setAttribute("service.dimensions", embedding.length);
|
|
180
|
-
const inputTokens = Math.ceil(text.length / 4);
|
|
181
|
-
getCostTracker().recordCost({
|
|
182
|
-
service: "openai",
|
|
183
|
-
operation: "embedding",
|
|
184
|
-
model: MODEL,
|
|
185
|
-
inputTokens,
|
|
186
|
-
outputTokens: 0,
|
|
187
|
-
cached: false,
|
|
188
|
-
duration: 0,
|
|
189
|
-
module: "patterns",
|
|
190
|
-
});
|
|
191
|
-
return embedding;
|
|
192
|
-
});
|
|
193
|
-
});
|
|
161
|
+
return getEmbeddingService().generateEmbeddingOrNull(text, "patterns");
|
|
194
162
|
}
|
|
195
163
|
async indexToQdrant(pattern, content) {
|
|
196
164
|
const available = await this.isQdrantAvailable();
|
|
197
|
-
if (!available || !this.qdrant || !this.
|
|
165
|
+
if (!available || !this.qdrant || !this.googleAI) {
|
|
198
166
|
console.error(`[PatternIndexer] Skipping Qdrant indexing for ${pattern.id} - services unavailable`);
|
|
199
167
|
return false;
|
|
200
168
|
}
|
|
@@ -368,8 +336,8 @@ ${content}`;
|
|
|
368
336
|
}
|
|
369
337
|
async searchFast(query, options) {
|
|
370
338
|
const available = await this.isQdrantAvailable();
|
|
371
|
-
if (!available || !this.qdrant || !this.
|
|
372
|
-
console.error("[PatternIndexer] Qdrant/
|
|
339
|
+
if (!available || !this.qdrant || !this.googleAI) {
|
|
340
|
+
console.error("[PatternIndexer] Qdrant/Gemini unavailable - using filesystem fallback");
|
|
373
341
|
return this.searchFilesystem(query, options);
|
|
374
342
|
}
|
|
375
343
|
try {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"PatternIndexer.js","sourceRoot":"","sources":["../../src/utils/PatternIndexer.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"PatternIndexer.js","sourceRoot":"","sources":["../../src/utils/PatternIndexer.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"SessionCoordinator.d.ts","sourceRoot":"","sources":["../../src/utils/SessionCoordinator.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"SessionCoordinator.d.ts","sourceRoot":"","sources":["../../src/utils/SessionCoordinator.ts"],"names":[],"mappings":"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"}
|