@noyrax/5d-database-plugin 0.1.14-beta.5 → 0.1.14-beta.8
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/out/api/adr-api.d.ts +0 -6
- package/out/api/adr-api.d.ts.map +1 -1
- package/out/api/adr-api.js +14 -49
- package/out/api/adr-api.js.map +1 -1
- package/out/api/bootstrap-api.d.ts +4 -1
- package/out/api/bootstrap-api.d.ts.map +1 -1
- package/out/api/bootstrap-api.js +27 -4
- package/out/api/bootstrap-api.js.map +1 -1
- package/out/api/context-builder.d.ts.map +1 -1
- package/out/api/context-builder.js +21 -5
- package/out/api/context-builder.js.map +1 -1
- package/out/api/evidence-grader.d.ts +83 -0
- package/out/api/evidence-grader.d.ts.map +1 -0
- package/out/api/evidence-grader.js +161 -0
- package/out/api/evidence-grader.js.map +1 -0
- package/out/api/index.d.ts +5 -0
- package/out/api/index.d.ts.map +1 -1
- package/out/api/index.js +11 -1
- package/out/api/index.js.map +1 -1
- package/out/api/learning-path-api.d.ts +3 -0
- package/out/api/learning-path-api.d.ts.map +1 -1
- package/out/api/learning-path-api.js +15 -2
- package/out/api/learning-path-api.js.map +1 -1
- package/out/api/module-api.d.ts +0 -1
- package/out/api/module-api.d.ts.map +1 -1
- package/out/api/module-api.js +4 -38
- package/out/api/module-api.js.map +1 -1
- package/out/api/self-explanation-api.d.ts +11 -1
- package/out/api/self-explanation-api.d.ts.map +1 -1
- package/out/api/self-explanation-api.js +285 -19
- package/out/api/self-explanation-api.js.map +1 -1
- package/out/api/semantic-search-api.d.ts +3 -0
- package/out/api/semantic-search-api.d.ts.map +1 -1
- package/out/api/semantic-search-api.js +39 -2
- package/out/api/semantic-search-api.js.map +1 -1
- package/out/api/source-access-contract-api.d.ts +60 -0
- package/out/api/source-access-contract-api.d.ts.map +1 -0
- package/out/api/source-access-contract-api.js +231 -0
- package/out/api/source-access-contract-api.js.map +1 -0
- package/out/api/source-snippet-api.d.ts +58 -0
- package/out/api/source-snippet-api.d.ts.map +1 -0
- package/out/api/source-snippet-api.js +187 -0
- package/out/api/source-snippet-api.js.map +1 -0
- package/out/api/vector-backend-status-api.d.ts +68 -0
- package/out/api/vector-backend-status-api.d.ts.map +1 -0
- package/out/api/vector-backend-status-api.js +241 -0
- package/out/api/vector-backend-status-api.js.map +1 -0
- package/out/cli/ingest-cli.js +44 -5
- package/out/cli/ingest-cli.js.map +1 -1
- package/out/cli/tool-cli.js +1 -1
- package/out/cli/tool-cli.js.map +1 -1
- package/out/core/migration-manager.d.ts.map +1 -1
- package/out/core/migration-manager.js +61 -32
- package/out/core/migration-manager.js.map +1 -1
- package/out/core/multi-db-manager.d.ts +26 -0
- package/out/core/multi-db-manager.d.ts.map +1 -1
- package/out/core/multi-db-manager.js +143 -2
- package/out/core/multi-db-manager.js.map +1 -1
- package/out/core/path-normalizer.d.ts +46 -0
- package/out/core/path-normalizer.d.ts.map +1 -0
- package/out/core/path-normalizer.js +152 -0
- package/out/core/path-normalizer.js.map +1 -0
- package/out/ingestors/adr-ingestor.d.ts.map +1 -1
- package/out/ingestors/adr-ingestor.js +7 -8
- package/out/ingestors/adr-ingestor.js.map +1 -1
- package/out/ingestors/module-ingestor.d.ts.map +1 -1
- package/out/ingestors/module-ingestor.js +17 -0
- package/out/ingestors/module-ingestor.js.map +1 -1
- package/out/ingestors/symbol-ingestor.d.ts.map +1 -1
- package/out/ingestors/symbol-ingestor.js +24 -2
- package/out/ingestors/symbol-ingestor.js.map +1 -1
- package/out/mcp/tools/gap-analysis.d.ts +16 -2
- package/out/mcp/tools/gap-analysis.d.ts.map +1 -1
- package/out/mcp/tools/gap-analysis.js +177 -31
- package/out/mcp/tools/gap-analysis.js.map +1 -1
- package/out/mcp/tools/learning-path.d.ts.map +1 -1
- package/out/mcp/tools/learning-path.js +19 -5
- package/out/mcp/tools/learning-path.js.map +1 -1
- package/out/mcp/tools/semantic-discovery.d.ts.map +1 -1
- package/out/mcp/tools/semantic-discovery.js +44 -4
- package/out/mcp/tools/semantic-discovery.js.map +1 -1
- package/out/mcp/tools/source-access-contract.d.ts +26 -0
- package/out/mcp/tools/source-access-contract.d.ts.map +1 -0
- package/out/mcp/tools/source-access-contract.js +45 -0
- package/out/mcp/tools/source-access-contract.js.map +1 -0
- package/out/mcp/tools/source-snippet.d.ts +71 -0
- package/out/mcp/tools/source-snippet.d.ts.map +1 -0
- package/out/mcp/tools/source-snippet.js +82 -0
- package/out/mcp/tools/source-snippet.js.map +1 -0
- package/out/models/action-hint.d.ts +36 -0
- package/out/models/action-hint.d.ts.map +1 -0
- package/out/models/action-hint.js +38 -0
- package/out/models/action-hint.js.map +1 -0
- package/out/models/evidence.d.ts +68 -0
- package/out/models/evidence.d.ts.map +1 -0
- package/out/models/evidence.js +91 -0
- package/out/models/evidence.js.map +1 -0
- package/out/models/module.d.ts +2 -0
- package/out/models/module.d.ts.map +1 -1
- package/out/models/reason-codes.d.ts +52 -0
- package/out/models/reason-codes.d.ts.map +1 -0
- package/out/models/reason-codes.js +83 -0
- package/out/models/reason-codes.js.map +1 -0
- package/out/models/symbol.d.ts +6 -0
- package/out/models/symbol.d.ts.map +1 -1
- package/out/repositories/module-repository.d.ts.map +1 -1
- package/out/repositories/module-repository.js +9 -3
- package/out/repositories/module-repository.js.map +1 -1
- package/out/repositories/symbol-repository.d.ts.map +1 -1
- package/out/repositories/symbol-repository.js +22 -4
- package/out/repositories/symbol-repository.js.map +1 -1
- package/out/services/cross-dimension-linker.d.ts +0 -5
- package/out/services/cross-dimension-linker.d.ts.map +1 -1
- package/out/services/cross-dimension-linker.js +2 -35
- package/out/services/cross-dimension-linker.js.map +1 -1
- package/package.json +196 -196
- package/schemas/sqlite/001_add_source_code_spans_modules.sql +7 -0
- package/schemas/sqlite/001_z_add_source_code_spans_modules.sql +13 -0
- package/schemas/sqlite/002_add_source_code_spans_symbols.sql +15 -0
- package/schemas/sqlite/002_z_add_source_code_spans_symbols.sql +21 -0
- package/schemas/sqlite/006_add_source_access_config.sql +33 -0
|
@@ -24,6 +24,9 @@ export declare class MultiDbManager {
|
|
|
24
24
|
* Computes a stable plugin_id from the workspace root path.
|
|
25
25
|
* Uses SHA256 hash of normalized path, takes first 16 characters.
|
|
26
26
|
*
|
|
27
|
+
* Normalization: POSIX-style (forward slashes), lowercase on Windows (case-insensitive).
|
|
28
|
+
* This matches WorkspaceResolver.computePluginId() for consistency.
|
|
29
|
+
*
|
|
27
30
|
* @param workspaceRoot The workspace root directory
|
|
28
31
|
* @returns Stable plugin ID (16 hex characters)
|
|
29
32
|
*/
|
|
@@ -32,12 +35,35 @@ export declare class MultiDbManager {
|
|
|
32
35
|
* Ensures the database directory exists.
|
|
33
36
|
*/
|
|
34
37
|
private ensureDbDirectory;
|
|
38
|
+
/**
|
|
39
|
+
* Checks if existing databases have a different plugin ID (e.g., after workspace move).
|
|
40
|
+
* Returns true if mismatch is detected, false otherwise.
|
|
41
|
+
*
|
|
42
|
+
* IMPORTANT: This method closes all open database connections before checking,
|
|
43
|
+
* to ensure databases can be deleted if cleanup is needed.
|
|
44
|
+
*
|
|
45
|
+
* @returns Promise that resolves to true if plugin ID mismatch detected, false otherwise
|
|
46
|
+
*/
|
|
47
|
+
checkPluginIdMismatch(): Promise<boolean>;
|
|
35
48
|
/**
|
|
36
49
|
* Checks if existing databases have a different plugin ID (e.g., after workspace move).
|
|
37
50
|
* This is informational only and does not block operation.
|
|
38
51
|
* Note: This is a best-effort check and may not catch all cases.
|
|
39
52
|
*/
|
|
40
53
|
private checkPluginIdConsistency;
|
|
54
|
+
/**
|
|
55
|
+
* Cleans up old databases with different plugin IDs.
|
|
56
|
+
* Closes all open database connections, then deletes all database files.
|
|
57
|
+
*
|
|
58
|
+
* WARNING: This will permanently delete all existing database data.
|
|
59
|
+
* Use only when you want to start fresh after workspace move/rename.
|
|
60
|
+
*
|
|
61
|
+
* Note: If databases are locked by another process (e.g., VS Code Extension),
|
|
62
|
+
* deletion will fail with a warning. The new ingestion will overwrite old data anyway.
|
|
63
|
+
*
|
|
64
|
+
* @returns Promise that resolves when cleanup is complete
|
|
65
|
+
*/
|
|
66
|
+
cleanupOldDatabases(): Promise<void>;
|
|
41
67
|
/**
|
|
42
68
|
* Gets the plugin ID for this workspace.
|
|
43
69
|
*/
|
|
@@ -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;IASjC
|
|
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;;;;;;;;;OASG;IACH,OAAO,CAAC,eAAe;IAevB;;OAEG;IACH,OAAO,CAAC,iBAAiB;IAMzB;;;;;;;;OAQG;IACU,qBAAqB,IAAI,OAAO,CAAC,OAAO,CAAC;IAqDtD;;;;OAIG;IACH,OAAO,CAAC,wBAAwB;IA4ChC;;;;;;;;;;;OAWG;IACU,mBAAmB,IAAI,OAAO,CAAC,IAAI,CAAC;IAqEjD;;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"}
|
|
@@ -74,11 +74,20 @@ class MultiDbManager {
|
|
|
74
74
|
* Computes a stable plugin_id from the workspace root path.
|
|
75
75
|
* Uses SHA256 hash of normalized path, takes first 16 characters.
|
|
76
76
|
*
|
|
77
|
+
* Normalization: POSIX-style (forward slashes), lowercase on Windows (case-insensitive).
|
|
78
|
+
* This matches WorkspaceResolver.computePluginId() for consistency.
|
|
79
|
+
*
|
|
77
80
|
* @param workspaceRoot The workspace root directory
|
|
78
81
|
* @returns Stable plugin ID (16 hex characters)
|
|
79
82
|
*/
|
|
80
83
|
computePluginId(workspaceRoot) {
|
|
81
|
-
|
|
84
|
+
// Resolve to absolute path
|
|
85
|
+
const resolved = path.resolve(workspaceRoot);
|
|
86
|
+
// Convert to POSIX-style (forward slashes)
|
|
87
|
+
const posix = resolved.replace(/\\/g, '/');
|
|
88
|
+
// On Windows, normalize case (to lowercase for case-insensitive comparison)
|
|
89
|
+
// On Unix, preserve case
|
|
90
|
+
const normalizedPath = process.platform === 'win32' ? posix.toLowerCase() : posix;
|
|
82
91
|
const hash = crypto.createHash('sha256').update(normalizedPath).digest('hex');
|
|
83
92
|
return hash.substring(0, 16);
|
|
84
93
|
}
|
|
@@ -90,6 +99,62 @@ class MultiDbManager {
|
|
|
90
99
|
fs.mkdirSync(this.dbDirectory, { recursive: true });
|
|
91
100
|
}
|
|
92
101
|
}
|
|
102
|
+
/**
|
|
103
|
+
* Checks if existing databases have a different plugin ID (e.g., after workspace move).
|
|
104
|
+
* Returns true if mismatch is detected, false otherwise.
|
|
105
|
+
*
|
|
106
|
+
* IMPORTANT: This method closes all open database connections before checking,
|
|
107
|
+
* to ensure databases can be deleted if cleanup is needed.
|
|
108
|
+
*
|
|
109
|
+
* @returns Promise that resolves to true if plugin ID mismatch detected, false otherwise
|
|
110
|
+
*/
|
|
111
|
+
async checkPluginIdMismatch() {
|
|
112
|
+
// Close all open database connections first to avoid lock issues
|
|
113
|
+
await this.closeAll();
|
|
114
|
+
if (!fs.existsSync(this.dbDirectory)) {
|
|
115
|
+
return false; // No databases exist yet
|
|
116
|
+
}
|
|
117
|
+
const dbFiles = [
|
|
118
|
+
{ file: 'modules.db', table: 'modules' },
|
|
119
|
+
{ file: 'symbols.db', table: 'symbols' },
|
|
120
|
+
{ file: 'dependencies.db', table: 'dependencies' },
|
|
121
|
+
{ file: 'adrs.db', table: 'adrs' },
|
|
122
|
+
{ file: 'changes.db', table: 'change_reports' }
|
|
123
|
+
];
|
|
124
|
+
// Check first available database file
|
|
125
|
+
for (const { file, table } of dbFiles) {
|
|
126
|
+
const dbPath = path.join(this.dbDirectory, file);
|
|
127
|
+
if (!fs.existsSync(dbPath)) {
|
|
128
|
+
continue;
|
|
129
|
+
}
|
|
130
|
+
try {
|
|
131
|
+
const db = new sqlite3.Database(dbPath, sqlite3.OPEN_READONLY);
|
|
132
|
+
const hasMismatch = await new Promise((resolve) => {
|
|
133
|
+
db.get(`SELECT plugin_id FROM ${table} LIMIT 1`, (err, row) => {
|
|
134
|
+
if (!err && row && row.plugin_id && row.plugin_id !== this.pluginId) {
|
|
135
|
+
resolve(true);
|
|
136
|
+
}
|
|
137
|
+
else {
|
|
138
|
+
resolve(false);
|
|
139
|
+
}
|
|
140
|
+
});
|
|
141
|
+
});
|
|
142
|
+
db.close((err) => {
|
|
143
|
+
// Ignore close errors
|
|
144
|
+
});
|
|
145
|
+
if (hasMismatch) {
|
|
146
|
+
return true;
|
|
147
|
+
}
|
|
148
|
+
// Only check first available database to avoid too many checks
|
|
149
|
+
break;
|
|
150
|
+
}
|
|
151
|
+
catch (error) {
|
|
152
|
+
// Ignore errors - database might be locked, corrupted, or table might not exist
|
|
153
|
+
continue;
|
|
154
|
+
}
|
|
155
|
+
}
|
|
156
|
+
return false;
|
|
157
|
+
}
|
|
93
158
|
/**
|
|
94
159
|
* Checks if existing databases have a different plugin ID (e.g., after workspace move).
|
|
95
160
|
* This is informational only and does not block operation.
|
|
@@ -121,7 +186,7 @@ class MultiDbManager {
|
|
|
121
186
|
console.warn(`[MultiDbManager] WARNING: Found existing database (${file}) with different plugin ID (${row.plugin_id}).`);
|
|
122
187
|
console.warn(`[MultiDbManager] Current plugin ID: ${this.pluginId}`);
|
|
123
188
|
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.`);
|
|
189
|
+
console.warn(`[MultiDbManager] Old data will not be accessible. Consider running full ingestion with --cleanup flag.`);
|
|
125
190
|
}
|
|
126
191
|
db.close();
|
|
127
192
|
});
|
|
@@ -134,6 +199,82 @@ class MultiDbManager {
|
|
|
134
199
|
}
|
|
135
200
|
}
|
|
136
201
|
}
|
|
202
|
+
/**
|
|
203
|
+
* Cleans up old databases with different plugin IDs.
|
|
204
|
+
* Closes all open database connections, then deletes all database files.
|
|
205
|
+
*
|
|
206
|
+
* WARNING: This will permanently delete all existing database data.
|
|
207
|
+
* Use only when you want to start fresh after workspace move/rename.
|
|
208
|
+
*
|
|
209
|
+
* Note: If databases are locked by another process (e.g., VS Code Extension),
|
|
210
|
+
* deletion will fail with a warning. The new ingestion will overwrite old data anyway.
|
|
211
|
+
*
|
|
212
|
+
* @returns Promise that resolves when cleanup is complete
|
|
213
|
+
*/
|
|
214
|
+
async cleanupOldDatabases() {
|
|
215
|
+
console.log(`[MultiDbManager] Cleaning up old databases with different plugin ID...`);
|
|
216
|
+
console.log(`[MultiDbManager] Current plugin ID: ${this.pluginId}`);
|
|
217
|
+
// Close all open database connections first
|
|
218
|
+
await this.closeAll();
|
|
219
|
+
// Wait a bit to ensure file handles are released
|
|
220
|
+
await new Promise(resolve => setTimeout(resolve, 100));
|
|
221
|
+
if (!fs.existsSync(this.dbDirectory)) {
|
|
222
|
+
console.log(`[MultiDbManager] No database directory found, nothing to clean up.`);
|
|
223
|
+
return;
|
|
224
|
+
}
|
|
225
|
+
const dbFiles = [
|
|
226
|
+
'modules.db',
|
|
227
|
+
'symbols.db',
|
|
228
|
+
'dependencies.db',
|
|
229
|
+
'adrs.db',
|
|
230
|
+
'changes.db',
|
|
231
|
+
'vectors.db'
|
|
232
|
+
];
|
|
233
|
+
let deletedCount = 0;
|
|
234
|
+
let failedCount = 0;
|
|
235
|
+
for (const file of dbFiles) {
|
|
236
|
+
const dbPath = path.join(this.dbDirectory, file);
|
|
237
|
+
if (fs.existsSync(dbPath)) {
|
|
238
|
+
try {
|
|
239
|
+
// Try to close any open connections to this file first
|
|
240
|
+
// (in case it was opened by checkPluginIdMismatch)
|
|
241
|
+
fs.unlinkSync(dbPath);
|
|
242
|
+
console.log(`[MultiDbManager] Deleted: ${file}`);
|
|
243
|
+
deletedCount++;
|
|
244
|
+
}
|
|
245
|
+
catch (error) {
|
|
246
|
+
if (error.code === 'EBUSY' || error.code === 'ENOENT') {
|
|
247
|
+
// File is locked or already deleted - this is OK, new ingestion will overwrite
|
|
248
|
+
console.warn(`[MultiDbManager] Could not delete ${file} (locked or already deleted). New ingestion will overwrite old data.`);
|
|
249
|
+
}
|
|
250
|
+
else {
|
|
251
|
+
console.warn(`[MultiDbManager] Failed to delete ${file}: ${error.message}`);
|
|
252
|
+
}
|
|
253
|
+
failedCount++;
|
|
254
|
+
}
|
|
255
|
+
}
|
|
256
|
+
}
|
|
257
|
+
// Also try to delete any migration-related files
|
|
258
|
+
const migrationFiles = ['migrations.db', 'migration_history.db'];
|
|
259
|
+
for (const file of migrationFiles) {
|
|
260
|
+
const filePath = path.join(this.dbDirectory, file);
|
|
261
|
+
if (fs.existsSync(filePath)) {
|
|
262
|
+
try {
|
|
263
|
+
fs.unlinkSync(filePath);
|
|
264
|
+
console.log(`[MultiDbManager] Deleted: ${file}`);
|
|
265
|
+
}
|
|
266
|
+
catch (error) {
|
|
267
|
+
// Ignore errors for migration files
|
|
268
|
+
}
|
|
269
|
+
}
|
|
270
|
+
}
|
|
271
|
+
if (deletedCount > 0) {
|
|
272
|
+
console.log(`[MultiDbManager] Cleanup complete: ${deletedCount} database file(s) deleted.`);
|
|
273
|
+
}
|
|
274
|
+
if (failedCount > 0) {
|
|
275
|
+
console.log(`[MultiDbManager] Note: ${failedCount} file(s) could not be deleted (may be locked by another process). New ingestion will overwrite old data.`);
|
|
276
|
+
}
|
|
277
|
+
}
|
|
137
278
|
/**
|
|
138
279
|
* Gets the plugin ID for this workspace.
|
|
139
280
|
*/
|
|
@@ -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;QACzB,IAAI,CAAC,wBAAwB,EAAE,CAAC;IACpC,CAAC;IAED
|
|
1
|
+
{"version":3,"file":"multi-db-manager.js","sourceRoot":"","sources":["../../src/core/multi-db-manager.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,46 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Utility class for path normalization (case-preserving).
|
|
3
|
+
*
|
|
4
|
+
* Key principles:
|
|
5
|
+
* - File paths are case-preserving on all platforms (for Git case-sensitive repositories)
|
|
6
|
+
* - Plugin IDs use lowercase normalization (via normalizeForPluginId in WorkspaceResolver)
|
|
7
|
+
* - Path comparison is case-insensitive on Windows, case-sensitive on Unix
|
|
8
|
+
*/
|
|
9
|
+
export declare class PathNormalizer {
|
|
10
|
+
/**
|
|
11
|
+
* Normalizes a file path (case-preserving).
|
|
12
|
+
*
|
|
13
|
+
* Rules:
|
|
14
|
+
* - Windows → Unix slashes (\ → /)
|
|
15
|
+
* - Trailing slashes entfernen
|
|
16
|
+
* - Multiple slashes vereinfachen
|
|
17
|
+
* - Case BEHALTEN (case-preserving)
|
|
18
|
+
*
|
|
19
|
+
* @param filePath Path to normalize
|
|
20
|
+
* @returns Normalized path (POSIX-style, case-preserved)
|
|
21
|
+
*/
|
|
22
|
+
static normalizePath(filePath: string): string;
|
|
23
|
+
/**
|
|
24
|
+
* Cross-platform path comparison (case-insensitive on Windows, case-sensitive on Unix).
|
|
25
|
+
*
|
|
26
|
+
* @param p1 First path
|
|
27
|
+
* @param p2 Second path
|
|
28
|
+
* @returns True if paths are equal (considering platform case-sensitivity)
|
|
29
|
+
*/
|
|
30
|
+
static pathsEqual(p1: string, p2: string): boolean;
|
|
31
|
+
/**
|
|
32
|
+
* Generates lookup variants for queries (forward slashes, leading slash, plugin prefixes, etc.).
|
|
33
|
+
*
|
|
34
|
+
* This is used for querying where paths might be stored with different formats:
|
|
35
|
+
* - With/without plugin prefixes (5d-database-plugin/, documentation-system-plugin/, mcp-server/)
|
|
36
|
+
* - With/without leading slashes
|
|
37
|
+
* - Different slash directions (normalized to forward slashes)
|
|
38
|
+
*
|
|
39
|
+
* Note: This is for QUERIES only, not for storage. Storage uses normalizePath().
|
|
40
|
+
*
|
|
41
|
+
* @param filePath Path to generate variants for
|
|
42
|
+
* @returns Array of path variants for query matching
|
|
43
|
+
*/
|
|
44
|
+
static generateLookupVariants(filePath: string): string[];
|
|
45
|
+
}
|
|
46
|
+
//# sourceMappingURL=path-normalizer.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"path-normalizer.d.ts","sourceRoot":"","sources":["../../src/core/path-normalizer.ts"],"names":[],"mappings":"AAEA;;;;;;;GAOG;AACH,qBAAa,cAAc;IACvB;;;;;;;;;;;OAWG;WACW,aAAa,CAAC,QAAQ,EAAE,MAAM,GAAG,MAAM;IA4BrD;;;;;;OAMG;WACW,UAAU,CAAC,EAAE,EAAE,MAAM,EAAE,EAAE,EAAE,MAAM,GAAG,OAAO;IAazD;;;;;;;;;;;;OAYG;WACW,sBAAsB,CAAC,QAAQ,EAAE,MAAM,GAAG,MAAM,EAAE;CA6CnE"}
|
|
@@ -0,0 +1,152 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
3
|
+
if (k2 === undefined) k2 = k;
|
|
4
|
+
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
5
|
+
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
6
|
+
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
7
|
+
}
|
|
8
|
+
Object.defineProperty(o, k2, desc);
|
|
9
|
+
}) : (function(o, m, k, k2) {
|
|
10
|
+
if (k2 === undefined) k2 = k;
|
|
11
|
+
o[k2] = m[k];
|
|
12
|
+
}));
|
|
13
|
+
var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
|
|
14
|
+
Object.defineProperty(o, "default", { enumerable: true, value: v });
|
|
15
|
+
}) : function(o, v) {
|
|
16
|
+
o["default"] = v;
|
|
17
|
+
});
|
|
18
|
+
var __importStar = (this && this.__importStar) || (function () {
|
|
19
|
+
var ownKeys = function(o) {
|
|
20
|
+
ownKeys = Object.getOwnPropertyNames || function (o) {
|
|
21
|
+
var ar = [];
|
|
22
|
+
for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
|
|
23
|
+
return ar;
|
|
24
|
+
};
|
|
25
|
+
return ownKeys(o);
|
|
26
|
+
};
|
|
27
|
+
return function (mod) {
|
|
28
|
+
if (mod && mod.__esModule) return mod;
|
|
29
|
+
var result = {};
|
|
30
|
+
if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
|
|
31
|
+
__setModuleDefault(result, mod);
|
|
32
|
+
return result;
|
|
33
|
+
};
|
|
34
|
+
})();
|
|
35
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
36
|
+
exports.PathNormalizer = void 0;
|
|
37
|
+
const path = __importStar(require("path"));
|
|
38
|
+
/**
|
|
39
|
+
* Utility class for path normalization (case-preserving).
|
|
40
|
+
*
|
|
41
|
+
* Key principles:
|
|
42
|
+
* - File paths are case-preserving on all platforms (for Git case-sensitive repositories)
|
|
43
|
+
* - Plugin IDs use lowercase normalization (via normalizeForPluginId in WorkspaceResolver)
|
|
44
|
+
* - Path comparison is case-insensitive on Windows, case-sensitive on Unix
|
|
45
|
+
*/
|
|
46
|
+
class PathNormalizer {
|
|
47
|
+
/**
|
|
48
|
+
* Normalizes a file path (case-preserving).
|
|
49
|
+
*
|
|
50
|
+
* Rules:
|
|
51
|
+
* - Windows → Unix slashes (\ → /)
|
|
52
|
+
* - Trailing slashes entfernen
|
|
53
|
+
* - Multiple slashes vereinfachen
|
|
54
|
+
* - Case BEHALTEN (case-preserving)
|
|
55
|
+
*
|
|
56
|
+
* @param filePath Path to normalize
|
|
57
|
+
* @returns Normalized path (POSIX-style, case-preserved)
|
|
58
|
+
*/
|
|
59
|
+
static normalizePath(filePath) {
|
|
60
|
+
if (!filePath) {
|
|
61
|
+
return '';
|
|
62
|
+
}
|
|
63
|
+
// Resolve to absolute path (normalizes . and ..)
|
|
64
|
+
const resolved = path.resolve(filePath);
|
|
65
|
+
// Convert backslashes to forward slashes (Windows → Unix)
|
|
66
|
+
let normalized = resolved.replace(/\\/g, '/');
|
|
67
|
+
// Remove trailing slashes (except root path)
|
|
68
|
+
if (normalized.length > 1 && normalized.endsWith('/')) {
|
|
69
|
+
normalized = normalized.slice(0, -1);
|
|
70
|
+
}
|
|
71
|
+
// Simplify multiple slashes (but preserve leading // for UNC paths)
|
|
72
|
+
if (normalized.startsWith('//')) {
|
|
73
|
+
// UNC path (\\server\share) - keep double slash, simplify rest
|
|
74
|
+
normalized = '//' + normalized.substring(2).replace(/\/+/g, '/');
|
|
75
|
+
}
|
|
76
|
+
else {
|
|
77
|
+
normalized = normalized.replace(/\/+/g, '/');
|
|
78
|
+
}
|
|
79
|
+
// Case is preserved - NO toLowerCase()!
|
|
80
|
+
return normalized;
|
|
81
|
+
}
|
|
82
|
+
/**
|
|
83
|
+
* Cross-platform path comparison (case-insensitive on Windows, case-sensitive on Unix).
|
|
84
|
+
*
|
|
85
|
+
* @param p1 First path
|
|
86
|
+
* @param p2 Second path
|
|
87
|
+
* @returns True if paths are equal (considering platform case-sensitivity)
|
|
88
|
+
*/
|
|
89
|
+
static pathsEqual(p1, p2) {
|
|
90
|
+
const normalized1 = this.normalizePath(p1);
|
|
91
|
+
const normalized2 = this.normalizePath(p2);
|
|
92
|
+
if (process.platform === 'win32') {
|
|
93
|
+
// Case-insensitive comparison on Windows
|
|
94
|
+
return normalized1.toLowerCase() === normalized2.toLowerCase();
|
|
95
|
+
}
|
|
96
|
+
else {
|
|
97
|
+
// Case-sensitive comparison on Unix
|
|
98
|
+
return normalized1 === normalized2;
|
|
99
|
+
}
|
|
100
|
+
}
|
|
101
|
+
/**
|
|
102
|
+
* Generates lookup variants for queries (forward slashes, leading slash, plugin prefixes, etc.).
|
|
103
|
+
*
|
|
104
|
+
* This is used for querying where paths might be stored with different formats:
|
|
105
|
+
* - With/without plugin prefixes (5d-database-plugin/, documentation-system-plugin/, mcp-server/)
|
|
106
|
+
* - With/without leading slashes
|
|
107
|
+
* - Different slash directions (normalized to forward slashes)
|
|
108
|
+
*
|
|
109
|
+
* Note: This is for QUERIES only, not for storage. Storage uses normalizePath().
|
|
110
|
+
*
|
|
111
|
+
* @param filePath Path to generate variants for
|
|
112
|
+
* @returns Array of path variants for query matching
|
|
113
|
+
*/
|
|
114
|
+
static generateLookupVariants(filePath) {
|
|
115
|
+
const variants = [];
|
|
116
|
+
// Normalize separators to forward slashes (case-preserving)
|
|
117
|
+
let normalized = filePath.replace(/\\/g, '/');
|
|
118
|
+
variants.push(normalized);
|
|
119
|
+
// Remove leading slashes
|
|
120
|
+
const withoutLeadingSlash = normalized.replace(/^\/+/, '');
|
|
121
|
+
if (withoutLeadingSlash !== normalized) {
|
|
122
|
+
variants.push(withoutLeadingSlash);
|
|
123
|
+
}
|
|
124
|
+
const pluginPrefixes = ['5d-database-plugin/', 'documentation-system-plugin/', 'mcp-server/'];
|
|
125
|
+
// Remove common plugin prefixes (e.g., "5d-database-plugin/")
|
|
126
|
+
for (const prefix of pluginPrefixes) {
|
|
127
|
+
if (normalized.startsWith(prefix)) {
|
|
128
|
+
const withoutPrefix = normalized.substring(prefix.length);
|
|
129
|
+
variants.push(withoutPrefix);
|
|
130
|
+
}
|
|
131
|
+
// Also try without leading slash
|
|
132
|
+
if (withoutLeadingSlash.startsWith(prefix)) {
|
|
133
|
+
const withoutPrefix = withoutLeadingSlash.substring(prefix.length);
|
|
134
|
+
variants.push(withoutPrefix);
|
|
135
|
+
}
|
|
136
|
+
}
|
|
137
|
+
// ADD variants WITH plugin prefixes (if path doesn't already have one)
|
|
138
|
+
// This handles cases where modules are stored with plugin prefix but queried without
|
|
139
|
+
const hasPluginPrefix = pluginPrefixes.some(prefix => normalized.startsWith(prefix) || withoutLeadingSlash.startsWith(prefix));
|
|
140
|
+
if (!hasPluginPrefix) {
|
|
141
|
+
// Add variants with each plugin prefix
|
|
142
|
+
for (const prefix of pluginPrefixes) {
|
|
143
|
+
variants.push(`${prefix}${withoutLeadingSlash}`);
|
|
144
|
+
variants.push(`${prefix}${normalized}`);
|
|
145
|
+
}
|
|
146
|
+
}
|
|
147
|
+
// Remove duplicates and return (preserve order)
|
|
148
|
+
return Array.from(new Set(variants));
|
|
149
|
+
}
|
|
150
|
+
}
|
|
151
|
+
exports.PathNormalizer = PathNormalizer;
|
|
152
|
+
//# sourceMappingURL=path-normalizer.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"path-normalizer.js","sourceRoot":"","sources":["../../src/core/path-normalizer.ts"],"names":[],"mappings":"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"}
|
|
@@ -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;
|
|
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;AAK1D;;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;IA+C3B;;;OAGG;IACH,OAAO,CAAC,iBAAiB;IAsCzB;;OAEG;IACH,OAAO,CAAC,kBAAkB;CAG7B"}
|
|
@@ -39,6 +39,7 @@ const path = __importStar(require("path"));
|
|
|
39
39
|
const crypto = __importStar(require("crypto"));
|
|
40
40
|
const uuid_1 = require("uuid");
|
|
41
41
|
const adr_repository_1 = require("../repositories/adr-repository");
|
|
42
|
+
const path_normalizer_1 = require("../core/path-normalizer");
|
|
42
43
|
/**
|
|
43
44
|
* Ingests ADRs from docs/adr/*.md (W-Dimension)
|
|
44
45
|
*/
|
|
@@ -277,8 +278,7 @@ class AdrIngestor {
|
|
|
277
278
|
while ((match = backtickPattern.exec(content)) !== null) {
|
|
278
279
|
const filePath = match[1];
|
|
279
280
|
if (filePath && !filePath.startsWith('http') && !filePath.startsWith('mailto:') && !filePath.startsWith('#')) {
|
|
280
|
-
|
|
281
|
-
const finalPath = this.normalizeFilePath(normalizedPath, workspaceRoot);
|
|
281
|
+
const finalPath = this.normalizeFilePath(filePath, workspaceRoot);
|
|
282
282
|
if (finalPath) {
|
|
283
283
|
filePaths.push(finalPath);
|
|
284
284
|
}
|
|
@@ -290,8 +290,7 @@ class AdrIngestor {
|
|
|
290
290
|
while ((match = linkPattern.exec(content)) !== null) {
|
|
291
291
|
const filePath = match[2]; // Use the URL part, not the link text
|
|
292
292
|
if (filePath && !filePath.startsWith('http') && !filePath.startsWith('mailto:') && !filePath.startsWith('#')) {
|
|
293
|
-
|
|
294
|
-
const finalPath = this.normalizeFilePath(normalizedPath, workspaceRoot);
|
|
293
|
+
const finalPath = this.normalizeFilePath(filePath, workspaceRoot);
|
|
295
294
|
if (finalPath) {
|
|
296
295
|
filePaths.push(finalPath);
|
|
297
296
|
}
|
|
@@ -303,8 +302,7 @@ class AdrIngestor {
|
|
|
303
302
|
while ((match = directPathPattern.exec(content)) !== null) {
|
|
304
303
|
const filePath = match[0];
|
|
305
304
|
if (filePath && !filePath.startsWith('http') && !filePath.startsWith('mailto:') && !filePath.startsWith('#')) {
|
|
306
|
-
|
|
307
|
-
const finalPath = this.normalizeFilePath(normalizedPath, workspaceRoot);
|
|
305
|
+
const finalPath = this.normalizeFilePath(filePath, workspaceRoot);
|
|
308
306
|
if (finalPath) {
|
|
309
307
|
filePaths.push(finalPath);
|
|
310
308
|
}
|
|
@@ -321,8 +319,9 @@ class AdrIngestor {
|
|
|
321
319
|
if (!filePath || filePath.length < 3) {
|
|
322
320
|
return null;
|
|
323
321
|
}
|
|
324
|
-
// Normalize path:
|
|
325
|
-
|
|
322
|
+
// Normalize path: use PathNormalizer (case-preserving)
|
|
323
|
+
const trimmed = filePath.trim();
|
|
324
|
+
let normalizedPath = path_normalizer_1.PathNormalizer.normalizePath(trimmed);
|
|
326
325
|
// If path starts with src/ and doesn't have plugin prefix, try to find the correct format
|
|
327
326
|
if (normalizedPath.startsWith('src/') && !normalizedPath.startsWith('5d-database-plugin/')) {
|
|
328
327
|
const withPrefix = `5d-database-plugin/${normalizedPath}`;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"adr-ingestor.js","sourceRoot":"","sources":["../../src/ingestors/adr-ingestor.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"adr-ingestor.js","sourceRoot":"","sources":["../../src/ingestors/adr-ingestor.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"module-ingestor.d.ts","sourceRoot":"","sources":["../../src/ingestors/module-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,cAAe,YAAW,YAAY;IAC/C,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;IAwBpF,iBAAiB,CAAC,aAAa,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAkCxG;;OAEG;YACW,gBAAgB;
|
|
1
|
+
{"version":3,"file":"module-ingestor.d.ts","sourceRoot":"","sources":["../../src/ingestors/module-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,cAAe,YAAW,YAAY;IAC/C,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;IAwBpF,iBAAiB,CAAC,aAAa,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAkCxG;;OAEG;YACW,gBAAgB;IAiD9B;;;OAGG;IACH,OAAO,CAAC,qBAAqB;IAK7B;;OAEG;IACH,OAAO,CAAC,kBAAkB;CAG7B"}
|
|
@@ -99,6 +99,21 @@ class ModuleIngestor {
|
|
|
99
99
|
const content = fs.readFileSync(filePath, 'utf-8');
|
|
100
100
|
const contentHash = this.computeContentHash(content);
|
|
101
101
|
const sourceFilePath = this.extractSourceFilePath(path.basename(filePath), workspaceRoot);
|
|
102
|
+
// NEW: Capture file metadata from source file
|
|
103
|
+
let lineCount = null;
|
|
104
|
+
let byteSize = null;
|
|
105
|
+
try {
|
|
106
|
+
const sourceFileFullPath = path.join(workspaceRoot, sourceFilePath);
|
|
107
|
+
if (fs.existsSync(sourceFileFullPath)) {
|
|
108
|
+
const sourceContent = fs.readFileSync(sourceFileFullPath, 'utf-8');
|
|
109
|
+
const lines = sourceContent.split('\n');
|
|
110
|
+
lineCount = lines.length;
|
|
111
|
+
byteSize = Buffer.byteLength(sourceContent, 'utf-8');
|
|
112
|
+
}
|
|
113
|
+
}
|
|
114
|
+
catch {
|
|
115
|
+
// If source file not found or error reading, leave as null
|
|
116
|
+
}
|
|
102
117
|
const existing = await repository.getByFilePath(sourceFilePath, pluginId);
|
|
103
118
|
const now = new Date();
|
|
104
119
|
const module = {
|
|
@@ -107,6 +122,8 @@ class ModuleIngestor {
|
|
|
107
122
|
file_path: sourceFilePath,
|
|
108
123
|
content_hash: contentHash,
|
|
109
124
|
content_markdown: content,
|
|
125
|
+
line_count: lineCount,
|
|
126
|
+
byte_size: byteSize,
|
|
110
127
|
deleted_at: null,
|
|
111
128
|
created_at: existing?.created_at || now,
|
|
112
129
|
updated_at: now
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"module-ingestor.js","sourceRoot":"","sources":["../../src/ingestors/module-ingestor.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"module-ingestor.js","sourceRoot":"","sources":["../../src/ingestors/module-ingestor.ts"],"names":[],"mappings":"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"}
|