@noyrax/5d-database-plugin 0.1.14-beta.6 → 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 +2 -42
- package/out/api/adr-api.js.map +1 -1
- package/out/api/bootstrap-api.d.ts +1 -1
- package/out/api/bootstrap-api.d.ts.map +1 -1
- package/out/api/bootstrap-api.js +16 -3
- package/out/api/bootstrap-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 +7 -1
- package/out/api/self-explanation-api.d.ts.map +1 -1
- package/out/api/self-explanation-api.js +256 -48
- package/out/api/self-explanation-api.js.map +1 -1
- package/out/api/source-access-contract-api.d.ts.map +1 -1
- package/out/api/source-access-contract-api.js +42 -3
- package/out/api/source-access-contract-api.js.map +1 -1
- package/out/api/source-snippet-api.d.ts.map +1 -1
- package/out/api/source-snippet-api.js +3 -1
- package/out/api/source-snippet-api.js.map +1 -1
- package/out/cli/ingest-cli.js +44 -5
- package/out/cli/ingest-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/symbol-ingestor.d.ts.map +1 -1
- package/out/ingestors/symbol-ingestor.js +24 -8
- package/out/ingestors/symbol-ingestor.js.map +1 -1
- package/out/mcp/tools/gap-analysis.d.ts +3 -1
- package/out/mcp/tools/gap-analysis.d.ts.map +1 -1
- package/out/mcp/tools/gap-analysis.js +26 -7
- package/out/mcp/tools/gap-analysis.js.map +1 -1
- package/out/mcp/tools/source-access-contract.d.ts.map +1 -1
- package/out/mcp/tools/source-access-contract.js +3 -1
- package/out/mcp/tools/source-access-contract.js.map +1 -1
- package/out/models/evidence.d.ts +1 -1
- package/out/models/evidence.d.ts.map +1 -1
- package/out/models/evidence.js.map +1 -1
- package/out/models/reason-codes.d.ts +2 -0
- package/out/models/reason-codes.d.ts.map +1 -1
- package/out/models/reason-codes.js +3 -0
- package/out/models/reason-codes.js.map +1 -1
- package/out/repositories/symbol-repository.js +1 -1
- 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 -195
- 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/{007_add_source_code_spans.sql → 002_add_source_code_spans_symbols.sql} +1 -5
- package/schemas/sqlite/002_z_add_source_code_spans_symbols.sql +21 -0
- package/schemas/sqlite/{008_add_source_access_config.sql → 006_add_source_access_config.sql} +1 -1
|
@@ -41,6 +41,8 @@ var ReasonCode;
|
|
|
41
41
|
ReasonCode["FILE_NOT_FOUND"] = "FILE_NOT_FOUND";
|
|
42
42
|
/** Hash mismatch (code changed since scan) */
|
|
43
43
|
ReasonCode["HASH_MISMATCH"] = "HASH_MISMATCH";
|
|
44
|
+
/** Legacy symbol cleanup (unknown:// replaced by ts://) */
|
|
45
|
+
ReasonCode["LEGACY_CLEANUP"] = "LEGACY_CLEANUP";
|
|
44
46
|
/** Everything is OK (no error) */
|
|
45
47
|
ReasonCode["OK"] = "OK";
|
|
46
48
|
})(ReasonCode || (exports.ReasonCode = ReasonCode = {}));
|
|
@@ -73,6 +75,7 @@ function getReasonCodeDescription(code) {
|
|
|
73
75
|
[ReasonCode.PATH_MAPPING_MISSING]: 'Path mapping is missing (for snapshot imports)',
|
|
74
76
|
[ReasonCode.FILE_NOT_FOUND]: 'File not found',
|
|
75
77
|
[ReasonCode.HASH_MISMATCH]: 'Hash mismatch (code changed since scan)',
|
|
78
|
+
[ReasonCode.LEGACY_CLEANUP]: 'Legacy symbol cleanup (unknown:// replaced by ts://)',
|
|
76
79
|
[ReasonCode.OK]: 'Everything is OK'
|
|
77
80
|
};
|
|
78
81
|
return descriptions[code] || 'Unknown reason code';
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"reason-codes.js","sourceRoot":"","sources":["../../src/models/reason-codes.ts"],"names":[],"mappings":";AAAA;;;;GAIG;;;
|
|
1
|
+
{"version":3,"file":"reason-codes.js","sourceRoot":"","sources":["../../src/models/reason-codes.ts"],"names":[],"mappings":";AAAA;;;;GAIG;;;AA2DH,0CAKC;AAKD,4DAoBC;AAvFD;;GAEG;AACH,IAAY,UAgDX;AAhDD,WAAY,UAAU;IAClB,sCAAsC;IACtC,uEAAyD,CAAA;IAEzD,4BAA4B;IAC5B,uCAAyB,CAAA;IAEzB,kCAAkC;IAClC,qDAAuC,CAAA;IAEvC,8BAA8B;IAC9B,6CAA+B,CAAA;IAE/B,wBAAwB;IACxB,qDAAuC,CAAA;IAEvC,0BAA0B;IAC1B,iCAAmB,CAAA;IAEnB,8BAA8B;IAC9B,6CAA+B,CAAA;IAE/B,qCAAqC;IACrC,uDAAyC,CAAA;IAEzC,iCAAiC;IACjC,6CAA+B,CAAA;IAE/B,6BAA6B;IAC7B,yCAA2B,CAAA;IAE3B,yDAAyD;IACzD,yCAA2B,CAAA;IAE3B,qDAAqD;IACrD,2DAA6C,CAAA;IAE7C,qBAAqB;IACrB,+CAAiC,CAAA;IAEjC,8CAA8C;IAC9C,6CAA+B,CAAA;IAE/B,2DAA2D;IAC3D,+CAAiC,CAAA;IAEjC,kCAAkC;IAClC,uBAAS,CAAA;AACb,CAAC,EAhDW,UAAU,0BAAV,UAAU,QAgDrB;AAED;;;GAGG;AACH,SAAgB,eAAe,CAAC,IAAY;IACxC,IAAI,MAAM,CAAC,MAAM,CAAC,UAAU,CAAC,CAAC,QAAQ,CAAC,IAAkB,CAAC,EAAE,CAAC;QACzD,OAAO,IAAkB,CAAC;IAC9B,CAAC;IACD,OAAO,SAAS,CAAC;AACrB,CAAC;AAED;;GAEG;AACH,SAAgB,wBAAwB,CAAC,IAAgB;IACrD,MAAM,YAAY,GAA+B;QAC7C,CAAC,UAAU,CAAC,0BAA0B,CAAC,EAAE,iCAAiC;QAC1E,CAAC,UAAU,CAAC,UAAU,CAAC,EAAE,uBAAuB;QAChD,CAAC,UAAU,CAAC,iBAAiB,CAAC,EAAE,6BAA6B;QAC7D,CAAC,UAAU,CAAC,aAAa,CAAC,EAAE,yBAAyB;QACrD,CAAC,UAAU,CAAC,iBAAiB,CAAC,EAAE,mBAAmB;QACnD,CAAC,UAAU,CAAC,OAAO,CAAC,EAAE,qBAAqB;QAC3C,CAAC,UAAU,CAAC,aAAa,CAAC,EAAE,yBAAyB;QACrD,CAAC,UAAU,CAAC,kBAAkB,CAAC,EAAE,gCAAgC;QACjE,CAAC,UAAU,CAAC,aAAa,CAAC,EAAE,4BAA4B;QACxD,CAAC,UAAU,CAAC,WAAW,CAAC,EAAE,wBAAwB;QAClD,CAAC,UAAU,CAAC,WAAW,CAAC,EAAE,oDAAoD;QAC9E,CAAC,UAAU,CAAC,oBAAoB,CAAC,EAAE,gDAAgD;QACnF,CAAC,UAAU,CAAC,cAAc,CAAC,EAAE,gBAAgB;QAC7C,CAAC,UAAU,CAAC,aAAa,CAAC,EAAE,yCAAyC;QACrE,CAAC,UAAU,CAAC,cAAc,CAAC,EAAE,sDAAsD;QACnF,CAAC,UAAU,CAAC,EAAE,CAAC,EAAE,kBAAkB;KACtC,CAAC;IACF,OAAO,YAAY,CAAC,IAAI,CAAC,IAAI,qBAAqB,CAAC;AACvD,CAAC"}
|
|
@@ -41,7 +41,7 @@ class SymbolRepository extends base_repository_1.BaseRepositoryImpl {
|
|
|
41
41
|
return this.mapRowToSymbol(row);
|
|
42
42
|
}
|
|
43
43
|
async getBySymbolId(symbolId, pluginId) {
|
|
44
|
-
const row = await this.queryOne(`SELECT * FROM symbols WHERE symbol_id = ? AND plugin_id =
|
|
44
|
+
const row = await this.queryOne(`SELECT * FROM symbols WHERE symbol_id = ? AND plugin_id = ? AND deleted_at IS NULL`, [symbolId, pluginId]);
|
|
45
45
|
if (!row) {
|
|
46
46
|
return null;
|
|
47
47
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"symbol-repository.js","sourceRoot":"","sources":["../../src/repositories/symbol-repository.ts"],"names":[],"mappings":";;;AACA,uDAAuD;AAIvD;;GAEG;AACH,MAAa,gBAAiB,SAAQ,oCAA0B;IAC5D,YAAY,EAAoB;QAC5B,KAAK,CAAC,EAAE,EAAE,GAAG,CAAC,CAAC;IACnB,CAAC;IAEM,KAAK,CAAC,MAAM,CAAC,MAAc;QAC9B,MAAM,IAAI,CAAC,OAAO,CACd;2EAC+D,EAC/D;YACI,MAAM,CAAC,EAAE;YACT,MAAM,CAAC,SAAS;YAChB,MAAM,CAAC,SAAS;YAChB,MAAM,CAAC,IAAI;YACX,MAAM,CAAC,IAAI;YACX,MAAM,CAAC,IAAI;YACX,MAAM,CAAC,cAAc;YACrB,MAAM,CAAC,cAAc;YACrB,MAAM,CAAC,OAAO;YACd,MAAM,CAAC,UAAU;YACjB,MAAM,CAAC,QAAQ;YACf,MAAM,CAAC,SAAS;YAChB,MAAM,CAAC,OAAO;YACd,MAAM,CAAC,iBAAiB;YACxB,MAAM,CAAC,eAAe;YACtB,MAAM,CAAC,UAAU;YACjB,MAAM,CAAC,UAAU;YACjB,MAAM,CAAC,UAAU;SACpB,CACJ,CAAC;QACF,OAAO,MAAM,CAAC;IAClB,CAAC;IAEM,KAAK,CAAC,OAAO,CAAC,EAAU,EAAE,QAAgB;QAC7C,MAAM,GAAG,GAAG,MAAM,IAAI,CAAC,QAAQ,CAC3B,sDAAsD,EACtD,CAAC,EAAE,EAAE,QAAQ,CAAC,CACjB,CAAC;QAEF,IAAI,CAAC,GAAG,EAAE,CAAC;YACP,OAAO,IAAI,CAAC;QAChB,CAAC;QAED,OAAO,IAAI,CAAC,cAAc,CAAC,GAAG,CAAC,CAAC;IACpC,CAAC;IAEM,KAAK,CAAC,aAAa,CAAC,QAAgB,EAAE,QAAgB;QACzD,MAAM,GAAG,GAAG,MAAM,IAAI,CAAC,QAAQ,CAC3B,
|
|
1
|
+
{"version":3,"file":"symbol-repository.js","sourceRoot":"","sources":["../../src/repositories/symbol-repository.ts"],"names":[],"mappings":"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"}
|
|
@@ -33,11 +33,6 @@ export declare class CrossDimensionLinker {
|
|
|
33
33
|
* @returns Array of entity references to ADRs
|
|
34
34
|
*/
|
|
35
35
|
getAdrsForFilePath(filePath: string, pluginId: string): Promise<EntityReference[]>;
|
|
36
|
-
/**
|
|
37
|
-
* Normalizes a file path to generate possible variants for flexible matching.
|
|
38
|
-
* Mirrors the logic used in ModuleApi/AgrApi (forward slashes, optional plugin prefixes).
|
|
39
|
-
*/
|
|
40
|
-
private normalizeFilePath;
|
|
41
36
|
/**
|
|
42
37
|
* Gets all symbols for a module.
|
|
43
38
|
*
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"cross-dimension-linker.d.ts","sourceRoot":"","sources":["../../src/services/cross-dimension-linker.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAE,MAAM,0BAA0B,CAAC;AAC1D,OAAO,EAAE,QAAQ,EAAE,MAAM,mBAAmB,CAAC;AAI7C,OAAO,EAAE,eAAe,EAAE,MAAM,4BAA4B,CAAC;
|
|
1
|
+
{"version":3,"file":"cross-dimension-linker.d.ts","sourceRoot":"","sources":["../../src/services/cross-dimension-linker.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAE,MAAM,0BAA0B,CAAC;AAC1D,OAAO,EAAE,QAAQ,EAAE,MAAM,mBAAmB,CAAC;AAI7C,OAAO,EAAE,eAAe,EAAE,MAAM,4BAA4B,CAAC;AAG7D;;;GAGG;AACH,qBAAa,oBAAoB;IAC7B,OAAO,CAAC,SAAS,CAAiB;IAClC,OAAO,CAAC,QAAQ,CAAW;gBAEf,SAAS,EAAE,cAAc,EAAE,QAAQ,EAAE,QAAQ;IAKzD;;;;;;OAMG;IACU,qBAAqB,CAC9B,QAAQ,EAAE,MAAM,EAChB,QAAQ,EAAE,MAAM,GACjB,OAAO,CAAC,eAAe,GAAG,IAAI,CAAC;IAwBlC;;;;;;OAMG;IACU,gBAAgB,CACzB,SAAS,EAAE,MAAM,EACjB,QAAQ,EAAE,MAAM,GACjB,OAAO,CAAC,eAAe,GAAG,IAAI,CAAC;IAgBlC;;;;;;OAMG;IACU,kBAAkB,CAC3B,QAAQ,EAAE,MAAM,EAChB,QAAQ,EAAE,MAAM,GACjB,OAAO,CAAC,eAAe,EAAE,CAAC;IAuC7B;;;;;;OAMG;IACU,mBAAmB,CAC5B,QAAQ,EAAE,MAAM,EAChB,QAAQ,EAAE,MAAM,GACjB,OAAO,CAAC,eAAe,EAAE,CAAC;CAYhC"}
|
|
@@ -4,6 +4,7 @@ exports.CrossDimensionLinker = void 0;
|
|
|
4
4
|
const module_repository_1 = require("../repositories/module-repository");
|
|
5
5
|
const symbol_repository_1 = require("../repositories/symbol-repository");
|
|
6
6
|
const adr_repository_1 = require("../repositories/adr-repository");
|
|
7
|
+
const path_normalizer_1 = require("../core/path-normalizer");
|
|
7
8
|
/**
|
|
8
9
|
* Links entities across dimensions using external IDs.
|
|
9
10
|
* Resolves cross-dimension references (e.g., symbol_id → module_id).
|
|
@@ -81,7 +82,7 @@ class CrossDimensionLinker {
|
|
|
81
82
|
.sort((a, b) => a.external_id.localeCompare(b.external_id));
|
|
82
83
|
}
|
|
83
84
|
// Fallback: normalize path variants (Cross-Analysis previously bypassed AdrApi normalization)
|
|
84
|
-
const variants =
|
|
85
|
+
const variants = path_normalizer_1.PathNormalizer.generateLookupVariants(filePath);
|
|
85
86
|
const foundById = new Map();
|
|
86
87
|
for (const variant of variants) {
|
|
87
88
|
const adrs = await adrRepo.findByFilePath(variant, pluginId);
|
|
@@ -99,40 +100,6 @@ class CrossDimensionLinker {
|
|
|
99
100
|
}))
|
|
100
101
|
.sort((a, b) => a.external_id.localeCompare(b.external_id));
|
|
101
102
|
}
|
|
102
|
-
/**
|
|
103
|
-
* Normalizes a file path to generate possible variants for flexible matching.
|
|
104
|
-
* Mirrors the logic used in ModuleApi/AgrApi (forward slashes, optional plugin prefixes).
|
|
105
|
-
*/
|
|
106
|
-
normalizeFilePath(filePath) {
|
|
107
|
-
const variants = [];
|
|
108
|
-
// Normalize separators to forward slashes
|
|
109
|
-
let normalized = filePath.replace(/\\/g, '/');
|
|
110
|
-
variants.push(normalized);
|
|
111
|
-
// Remove leading slashes
|
|
112
|
-
const withoutLeadingSlash = normalized.replace(/^\/+/, '');
|
|
113
|
-
if (withoutLeadingSlash !== normalized) {
|
|
114
|
-
variants.push(withoutLeadingSlash);
|
|
115
|
-
}
|
|
116
|
-
const pluginPrefixes = ['5d-database-plugin/', 'documentation-system-plugin/', 'mcp-server/'];
|
|
117
|
-
// Remove common plugin prefixes
|
|
118
|
-
for (const prefix of pluginPrefixes) {
|
|
119
|
-
if (normalized.startsWith(prefix)) {
|
|
120
|
-
variants.push(normalized.substring(prefix.length));
|
|
121
|
-
}
|
|
122
|
-
if (withoutLeadingSlash.startsWith(prefix)) {
|
|
123
|
-
variants.push(withoutLeadingSlash.substring(prefix.length));
|
|
124
|
-
}
|
|
125
|
-
}
|
|
126
|
-
// Add variants WITH plugin prefixes (if path doesn't already have one)
|
|
127
|
-
const hasPluginPrefix = pluginPrefixes.some(prefix => normalized.startsWith(prefix) || withoutLeadingSlash.startsWith(prefix));
|
|
128
|
-
if (!hasPluginPrefix) {
|
|
129
|
-
for (const prefix of pluginPrefixes) {
|
|
130
|
-
variants.push(`${prefix}${withoutLeadingSlash}`);
|
|
131
|
-
variants.push(`${prefix}${normalized}`);
|
|
132
|
-
}
|
|
133
|
-
}
|
|
134
|
-
return Array.from(new Set(variants));
|
|
135
|
-
}
|
|
136
103
|
/**
|
|
137
104
|
* Gets all symbols for a module.
|
|
138
105
|
*
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"cross-dimension-linker.js","sourceRoot":"","sources":["../../src/services/cross-dimension-linker.ts"],"names":[],"mappings":";;;AAEA,yEAAqE;AACrE,yEAAqE;AACrE,mEAA+D;
|
|
1
|
+
{"version":3,"file":"cross-dimension-linker.js","sourceRoot":"","sources":["../../src/services/cross-dimension-linker.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,195 +1,196 @@
|
|
|
1
|
-
{
|
|
2
|
-
"name": "@noyrax/5d-database-plugin",
|
|
3
|
-
"displayName": "5D Database Plugin",
|
|
4
|
-
"description": "5-dimensional database layer for documentation system with semantic brain integration. Provides SQLite databases for modules, symbols, dependencies, ADRs, and changes. Includes semantic search and MCP server integration for AI agents.",
|
|
5
|
-
"version": "0.1.14-beta.
|
|
6
|
-
"publisher": "noyrax",
|
|
7
|
-
"license": "MIT",
|
|
8
|
-
"repository": {
|
|
9
|
-
"type": "git",
|
|
10
|
-
"url": "https://github.com/noyrax/noyrax.git",
|
|
11
|
-
"directory": "5d-database-plugin"
|
|
12
|
-
},
|
|
13
|
-
"publishConfig": {
|
|
14
|
-
"access": "public"
|
|
15
|
-
},
|
|
16
|
-
"keywords": [
|
|
17
|
-
"documentation",
|
|
18
|
-
"database",
|
|
19
|
-
"semantic-search",
|
|
20
|
-
"mcp",
|
|
21
|
-
"llm",
|
|
22
|
-
"ai",
|
|
23
|
-
"code-analysis",
|
|
24
|
-
"architecture",
|
|
25
|
-
"5d-database",
|
|
26
|
-
"noyrax"
|
|
27
|
-
],
|
|
28
|
-
"files": [
|
|
29
|
-
"out/",
|
|
30
|
-
"schemas/",
|
|
31
|
-
"README.md",
|
|
32
|
-
"LICENSE",
|
|
33
|
-
"package.json",
|
|
34
|
-
"MCP_SERVER_SETUP.md",
|
|
35
|
-
"SETUP_NEW_PROJECT.md",
|
|
36
|
-
"CHROMADB_SETUP.md",
|
|
37
|
-
"QUICK_START.md",
|
|
38
|
-
"ADR_VORSCHLAEGE.md",
|
|
39
|
-
"SYSTEM_ANALYSIS_REPORT.md",
|
|
40
|
-
"INSTALLATION_READINESS.md",
|
|
41
|
-
"MCP_SERVER_TEST_REPORT.md",
|
|
42
|
-
"KNOWN_ISSUES.md",
|
|
43
|
-
"IMPROVEMENT_ROADMAP.md",
|
|
44
|
-
"NOYRAX_INTEGRATION.md",
|
|
45
|
-
"NOYRAX_WORKSPACE_INTEGRATION.md"
|
|
46
|
-
],
|
|
47
|
-
"engines": {
|
|
48
|
-
"vscode": "^1.74.0"
|
|
49
|
-
},
|
|
50
|
-
"categories": [
|
|
51
|
-
"Other"
|
|
52
|
-
],
|
|
53
|
-
"activationEvents": [
|
|
54
|
-
"onStartupFinished"
|
|
55
|
-
],
|
|
56
|
-
"main": "./out/extension.js",
|
|
57
|
-
"exports": {
|
|
58
|
-
".": "./out/extension.js",
|
|
59
|
-
"./api": "./out/api/index.js"
|
|
60
|
-
},
|
|
61
|
-
"bin": {
|
|
62
|
-
"noyrax-5d-database": "./out/cli/ingest-cli.js",
|
|
63
|
-
"noyrax-5d-database-query": "./out/cli/query-cli.js",
|
|
64
|
-
"noyrax-5d-database-tool": "./out/cli/tool-cli.js",
|
|
65
|
-
"noyrax-5d-database-search": "./out/cli/semantic-search-cli.js",
|
|
66
|
-
"noyrax-5d-database-embedding": "./out/cli/embedding-cli.js",
|
|
67
|
-
"noyrax-5d-database-debug-plugin-id": "./out/cli/debug-plugin-id.js"
|
|
68
|
-
},
|
|
69
|
-
"contributes": {
|
|
70
|
-
"commands": [
|
|
71
|
-
{
|
|
72
|
-
"command": "5d-database.ingest",
|
|
73
|
-
"title": "Ingest Documentation"
|
|
74
|
-
},
|
|
75
|
-
{
|
|
76
|
-
"command": "5d-database.search",
|
|
77
|
-
"title": "Semantic Search"
|
|
78
|
-
},
|
|
79
|
-
{
|
|
80
|
-
"command": "5d-database.showModuleDetail",
|
|
81
|
-
"title": "Show Module Detail"
|
|
82
|
-
},
|
|
83
|
-
{
|
|
84
|
-
"command": "5d-database.showSymbolDetail",
|
|
85
|
-
"title": "Show Symbol Detail"
|
|
86
|
-
},
|
|
87
|
-
{
|
|
88
|
-
"command": "5d-database.showAdrDetail",
|
|
89
|
-
"title": "Show ADR Detail"
|
|
90
|
-
},
|
|
91
|
-
{
|
|
92
|
-
"command": "5d-database.showDependencyDetail",
|
|
93
|
-
"title": "Show Dependency Detail"
|
|
94
|
-
},
|
|
95
|
-
{
|
|
96
|
-
"command": "5d-database.showChangeDetail",
|
|
97
|
-
"title": "Show Change Report Detail"
|
|
98
|
-
},
|
|
99
|
-
{
|
|
100
|
-
"command": "5d-database.openSourceFile",
|
|
101
|
-
"title": "Open Source File"
|
|
102
|
-
},
|
|
103
|
-
{
|
|
104
|
-
"command": "5d-database.generate-docs",
|
|
105
|
-
"title": "Generate Documentation (Noyrax)"
|
|
106
|
-
},
|
|
107
|
-
{
|
|
108
|
-
"command": "5d-database.full-workflow",
|
|
109
|
-
"title": "Full Workflow (Generate + Ingest)"
|
|
110
|
-
},
|
|
111
|
-
{
|
|
112
|
-
"command": "5d-database.merge-workspaces",
|
|
113
|
-
"title": "Merge Workspaces (Combine Both Systems)"
|
|
114
|
-
}
|
|
115
|
-
],
|
|
116
|
-
"menus": {
|
|
117
|
-
"view/item/context": [
|
|
118
|
-
{
|
|
119
|
-
"command": "5d-database.openSourceFile",
|
|
120
|
-
"when": "view == 5d-database-explorer && viewItem == module",
|
|
121
|
-
"group": "navigation"
|
|
122
|
-
},
|
|
123
|
-
{
|
|
124
|
-
"command": "5d-database.openSourceFile",
|
|
125
|
-
"when": "view == 5d-database-explorer && viewItem == symbol",
|
|
126
|
-
"group": "navigation"
|
|
127
|
-
},
|
|
128
|
-
{
|
|
129
|
-
"command": "5d-database.openSourceFile",
|
|
130
|
-
"when": "view == 5d-database-explorer && viewItem == dependency",
|
|
131
|
-
"group": "navigation"
|
|
132
|
-
}
|
|
133
|
-
]
|
|
134
|
-
},
|
|
135
|
-
"views": {
|
|
136
|
-
"explorer": [
|
|
137
|
-
{
|
|
138
|
-
"id": "5d-database-explorer",
|
|
139
|
-
"name": "5D Database Explorer"
|
|
140
|
-
}
|
|
141
|
-
]
|
|
142
|
-
}
|
|
143
|
-
},
|
|
144
|
-
"scripts": {
|
|
145
|
-
"compile": "tsc -p ./",
|
|
146
|
-
"postcompile": "npm run scan && npm run validate && npm run verify:adrs",
|
|
147
|
-
"scan": "cd .. && noyrax-scan",
|
|
148
|
-
"validate": "cd .. && noyrax-validate",
|
|
149
|
-
"verify:adrs": "cd .. && noyrax-verify-adrs",
|
|
150
|
-
"verify:architecture": "cd .. && noyrax-verify-architecture",
|
|
151
|
-
"verify:imports": "cd .. && noyrax-verify-imports",
|
|
152
|
-
"verify:all": "npm run compile && npm run verify:architecture && npm run verify:imports",
|
|
153
|
-
"watch": "tsc -watch -p ./",
|
|
154
|
-
"package": "vsce package --allow-missing-repository",
|
|
155
|
-
"prepublishOnly": "npm run compile",
|
|
156
|
-
"test": "jest",
|
|
157
|
-
"test:coverage": "jest --coverage",
|
|
158
|
-
"test:v-dimension": "node out/cli/test-v-dimension.js",
|
|
159
|
-
"test:chromadb": "node out/cli/test-chromadb.js",
|
|
160
|
-
"verify:openai-key": "node out/cli/verify-openai-key.js",
|
|
161
|
-
"verify:vss-status": "node out/cli/verify-vss-status.js",
|
|
162
|
-
"merge:workspaces": "node out/cli/merge-workspaces-cli.js"
|
|
163
|
-
},
|
|
164
|
-
"dependencies": {
|
|
165
|
-
"@chroma-core/default-embed": "^0.1.9",
|
|
166
|
-
"@modelcontextprotocol/sdk": "^1.25.1",
|
|
167
|
-
"
|
|
168
|
-
"
|
|
169
|
-
"
|
|
170
|
-
"
|
|
171
|
-
"
|
|
172
|
-
"
|
|
173
|
-
"
|
|
174
|
-
|
|
175
|
-
|
|
176
|
-
|
|
177
|
-
"@types/
|
|
178
|
-
"@types/
|
|
179
|
-
"@types/
|
|
180
|
-
"@types/
|
|
181
|
-
"@vscode
|
|
182
|
-
"
|
|
183
|
-
"
|
|
184
|
-
"
|
|
185
|
-
|
|
186
|
-
|
|
187
|
-
|
|
188
|
-
|
|
189
|
-
|
|
190
|
-
|
|
191
|
-
|
|
192
|
-
"
|
|
193
|
-
|
|
194
|
-
|
|
195
|
-
}
|
|
1
|
+
{
|
|
2
|
+
"name": "@noyrax/5d-database-plugin",
|
|
3
|
+
"displayName": "5D Database Plugin",
|
|
4
|
+
"description": "5-dimensional database layer for documentation system with semantic brain integration. Provides SQLite databases for modules, symbols, dependencies, ADRs, and changes. Includes semantic search and MCP server integration for AI agents.",
|
|
5
|
+
"version": "0.1.14-beta.8",
|
|
6
|
+
"publisher": "noyrax",
|
|
7
|
+
"license": "MIT",
|
|
8
|
+
"repository": {
|
|
9
|
+
"type": "git",
|
|
10
|
+
"url": "https://github.com/noyrax/noyrax.git",
|
|
11
|
+
"directory": "5d-database-plugin"
|
|
12
|
+
},
|
|
13
|
+
"publishConfig": {
|
|
14
|
+
"access": "public"
|
|
15
|
+
},
|
|
16
|
+
"keywords": [
|
|
17
|
+
"documentation",
|
|
18
|
+
"database",
|
|
19
|
+
"semantic-search",
|
|
20
|
+
"mcp",
|
|
21
|
+
"llm",
|
|
22
|
+
"ai",
|
|
23
|
+
"code-analysis",
|
|
24
|
+
"architecture",
|
|
25
|
+
"5d-database",
|
|
26
|
+
"noyrax"
|
|
27
|
+
],
|
|
28
|
+
"files": [
|
|
29
|
+
"out/",
|
|
30
|
+
"schemas/",
|
|
31
|
+
"README.md",
|
|
32
|
+
"LICENSE",
|
|
33
|
+
"package.json",
|
|
34
|
+
"MCP_SERVER_SETUP.md",
|
|
35
|
+
"SETUP_NEW_PROJECT.md",
|
|
36
|
+
"CHROMADB_SETUP.md",
|
|
37
|
+
"QUICK_START.md",
|
|
38
|
+
"ADR_VORSCHLAEGE.md",
|
|
39
|
+
"SYSTEM_ANALYSIS_REPORT.md",
|
|
40
|
+
"INSTALLATION_READINESS.md",
|
|
41
|
+
"MCP_SERVER_TEST_REPORT.md",
|
|
42
|
+
"KNOWN_ISSUES.md",
|
|
43
|
+
"IMPROVEMENT_ROADMAP.md",
|
|
44
|
+
"NOYRAX_INTEGRATION.md",
|
|
45
|
+
"NOYRAX_WORKSPACE_INTEGRATION.md"
|
|
46
|
+
],
|
|
47
|
+
"engines": {
|
|
48
|
+
"vscode": "^1.74.0"
|
|
49
|
+
},
|
|
50
|
+
"categories": [
|
|
51
|
+
"Other"
|
|
52
|
+
],
|
|
53
|
+
"activationEvents": [
|
|
54
|
+
"onStartupFinished"
|
|
55
|
+
],
|
|
56
|
+
"main": "./out/extension.js",
|
|
57
|
+
"exports": {
|
|
58
|
+
".": "./out/extension.js",
|
|
59
|
+
"./api": "./out/api/index.js"
|
|
60
|
+
},
|
|
61
|
+
"bin": {
|
|
62
|
+
"noyrax-5d-database": "./out/cli/ingest-cli.js",
|
|
63
|
+
"noyrax-5d-database-query": "./out/cli/query-cli.js",
|
|
64
|
+
"noyrax-5d-database-tool": "./out/cli/tool-cli.js",
|
|
65
|
+
"noyrax-5d-database-search": "./out/cli/semantic-search-cli.js",
|
|
66
|
+
"noyrax-5d-database-embedding": "./out/cli/embedding-cli.js",
|
|
67
|
+
"noyrax-5d-database-debug-plugin-id": "./out/cli/debug-plugin-id.js"
|
|
68
|
+
},
|
|
69
|
+
"contributes": {
|
|
70
|
+
"commands": [
|
|
71
|
+
{
|
|
72
|
+
"command": "5d-database.ingest",
|
|
73
|
+
"title": "Ingest Documentation"
|
|
74
|
+
},
|
|
75
|
+
{
|
|
76
|
+
"command": "5d-database.search",
|
|
77
|
+
"title": "Semantic Search"
|
|
78
|
+
},
|
|
79
|
+
{
|
|
80
|
+
"command": "5d-database.showModuleDetail",
|
|
81
|
+
"title": "Show Module Detail"
|
|
82
|
+
},
|
|
83
|
+
{
|
|
84
|
+
"command": "5d-database.showSymbolDetail",
|
|
85
|
+
"title": "Show Symbol Detail"
|
|
86
|
+
},
|
|
87
|
+
{
|
|
88
|
+
"command": "5d-database.showAdrDetail",
|
|
89
|
+
"title": "Show ADR Detail"
|
|
90
|
+
},
|
|
91
|
+
{
|
|
92
|
+
"command": "5d-database.showDependencyDetail",
|
|
93
|
+
"title": "Show Dependency Detail"
|
|
94
|
+
},
|
|
95
|
+
{
|
|
96
|
+
"command": "5d-database.showChangeDetail",
|
|
97
|
+
"title": "Show Change Report Detail"
|
|
98
|
+
},
|
|
99
|
+
{
|
|
100
|
+
"command": "5d-database.openSourceFile",
|
|
101
|
+
"title": "Open Source File"
|
|
102
|
+
},
|
|
103
|
+
{
|
|
104
|
+
"command": "5d-database.generate-docs",
|
|
105
|
+
"title": "Generate Documentation (Noyrax)"
|
|
106
|
+
},
|
|
107
|
+
{
|
|
108
|
+
"command": "5d-database.full-workflow",
|
|
109
|
+
"title": "Full Workflow (Generate + Ingest)"
|
|
110
|
+
},
|
|
111
|
+
{
|
|
112
|
+
"command": "5d-database.merge-workspaces",
|
|
113
|
+
"title": "Merge Workspaces (Combine Both Systems)"
|
|
114
|
+
}
|
|
115
|
+
],
|
|
116
|
+
"menus": {
|
|
117
|
+
"view/item/context": [
|
|
118
|
+
{
|
|
119
|
+
"command": "5d-database.openSourceFile",
|
|
120
|
+
"when": "view == 5d-database-explorer && viewItem == module",
|
|
121
|
+
"group": "navigation"
|
|
122
|
+
},
|
|
123
|
+
{
|
|
124
|
+
"command": "5d-database.openSourceFile",
|
|
125
|
+
"when": "view == 5d-database-explorer && viewItem == symbol",
|
|
126
|
+
"group": "navigation"
|
|
127
|
+
},
|
|
128
|
+
{
|
|
129
|
+
"command": "5d-database.openSourceFile",
|
|
130
|
+
"when": "view == 5d-database-explorer && viewItem == dependency",
|
|
131
|
+
"group": "navigation"
|
|
132
|
+
}
|
|
133
|
+
]
|
|
134
|
+
},
|
|
135
|
+
"views": {
|
|
136
|
+
"explorer": [
|
|
137
|
+
{
|
|
138
|
+
"id": "5d-database-explorer",
|
|
139
|
+
"name": "5D Database Explorer"
|
|
140
|
+
}
|
|
141
|
+
]
|
|
142
|
+
}
|
|
143
|
+
},
|
|
144
|
+
"scripts": {
|
|
145
|
+
"compile": "tsc -p ./",
|
|
146
|
+
"postcompile": "npm run scan && npm run validate && npm run verify:adrs",
|
|
147
|
+
"scan": "cd .. && noyrax-scan",
|
|
148
|
+
"validate": "cd .. && noyrax-validate",
|
|
149
|
+
"verify:adrs": "cd .. && noyrax-verify-adrs",
|
|
150
|
+
"verify:architecture": "cd .. && noyrax-verify-architecture",
|
|
151
|
+
"verify:imports": "cd .. && noyrax-verify-imports",
|
|
152
|
+
"verify:all": "npm run compile && npm run verify:architecture && npm run verify:imports",
|
|
153
|
+
"watch": "tsc -watch -p ./",
|
|
154
|
+
"package": "vsce package --allow-missing-repository",
|
|
155
|
+
"prepublishOnly": "npm run compile",
|
|
156
|
+
"test": "jest",
|
|
157
|
+
"test:coverage": "jest --coverage",
|
|
158
|
+
"test:v-dimension": "node out/cli/test-v-dimension.js",
|
|
159
|
+
"test:chromadb": "node out/cli/test-chromadb.js",
|
|
160
|
+
"verify:openai-key": "node out/cli/verify-openai-key.js",
|
|
161
|
+
"verify:vss-status": "node out/cli/verify-vss-status.js",
|
|
162
|
+
"merge:workspaces": "node out/cli/merge-workspaces-cli.js"
|
|
163
|
+
},
|
|
164
|
+
"dependencies": {
|
|
165
|
+
"@chroma-core/default-embed": "^0.1.9",
|
|
166
|
+
"@modelcontextprotocol/sdk": "^1.25.1",
|
|
167
|
+
"@noyrax/5d-database-plugin": "file:5d-database-plugin/5d-database-plugin/5d-database-plugin/5d-database-plugin/noyrax-5d-database-plugin-0.1.14-beta.7.tgz",
|
|
168
|
+
"chromadb": "^3.2.0",
|
|
169
|
+
"dotenv": "^16.4.5",
|
|
170
|
+
"openai": "^6.15.0",
|
|
171
|
+
"sqlite-vss": "^0.1.2",
|
|
172
|
+
"sqlite3": "^5.1.6",
|
|
173
|
+
"uuid": "^9.0.1",
|
|
174
|
+
"zod": "^4.2.1"
|
|
175
|
+
},
|
|
176
|
+
"devDependencies": {
|
|
177
|
+
"@types/dotenv": "^6.1.1",
|
|
178
|
+
"@types/jest": "^30.0.0",
|
|
179
|
+
"@types/node": "16.x",
|
|
180
|
+
"@types/uuid": "^10.0.0",
|
|
181
|
+
"@types/vscode": "^1.74.0",
|
|
182
|
+
"@vscode/vsce": "^2.22.0",
|
|
183
|
+
"jest": "^29.7.0",
|
|
184
|
+
"ts-jest": "^29.4.6",
|
|
185
|
+
"typescript": "^5.1.6"
|
|
186
|
+
},
|
|
187
|
+
"peerDependencies": {
|
|
188
|
+
"@noyrax/documentation-system-plugin": "*"
|
|
189
|
+
},
|
|
190
|
+
"peerDependenciesMeta": {
|
|
191
|
+
"@noyrax/documentation-system-plugin": {
|
|
192
|
+
"optional": true,
|
|
193
|
+
"description": "Documentation System Plugin (Noyrax) must be installed and docs/ must be generated before using 5D Database Plugin"
|
|
194
|
+
}
|
|
195
|
+
}
|
|
196
|
+
}
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
-- Migration 001: Add source code span tracking to modules table (X-Dimension)
|
|
2
|
+
-- Adds file size metadata to modules table
|
|
3
|
+
|
|
4
|
+
-- Add file size metadata to modules table
|
|
5
|
+
ALTER TABLE modules ADD COLUMN line_count INTEGER;
|
|
6
|
+
ALTER TABLE modules ADD COLUMN byte_size INTEGER;
|
|
7
|
+
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
-- Migration 001: Add source code span tracking to modules table (X-Dimension)
|
|
2
|
+
-- Adds file size metadata to modules table
|
|
3
|
+
|
|
4
|
+
-- Add file size metadata to modules table (only if columns don't exist)
|
|
5
|
+
-- SQLite doesn't support IF NOT EXISTS for ALTER TABLE ADD COLUMN,
|
|
6
|
+
-- so we check if the column exists first using a pragma query
|
|
7
|
+
-- This migration is idempotent - it can be run multiple times safely
|
|
8
|
+
|
|
9
|
+
-- Note: This migration may fail if columns already exist (from migration 007).
|
|
10
|
+
-- That's OK - the migration manager will handle it gracefully.
|
|
11
|
+
ALTER TABLE modules ADD COLUMN line_count INTEGER;
|
|
12
|
+
ALTER TABLE modules ADD COLUMN byte_size INTEGER;
|
|
13
|
+
|
package/schemas/sqlite/{007_add_source_code_spans.sql → 002_add_source_code_spans_symbols.sql}
RENAMED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
-- Migration
|
|
1
|
+
-- Migration 002: Add source code span tracking to symbols table (Y-Dimension)
|
|
2
2
|
-- Adds line/column/byte offset tracking for source code location
|
|
3
3
|
|
|
4
4
|
-- Add span tracking columns to symbols table
|
|
@@ -13,7 +13,3 @@ ALTER TABLE symbols ADD COLUMN byte_offset_end INTEGER;
|
|
|
13
13
|
CREATE INDEX IF NOT EXISTS idx_symbols_span
|
|
14
14
|
ON symbols(path, start_line, end_line);
|
|
15
15
|
|
|
16
|
-
-- Add file size metadata to modules table
|
|
17
|
-
ALTER TABLE modules ADD COLUMN line_count INTEGER;
|
|
18
|
-
ALTER TABLE modules ADD COLUMN byte_size INTEGER;
|
|
19
|
-
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
-- Migration 002: Add source code span tracking to symbols table (Y-Dimension)
|
|
2
|
+
-- Adds line/column/byte offset tracking for source code location
|
|
3
|
+
|
|
4
|
+
-- Add span tracking columns to symbols table (only if columns don't exist)
|
|
5
|
+
-- SQLite doesn't support IF NOT EXISTS for ALTER TABLE ADD COLUMN,
|
|
6
|
+
-- so we check if the column exists first using a pragma query
|
|
7
|
+
-- This migration is idempotent - it can be run multiple times safely
|
|
8
|
+
|
|
9
|
+
-- Note: This migration may fail if columns already exist (from migration 007).
|
|
10
|
+
-- That's OK - the migration manager will handle it gracefully.
|
|
11
|
+
ALTER TABLE symbols ADD COLUMN start_line INTEGER;
|
|
12
|
+
ALTER TABLE symbols ADD COLUMN end_line INTEGER;
|
|
13
|
+
ALTER TABLE symbols ADD COLUMN start_col INTEGER;
|
|
14
|
+
ALTER TABLE symbols ADD COLUMN end_col INTEGER;
|
|
15
|
+
ALTER TABLE symbols ADD COLUMN byte_offset_start INTEGER;
|
|
16
|
+
ALTER TABLE symbols ADD COLUMN byte_offset_end INTEGER;
|
|
17
|
+
|
|
18
|
+
-- Add index for span lookups
|
|
19
|
+
CREATE INDEX IF NOT EXISTS idx_symbols_span
|
|
20
|
+
ON symbols(path, start_line, end_line);
|
|
21
|
+
|