@noyrax/5d-database-plugin 0.1.0
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/ADR_VORSCHLAEGE.md +247 -0
- package/CHROMADB_SETUP.md +69 -0
- package/IMPROVEMENT_ROADMAP.md +435 -0
- package/INSTALLATION_READINESS.md +150 -0
- package/KNOWN_ISSUES.md +210 -0
- package/LICENSE +21 -0
- package/MCP_SERVER_SETUP.md +359 -0
- package/MCP_SERVER_TEST_REPORT.md +206 -0
- package/NOYRAX_INTEGRATION.md +224 -0
- package/QUICK_START.md +316 -0
- package/README.md +240 -0
- package/SETUP_NEW_PROJECT.md +260 -0
- package/SYSTEM_ANALYSIS_REPORT.md +341 -0
- package/out/api/adr-api.d.ts +22 -0
- package/out/api/adr-api.d.ts.map +1 -0
- package/out/api/adr-api.js +38 -0
- package/out/api/adr-api.js.map +1 -0
- package/out/api/bootstrap-api.d.ts +43 -0
- package/out/api/bootstrap-api.d.ts.map +1 -0
- package/out/api/bootstrap-api.js +88 -0
- package/out/api/bootstrap-api.js.map +1 -0
- package/out/api/change-api.d.ts +30 -0
- package/out/api/change-api.d.ts.map +1 -0
- package/out/api/change-api.js +54 -0
- package/out/api/change-api.js.map +1 -0
- package/out/api/context-builder.d.ts +81 -0
- package/out/api/context-builder.d.ts.map +1 -0
- package/out/api/context-builder.js +288 -0
- package/out/api/context-builder.js.map +1 -0
- package/out/api/cross-dimension-api.d.ts +43 -0
- package/out/api/cross-dimension-api.d.ts.map +1 -0
- package/out/api/cross-dimension-api.js +55 -0
- package/out/api/cross-dimension-api.js.map +1 -0
- package/out/api/dependency-api.d.ts +26 -0
- package/out/api/dependency-api.d.ts.map +1 -0
- package/out/api/dependency-api.js +46 -0
- package/out/api/dependency-api.js.map +1 -0
- package/out/api/learning-path-api.d.ts +49 -0
- package/out/api/learning-path-api.d.ts.map +1 -0
- package/out/api/learning-path-api.js +174 -0
- package/out/api/learning-path-api.js.map +1 -0
- package/out/api/module-api.d.ts +26 -0
- package/out/api/module-api.d.ts.map +1 -0
- package/out/api/module-api.js +46 -0
- package/out/api/module-api.js.map +1 -0
- package/out/api/search-api.d.ts +64 -0
- package/out/api/search-api.d.ts.map +1 -0
- package/out/api/search-api.js +235 -0
- package/out/api/search-api.js.map +1 -0
- package/out/api/self-explanation-api.d.ts +71 -0
- package/out/api/self-explanation-api.d.ts.map +1 -0
- package/out/api/self-explanation-api.js +153 -0
- package/out/api/self-explanation-api.js.map +1 -0
- package/out/api/semantic-search-api.d.ts +64 -0
- package/out/api/semantic-search-api.d.ts.map +1 -0
- package/out/api/semantic-search-api.js +205 -0
- package/out/api/semantic-search-api.js.map +1 -0
- package/out/api/symbol-api.d.ts +22 -0
- package/out/api/symbol-api.d.ts.map +1 -0
- package/out/api/symbol-api.js +38 -0
- package/out/api/symbol-api.js.map +1 -0
- package/out/api/vector-api.d.ts +26 -0
- package/out/api/vector-api.d.ts.map +1 -0
- package/out/api/vector-api.js +49 -0
- package/out/api/vector-api.js.map +1 -0
- package/out/cli/embedding-cli.d.ts +3 -0
- package/out/cli/embedding-cli.d.ts.map +1 -0
- package/out/cli/embedding-cli.js +151 -0
- package/out/cli/embedding-cli.js.map +1 -0
- package/out/cli/ingest-cli.d.ts +3 -0
- package/out/cli/ingest-cli.d.ts.map +1 -0
- package/out/cli/ingest-cli.js +145 -0
- package/out/cli/ingest-cli.js.map +1 -0
- package/out/cli/mcp-server-cli.d.ts +3 -0
- package/out/cli/mcp-server-cli.d.ts.map +1 -0
- package/out/cli/mcp-server-cli.js +159 -0
- package/out/cli/mcp-server-cli.js.map +1 -0
- package/out/cli/query-cli.d.ts +3 -0
- package/out/cli/query-cli.d.ts.map +1 -0
- package/out/cli/query-cli.js +217 -0
- package/out/cli/query-cli.js.map +1 -0
- package/out/cli/semantic-search-cli.d.ts +3 -0
- package/out/cli/semantic-search-cli.d.ts.map +1 -0
- package/out/cli/semantic-search-cli.js +196 -0
- package/out/cli/semantic-search-cli.js.map +1 -0
- package/out/cli/test-chromadb.d.ts +3 -0
- package/out/cli/test-chromadb.d.ts.map +1 -0
- package/out/cli/test-chromadb.js +204 -0
- package/out/cli/test-chromadb.js.map +1 -0
- package/out/cli/test-v-dimension.d.ts +3 -0
- package/out/cli/test-v-dimension.d.ts.map +1 -0
- package/out/cli/test-v-dimension.js +330 -0
- package/out/cli/test-v-dimension.js.map +1 -0
- package/out/cli/tool-cli.d.ts +3 -0
- package/out/cli/tool-cli.d.ts.map +1 -0
- package/out/cli/tool-cli.js +237 -0
- package/out/cli/tool-cli.js.map +1 -0
- package/out/cli/verify-openai-key.d.ts +3 -0
- package/out/cli/verify-openai-key.d.ts.map +1 -0
- package/out/cli/verify-openai-key.js +141 -0
- package/out/cli/verify-openai-key.js.map +1 -0
- package/out/cli/verify-vss-status.d.ts +3 -0
- package/out/cli/verify-vss-status.d.ts.map +1 -0
- package/out/cli/verify-vss-status.js +185 -0
- package/out/cli/verify-vss-status.js.map +1 -0
- package/out/core/chromadb-vector-database.d.ts +52 -0
- package/out/core/chromadb-vector-database.d.ts.map +1 -0
- package/out/core/chromadb-vector-database.js +276 -0
- package/out/core/chromadb-vector-database.js.map +1 -0
- package/out/core/docs-path-resolver.d.ts +43 -0
- package/out/core/docs-path-resolver.d.ts.map +1 -0
- package/out/core/docs-path-resolver.js +137 -0
- package/out/core/docs-path-resolver.js.map +1 -0
- package/out/core/id-mapper.d.ts +68 -0
- package/out/core/id-mapper.d.ts.map +1 -0
- package/out/core/id-mapper.js +132 -0
- package/out/core/id-mapper.js.map +1 -0
- package/out/core/migration-manager.d.ts +75 -0
- package/out/core/migration-manager.d.ts.map +1 -0
- package/out/core/migration-manager.js +212 -0
- package/out/core/migration-manager.js.map +1 -0
- package/out/core/multi-db-manager.d.ts +84 -0
- package/out/core/multi-db-manager.d.ts.map +1 -0
- package/out/core/multi-db-manager.js +206 -0
- package/out/core/multi-db-manager.js.map +1 -0
- package/out/core/transaction-manager.d.ts +69 -0
- package/out/core/transaction-manager.d.ts.map +1 -0
- package/out/core/transaction-manager.js +138 -0
- package/out/core/transaction-manager.js.map +1 -0
- package/out/core/vector-database-factory.d.ts +25 -0
- package/out/core/vector-database-factory.d.ts.map +1 -0
- package/out/core/vector-database-factory.js +82 -0
- package/out/core/vector-database-factory.js.map +1 -0
- package/out/core/vector-database-interface.d.ts +50 -0
- package/out/core/vector-database-interface.d.ts.map +1 -0
- package/out/core/vector-database-interface.js +3 -0
- package/out/core/vector-database-interface.js.map +1 -0
- package/out/core/vss-loader.d.ts +29 -0
- package/out/core/vss-loader.d.ts.map +1 -0
- package/out/core/vss-loader.js +150 -0
- package/out/core/vss-loader.js.map +1 -0
- package/out/core/vss-manager.d.ts +81 -0
- package/out/core/vss-manager.d.ts.map +1 -0
- package/out/core/vss-manager.js +323 -0
- package/out/core/vss-manager.js.map +1 -0
- package/out/core/vss-vector-database.d.ts +71 -0
- package/out/core/vss-vector-database.d.ts.map +1 -0
- package/out/core/vss-vector-database.js +284 -0
- package/out/core/vss-vector-database.js.map +1 -0
- package/out/embedding/embedding-generator.d.ts +45 -0
- package/out/embedding/embedding-generator.d.ts.map +1 -0
- package/out/embedding/embedding-generator.js +143 -0
- package/out/embedding/embedding-generator.js.map +1 -0
- package/out/embedding/embedding-pipeline.d.ts +42 -0
- package/out/embedding/embedding-pipeline.d.ts.map +1 -0
- package/out/embedding/embedding-pipeline.js +290 -0
- package/out/embedding/embedding-pipeline.js.map +1 -0
- package/out/extension.d.ts +10 -0
- package/out/extension.d.ts.map +1 -0
- package/out/extension.js +164 -0
- package/out/extension.js.map +1 -0
- package/out/ingestors/adr-ingestor.d.ts +41 -0
- package/out/ingestors/adr-ingestor.d.ts.map +1 -0
- package/out/ingestors/adr-ingestor.js +329 -0
- package/out/ingestors/adr-ingestor.js.map +1 -0
- package/out/ingestors/base-ingestor.d.ts +30 -0
- package/out/ingestors/base-ingestor.d.ts.map +1 -0
- package/out/ingestors/base-ingestor.js +3 -0
- package/out/ingestors/base-ingestor.js.map +1 -0
- package/out/ingestors/change-ingestor.d.ts +36 -0
- package/out/ingestors/change-ingestor.d.ts.map +1 -0
- package/out/ingestors/change-ingestor.js +216 -0
- package/out/ingestors/change-ingestor.js.map +1 -0
- package/out/ingestors/dependency-ingestor.d.ts +32 -0
- package/out/ingestors/dependency-ingestor.d.ts.map +1 -0
- package/out/ingestors/dependency-ingestor.js +194 -0
- package/out/ingestors/dependency-ingestor.js.map +1 -0
- package/out/ingestors/module-ingestor.d.ts +27 -0
- package/out/ingestors/module-ingestor.d.ts.map +1 -0
- package/out/ingestors/module-ingestor.js +137 -0
- package/out/ingestors/module-ingestor.js.map +1 -0
- package/out/ingestors/symbol-ingestor.d.ts +26 -0
- package/out/ingestors/symbol-ingestor.d.ts.map +1 -0
- package/out/ingestors/symbol-ingestor.js +183 -0
- package/out/ingestors/symbol-ingestor.js.map +1 -0
- package/out/mcp/resources/adrs.d.ts +13 -0
- package/out/mcp/resources/adrs.d.ts.map +1 -0
- package/out/mcp/resources/adrs.js +26 -0
- package/out/mcp/resources/adrs.js.map +1 -0
- package/out/mcp/resources/changes.d.ts +13 -0
- package/out/mcp/resources/changes.d.ts.map +1 -0
- package/out/mcp/resources/changes.js +26 -0
- package/out/mcp/resources/changes.js.map +1 -0
- package/out/mcp/resources/dependencies.d.ts +13 -0
- package/out/mcp/resources/dependencies.d.ts.map +1 -0
- package/out/mcp/resources/dependencies.js +26 -0
- package/out/mcp/resources/dependencies.js.map +1 -0
- package/out/mcp/resources/modules.d.ts +13 -0
- package/out/mcp/resources/modules.d.ts.map +1 -0
- package/out/mcp/resources/modules.js +26 -0
- package/out/mcp/resources/modules.js.map +1 -0
- package/out/mcp/resources/symbols.d.ts +13 -0
- package/out/mcp/resources/symbols.d.ts.map +1 -0
- package/out/mcp/resources/symbols.js +26 -0
- package/out/mcp/resources/symbols.js.map +1 -0
- package/out/mcp/server.d.ts +29 -0
- package/out/mcp/server.d.ts.map +1 -0
- package/out/mcp/server.js +300 -0
- package/out/mcp/server.js.map +1 -0
- package/out/mcp/tools/architecture-mining.d.ts +46 -0
- package/out/mcp/tools/architecture-mining.d.ts.map +1 -0
- package/out/mcp/tools/architecture-mining.js +272 -0
- package/out/mcp/tools/architecture-mining.js.map +1 -0
- package/out/mcp/tools/bootstrap.d.ts +9 -0
- package/out/mcp/tools/bootstrap.d.ts.map +1 -0
- package/out/mcp/tools/bootstrap.js +14 -0
- package/out/mcp/tools/bootstrap.js.map +1 -0
- package/out/mcp/tools/cross-analysis.d.ts +18 -0
- package/out/mcp/tools/cross-analysis.d.ts.map +1 -0
- package/out/mcp/tools/cross-analysis.js +23 -0
- package/out/mcp/tools/cross-analysis.js.map +1 -0
- package/out/mcp/tools/gap-analysis.d.ts +34 -0
- package/out/mcp/tools/gap-analysis.d.ts.map +1 -0
- package/out/mcp/tools/gap-analysis.js +106 -0
- package/out/mcp/tools/gap-analysis.js.map +1 -0
- package/out/mcp/tools/learning-path.d.ts +10 -0
- package/out/mcp/tools/learning-path.d.ts.map +1 -0
- package/out/mcp/tools/learning-path.js +18 -0
- package/out/mcp/tools/learning-path.js.map +1 -0
- package/out/mcp/tools/query-dependencies.d.ts +18 -0
- package/out/mcp/tools/query-dependencies.d.ts.map +1 -0
- package/out/mcp/tools/query-dependencies.js +31 -0
- package/out/mcp/tools/query-dependencies.js.map +1 -0
- package/out/mcp/tools/query-modules.d.ts +17 -0
- package/out/mcp/tools/query-modules.d.ts.map +1 -0
- package/out/mcp/tools/query-modules.js +22 -0
- package/out/mcp/tools/query-modules.js.map +1 -0
- package/out/mcp/tools/query-symbols.d.ts +18 -0
- package/out/mcp/tools/query-symbols.d.ts.map +1 -0
- package/out/mcp/tools/query-symbols.js +32 -0
- package/out/mcp/tools/query-symbols.js.map +1 -0
- package/out/mcp/tools/semantic-discovery.d.ts +12 -0
- package/out/mcp/tools/semantic-discovery.d.ts.map +1 -0
- package/out/mcp/tools/semantic-discovery.js +35 -0
- package/out/mcp/tools/semantic-discovery.js.map +1 -0
- package/out/mcp/tools/system-explanation.d.ts +9 -0
- package/out/mcp/tools/system-explanation.d.ts.map +1 -0
- package/out/mcp/tools/system-explanation.js +14 -0
- package/out/mcp/tools/system-explanation.js.map +1 -0
- package/out/mcp/types.d.ts +19 -0
- package/out/mcp/types.d.ts.map +1 -0
- package/out/mcp/types.js +6 -0
- package/out/mcp/types.js.map +1 -0
- package/out/models/adr.d.ts +26 -0
- package/out/models/adr.d.ts.map +1 -0
- package/out/models/adr.js +3 -0
- package/out/models/adr.js.map +1 -0
- package/out/models/change.d.ts +42 -0
- package/out/models/change.d.ts.map +1 -0
- package/out/models/change.js +3 -0
- package/out/models/change.js.map +1 -0
- package/out/models/dependency.d.ts +37 -0
- package/out/models/dependency.d.ts.map +1 -0
- package/out/models/dependency.js +3 -0
- package/out/models/dependency.js.map +1 -0
- package/out/models/entity-reference.d.ts +20 -0
- package/out/models/entity-reference.d.ts.map +1 -0
- package/out/models/entity-reference.js +19 -0
- package/out/models/entity-reference.js.map +1 -0
- package/out/models/module.d.ts +26 -0
- package/out/models/module.d.ts.map +1 -0
- package/out/models/module.js +3 -0
- package/out/models/module.js.map +1 -0
- package/out/models/symbol.d.ts +31 -0
- package/out/models/symbol.d.ts.map +1 -0
- package/out/models/symbol.js +3 -0
- package/out/models/symbol.js.map +1 -0
- package/out/repositories/adr-repository.d.ts +41 -0
- package/out/repositories/adr-repository.d.ts.map +1 -0
- package/out/repositories/adr-repository.js +128 -0
- package/out/repositories/adr-repository.js.map +1 -0
- package/out/repositories/base-repository.d.ts +86 -0
- package/out/repositories/base-repository.d.ts.map +1 -0
- package/out/repositories/base-repository.js +66 -0
- package/out/repositories/base-repository.js.map +1 -0
- package/out/repositories/change-repository.d.ts +40 -0
- package/out/repositories/change-repository.d.ts.map +1 -0
- package/out/repositories/change-repository.js +150 -0
- package/out/repositories/change-repository.js.map +1 -0
- package/out/repositories/dependency-repository.d.ts +40 -0
- package/out/repositories/dependency-repository.d.ts.map +1 -0
- package/out/repositories/dependency-repository.js +129 -0
- package/out/repositories/dependency-repository.js.map +1 -0
- package/out/repositories/embedding-repository.d.ts +64 -0
- package/out/repositories/embedding-repository.d.ts.map +1 -0
- package/out/repositories/embedding-repository.js +126 -0
- package/out/repositories/embedding-repository.js.map +1 -0
- package/out/repositories/importance-repository.d.ts +63 -0
- package/out/repositories/importance-repository.d.ts.map +1 -0
- package/out/repositories/importance-repository.js +117 -0
- package/out/repositories/importance-repository.js.map +1 -0
- package/out/repositories/module-repository.d.ts +37 -0
- package/out/repositories/module-repository.d.ts.map +1 -0
- package/out/repositories/module-repository.js +122 -0
- package/out/repositories/module-repository.js.map +1 -0
- package/out/repositories/navigation-repository.d.ts +117 -0
- package/out/repositories/navigation-repository.d.ts.map +1 -0
- package/out/repositories/navigation-repository.js +211 -0
- package/out/repositories/navigation-repository.js.map +1 -0
- package/out/repositories/symbol-repository.d.ts +37 -0
- package/out/repositories/symbol-repository.d.ts.map +1 -0
- package/out/repositories/symbol-repository.js +136 -0
- package/out/repositories/symbol-repository.js.map +1 -0
- package/out/services/cross-dimension-linker.d.ts +45 -0
- package/out/services/cross-dimension-linker.d.ts.map +1 -0
- package/out/services/cross-dimension-linker.js +98 -0
- package/out/services/cross-dimension-linker.js.map +1 -0
- package/out/services/importance-scorer.d.ts +47 -0
- package/out/services/importance-scorer.d.ts.map +1 -0
- package/out/services/importance-scorer.js +188 -0
- package/out/services/importance-scorer.js.map +1 -0
- package/out/services/ingestion-orchestrator.d.ts +49 -0
- package/out/services/ingestion-orchestrator.d.ts.map +1 -0
- package/out/services/ingestion-orchestrator.js +140 -0
- package/out/services/ingestion-orchestrator.js.map +1 -0
- package/out/services/navigation-builder.d.ts +29 -0
- package/out/services/navigation-builder.d.ts.map +1 -0
- package/out/services/navigation-builder.js +229 -0
- package/out/services/navigation-builder.js.map +1 -0
- package/out/services/system-model-builder.d.ts +40 -0
- package/out/services/system-model-builder.d.ts.map +1 -0
- package/out/services/system-model-builder.js +88 -0
- package/out/services/system-model-builder.js.map +1 -0
- package/out/ui/commands.d.ts +9 -0
- package/out/ui/commands.d.ts.map +1 -0
- package/out/ui/commands.js +123 -0
- package/out/ui/commands.js.map +1 -0
- package/out/ui/database-explorer.d.ts +27 -0
- package/out/ui/database-explorer.d.ts.map +1 -0
- package/out/ui/database-explorer.js +169 -0
- package/out/ui/database-explorer.js.map +1 -0
- package/out/ui/detail-view-provider.d.ts +86 -0
- package/out/ui/detail-view-provider.d.ts.map +1 -0
- package/out/ui/detail-view-provider.js +1037 -0
- package/out/ui/detail-view-provider.js.map +1 -0
- package/out/ui/search-provider.d.ts +30 -0
- package/out/ui/search-provider.d.ts.map +1 -0
- package/out/ui/search-provider.js +240 -0
- package/out/ui/search-provider.js.map +1 -0
- package/out/ui/status-provider.d.ts +17 -0
- package/out/ui/status-provider.d.ts.map +1 -0
- package/out/ui/status-provider.js +76 -0
- package/out/ui/status-provider.js.map +1 -0
- package/out/validators/consistency-validator.d.ts +37 -0
- package/out/validators/consistency-validator.d.ts.map +1 -0
- package/out/validators/consistency-validator.js +93 -0
- package/out/validators/consistency-validator.js.map +1 -0
- package/out/validators/integrity-validator.d.ts +45 -0
- package/out/validators/integrity-validator.d.ts.map +1 -0
- package/out/validators/integrity-validator.js +115 -0
- package/out/validators/integrity-validator.js.map +1 -0
- package/package.json +173 -0
- package/schemas/sqlite/001_initial_modules.sql +39 -0
- package/schemas/sqlite/002_initial_symbols.sql +46 -0
- package/schemas/sqlite/003_initial_dependencies.sql +51 -0
- package/schemas/sqlite/004_initial_adrs.sql +41 -0
- package/schemas/sqlite/005_initial_changes.sql +54 -0
- package/schemas/sqlite/006_initial_ingestion.sql +34 -0
- package/schemas/sqlite/006_vectors_schema.sql +73 -0
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"cross-dimension-api.d.ts","sourceRoot":"","sources":["../../src/api/cross-dimension-api.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAE,MAAM,0BAA0B,CAAC;AAC1D,OAAO,EAAE,QAAQ,EAAE,MAAM,mBAAmB,CAAC;AAG7C,OAAO,EAAE,eAAe,EAAE,MAAM,4BAA4B,CAAC;AAE7D;;;GAGG;AACH,qBAAa,iBAAiB;IAC1B,OAAO,CAAC,SAAS,CAAiB;IAClC,OAAO,CAAC,QAAQ,CAAW;IAC3B,OAAO,CAAC,MAAM,CAAuB;IACrC,OAAO,CAAC,aAAa,CAAqB;gBAE9B,SAAS,EAAE,cAAc,EAAE,QAAQ,EAAE,QAAQ;IAOzD;;OAEG;IACU,qBAAqB,CAC9B,QAAQ,EAAE,MAAM,EAChB,QAAQ,EAAE,MAAM,GACjB,OAAO,CAAC,eAAe,GAAG,IAAI,CAAC;IAIlC;;OAEG;IACU,kBAAkB,CAC3B,QAAQ,EAAE,MAAM,EAChB,QAAQ,EAAE,MAAM,GACjB,OAAO,CAAC,eAAe,EAAE,CAAC;IAI7B;;OAEG;IACU,mBAAmB,CAC5B,QAAQ,EAAE,MAAM,EAChB,QAAQ,EAAE,MAAM,GACjB,OAAO,CAAC,eAAe,EAAE,CAAC;IAI7B;;OAEG;IACU,0BAA0B,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,GAAG,CAAC,MAAM,EAAE,MAAM,EAAE,CAAC,CAAC;IAIzF;;OAEG;IACU,yBAAyB,CAClC,QAAQ,EAAE,MAAM,EAChB,QAAQ,EAAE,MAAM,GACjB,OAAO,CAAC,GAAG,CAAC,MAAM,EAAE,MAAM,EAAE,CAAC,CAAC;IAIjC;;OAEG;IACU,sBAAsB,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,KAAK,CAAC;QACjE,MAAM,EAAE,GAAG,CAAC;QACZ,IAAI,EAAE,GAAG,EAAE,CAAC;QACZ,YAAY,EAAE,GAAG,EAAE,CAAC;KACvB,CAAC,CAAC;CAGN"}
|
|
@@ -0,0 +1,55 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.CrossDimensionApi = void 0;
|
|
4
|
+
const cross_dimension_linker_1 = require("../services/cross-dimension-linker");
|
|
5
|
+
const system_model_builder_1 = require("../services/system-model-builder");
|
|
6
|
+
/**
|
|
7
|
+
* API for cross-dimension queries.
|
|
8
|
+
* Combines data from multiple dimensions.
|
|
9
|
+
*/
|
|
10
|
+
class CrossDimensionApi {
|
|
11
|
+
constructor(dbManager, idMapper) {
|
|
12
|
+
this.dbManager = dbManager;
|
|
13
|
+
this.idMapper = idMapper;
|
|
14
|
+
this.linker = new cross_dimension_linker_1.CrossDimensionLinker(dbManager, idMapper);
|
|
15
|
+
this.systemBuilder = new system_model_builder_1.SystemModelBuilder(dbManager);
|
|
16
|
+
}
|
|
17
|
+
/**
|
|
18
|
+
* Resolves a symbol ID to its module reference.
|
|
19
|
+
*/
|
|
20
|
+
async resolveSymbolToModule(symbolId, pluginId) {
|
|
21
|
+
return this.linker.resolveSymbolToModule(symbolId, pluginId);
|
|
22
|
+
}
|
|
23
|
+
/**
|
|
24
|
+
* Gets all ADRs that reference a specific file path.
|
|
25
|
+
*/
|
|
26
|
+
async getAdrsForFilePath(filePath, pluginId) {
|
|
27
|
+
return this.linker.getAdrsForFilePath(filePath, pluginId);
|
|
28
|
+
}
|
|
29
|
+
/**
|
|
30
|
+
* Gets all symbols for a module.
|
|
31
|
+
*/
|
|
32
|
+
async getSymbolsForModule(filePath, pluginId) {
|
|
33
|
+
return this.linker.getSymbolsForModule(filePath, pluginId);
|
|
34
|
+
}
|
|
35
|
+
/**
|
|
36
|
+
* Builds a module dependency graph.
|
|
37
|
+
*/
|
|
38
|
+
async buildModuleDependencyGraph(pluginId) {
|
|
39
|
+
return this.systemBuilder.buildModuleDependencyGraph(pluginId);
|
|
40
|
+
}
|
|
41
|
+
/**
|
|
42
|
+
* Builds a symbol dependency tree for a file.
|
|
43
|
+
*/
|
|
44
|
+
async buildSymbolDependencyTree(filePath, pluginId) {
|
|
45
|
+
return this.systemBuilder.buildSymbolDependencyTree(filePath, pluginId);
|
|
46
|
+
}
|
|
47
|
+
/**
|
|
48
|
+
* Builds an architectural view combining modules, ADRs, and dependencies.
|
|
49
|
+
*/
|
|
50
|
+
async buildArchitecturalView(pluginId) {
|
|
51
|
+
return this.systemBuilder.buildArchitecturalView(pluginId);
|
|
52
|
+
}
|
|
53
|
+
}
|
|
54
|
+
exports.CrossDimensionApi = CrossDimensionApi;
|
|
55
|
+
//# sourceMappingURL=cross-dimension-api.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"cross-dimension-api.js","sourceRoot":"","sources":["../../src/api/cross-dimension-api.ts"],"names":[],"mappings":";;;AAEA,+EAA0E;AAC1E,2EAAsE;AAGtE;;;GAGG;AACH,MAAa,iBAAiB;IAM1B,YAAY,SAAyB,EAAE,QAAkB;QACrD,IAAI,CAAC,SAAS,GAAG,SAAS,CAAC;QAC3B,IAAI,CAAC,QAAQ,GAAG,QAAQ,CAAC;QACzB,IAAI,CAAC,MAAM,GAAG,IAAI,6CAAoB,CAAC,SAAS,EAAE,QAAQ,CAAC,CAAC;QAC5D,IAAI,CAAC,aAAa,GAAG,IAAI,yCAAkB,CAAC,SAAS,CAAC,CAAC;IAC3D,CAAC;IAED;;OAEG;IACI,KAAK,CAAC,qBAAqB,CAC9B,QAAgB,EAChB,QAAgB;QAEhB,OAAO,IAAI,CAAC,MAAM,CAAC,qBAAqB,CAAC,QAAQ,EAAE,QAAQ,CAAC,CAAC;IACjE,CAAC;IAED;;OAEG;IACI,KAAK,CAAC,kBAAkB,CAC3B,QAAgB,EAChB,QAAgB;QAEhB,OAAO,IAAI,CAAC,MAAM,CAAC,kBAAkB,CAAC,QAAQ,EAAE,QAAQ,CAAC,CAAC;IAC9D,CAAC;IAED;;OAEG;IACI,KAAK,CAAC,mBAAmB,CAC5B,QAAgB,EAChB,QAAgB;QAEhB,OAAO,IAAI,CAAC,MAAM,CAAC,mBAAmB,CAAC,QAAQ,EAAE,QAAQ,CAAC,CAAC;IAC/D,CAAC;IAED;;OAEG;IACI,KAAK,CAAC,0BAA0B,CAAC,QAAgB;QACpD,OAAO,IAAI,CAAC,aAAa,CAAC,0BAA0B,CAAC,QAAQ,CAAC,CAAC;IACnE,CAAC;IAED;;OAEG;IACI,KAAK,CAAC,yBAAyB,CAClC,QAAgB,EAChB,QAAgB;QAEhB,OAAO,IAAI,CAAC,aAAa,CAAC,yBAAyB,CAAC,QAAQ,EAAE,QAAQ,CAAC,CAAC;IAC5E,CAAC;IAED;;OAEG;IACI,KAAK,CAAC,sBAAsB,CAAC,QAAgB;QAKhD,OAAO,IAAI,CAAC,aAAa,CAAC,sBAAsB,CAAC,QAAQ,CAAC,CAAC;IAC/D,CAAC;CACJ;AAtED,8CAsEC"}
|
|
@@ -0,0 +1,26 @@
|
|
|
1
|
+
import { MultiDbManager } from '../core/multi-db-manager';
|
|
2
|
+
import { Dependency } from '../models/dependency';
|
|
3
|
+
/**
|
|
4
|
+
* API for Z-Dimension: Dependencies
|
|
5
|
+
*/
|
|
6
|
+
export declare class DependencyApi {
|
|
7
|
+
private dbManager;
|
|
8
|
+
constructor(dbManager: MultiDbManager);
|
|
9
|
+
/**
|
|
10
|
+
* Gets all dependencies for a plugin.
|
|
11
|
+
*/
|
|
12
|
+
getAllDependencies(pluginId: string): Promise<Dependency[]>;
|
|
13
|
+
/**
|
|
14
|
+
* Gets dependencies by from_module.
|
|
15
|
+
*/
|
|
16
|
+
getDependenciesByFromModule(fromModule: string, pluginId: string): Promise<Dependency[]>;
|
|
17
|
+
/**
|
|
18
|
+
* Gets dependencies by to_module.
|
|
19
|
+
*/
|
|
20
|
+
getDependenciesByToModule(toModule: string, pluginId: string): Promise<Dependency[]>;
|
|
21
|
+
/**
|
|
22
|
+
* Gets a dependency by ID.
|
|
23
|
+
*/
|
|
24
|
+
getDependencyById(id: string, pluginId: string): Promise<Dependency | null>;
|
|
25
|
+
}
|
|
26
|
+
//# sourceMappingURL=dependency-api.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"dependency-api.d.ts","sourceRoot":"","sources":["../../src/api/dependency-api.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAE,MAAM,0BAA0B,CAAC;AAE1D,OAAO,EAAE,UAAU,EAAE,MAAM,sBAAsB,CAAC;AAElD;;GAEG;AACH,qBAAa,aAAa;IACtB,OAAO,CAAC,SAAS,CAAiB;gBAEtB,SAAS,EAAE,cAAc;IAIrC;;OAEG;IACU,kBAAkB,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,UAAU,EAAE,CAAC;IAMxE;;OAEG;IACU,2BAA2B,CAAC,UAAU,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,UAAU,EAAE,CAAC;IAMrG;;OAEG;IACU,yBAAyB,CAAC,QAAQ,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,UAAU,EAAE,CAAC;IAMjG;;OAEG;IACU,iBAAiB,CAAC,EAAE,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,UAAU,GAAG,IAAI,CAAC;CAK3F"}
|
|
@@ -0,0 +1,46 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.DependencyApi = void 0;
|
|
4
|
+
const dependency_repository_1 = require("../repositories/dependency-repository");
|
|
5
|
+
/**
|
|
6
|
+
* API for Z-Dimension: Dependencies
|
|
7
|
+
*/
|
|
8
|
+
class DependencyApi {
|
|
9
|
+
constructor(dbManager) {
|
|
10
|
+
this.dbManager = dbManager;
|
|
11
|
+
}
|
|
12
|
+
/**
|
|
13
|
+
* Gets all dependencies for a plugin.
|
|
14
|
+
*/
|
|
15
|
+
async getAllDependencies(pluginId) {
|
|
16
|
+
const db = await this.dbManager.getDatabase('Z');
|
|
17
|
+
const repository = new dependency_repository_1.DependencyRepository(db);
|
|
18
|
+
return repository.getAll(pluginId);
|
|
19
|
+
}
|
|
20
|
+
/**
|
|
21
|
+
* Gets dependencies by from_module.
|
|
22
|
+
*/
|
|
23
|
+
async getDependenciesByFromModule(fromModule, pluginId) {
|
|
24
|
+
const db = await this.dbManager.getDatabase('Z');
|
|
25
|
+
const repository = new dependency_repository_1.DependencyRepository(db);
|
|
26
|
+
return repository.findByFromModule(fromModule, pluginId);
|
|
27
|
+
}
|
|
28
|
+
/**
|
|
29
|
+
* Gets dependencies by to_module.
|
|
30
|
+
*/
|
|
31
|
+
async getDependenciesByToModule(toModule, pluginId) {
|
|
32
|
+
const db = await this.dbManager.getDatabase('Z');
|
|
33
|
+
const repository = new dependency_repository_1.DependencyRepository(db);
|
|
34
|
+
return repository.findByToModule(toModule, pluginId);
|
|
35
|
+
}
|
|
36
|
+
/**
|
|
37
|
+
* Gets a dependency by ID.
|
|
38
|
+
*/
|
|
39
|
+
async getDependencyById(id, pluginId) {
|
|
40
|
+
const db = await this.dbManager.getDatabase('Z');
|
|
41
|
+
const repository = new dependency_repository_1.DependencyRepository(db);
|
|
42
|
+
return repository.getById(id, pluginId);
|
|
43
|
+
}
|
|
44
|
+
}
|
|
45
|
+
exports.DependencyApi = DependencyApi;
|
|
46
|
+
//# sourceMappingURL=dependency-api.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"dependency-api.js","sourceRoot":"","sources":["../../src/api/dependency-api.ts"],"names":[],"mappings":";;;AACA,iFAA6E;AAG7E;;GAEG;AACH,MAAa,aAAa;IAGtB,YAAY,SAAyB;QACjC,IAAI,CAAC,SAAS,GAAG,SAAS,CAAC;IAC/B,CAAC;IAED;;OAEG;IACI,KAAK,CAAC,kBAAkB,CAAC,QAAgB;QAC5C,MAAM,EAAE,GAAG,MAAM,IAAI,CAAC,SAAS,CAAC,WAAW,CAAC,GAAG,CAAC,CAAC;QACjD,MAAM,UAAU,GAAG,IAAI,4CAAoB,CAAC,EAAE,CAAC,CAAC;QAChD,OAAO,UAAU,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC;IACvC,CAAC;IAED;;OAEG;IACI,KAAK,CAAC,2BAA2B,CAAC,UAAkB,EAAE,QAAgB;QACzE,MAAM,EAAE,GAAG,MAAM,IAAI,CAAC,SAAS,CAAC,WAAW,CAAC,GAAG,CAAC,CAAC;QACjD,MAAM,UAAU,GAAG,IAAI,4CAAoB,CAAC,EAAE,CAAC,CAAC;QAChD,OAAO,UAAU,CAAC,gBAAgB,CAAC,UAAU,EAAE,QAAQ,CAAC,CAAC;IAC7D,CAAC;IAED;;OAEG;IACI,KAAK,CAAC,yBAAyB,CAAC,QAAgB,EAAE,QAAgB;QACrE,MAAM,EAAE,GAAG,MAAM,IAAI,CAAC,SAAS,CAAC,WAAW,CAAC,GAAG,CAAC,CAAC;QACjD,MAAM,UAAU,GAAG,IAAI,4CAAoB,CAAC,EAAE,CAAC,CAAC;QAChD,OAAO,UAAU,CAAC,cAAc,CAAC,QAAQ,EAAE,QAAQ,CAAC,CAAC;IACzD,CAAC;IAED;;OAEG;IACI,KAAK,CAAC,iBAAiB,CAAC,EAAU,EAAE,QAAgB;QACvD,MAAM,EAAE,GAAG,MAAM,IAAI,CAAC,SAAS,CAAC,WAAW,CAAC,GAAG,CAAC,CAAC;QACjD,MAAM,UAAU,GAAG,IAAI,4CAAoB,CAAC,EAAE,CAAC,CAAC;QAChD,OAAO,UAAU,CAAC,OAAO,CAAC,EAAE,EAAE,QAAQ,CAAC,CAAC;IAC5C,CAAC;CACJ;AA1CD,sCA0CC"}
|
|
@@ -0,0 +1,49 @@
|
|
|
1
|
+
import { MultiDbManager } from '../core/multi-db-manager';
|
|
2
|
+
import { SemanticSearchApi } from './semantic-search-api';
|
|
3
|
+
import { EntityReference } from '../models/entity-reference';
|
|
4
|
+
/**
|
|
5
|
+
* Learning path step
|
|
6
|
+
*/
|
|
7
|
+
export interface LearningPathStep {
|
|
8
|
+
step: number;
|
|
9
|
+
entity: EntityReference;
|
|
10
|
+
action: 'read' | 'study' | 'examine' | 'understand';
|
|
11
|
+
reason: string;
|
|
12
|
+
}
|
|
13
|
+
/**
|
|
14
|
+
* Learning path
|
|
15
|
+
*/
|
|
16
|
+
export interface LearningPath {
|
|
17
|
+
topic: string;
|
|
18
|
+
path: LearningPathStep[];
|
|
19
|
+
estimated_time?: string;
|
|
20
|
+
}
|
|
21
|
+
/**
|
|
22
|
+
* Generates guided learning paths for agents.
|
|
23
|
+
* Provides step-by-step guidance based on topic/query.
|
|
24
|
+
*/
|
|
25
|
+
export declare class LearningPathApi {
|
|
26
|
+
private dbManager;
|
|
27
|
+
private semanticSearchApi;
|
|
28
|
+
private dependencyApi;
|
|
29
|
+
private moduleApi;
|
|
30
|
+
private adrApi;
|
|
31
|
+
constructor(dbManager: MultiDbManager, semanticSearchApi: SemanticSearchApi);
|
|
32
|
+
/**
|
|
33
|
+
* Generates a learning path for a topic.
|
|
34
|
+
*
|
|
35
|
+
* @param topic Topic to learn about (e.g., "ingestion", "dependencies")
|
|
36
|
+
* @param pluginId Plugin ID
|
|
37
|
+
* @returns Promise that resolves to a learning path
|
|
38
|
+
*/
|
|
39
|
+
generateLearningPath(topic: string, pluginId: string): Promise<LearningPath>;
|
|
40
|
+
/**
|
|
41
|
+
* Finds entry points from relevant entities.
|
|
42
|
+
*/
|
|
43
|
+
private findEntryPoints;
|
|
44
|
+
/**
|
|
45
|
+
* Builds dependency path from entry points to targets.
|
|
46
|
+
*/
|
|
47
|
+
private buildDependencyPath;
|
|
48
|
+
}
|
|
49
|
+
//# sourceMappingURL=learning-path-api.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"learning-path-api.d.ts","sourceRoot":"","sources":["../../src/api/learning-path-api.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAE,MAAM,0BAA0B,CAAC;AAE1D,OAAO,EAAE,iBAAiB,EAAwB,MAAM,uBAAuB,CAAC;AAKhF,OAAO,EAAE,eAAe,EAAE,MAAM,4BAA4B,CAAC;AAI7D;;GAEG;AACH,MAAM,WAAW,gBAAgB;IAC7B,IAAI,EAAE,MAAM,CAAC;IACb,MAAM,EAAE,eAAe,CAAC;IACxB,MAAM,EAAE,MAAM,GAAG,OAAO,GAAG,SAAS,GAAG,YAAY,CAAC;IACpD,MAAM,EAAE,MAAM,CAAC;CAClB;AAED;;GAEG;AACH,MAAM,WAAW,YAAY;IACzB,KAAK,EAAE,MAAM,CAAC;IACd,IAAI,EAAE,gBAAgB,EAAE,CAAC;IACzB,cAAc,CAAC,EAAE,MAAM,CAAC;CAC3B;AAED;;;GAGG;AACH,qBAAa,eAAe;IACxB,OAAO,CAAC,SAAS,CAAiB;IAClC,OAAO,CAAC,iBAAiB,CAAoB;IAC7C,OAAO,CAAC,aAAa,CAAgB;IACrC,OAAO,CAAC,SAAS,CAAY;IAC7B,OAAO,CAAC,MAAM,CAAS;gBAGnB,SAAS,EAAE,cAAc,EACzB,iBAAiB,EAAE,iBAAiB;IASxC;;;;;;OAMG;IACG,oBAAoB,CACtB,KAAK,EAAE,MAAM,EACb,QAAQ,EAAE,MAAM,GACjB,OAAO,CAAC,YAAY,CAAC;IAgCxB;;OAEG;YACW,eAAe;IAsC7B;;OAEG;YACW,mBAAmB;CA+FpC"}
|
|
@@ -0,0 +1,174 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.LearningPathApi = void 0;
|
|
4
|
+
const dependency_api_1 = require("./dependency-api");
|
|
5
|
+
const module_api_1 = require("./module-api");
|
|
6
|
+
const adr_api_1 = require("./adr-api");
|
|
7
|
+
const navigation_repository_1 = require("../repositories/navigation-repository");
|
|
8
|
+
/**
|
|
9
|
+
* Generates guided learning paths for agents.
|
|
10
|
+
* Provides step-by-step guidance based on topic/query.
|
|
11
|
+
*/
|
|
12
|
+
class LearningPathApi {
|
|
13
|
+
constructor(dbManager, semanticSearchApi) {
|
|
14
|
+
this.dbManager = dbManager;
|
|
15
|
+
this.semanticSearchApi = semanticSearchApi;
|
|
16
|
+
this.dependencyApi = new dependency_api_1.DependencyApi(dbManager);
|
|
17
|
+
this.moduleApi = new module_api_1.ModuleApi(dbManager);
|
|
18
|
+
this.adrApi = new adr_api_1.AdrApi(dbManager);
|
|
19
|
+
}
|
|
20
|
+
/**
|
|
21
|
+
* Generates a learning path for a topic.
|
|
22
|
+
*
|
|
23
|
+
* @param topic Topic to learn about (e.g., "ingestion", "dependencies")
|
|
24
|
+
* @param pluginId Plugin ID
|
|
25
|
+
* @returns Promise that resolves to a learning path
|
|
26
|
+
*/
|
|
27
|
+
async generateLearningPath(topic, pluginId) {
|
|
28
|
+
console.log(`[LearningPathApi] Generating learning path for topic: "${topic}"`);
|
|
29
|
+
// 1. Semantic search for topic
|
|
30
|
+
const relevantEntities = await this.semanticSearchApi.search(topic, pluginId, {
|
|
31
|
+
limit: 20
|
|
32
|
+
});
|
|
33
|
+
if (relevantEntities.length === 0) {
|
|
34
|
+
return {
|
|
35
|
+
topic,
|
|
36
|
+
path: [],
|
|
37
|
+
estimated_time: '0 minutes'
|
|
38
|
+
};
|
|
39
|
+
}
|
|
40
|
+
// 2. Find entry points (ADRs, Core-Modules)
|
|
41
|
+
const entryPoints = await this.findEntryPoints(relevantEntities, pluginId);
|
|
42
|
+
// 3. Build dependency path (from entry points to relevant entities)
|
|
43
|
+
const path = await this.buildDependencyPath(entryPoints, relevantEntities, pluginId);
|
|
44
|
+
// 4. Estimate time (rough: 2-3 minutes per step)
|
|
45
|
+
const estimatedTime = path.length > 0 ? `${path.length * 2}-${path.length * 3} minutes` : '0 minutes';
|
|
46
|
+
return {
|
|
47
|
+
topic,
|
|
48
|
+
path,
|
|
49
|
+
estimated_time: estimatedTime
|
|
50
|
+
};
|
|
51
|
+
}
|
|
52
|
+
/**
|
|
53
|
+
* Finds entry points from relevant entities.
|
|
54
|
+
*/
|
|
55
|
+
async findEntryPoints(entities, pluginId) {
|
|
56
|
+
const db = await this.dbManager.getDatabase('V');
|
|
57
|
+
const navRepo = new navigation_repository_1.NavigationRepository(db);
|
|
58
|
+
const entryPoints = [];
|
|
59
|
+
// Check if any entities are entry points
|
|
60
|
+
for (const entity of entities) {
|
|
61
|
+
if (entity.dimension === 'X') {
|
|
62
|
+
const metadata = await navRepo.getByEntity('X', entity.entityId, pluginId);
|
|
63
|
+
if (metadata && metadata.is_entry_point) {
|
|
64
|
+
entryPoints.push(entity.entityRef);
|
|
65
|
+
}
|
|
66
|
+
}
|
|
67
|
+
else if (entity.dimension === 'W') {
|
|
68
|
+
// ADRs are often entry points
|
|
69
|
+
entryPoints.push(entity.entityRef);
|
|
70
|
+
}
|
|
71
|
+
}
|
|
72
|
+
// If no entry points found, use first ADR or first module
|
|
73
|
+
if (entryPoints.length === 0) {
|
|
74
|
+
const firstAdr = entities.find(e => e.dimension === 'W');
|
|
75
|
+
if (firstAdr) {
|
|
76
|
+
entryPoints.push(firstAdr.entityRef);
|
|
77
|
+
}
|
|
78
|
+
else {
|
|
79
|
+
const firstModule = entities.find(e => e.dimension === 'X');
|
|
80
|
+
if (firstModule) {
|
|
81
|
+
entryPoints.push(firstModule.entityRef);
|
|
82
|
+
}
|
|
83
|
+
}
|
|
84
|
+
}
|
|
85
|
+
return entryPoints;
|
|
86
|
+
}
|
|
87
|
+
/**
|
|
88
|
+
* Builds dependency path from entry points to targets.
|
|
89
|
+
*/
|
|
90
|
+
async buildDependencyPath(entryPoints, targets, pluginId) {
|
|
91
|
+
const path = [];
|
|
92
|
+
const visited = new Set();
|
|
93
|
+
// Get all dependencies
|
|
94
|
+
const allDependencies = await this.dependencyApi.getAllDependencies(pluginId);
|
|
95
|
+
// Build dependency graph
|
|
96
|
+
const dependencyGraph = new Map(); // module -> [dependencies]
|
|
97
|
+
for (const dep of allDependencies) {
|
|
98
|
+
if (!dependencyGraph.has(dep.from_module)) {
|
|
99
|
+
dependencyGraph.set(dep.from_module, new Set());
|
|
100
|
+
}
|
|
101
|
+
dependencyGraph.get(dep.from_module).add(dep.to_module);
|
|
102
|
+
}
|
|
103
|
+
// Step 1: Start with entry points (ADRs first, then modules)
|
|
104
|
+
const adrEntryPoints = entryPoints.filter(ep => ep.dimension === 'W');
|
|
105
|
+
const moduleEntryPoints = entryPoints.filter(ep => ep.dimension === 'X');
|
|
106
|
+
let stepNumber = 1;
|
|
107
|
+
// Add ADR entry points
|
|
108
|
+
for (const entryPoint of adrEntryPoints) {
|
|
109
|
+
if (!visited.has(entryPoint.entity_id)) {
|
|
110
|
+
const adr = await this.adrApi.getAdrByNumber(entryPoint.external_id, pluginId);
|
|
111
|
+
if (adr) {
|
|
112
|
+
path.push({
|
|
113
|
+
step: stepNumber++,
|
|
114
|
+
entity: entryPoint,
|
|
115
|
+
action: 'read',
|
|
116
|
+
reason: `Architecture overview: ${adr.title}`
|
|
117
|
+
});
|
|
118
|
+
visited.add(entryPoint.entity_id);
|
|
119
|
+
}
|
|
120
|
+
}
|
|
121
|
+
}
|
|
122
|
+
// Add module entry points
|
|
123
|
+
for (const entryPoint of moduleEntryPoints) {
|
|
124
|
+
if (!visited.has(entryPoint.entity_id)) {
|
|
125
|
+
const module = await this.moduleApi.getModuleById(entryPoint.entity_id, pluginId);
|
|
126
|
+
if (module) {
|
|
127
|
+
path.push({
|
|
128
|
+
step: stepNumber++,
|
|
129
|
+
entity: entryPoint,
|
|
130
|
+
action: 'study',
|
|
131
|
+
reason: `Core module: ${module.file_path}`
|
|
132
|
+
});
|
|
133
|
+
visited.add(entryPoint.entity_id);
|
|
134
|
+
}
|
|
135
|
+
}
|
|
136
|
+
}
|
|
137
|
+
// Step 2: Add target entities (sorted by relevance)
|
|
138
|
+
const sortedTargets = targets.sort((a, b) => b.score - a.score);
|
|
139
|
+
for (const target of sortedTargets) {
|
|
140
|
+
if (!visited.has(target.entityId)) {
|
|
141
|
+
let action = 'examine';
|
|
142
|
+
let reason = 'Relevant to topic';
|
|
143
|
+
if (target.dimension === 'W') {
|
|
144
|
+
action = 'read';
|
|
145
|
+
const adr = await this.adrApi.getAdrByNumber(target.externalId, pluginId);
|
|
146
|
+
if (adr) {
|
|
147
|
+
reason = `ADR: ${adr.title}`;
|
|
148
|
+
}
|
|
149
|
+
}
|
|
150
|
+
else if (target.dimension === 'X') {
|
|
151
|
+
action = 'study';
|
|
152
|
+
const module = await this.moduleApi.getModuleById(target.entityId, pluginId);
|
|
153
|
+
if (module) {
|
|
154
|
+
reason = `Module: ${module.file_path}`;
|
|
155
|
+
}
|
|
156
|
+
}
|
|
157
|
+
else if (target.dimension === 'Y') {
|
|
158
|
+
action = 'examine';
|
|
159
|
+
reason = `Symbol: ${target.externalId}`;
|
|
160
|
+
}
|
|
161
|
+
path.push({
|
|
162
|
+
step: stepNumber++,
|
|
163
|
+
entity: target.entityRef,
|
|
164
|
+
action,
|
|
165
|
+
reason
|
|
166
|
+
});
|
|
167
|
+
visited.add(target.entityId);
|
|
168
|
+
}
|
|
169
|
+
}
|
|
170
|
+
return path;
|
|
171
|
+
}
|
|
172
|
+
}
|
|
173
|
+
exports.LearningPathApi = LearningPathApi;
|
|
174
|
+
//# sourceMappingURL=learning-path-api.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"learning-path-api.js","sourceRoot":"","sources":["../../src/api/learning-path-api.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,26 @@
|
|
|
1
|
+
import { MultiDbManager } from '../core/multi-db-manager';
|
|
2
|
+
import { Module } from '../models/module';
|
|
3
|
+
/**
|
|
4
|
+
* API for X-Dimension: Modules
|
|
5
|
+
*/
|
|
6
|
+
export declare class ModuleApi {
|
|
7
|
+
private dbManager;
|
|
8
|
+
constructor(dbManager: MultiDbManager);
|
|
9
|
+
/**
|
|
10
|
+
* Gets a module by ID.
|
|
11
|
+
*/
|
|
12
|
+
getModuleById(id: string, pluginId: string): Promise<Module | null>;
|
|
13
|
+
/**
|
|
14
|
+
* Gets a module by file path.
|
|
15
|
+
*/
|
|
16
|
+
getModuleByPath(filePath: string, pluginId: string): Promise<Module | null>;
|
|
17
|
+
/**
|
|
18
|
+
* Gets all modules for a plugin.
|
|
19
|
+
*/
|
|
20
|
+
getAllModules(pluginId: string): Promise<Module[]>;
|
|
21
|
+
/**
|
|
22
|
+
* Gets modules by content hash (for change detection).
|
|
23
|
+
*/
|
|
24
|
+
getModulesByContentHash(contentHash: string, pluginId: string): Promise<Module[]>;
|
|
25
|
+
}
|
|
26
|
+
//# sourceMappingURL=module-api.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"module-api.d.ts","sourceRoot":"","sources":["../../src/api/module-api.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAE,MAAM,0BAA0B,CAAC;AAE1D,OAAO,EAAE,MAAM,EAAE,MAAM,kBAAkB,CAAC;AAE1C;;GAEG;AACH,qBAAa,SAAS;IAClB,OAAO,CAAC,SAAS,CAAiB;gBAEtB,SAAS,EAAE,cAAc;IAIrC;;OAEG;IACU,aAAa,CAAC,EAAE,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC;IAMhF;;OAEG;IACU,eAAe,CAAC,QAAQ,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC;IAMxF;;OAEG;IACU,aAAa,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,EAAE,CAAC;IAM/D;;OAEG;IACU,uBAAuB,CAAC,WAAW,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,EAAE,CAAC;CAKjG"}
|
|
@@ -0,0 +1,46 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.ModuleApi = void 0;
|
|
4
|
+
const module_repository_1 = require("../repositories/module-repository");
|
|
5
|
+
/**
|
|
6
|
+
* API for X-Dimension: Modules
|
|
7
|
+
*/
|
|
8
|
+
class ModuleApi {
|
|
9
|
+
constructor(dbManager) {
|
|
10
|
+
this.dbManager = dbManager;
|
|
11
|
+
}
|
|
12
|
+
/**
|
|
13
|
+
* Gets a module by ID.
|
|
14
|
+
*/
|
|
15
|
+
async getModuleById(id, pluginId) {
|
|
16
|
+
const db = await this.dbManager.getDatabase('X');
|
|
17
|
+
const repository = new module_repository_1.ModuleRepository(db);
|
|
18
|
+
return repository.getById(id, pluginId);
|
|
19
|
+
}
|
|
20
|
+
/**
|
|
21
|
+
* Gets a module by file path.
|
|
22
|
+
*/
|
|
23
|
+
async getModuleByPath(filePath, pluginId) {
|
|
24
|
+
const db = await this.dbManager.getDatabase('X');
|
|
25
|
+
const repository = new module_repository_1.ModuleRepository(db);
|
|
26
|
+
return repository.getByFilePath(filePath, pluginId);
|
|
27
|
+
}
|
|
28
|
+
/**
|
|
29
|
+
* Gets all modules for a plugin.
|
|
30
|
+
*/
|
|
31
|
+
async getAllModules(pluginId) {
|
|
32
|
+
const db = await this.dbManager.getDatabase('X');
|
|
33
|
+
const repository = new module_repository_1.ModuleRepository(db);
|
|
34
|
+
return repository.getAll(pluginId);
|
|
35
|
+
}
|
|
36
|
+
/**
|
|
37
|
+
* Gets modules by content hash (for change detection).
|
|
38
|
+
*/
|
|
39
|
+
async getModulesByContentHash(contentHash, pluginId) {
|
|
40
|
+
const db = await this.dbManager.getDatabase('X');
|
|
41
|
+
const repository = new module_repository_1.ModuleRepository(db);
|
|
42
|
+
return repository.findByContentHash(contentHash, pluginId);
|
|
43
|
+
}
|
|
44
|
+
}
|
|
45
|
+
exports.ModuleApi = ModuleApi;
|
|
46
|
+
//# sourceMappingURL=module-api.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"module-api.js","sourceRoot":"","sources":["../../src/api/module-api.ts"],"names":[],"mappings":";;;AACA,yEAAqE;AAGrE;;GAEG;AACH,MAAa,SAAS;IAGlB,YAAY,SAAyB;QACjC,IAAI,CAAC,SAAS,GAAG,SAAS,CAAC;IAC/B,CAAC;IAED;;OAEG;IACI,KAAK,CAAC,aAAa,CAAC,EAAU,EAAE,QAAgB;QACnD,MAAM,EAAE,GAAG,MAAM,IAAI,CAAC,SAAS,CAAC,WAAW,CAAC,GAAG,CAAC,CAAC;QACjD,MAAM,UAAU,GAAG,IAAI,oCAAgB,CAAC,EAAE,CAAC,CAAC;QAC5C,OAAO,UAAU,CAAC,OAAO,CAAC,EAAE,EAAE,QAAQ,CAAC,CAAC;IAC5C,CAAC;IAED;;OAEG;IACI,KAAK,CAAC,eAAe,CAAC,QAAgB,EAAE,QAAgB;QAC3D,MAAM,EAAE,GAAG,MAAM,IAAI,CAAC,SAAS,CAAC,WAAW,CAAC,GAAG,CAAC,CAAC;QACjD,MAAM,UAAU,GAAG,IAAI,oCAAgB,CAAC,EAAE,CAAC,CAAC;QAC5C,OAAO,UAAU,CAAC,aAAa,CAAC,QAAQ,EAAE,QAAQ,CAAC,CAAC;IACxD,CAAC;IAED;;OAEG;IACI,KAAK,CAAC,aAAa,CAAC,QAAgB;QACvC,MAAM,EAAE,GAAG,MAAM,IAAI,CAAC,SAAS,CAAC,WAAW,CAAC,GAAG,CAAC,CAAC;QACjD,MAAM,UAAU,GAAG,IAAI,oCAAgB,CAAC,EAAE,CAAC,CAAC;QAC5C,OAAO,UAAU,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC;IACvC,CAAC;IAED;;OAEG;IACI,KAAK,CAAC,uBAAuB,CAAC,WAAmB,EAAE,QAAgB;QACtE,MAAM,EAAE,GAAG,MAAM,IAAI,CAAC,SAAS,CAAC,WAAW,CAAC,GAAG,CAAC,CAAC;QACjD,MAAM,UAAU,GAAG,IAAI,oCAAgB,CAAC,EAAE,CAAC,CAAC;QAC5C,OAAO,UAAU,CAAC,iBAAiB,CAAC,WAAW,EAAE,QAAQ,CAAC,CAAC;IAC/D,CAAC;CACJ;AA1CD,8BA0CC"}
|
|
@@ -0,0 +1,64 @@
|
|
|
1
|
+
import { MultiDbManager } from '../core/multi-db-manager';
|
|
2
|
+
/**
|
|
3
|
+
* Search result interface.
|
|
4
|
+
*/
|
|
5
|
+
export interface SearchResult {
|
|
6
|
+
dimension: 'X' | 'Y' | 'Z' | 'W' | 'T';
|
|
7
|
+
id: string;
|
|
8
|
+
label: string;
|
|
9
|
+
description?: string;
|
|
10
|
+
filePath?: string;
|
|
11
|
+
metadata?: Record<string, string>;
|
|
12
|
+
}
|
|
13
|
+
/**
|
|
14
|
+
* Search options.
|
|
15
|
+
*/
|
|
16
|
+
export interface SearchOptions {
|
|
17
|
+
limit?: number;
|
|
18
|
+
caseSensitive?: boolean;
|
|
19
|
+
}
|
|
20
|
+
/**
|
|
21
|
+
* API for keyword search across all 5 dimensions.
|
|
22
|
+
*/
|
|
23
|
+
export declare class SearchApi {
|
|
24
|
+
private dbManager;
|
|
25
|
+
private moduleApi;
|
|
26
|
+
private symbolApi;
|
|
27
|
+
private adrApi;
|
|
28
|
+
private dependencyApi;
|
|
29
|
+
private changeApi;
|
|
30
|
+
constructor(dbManager: MultiDbManager);
|
|
31
|
+
/**
|
|
32
|
+
* Searches across all dimensions.
|
|
33
|
+
*/
|
|
34
|
+
searchAll(query: string, pluginId: string, options?: SearchOptions): Promise<SearchResult[]>;
|
|
35
|
+
/**
|
|
36
|
+
* Searches in X-Dimension (Modules).
|
|
37
|
+
*/
|
|
38
|
+
private searchModules;
|
|
39
|
+
/**
|
|
40
|
+
* Searches in Y-Dimension (Symbols).
|
|
41
|
+
*/
|
|
42
|
+
private searchSymbols;
|
|
43
|
+
/**
|
|
44
|
+
* Searches in W-Dimension (ADRs).
|
|
45
|
+
*/
|
|
46
|
+
private searchAdrs;
|
|
47
|
+
/**
|
|
48
|
+
* Searches in Z-Dimension (Dependencies).
|
|
49
|
+
*/
|
|
50
|
+
private searchDependencies;
|
|
51
|
+
/**
|
|
52
|
+
* Searches in T-Dimension (Changes).
|
|
53
|
+
*/
|
|
54
|
+
private searchChanges;
|
|
55
|
+
/**
|
|
56
|
+
* Helper method to query database directly.
|
|
57
|
+
*/
|
|
58
|
+
private queryDatabase;
|
|
59
|
+
/**
|
|
60
|
+
* Sorts results by relevance (exact matches first, then by dimension order).
|
|
61
|
+
*/
|
|
62
|
+
private sortByRelevance;
|
|
63
|
+
}
|
|
64
|
+
//# sourceMappingURL=search-api.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"search-api.d.ts","sourceRoot":"","sources":["../../src/api/search-api.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAE,MAAM,0BAA0B,CAAC;AAO1D;;GAEG;AACH,MAAM,WAAW,YAAY;IACzB,SAAS,EAAE,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,CAAC;IACvC,EAAE,EAAE,MAAM,CAAC;IACX,KAAK,EAAE,MAAM,CAAC;IACd,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,QAAQ,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;CACrC;AAED;;GAEG;AACH,MAAM,WAAW,aAAa;IAC1B,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,aAAa,CAAC,EAAE,OAAO,CAAC;CAC3B;AAED;;GAEG;AACH,qBAAa,SAAS;IAClB,OAAO,CAAC,SAAS,CAAiB;IAClC,OAAO,CAAC,SAAS,CAAY;IAC7B,OAAO,CAAC,SAAS,CAAY;IAC7B,OAAO,CAAC,MAAM,CAAS;IACvB,OAAO,CAAC,aAAa,CAAgB;IACrC,OAAO,CAAC,SAAS,CAAY;gBAEjB,SAAS,EAAE,cAAc;IASrC;;OAEG;IACU,SAAS,CAAC,KAAK,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,EAAE,OAAO,GAAE,aAAkB,GAAG,OAAO,CAAC,YAAY,EAAE,CAAC;IAqB7G;;OAEG;YACW,aAAa;IAqC3B;;OAEG;YACW,aAAa;IAsC3B;;OAEG;YACW,UAAU;IAqCxB;;OAEG;YACW,kBAAkB;IAoChC;;OAEG;YACW,aAAa;IAgC3B;;OAEG;YACW,aAAa;IAY3B;;OAEG;IACH,OAAO,CAAC,eAAe;CAsB1B"}
|