@noyrax/5d-database-plugin 0.1.8 → 0.1.10-beta.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/MCP_SERVER_SETUP.md +14 -0
- package/README.md +49 -3
- package/SETUP_NEW_PROJECT.md +245 -14
- package/out/api/adr-api.d.ts +15 -2
- package/out/api/adr-api.d.ts.map +1 -1
- package/out/api/adr-api.js +98 -4
- package/out/api/adr-api.js.map +1 -1
- package/out/api/index.d.ts +1 -0
- package/out/api/index.d.ts.map +1 -1
- package/out/api/index.js +3 -1
- package/out/api/index.js.map +1 -1
- package/out/api/ingestion-api.d.ts +42 -0
- package/out/api/ingestion-api.d.ts.map +1 -0
- package/out/api/ingestion-api.js +148 -0
- package/out/api/ingestion-api.js.map +1 -0
- package/out/api/module-api.d.ts +11 -1
- package/out/api/module-api.d.ts.map +1 -1
- package/out/api/module-api.js +54 -2
- package/out/api/module-api.js.map +1 -1
- package/out/cli/ingest-cli.js +43 -19
- package/out/cli/ingest-cli.js.map +1 -1
- package/out/cli/merge-workspaces-cli.d.ts +3 -0
- package/out/cli/merge-workspaces-cli.d.ts.map +1 -0
- package/out/cli/merge-workspaces-cli.js +199 -0
- package/out/cli/merge-workspaces-cli.js.map +1 -0
- package/out/cli/tool-cli.js +59 -4
- package/out/cli/tool-cli.js.map +1 -1
- package/out/core/chromadb-vector-database.d.ts.map +1 -1
- package/out/core/chromadb-vector-database.js +6 -2
- package/out/core/chromadb-vector-database.js.map +1 -1
- package/out/core/migration-manager.d.ts +31 -0
- package/out/core/migration-manager.d.ts.map +1 -1
- package/out/core/migration-manager.js +126 -7
- package/out/core/migration-manager.js.map +1 -1
- package/out/core/multi-db-manager.d.ts +10 -0
- package/out/core/multi-db-manager.d.ts.map +1 -1
- package/out/core/multi-db-manager.js +51 -0
- package/out/core/multi-db-manager.js.map +1 -1
- package/out/ingestors/adr-ingestor.d.ts +7 -0
- package/out/ingestors/adr-ingestor.d.ts.map +1 -1
- package/out/ingestors/adr-ingestor.js +41 -9
- package/out/ingestors/adr-ingestor.js.map +1 -1
- package/out/mcp/server.d.ts +3 -0
- package/out/mcp/server.d.ts.map +1 -1
- package/out/mcp/server.js +106 -2
- package/out/mcp/server.js.map +1 -1
- package/out/mcp/tools/adr-generator.d.ts +123 -0
- package/out/mcp/tools/adr-generator.d.ts.map +1 -0
- package/out/mcp/tools/adr-generator.js +1113 -0
- package/out/mcp/tools/adr-generator.js.map +1 -0
- package/out/mcp/tools/gap-analysis.d.ts +6 -2
- package/out/mcp/tools/gap-analysis.d.ts.map +1 -1
- package/out/mcp/tools/gap-analysis.js +32 -5
- package/out/mcp/tools/gap-analysis.js.map +1 -1
- package/out/repositories/module-repository.d.ts +5 -0
- package/out/repositories/module-repository.d.ts.map +1 -1
- package/out/repositories/module-repository.js +24 -0
- package/out/repositories/module-repository.js.map +1 -1
- package/out/services/adr-context-builder.d.ts +70 -0
- package/out/services/adr-context-builder.d.ts.map +1 -0
- package/out/services/adr-context-builder.js +141 -0
- package/out/services/adr-context-builder.js.map +1 -0
- package/out/services/adr-pattern-analyzer.d.ts +75 -0
- package/out/services/adr-pattern-analyzer.d.ts.map +1 -0
- package/out/services/adr-pattern-analyzer.js +339 -0
- package/out/services/adr-pattern-analyzer.js.map +1 -0
- package/out/services/adr-reasoning-service.d.ts +63 -0
- package/out/services/adr-reasoning-service.d.ts.map +1 -0
- package/out/services/adr-reasoning-service.js +760 -0
- package/out/services/adr-reasoning-service.js.map +1 -0
- package/out/services/navigation-builder.d.ts.map +1 -1
- package/out/services/navigation-builder.js +70 -11
- package/out/services/navigation-builder.js.map +1 -1
- package/out/services/noyrax-integration-service.d.ts +51 -0
- package/out/services/noyrax-integration-service.d.ts.map +1 -0
- package/out/services/noyrax-integration-service.js +215 -0
- package/out/services/noyrax-integration-service.js.map +1 -0
- package/out/services/semantic-pattern-matcher.d.ts +61 -0
- package/out/services/semantic-pattern-matcher.d.ts.map +1 -0
- package/out/services/semantic-pattern-matcher.js +183 -0
- package/out/services/semantic-pattern-matcher.js.map +1 -0
- package/out/services/workflow-orchestrator.d.ts +63 -0
- package/out/services/workflow-orchestrator.d.ts.map +1 -0
- package/out/services/workflow-orchestrator.js +111 -0
- package/out/services/workflow-orchestrator.js.map +1 -0
- package/out/ui/commands.d.ts.map +1 -1
- package/out/ui/commands.js +112 -1
- package/out/ui/commands.js.map +1 -1
- package/out/ui/database-explorer.d.ts.map +1 -1
- package/out/ui/database-explorer.js +47 -1
- package/out/ui/database-explorer.js.map +1 -1
- package/package.json +22 -4
package/out/cli/tool-cli.js
CHANGED
|
@@ -46,6 +46,7 @@ const learning_path_1 = require("../mcp/tools/learning-path");
|
|
|
46
46
|
const cross_analysis_1 = require("../mcp/tools/cross-analysis");
|
|
47
47
|
const gap_analysis_1 = require("../mcp/tools/gap-analysis");
|
|
48
48
|
const architecture_mining_1 = require("../mcp/tools/architecture-mining");
|
|
49
|
+
const adr_generator_1 = require("../mcp/tools/adr-generator");
|
|
49
50
|
const docs_path_resolver_1 = require("../core/docs-path-resolver");
|
|
50
51
|
/**
|
|
51
52
|
* Loads .env file from workspace root or parent directories.
|
|
@@ -106,8 +107,9 @@ async function main() {
|
|
|
106
107
|
console.error(' system_explanation - Get system overview');
|
|
107
108
|
console.error(' learning_path <topic> - Generate learning path');
|
|
108
109
|
console.error(' cross_analysis <filePath> - Cross-dimension analysis');
|
|
109
|
-
console.error(' gap_analysis [--min-deps N] [--limit N] - Find documentation gaps');
|
|
110
|
+
console.error(' gap_analysis [--min-deps N] [--limit N] [--auto-generate] - Find documentation gaps (--auto-generate: automatically generate ADRs)');
|
|
110
111
|
console.error(' architecture_mining [filePath] - Mine architectural decisions from code');
|
|
112
|
+
console.error(' adr_generator [--min-deps N] [--limit N] [--dry-run] [--use-llm] [--llm-model MODEL] - Reconstruct ADRs from 5D dimensions (--use-llm: use LLM for "Why" reconstruction)');
|
|
111
113
|
process.exit(1);
|
|
112
114
|
}
|
|
113
115
|
// Check if first arg is a tool name (no path separators) or a workspace root
|
|
@@ -193,6 +195,7 @@ async function main() {
|
|
|
193
195
|
case 'gap_analysis': {
|
|
194
196
|
let minDeps = 5;
|
|
195
197
|
let limit = 50;
|
|
198
|
+
let autoGenerate = false;
|
|
196
199
|
// Parse optional arguments
|
|
197
200
|
for (let i = 0; i < toolArgs.length; i++) {
|
|
198
201
|
if (toolArgs[i] === '--min-deps' && toolArgs[i + 1]) {
|
|
@@ -211,12 +214,16 @@ async function main() {
|
|
|
211
214
|
}
|
|
212
215
|
i++;
|
|
213
216
|
}
|
|
217
|
+
else if (toolArgs[i] === '--auto-generate') {
|
|
218
|
+
autoGenerate = true;
|
|
219
|
+
}
|
|
214
220
|
}
|
|
215
|
-
const gapAnalysisTool = new gap_analysis_1.GapAnalysisTool(dbManager, idMapper);
|
|
221
|
+
const gapAnalysisTool = new gap_analysis_1.GapAnalysisTool(dbManager, idMapper, workspaceRoot);
|
|
216
222
|
const result = await gapAnalysisTool.execute({
|
|
217
223
|
minDependencies: minDeps,
|
|
218
224
|
pluginId,
|
|
219
|
-
limit
|
|
225
|
+
limit,
|
|
226
|
+
autoGenerateAdrs: autoGenerate
|
|
220
227
|
});
|
|
221
228
|
console.log(result);
|
|
222
229
|
break;
|
|
@@ -231,9 +238,57 @@ async function main() {
|
|
|
231
238
|
console.log(result);
|
|
232
239
|
break;
|
|
233
240
|
}
|
|
241
|
+
case 'adr_generator': {
|
|
242
|
+
let minDeps = 5;
|
|
243
|
+
let limit = 10;
|
|
244
|
+
let dryRun = false;
|
|
245
|
+
let useLLM = false;
|
|
246
|
+
let llmModel = undefined;
|
|
247
|
+
// Parse optional arguments
|
|
248
|
+
for (let i = 0; i < toolArgs.length; i++) {
|
|
249
|
+
if (toolArgs[i] === '--min-deps' && toolArgs[i + 1]) {
|
|
250
|
+
minDeps = parseInt(toolArgs[i + 1], 10);
|
|
251
|
+
if (isNaN(minDeps)) {
|
|
252
|
+
console.error('Error: --min-deps must be a number');
|
|
253
|
+
process.exit(1);
|
|
254
|
+
}
|
|
255
|
+
i++;
|
|
256
|
+
}
|
|
257
|
+
else if (toolArgs[i] === '--limit' && toolArgs[i + 1]) {
|
|
258
|
+
limit = parseInt(toolArgs[i + 1], 10);
|
|
259
|
+
if (isNaN(limit)) {
|
|
260
|
+
console.error('Error: --limit must be a number');
|
|
261
|
+
process.exit(1);
|
|
262
|
+
}
|
|
263
|
+
i++;
|
|
264
|
+
}
|
|
265
|
+
else if (toolArgs[i] === '--dry-run') {
|
|
266
|
+
dryRun = true;
|
|
267
|
+
}
|
|
268
|
+
else if (toolArgs[i] === '--use-llm') {
|
|
269
|
+
useLLM = true;
|
|
270
|
+
}
|
|
271
|
+
else if (toolArgs[i] === '--llm-model' && toolArgs[i + 1]) {
|
|
272
|
+
llmModel = toolArgs[i + 1];
|
|
273
|
+
useLLM = true; // Implicitly enable LLM if model is specified
|
|
274
|
+
i++;
|
|
275
|
+
}
|
|
276
|
+
}
|
|
277
|
+
const adrGeneratorTool = new adr_generator_1.AdrGeneratorTool(dbManager, idMapper, workspaceRoot);
|
|
278
|
+
const result = await adrGeneratorTool.execute({
|
|
279
|
+
pluginId,
|
|
280
|
+
minDependencies: minDeps,
|
|
281
|
+
limit,
|
|
282
|
+
dryRun,
|
|
283
|
+
useLLM,
|
|
284
|
+
llmModel
|
|
285
|
+
});
|
|
286
|
+
console.log(result);
|
|
287
|
+
break;
|
|
288
|
+
}
|
|
234
289
|
default:
|
|
235
290
|
console.error(`Unknown tool: ${toolName}`);
|
|
236
|
-
console.error('Use "bootstrap", "semantic_discovery", "system_explanation", "learning_path", "cross_analysis", "gap_analysis", or "
|
|
291
|
+
console.error('Use "bootstrap", "semantic_discovery", "system_explanation", "learning_path", "cross_analysis", "gap_analysis", "architecture_mining", or "adr_generator"');
|
|
237
292
|
process.exit(1);
|
|
238
293
|
}
|
|
239
294
|
}
|
package/out/cli/tool-cli.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"tool-cli.js","sourceRoot":"","sources":["../../src/cli/tool-cli.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAEA,2CAA6B;AAC7B,uCAAyB;AACzB,mCAAgC;AAChC,+DAA0D;AAC1D,iDAA6C;AAC7C,sDAA0D;AAC1D,wEAA2E;AAC3E,wEAA2E;AAC3E,8DAAiE;AACjE,gEAAgE;AAChE,4DAA4D;AAC5D,0EAA0E;AAC1E,mEAA8D;AAE9D;;GAEG;AACH,SAAS,WAAW,CAAC,aAAqB;IACtC,IAAI,WAAW,GAAG,aAAa,CAAC;IAChC,MAAM,QAAQ,GAAG,CAAC,CAAC;IAEnB,KAAK,IAAI,KAAK,GAAG,CAAC,EAAE,KAAK,GAAG,QAAQ,EAAE,KAAK,EAAE,EAAE,CAAC;QAC5C,MAAM,OAAO,GAAG,IAAI,CAAC,IAAI,CAAC,WAAW,EAAE,MAAM,CAAC,CAAC;QAC/C,IAAI,EAAE,CAAC,UAAU,CAAC,OAAO,CAAC,EAAE,CAAC;YACzB,IAAA,eAAM,EAAC,EAAE,IAAI,EAAE,OAAO,EAAE,CAAC,CAAC;YAC1B,OAAO;QACX,CAAC;QAED,MAAM,UAAU,GAAG,IAAI,CAAC,OAAO,CAAC,WAAW,CAAC,CAAC;QAC7C,IAAI,UAAU,KAAK,WAAW,EAAE,CAAC;YAC7B,MAAM;QACV,CAAC;QACD,WAAW,GAAG,UAAU,CAAC;IAC7B,CAAC;AACL,CAAC;AAED;;GAEG;AACH,SAAS,qBAAqB,CAAC,aAAqB;IAChD,MAAM,QAAQ,GAAG,qCAAgB,CAAC,yBAAyB,CAAC,aAAa,CAAC,CAAC;IAC3E,IAAI,CAAC,QAAQ,EAAE,CAAC;QACZ,OAAO,CAAC,KAAK,CAAC,sEAAsE,CAAC,CAAC;QACtF,OAAO,CAAC,KAAK,CAAC,oFAAoF,CAAC,CAAC;QACpG,OAAO,KAAK,CAAC;IACjB,CAAC;IACD,OAAO,IAAI,CAAC;AAChB,CAAC;AAED;;;;;;;;;;GAUG;AACH,KAAK,UAAU,IAAI;IACf,MAAM,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;IAEnC,6CAA6C;IAC7C,IAAI,aAAqB,CAAC;IAC1B,IAAI,QAAgB,CAAC;IACrB,IAAI,QAAkB,CAAC;IAEvB,IAAI,IAAI,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QACpB,OAAO,CAAC,KAAK,CAAC,0DAA0D,CAAC,CAAC;QAC1E,OAAO,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;QAClB,OAAO,CAAC,KAAK,CAAC,oEAAoE,CAAC,CAAC;QACpF,OAAO,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;QAClB,OAAO,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC;QACxB,OAAO,CAAC,KAAK,CAAC,kEAAkE,CAAC,CAAC;QAClF,OAAO,CAAC,KAAK,CAAC,qEAAqE,CAAC,CAAC;QACrF,OAAO,CAAC,KAAK,CAAC,4DAA4D,CAAC,CAAC;QAC5E,OAAO,CAAC,KAAK,CAAC,+DAA+D,CAAC,CAAC;QAC/E,OAAO,CAAC,KAAK,CAAC,iEAAiE,CAAC,CAAC;QACjF,OAAO,CAAC,KAAK,CAAC,
|
|
1
|
+
{"version":3,"file":"tool-cli.js","sourceRoot":"","sources":["../../src/cli/tool-cli.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"chromadb-vector-database.d.ts","sourceRoot":"","sources":["../../src/core/chromadb-vector-database.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,OAAO,MAAM,SAAS,CAAC;AAGnC,OAAO,EAAE,cAAc,EAAE,MAAM,6BAA6B,CAAC;
|
|
1
|
+
{"version":3,"file":"chromadb-vector-database.d.ts","sourceRoot":"","sources":["../../src/core/chromadb-vector-database.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,OAAO,MAAM,SAAS,CAAC;AAGnC,OAAO,EAAE,cAAc,EAAE,MAAM,6BAA6B,CAAC;AAG7D;;;;;;GAMG;AACH,qBAAa,sBAAuB,YAAW,cAAc;IACzD,OAAO,CAAC,EAAE,CAAmB;IAC7B,OAAO,CAAC,aAAa,CAAS;IAC9B,OAAO,CAAC,YAAY,CAAoB;IACxC,OAAO,CAAC,UAAU,CAAoB;IACtC,OAAO,CAAC,SAAS,CAAkB;IACnC,OAAO,CAAC,QAAQ,CAAC,mBAAmB,CAAgB;IACpD,OAAO,CAAC,QAAQ,CAAC,cAAc,CAAwB;gBAE3C,EAAE,EAAE,OAAO,CAAC,QAAQ,EAAE,aAAa,EAAE,MAAM;IAKvD;;OAEG;IACH,WAAW,IAAI,OAAO;IAItB;;OAEG;IACG,UAAU,IAAI,OAAO,CAAC,IAAI,CAAC;IA+DjC;;OAEG;IACG,eAAe,CAAC,WAAW,EAAE,MAAM,EAAE,eAAe,EAAE,YAAY,GAAG,MAAM,EAAE,GAAG,OAAO,CAAC,IAAI,CAAC;IAwCnG;;OAEG;IACG,MAAM,CACR,cAAc,EAAE,YAAY,GAAG,MAAM,EAAE,EACvC,KAAK,EAAE,MAAM,EACb,SAAS,CAAC,EAAE,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,EACvC,QAAQ,CAAC,EAAE,MAAM,GAClB,OAAO,CAAC,KAAK,CAAC;QAAE,KAAK,EAAE,MAAM,CAAC;QAAC,QAAQ,EAAE,MAAM,CAAC;QAAC,UAAU,CAAC,EAAE,MAAM,CAAA;KAAE,CAAC,CAAC;IAuE3E;;OAEG;IACG,uBAAuB,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC;IAgBpE;;OAEG;YACW,uBAAuB;IAgBrC;;OAEG;YACW,gBAAgB;CAejC"}
|
|
@@ -35,6 +35,7 @@ var __importStar = (this && this.__importStar) || (function () {
|
|
|
35
35
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
36
36
|
exports.ChromaDbVectorDatabase = void 0;
|
|
37
37
|
const path = __importStar(require("path"));
|
|
38
|
+
const default_embed_1 = require("@chroma-core/default-embed");
|
|
38
39
|
/**
|
|
39
40
|
* ChromaDB-based vector database implementation for Windows.
|
|
40
41
|
* Uses ChromaDB as an external vector database via HTTP API.
|
|
@@ -98,14 +99,17 @@ class ChromaDbVectorDatabase {
|
|
|
98
99
|
this.available = false;
|
|
99
100
|
return;
|
|
100
101
|
}
|
|
101
|
-
// Get or create collection
|
|
102
|
+
// Get or create collection with DefaultEmbeddingFunction
|
|
103
|
+
// Note: We still provide embeddings directly via upsertEmbedding, but ChromaDB requires
|
|
104
|
+
// an embedding function for collection initialization. The DefaultEmbeddingFunction is used
|
|
105
|
+
// for collection structure, but we override it by providing embeddings directly.
|
|
102
106
|
try {
|
|
103
107
|
this.collection = await this.chromaClient.getOrCreateCollection({
|
|
104
108
|
name: this.collectionName,
|
|
109
|
+
embeddingFunction: new default_embed_1.DefaultEmbeddingFunction(),
|
|
105
110
|
metadata: {
|
|
106
111
|
description: 'Embeddings for 5D Database Plugin V-Dimension'
|
|
107
112
|
}
|
|
108
|
-
// Note: We don't specify an embedding function since we provide embeddings directly
|
|
109
113
|
});
|
|
110
114
|
this.available = true;
|
|
111
115
|
console.log('[ChromaDbVectorDatabase] ChromaDB initialized successfully.');
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"chromadb-vector-database.js","sourceRoot":"","sources":["../../src/core/chromadb-vector-database.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AACA,2CAA6B;
|
|
1
|
+
{"version":3,"file":"chromadb-vector-database.js","sourceRoot":"","sources":["../../src/core/chromadb-vector-database.ts"],"names":[],"mappings":"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"}
|
|
@@ -27,6 +27,22 @@ export declare class MigrationManager {
|
|
|
27
27
|
* @returns Promise that resolves to an array of migration records
|
|
28
28
|
*/
|
|
29
29
|
private getAppliedMigrations;
|
|
30
|
+
/**
|
|
31
|
+
* Checks if a migration version already exists in the database.
|
|
32
|
+
*
|
|
33
|
+
* @param db The SQLite database instance
|
|
34
|
+
* @param version The migration version number
|
|
35
|
+
* @returns Promise that resolves to true if the migration exists, false otherwise
|
|
36
|
+
*/
|
|
37
|
+
/**
|
|
38
|
+
* Checks if a specific migration (version + name) already exists in the database.
|
|
39
|
+
*
|
|
40
|
+
* @param db The SQLite database instance
|
|
41
|
+
* @param version The migration version number
|
|
42
|
+
* @param name The migration name
|
|
43
|
+
* @returns Promise that resolves to true if the migration exists, false otherwise
|
|
44
|
+
*/
|
|
45
|
+
private checkMigrationExists;
|
|
30
46
|
/**
|
|
31
47
|
* Reads a migration file from disk.
|
|
32
48
|
*
|
|
@@ -58,6 +74,21 @@ export declare class MigrationManager {
|
|
|
58
74
|
* @returns The prefix (e.g., "001" for X, "002" for Y, etc.)
|
|
59
75
|
*/
|
|
60
76
|
private getDimensionPrefix;
|
|
77
|
+
/**
|
|
78
|
+
* Gets the required tables for a dimension.
|
|
79
|
+
*
|
|
80
|
+
* @param dimension The dimension
|
|
81
|
+
* @returns Array of required table names
|
|
82
|
+
*/
|
|
83
|
+
private getRequiredTables;
|
|
84
|
+
/**
|
|
85
|
+
* Checks if all required tables exist in the database.
|
|
86
|
+
*
|
|
87
|
+
* @param db The SQLite database instance
|
|
88
|
+
* @param dimension The dimension to check
|
|
89
|
+
* @returns Promise that resolves to true if all tables exist, false otherwise
|
|
90
|
+
*/
|
|
91
|
+
private checkTablesExist;
|
|
61
92
|
/**
|
|
62
93
|
* Runs all pending migrations for a dimension.
|
|
63
94
|
*
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"migration-manager.d.ts","sourceRoot":"","sources":["../../src/core/migration-manager.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,cAAc,EAAE,SAAS,EAAE,MAAM,oBAAoB,CAAC;AAW/D;;;GAGG;AACH,qBAAa,gBAAgB;IACzB,OAAO,CAAC,SAAS,CAAiB;IAClC,OAAO,CAAC,mBAAmB,CAAS;IAEpC;;;;;OAKG;gBACS,SAAS,EAAE,cAAc,EAAE,UAAU,EAAE,MAAM;IAKzD;;;;;OAKG;YACW,qBAAqB;
|
|
1
|
+
{"version":3,"file":"migration-manager.d.ts","sourceRoot":"","sources":["../../src/core/migration-manager.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,cAAc,EAAE,SAAS,EAAE,MAAM,oBAAoB,CAAC;AAW/D;;;GAGG;AACH,qBAAa,gBAAgB;IACzB,OAAO,CAAC,SAAS,CAAiB;IAClC,OAAO,CAAC,mBAAmB,CAAS;IAEpC;;;;;OAKG;gBACS,SAAS,EAAE,cAAc,EAAE,UAAU,EAAE,MAAM;IAKzD;;;;;OAKG;YACW,qBAAqB;IAmBnC;;;;;OAKG;YACW,oBAAoB;IAclC;;;;;;OAMG;IACH;;;;;;;OAOG;YACW,oBAAoB;IAclC;;;;;OAKG;IACH,OAAO,CAAC,iBAAiB;IAQzB;;;;;;;;OAQG;YACW,cAAc;IAsB5B;;;;;OAKG;IACH,OAAO,CAAC,6BAA6B;IAgBrC;;;;;OAKG;IACH,OAAO,CAAC,kBAAkB;IAY1B;;;;;OAKG;IACH,OAAO,CAAC,iBAAiB;IAYzB;;;;;;OAMG;YACW,gBAAgB;IAuB9B;;;;;OAKG;IACU,OAAO,CAAC,SAAS,EAAE,SAAS,GAAG,OAAO,CAAC,IAAI,CAAC;IA2EzD;;;;OAIG;IACU,UAAU,IAAI,OAAO,CAAC,IAAI,CAAC;CAM3C"}
|
|
@@ -61,9 +61,10 @@ class MigrationManager {
|
|
|
61
61
|
return new Promise((resolve, reject) => {
|
|
62
62
|
db.run(`
|
|
63
63
|
CREATE TABLE IF NOT EXISTS migrations (
|
|
64
|
-
version INTEGER
|
|
64
|
+
version INTEGER NOT NULL,
|
|
65
65
|
name TEXT NOT NULL,
|
|
66
|
-
applied_at DATETIME DEFAULT CURRENT_TIMESTAMP
|
|
66
|
+
applied_at DATETIME DEFAULT CURRENT_TIMESTAMP,
|
|
67
|
+
PRIMARY KEY (version, name)
|
|
67
68
|
)
|
|
68
69
|
`, (err) => {
|
|
69
70
|
if (err) {
|
|
@@ -94,6 +95,34 @@ class MigrationManager {
|
|
|
94
95
|
});
|
|
95
96
|
});
|
|
96
97
|
}
|
|
98
|
+
/**
|
|
99
|
+
* Checks if a migration version already exists in the database.
|
|
100
|
+
*
|
|
101
|
+
* @param db The SQLite database instance
|
|
102
|
+
* @param version The migration version number
|
|
103
|
+
* @returns Promise that resolves to true if the migration exists, false otherwise
|
|
104
|
+
*/
|
|
105
|
+
/**
|
|
106
|
+
* Checks if a specific migration (version + name) already exists in the database.
|
|
107
|
+
*
|
|
108
|
+
* @param db The SQLite database instance
|
|
109
|
+
* @param version The migration version number
|
|
110
|
+
* @param name The migration name
|
|
111
|
+
* @returns Promise that resolves to true if the migration exists, false otherwise
|
|
112
|
+
*/
|
|
113
|
+
async checkMigrationExists(db, version, name) {
|
|
114
|
+
await this.ensureMigrationsTable(db);
|
|
115
|
+
return new Promise((resolve, reject) => {
|
|
116
|
+
db.get('SELECT COUNT(*) as count FROM migrations WHERE version = ? AND name = ?', [version, name], (err, row) => {
|
|
117
|
+
if (err) {
|
|
118
|
+
reject(err);
|
|
119
|
+
}
|
|
120
|
+
else {
|
|
121
|
+
resolve(row && row.count > 0);
|
|
122
|
+
}
|
|
123
|
+
});
|
|
124
|
+
});
|
|
125
|
+
}
|
|
97
126
|
/**
|
|
98
127
|
* Reads a migration file from disk.
|
|
99
128
|
*
|
|
@@ -171,6 +200,47 @@ class MigrationManager {
|
|
|
171
200
|
};
|
|
172
201
|
return prefixes[dimension];
|
|
173
202
|
}
|
|
203
|
+
/**
|
|
204
|
+
* Gets the required tables for a dimension.
|
|
205
|
+
*
|
|
206
|
+
* @param dimension The dimension
|
|
207
|
+
* @returns Array of required table names
|
|
208
|
+
*/
|
|
209
|
+
getRequiredTables(dimension) {
|
|
210
|
+
const tables = {
|
|
211
|
+
X: ['modules', 'module_symbols', 'module_id_mapping'],
|
|
212
|
+
Y: ['symbols', 'symbol_dependencies', 'symbol_id_mapping'],
|
|
213
|
+
Z: ['dependencies', 'dependency_graph_cache', 'dependency_symbol_evidence', 'dependency_id_mapping'],
|
|
214
|
+
W: ['adrs', 'adr_file_mappings', 'adr_id_mapping'],
|
|
215
|
+
T: ['change_reports', 'symbol_changes', 'dependency_changes', 'change_id_mapping'],
|
|
216
|
+
V: ['embeddings', 'importance_scores', 'navigation_metadata', 'entry_points']
|
|
217
|
+
};
|
|
218
|
+
return tables[dimension] || [];
|
|
219
|
+
}
|
|
220
|
+
/**
|
|
221
|
+
* Checks if all required tables exist in the database.
|
|
222
|
+
*
|
|
223
|
+
* @param db The SQLite database instance
|
|
224
|
+
* @param dimension The dimension to check
|
|
225
|
+
* @returns Promise that resolves to true if all tables exist, false otherwise
|
|
226
|
+
*/
|
|
227
|
+
async checkTablesExist(db, dimension) {
|
|
228
|
+
const requiredTables = this.getRequiredTables(dimension);
|
|
229
|
+
if (requiredTables.length === 0) {
|
|
230
|
+
return true; // No required tables for this dimension
|
|
231
|
+
}
|
|
232
|
+
return new Promise((resolve, reject) => {
|
|
233
|
+
db.all("SELECT name FROM sqlite_master WHERE type='table' AND name NOT LIKE 'sqlite_%'", (err, rows) => {
|
|
234
|
+
if (err) {
|
|
235
|
+
reject(err);
|
|
236
|
+
return;
|
|
237
|
+
}
|
|
238
|
+
const existingTables = new Set(rows.map(row => row.name));
|
|
239
|
+
const allExist = requiredTables.every(table => existingTables.has(table));
|
|
240
|
+
resolve(allExist);
|
|
241
|
+
});
|
|
242
|
+
});
|
|
243
|
+
}
|
|
174
244
|
/**
|
|
175
245
|
* Runs all pending migrations for a dimension.
|
|
176
246
|
*
|
|
@@ -181,6 +251,15 @@ class MigrationManager {
|
|
|
181
251
|
const db = await this.dbManager.getDatabase(dimension);
|
|
182
252
|
const appliedMigrations = await this.getAppliedMigrations(db);
|
|
183
253
|
const appliedVersions = new Set(appliedMigrations.map(m => m.version));
|
|
254
|
+
// Check if tables exist - if migration version is applied but tables are missing,
|
|
255
|
+
// we need to re-run the migration
|
|
256
|
+
const tablesExist = await this.checkTablesExist(db, dimension);
|
|
257
|
+
if (!tablesExist && appliedVersions.size > 0) {
|
|
258
|
+
console.warn(`[MigrationManager] Tables missing for dimension ${dimension} despite applied migrations. Re-running migrations...`);
|
|
259
|
+
// Clear applied migrations to force re-application
|
|
260
|
+
// Note: We don't delete the migrations table, just re-apply all migrations
|
|
261
|
+
// This is safe because migrations use CREATE TABLE IF NOT EXISTS
|
|
262
|
+
}
|
|
184
263
|
const migrationFiles = this.getMigrationFilesForDimension(dimension);
|
|
185
264
|
for (const migrationFile of migrationFiles) {
|
|
186
265
|
const versionMatch = migrationFile.match(/^(\d+)_/);
|
|
@@ -188,12 +267,52 @@ class MigrationManager {
|
|
|
188
267
|
continue;
|
|
189
268
|
}
|
|
190
269
|
const version = parseInt(versionMatch[1], 10);
|
|
191
|
-
if (appliedVersions.has(version)) {
|
|
192
|
-
continue;
|
|
193
|
-
}
|
|
194
270
|
const name = migrationFile.replace(/^\d+_/, '').replace(/\.sql$/, '');
|
|
195
271
|
const sql = this.readMigrationFile(migrationFile);
|
|
196
|
-
|
|
272
|
+
// Check if this specific migration (version + name) already exists in database
|
|
273
|
+
const migrationExists = await this.checkMigrationExists(db, version, name);
|
|
274
|
+
// If tables don't exist, re-apply migration even if version is marked as applied
|
|
275
|
+
if (appliedVersions.has(version) && tablesExist) {
|
|
276
|
+
// Check if this specific migration was applied
|
|
277
|
+
const specificMigrationApplied = appliedMigrations.some(m => m.version === version && m.name === name);
|
|
278
|
+
if (specificMigrationApplied) {
|
|
279
|
+
continue;
|
|
280
|
+
}
|
|
281
|
+
}
|
|
282
|
+
// If this specific migration is already applied but tables are missing, we still need to apply the migration
|
|
283
|
+
// But we should not insert duplicate migration records
|
|
284
|
+
if (migrationExists && !tablesExist) {
|
|
285
|
+
// Re-apply migration without inserting migration record (it already exists)
|
|
286
|
+
console.log(`[MigrationManager] Re-applying migration ${version}_${name} for dimension ${dimension} (tables missing)`);
|
|
287
|
+
await new Promise((resolve, reject) => {
|
|
288
|
+
db.exec(sql, (err) => {
|
|
289
|
+
if (err) {
|
|
290
|
+
reject(new Error(`Failed to re-apply migration ${version}_${name}: ${err.message}`));
|
|
291
|
+
}
|
|
292
|
+
else {
|
|
293
|
+
resolve();
|
|
294
|
+
}
|
|
295
|
+
});
|
|
296
|
+
});
|
|
297
|
+
}
|
|
298
|
+
else if (migrationExists && tablesExist) {
|
|
299
|
+
// This specific migration exists and tables exist - skip
|
|
300
|
+
continue;
|
|
301
|
+
}
|
|
302
|
+
else {
|
|
303
|
+
// Normal migration application (this specific migration doesn't exist in DB)
|
|
304
|
+
await this.applyMigration(db, version, name, sql);
|
|
305
|
+
}
|
|
306
|
+
}
|
|
307
|
+
// Verify tables exist after migration
|
|
308
|
+
const finalTablesExist = await this.checkTablesExist(db, dimension);
|
|
309
|
+
if (!finalTablesExist) {
|
|
310
|
+
const missingTables = this.getRequiredTables(dimension).filter(table => {
|
|
311
|
+
// We can't easily check which specific tables are missing without another query
|
|
312
|
+
// So we just log a warning
|
|
313
|
+
return true;
|
|
314
|
+
});
|
|
315
|
+
console.warn(`[MigrationManager] Warning: Some required tables may still be missing for dimension ${dimension} after migration`);
|
|
197
316
|
}
|
|
198
317
|
}
|
|
199
318
|
/**
|
|
@@ -202,7 +321,7 @@ class MigrationManager {
|
|
|
202
321
|
* @returns Promise that resolves when all migrations are applied
|
|
203
322
|
*/
|
|
204
323
|
async migrateAll() {
|
|
205
|
-
const dimensions = ['X', 'Y', 'Z', 'W', 'T'];
|
|
324
|
+
const dimensions = ['X', 'Y', 'Z', 'W', 'T', 'V'];
|
|
206
325
|
for (const dimension of dimensions) {
|
|
207
326
|
await this.migrate(dimension);
|
|
208
327
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"migration-manager.js","sourceRoot":"","sources":["../../src/core/migration-manager.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AACA,2CAA6B;AAC7B,uCAAyB;AAYzB;;;GAGG;AACH,MAAa,gBAAgB;IAIzB;;;;;OAKG;IACH,YAAY,SAAyB,EAAE,UAAkB;QACrD,IAAI,CAAC,SAAS,GAAG,SAAS,CAAC;QAC3B,IAAI,CAAC,mBAAmB,GAAG,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE,SAAS,EAAE,QAAQ,CAAC,CAAC;IAC1E,CAAC;IAED;;;;;OAKG;IACK,KAAK,CAAC,qBAAqB,CAAC,EAAoB;QACpD,OAAO,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE;YACnC,EAAE,CAAC,GAAG,CAAC
|
|
1
|
+
{"version":3,"file":"migration-manager.js","sourceRoot":"","sources":["../../src/core/migration-manager.ts"],"names":[],"mappings":"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"}
|
|
@@ -32,6 +32,12 @@ export declare class MultiDbManager {
|
|
|
32
32
|
* Ensures the database directory exists.
|
|
33
33
|
*/
|
|
34
34
|
private ensureDbDirectory;
|
|
35
|
+
/**
|
|
36
|
+
* Checks if existing databases have a different plugin ID (e.g., after workspace move).
|
|
37
|
+
* This is informational only and does not block operation.
|
|
38
|
+
* Note: This is a best-effort check and may not catch all cases.
|
|
39
|
+
*/
|
|
40
|
+
private checkPluginIdConsistency;
|
|
35
41
|
/**
|
|
36
42
|
* Gets the plugin ID for this workspace.
|
|
37
43
|
*/
|
|
@@ -40,6 +46,10 @@ export declare class MultiDbManager {
|
|
|
40
46
|
* Gets the database directory path.
|
|
41
47
|
*/
|
|
42
48
|
getDbDirectory(): string;
|
|
49
|
+
/**
|
|
50
|
+
* Gets the workspace root directory.
|
|
51
|
+
*/
|
|
52
|
+
getWorkspaceRoot(): string;
|
|
43
53
|
/**
|
|
44
54
|
* Opens a database connection for the specified dimension.
|
|
45
55
|
* If the database is already open, returns the existing connection.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"multi-db-manager.d.ts","sourceRoot":"","sources":["../../src/core/multi-db-manager.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,OAAO,MAAM,SAAS,CAAC;AAKnC,OAAO,EAAE,cAAc,EAAE,MAAM,6BAA6B,CAAC;AAG7D;;GAEG;AACH,MAAM,MAAM,SAAS,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,CAAC;AAc1D;;;GAGG;AACH,qBAAa,cAAc;IACvB,OAAO,CAAC,SAAS,CAA+C;IAChE,OAAO,CAAC,WAAW,CAAS;IAC5B,OAAO,CAAC,aAAa,CAAS;IAC9B,OAAO,CAAC,QAAQ,CAAS;IACzB,OAAO,CAAC,SAAS,CAAY;IAC7B,OAAO,CAAC,cAAc,CAA+B;IAErD;;;OAGG;gBACS,aAAa,EAAE,MAAM;
|
|
1
|
+
{"version":3,"file":"multi-db-manager.d.ts","sourceRoot":"","sources":["../../src/core/multi-db-manager.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,OAAO,MAAM,SAAS,CAAC;AAKnC,OAAO,EAAE,cAAc,EAAE,MAAM,6BAA6B,CAAC;AAG7D;;GAEG;AACH,MAAM,MAAM,SAAS,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,CAAC;AAc1D;;;GAGG;AACH,qBAAa,cAAc;IACvB,OAAO,CAAC,SAAS,CAA+C;IAChE,OAAO,CAAC,WAAW,CAAS;IAC5B,OAAO,CAAC,aAAa,CAAS;IAC9B,OAAO,CAAC,QAAQ,CAAS;IACzB,OAAO,CAAC,SAAS,CAAY;IAC7B,OAAO,CAAC,cAAc,CAA+B;IAErD;;;OAGG;gBACS,aAAa,EAAE,MAAM;IASjC;;;;;;OAMG;IACH,OAAO,CAAC,eAAe;IAMvB;;OAEG;IACH,OAAO,CAAC,iBAAiB;IAMzB;;;;OAIG;IACH,OAAO,CAAC,wBAAwB;IA4ChC;;OAEG;IACI,WAAW,IAAI,MAAM;IAI5B;;OAEG;IACI,cAAc,IAAI,MAAM;IAI/B;;OAEG;IACI,gBAAgB,IAAI,MAAM;IAIjC;;;;;;;OAOG;IACU,WAAW,CAAC,SAAS,EAAE,SAAS,GAAG,OAAO,CAAC,OAAO,CAAC,QAAQ,CAAC;IAsCzE;;;;;OAKG;IACU,aAAa,CAAC,SAAS,EAAE,SAAS,GAAG,OAAO,CAAC,IAAI,CAAC;IAgB/D;;;;OAIG;IACU,QAAQ,IAAI,OAAO,CAAC,IAAI,CAAC;IAQtC;;;;OAIG;IACI,gBAAgB,IAAI,GAAG,CAAC,SAAS,EAAE,OAAO,CAAC,QAAQ,CAAC;IAI3D;;;;;OAKG;IACI,iBAAiB,IAAI,cAAc,GAAG,IAAI;IAIjD;;;OAGG;IACI,aAAa,IAAI,GAAG,GAAG,IAAI;CAGrC"}
|
|
@@ -68,6 +68,7 @@ class MultiDbManager {
|
|
|
68
68
|
this.pluginId = this.computePluginId(workspaceRoot);
|
|
69
69
|
this.vssLoader = new vss_loader_1.VssLoader();
|
|
70
70
|
this.ensureDbDirectory();
|
|
71
|
+
this.checkPluginIdConsistency();
|
|
71
72
|
}
|
|
72
73
|
/**
|
|
73
74
|
* Computes a stable plugin_id from the workspace root path.
|
|
@@ -89,6 +90,50 @@ class MultiDbManager {
|
|
|
89
90
|
fs.mkdirSync(this.dbDirectory, { recursive: true });
|
|
90
91
|
}
|
|
91
92
|
}
|
|
93
|
+
/**
|
|
94
|
+
* Checks if existing databases have a different plugin ID (e.g., after workspace move).
|
|
95
|
+
* This is informational only and does not block operation.
|
|
96
|
+
* Note: This is a best-effort check and may not catch all cases.
|
|
97
|
+
*/
|
|
98
|
+
checkPluginIdConsistency() {
|
|
99
|
+
if (!fs.existsSync(this.dbDirectory)) {
|
|
100
|
+
return; // No databases exist yet
|
|
101
|
+
}
|
|
102
|
+
const dbFiles = [
|
|
103
|
+
{ file: 'modules.db', table: 'modules' },
|
|
104
|
+
{ file: 'symbols.db', table: 'symbols' },
|
|
105
|
+
{ file: 'dependencies.db', table: 'dependencies' },
|
|
106
|
+
{ file: 'adrs.db', table: 'adrs' },
|
|
107
|
+
{ file: 'changes.db', table: 'change_reports' }
|
|
108
|
+
];
|
|
109
|
+
// Check first available database file
|
|
110
|
+
for (const { file, table } of dbFiles) {
|
|
111
|
+
const dbPath = path.join(this.dbDirectory, file);
|
|
112
|
+
if (!fs.existsSync(dbPath)) {
|
|
113
|
+
continue;
|
|
114
|
+
}
|
|
115
|
+
try {
|
|
116
|
+
// Synchronous check - try to read first row if possible
|
|
117
|
+
// This is a best-effort check, so we use a simple approach
|
|
118
|
+
const db = new sqlite3.Database(dbPath, sqlite3.OPEN_READONLY);
|
|
119
|
+
db.get(`SELECT plugin_id FROM ${table} LIMIT 1`, (err, row) => {
|
|
120
|
+
if (!err && row && row.plugin_id && row.plugin_id !== this.pluginId) {
|
|
121
|
+
console.warn(`[MultiDbManager] WARNING: Found existing database (${file}) with different plugin ID (${row.plugin_id}).`);
|
|
122
|
+
console.warn(`[MultiDbManager] Current plugin ID: ${this.pluginId}`);
|
|
123
|
+
console.warn(`[MultiDbManager] This may indicate the workspace was moved or renamed.`);
|
|
124
|
+
console.warn(`[MultiDbManager] Old data will not be accessible. Consider running full ingestion.`);
|
|
125
|
+
}
|
|
126
|
+
db.close();
|
|
127
|
+
});
|
|
128
|
+
// Only check first available database to avoid too many warnings
|
|
129
|
+
break;
|
|
130
|
+
}
|
|
131
|
+
catch (error) {
|
|
132
|
+
// Ignore errors - database might be locked, corrupted, or table might not exist
|
|
133
|
+
continue;
|
|
134
|
+
}
|
|
135
|
+
}
|
|
136
|
+
}
|
|
92
137
|
/**
|
|
93
138
|
* Gets the plugin ID for this workspace.
|
|
94
139
|
*/
|
|
@@ -101,6 +146,12 @@ class MultiDbManager {
|
|
|
101
146
|
getDbDirectory() {
|
|
102
147
|
return this.dbDirectory;
|
|
103
148
|
}
|
|
149
|
+
/**
|
|
150
|
+
* Gets the workspace root directory.
|
|
151
|
+
*/
|
|
152
|
+
getWorkspaceRoot() {
|
|
153
|
+
return this.workspaceRoot;
|
|
154
|
+
}
|
|
104
155
|
/**
|
|
105
156
|
* Opens a database connection for the specified dimension.
|
|
106
157
|
* If the database is already open, returns the existing connection.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"multi-db-manager.js","sourceRoot":"","sources":["../../src/core/multi-db-manager.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,iDAAmC;AACnC,2CAA6B;AAC7B,uCAAyB;AACzB,+CAAiC;AACjC,6CAAyC;AAEzC,uEAAkE;AAOlE;;GAEG;AACH,MAAM,kBAAkB,GAA8B;IAClD,CAAC,EAAE,YAAY;IACf,CAAC,EAAE,YAAY;IACf,CAAC,EAAE,iBAAiB;IACpB,CAAC,EAAE,SAAS;IACZ,CAAC,EAAE,YAAY;IACf,CAAC,EAAE,YAAY;CAClB,CAAC;AAEF;;;GAGG;AACH,MAAa,cAAc;IAQvB;;;OAGG;IACH,YAAY,aAAqB;QAXzB,cAAS,GAAqC,IAAI,GAAG,EAAE,CAAC;QAKxD,mBAAc,GAA0B,IAAI,CAAC;QAOjD,IAAI,CAAC,aAAa,GAAG,aAAa,CAAC;QACnC,IAAI,CAAC,WAAW,GAAG,IAAI,CAAC,IAAI,CAAC,aAAa,EAAE,kBAAkB,CAAC,CAAC;QAChE,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAC,eAAe,CAAC,aAAa,CAAC,CAAC;QACpD,IAAI,CAAC,SAAS,GAAG,IAAI,sBAAS,EAAE,CAAC;QACjC,IAAI,CAAC,iBAAiB,EAAE,CAAC;
|
|
1
|
+
{"version":3,"file":"multi-db-manager.js","sourceRoot":"","sources":["../../src/core/multi-db-manager.ts"],"names":[],"mappings":"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"}
|
|
@@ -14,6 +14,13 @@ export declare class AdrIngestor implements BaseIngestor {
|
|
|
14
14
|
* Ingests a single ADR file.
|
|
15
15
|
*/
|
|
16
16
|
private ingestAdrFile;
|
|
17
|
+
/**
|
|
18
|
+
* Recursively finds all ADR files (.md) in the given directory and subdirectories.
|
|
19
|
+
*
|
|
20
|
+
* @param adrDir The ADR directory to search
|
|
21
|
+
* @returns Array of full file paths to ADR files
|
|
22
|
+
*/
|
|
23
|
+
private findAdrFilesRecursively;
|
|
17
24
|
/**
|
|
18
25
|
* Extracts ADR number from file name (e.g., "020-api-doc-tiefe.md" -> "020").
|
|
19
26
|
*/
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"adr-ingestor.d.ts","sourceRoot":"","sources":["../../src/ingestors/adr-ingestor.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,YAAY,EAAE,MAAM,iBAAiB,CAAC;AAC/C,OAAO,EAAE,SAAS,EAAE,MAAM,0BAA0B,CAAC;AACrD,OAAO,EAAE,cAAc,EAAE,MAAM,0BAA0B,CAAC;AAI1D;;GAEG;AACH,qBAAa,WAAY,YAAW,YAAY;IAC5C,OAAO,CAAC,SAAS,CAAiB;gBAEtB,SAAS,EAAE,cAAc;IAI9B,YAAY,IAAI,SAAS;IAInB,UAAU,CAAC,aAAa,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;
|
|
1
|
+
{"version":3,"file":"adr-ingestor.d.ts","sourceRoot":"","sources":["../../src/ingestors/adr-ingestor.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,YAAY,EAAE,MAAM,iBAAiB,CAAC;AAC/C,OAAO,EAAE,SAAS,EAAE,MAAM,0BAA0B,CAAC;AACrD,OAAO,EAAE,cAAc,EAAE,MAAM,0BAA0B,CAAC;AAI1D;;GAEG;AACH,qBAAa,WAAY,YAAW,YAAY;IAC5C,OAAO,CAAC,SAAS,CAAiB;gBAEtB,SAAS,EAAE,cAAc;IAI9B,YAAY,IAAI,SAAS;IAInB,UAAU,CAAC,aAAa,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IA0CpF,iBAAiB,CAAC,aAAa,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAwFxG;;OAEG;YACW,aAAa;IAqE3B;;;;;OAKG;IACH,OAAO,CAAC,uBAAuB;IA2B/B;;OAEG;IACH,OAAO,CAAC,gBAAgB;IAKxB;;OAEG;IACH,OAAO,CAAC,YAAY;IAKpB;;;;OAIG;IACH,OAAO,CAAC,mBAAmB;IAkD3B;;;OAGG;IACH,OAAO,CAAC,iBAAiB;IAqCzB;;OAEG;IACH,OAAO,CAAC,kBAAkB;CAG7B"}
|